Updates cloud-native/kubernetes-and-cloud-native-app-overview.md

Auto commit by GitBook Editor
pull/243/head
Zhang Zhenhua 2018-06-29 11:56:08 +08:00
parent 933d3ff988
commit 6a3eb0db1e
1 changed files with 7 additions and 7 deletions

View File

@ -167,7 +167,7 @@ Kubernetes提供了多种资源对象用户可以根据自己应用的特性
| 类别 | 名称 |
| :--- | --- |
| 资源对象 | Pod、ReplicaSet、ReplicationController、Deployment、StatefulSet、DaemonSet、Job、CronJob、HorizontalPodAutoscaling |
| 资源对象 | Pod、ReplicaSet、ReplicationController、Deployment、StatefulSet、DaemonSet、Job、CronJob、HorizontalPodAutoscaler |
| 配置对象 | Node、Namespace、Service、Secret、ConfigMap、Ingress、Label、CustomResourceDefinition、 ServiceAccount |
| 存储对象 | Volume、Persistent Volume |
| 策略对象 | SecurityContext、ResourceQuota、LimitRange |
@ -193,7 +193,7 @@ Kubernetes 对象是 “目标性记录” —— 一旦创建对象Kubernete
## 管理Kubernetes集群
手工部署Kubernetes是一个很艰巨的活你需要了解网络配置、docker的安装与使用、镜像仓库的构建、角色证书的创建、kubernetes的基本原理和构成、kubernetes应用程序的yaml文件编写等。
手工部署Kubernetes是一个很艰巨的活你需要了解网络配置、Docker的安装与使用、镜像仓库的构建、角色证书的创建、Kubernetes的基本原理和构成、Kubernetes应用程序的yaml文件编写等。
我编写了一本[kubernetes-handbook](https://jimmysong.io/kubernetes-handbook/)可供大家免费阅读该书记录了本人从零开始学习和使用Kubernetes的心路历程着重于经验分享和总结同时也会有相关的概念解析希望能够帮助大家少踩坑少走弯路。
@ -209,9 +209,9 @@ Kubernetes 对象是 “目标性记录” —— 一旦创建对象Kubernete
* Flanneld 0.7 vxlan 网络
* TLS 认证通信 \(所有组件,如 etcd、kubernetes master 和 node\)
* RBAC 授权
* kublet TLS BootStrapping
* kubelet TLS BootStrapping
* kubedns、dashboard、heapster\(influxdb、grafana\)、EFK\(elasticsearch、fluentd、kibana\) 集群插件
* 私有docker镜像仓库[harbor](https://github.com/vmware/harbor)请自行部署harbor提供离线安装包直接使用docker-compose启动即可
* 私有Docker镜像仓库[Harbor](https://github.com/vmware/harbor)请自行部署Harbor提供离线安装包直接使用docker-compose启动即可
**步骤介绍**
@ -229,7 +229,7 @@ Kubernetes 对象是 “目标性记录” —— 一旦创建对象Kubernete
### 服务发现与负载均衡
Kubernetes在设计之初就充分考虑了针对容器的服务发现与负载均衡机制提供了Service资源并通过kube-proxy配合cloud provider来适应不同的应用场景。随着kubernetes用户的激增用户场景的不断丰富又产生了一些新的负载均衡机制。目前kubernetes中的负载均衡大致可以分为以下几种机制每种机制都有其特定的应用场景
Kubernetes在设计之初就充分考虑了针对容器的服务发现与负载均衡机制提供了Service资源并通过kube-proxy配合cloud provider来适应不同的应用场景。随着Kubernetes用户的激增用户场景的不断丰富又产生了一些新的负载均衡机制。目前Kubernetes中的负载均衡大致可以分为以下几种机制每种机制都有其特定的应用场景
* **Service**直接用Service提供cluster内部的负载均衡并借助cloud provider提供的LB提供外部访问
* **Ingress**还是用Service提供cluster内部的负载均衡但是通过自定义LB提供外部访问
@ -248,8 +248,8 @@ Kubernetes在设计之初就充分考虑了针对容器的服务发现与负载
2. 将代码提交到远程仓库
3. 用户在发布应用时需要填写git仓库地址和分支、服务类型、服务名称、资源数量、实例个数确定后触发Jenkins自动构建
4. Jenkins的CI流水线自动编译代码并打包成docker镜像推送到Harbor镜像仓库
5. Jenkins的CI流水线中包括了自定义脚本根据我们已准备好的kubernetes的YAML模板将其中的变量替换成用户输入的选项
6. 生成应用的kubernetes YAML配置文件
5. Jenkins的CI流水线中包括了自定义脚本根据我们已准备好的Kubernetes的YAML模板将其中的变量替换成用户输入的选项
6. 生成应用的Kubernetes YAML配置文件
7. 更新Ingress的配置根据新部署的应用的名称在ingress的配置文件中增加一条路由信息
8. 更新PowerDNS向其中插入一条DNS记录IP地址是边缘节点的IP地址。关于边缘节点请查看[边缘节点配置](https://jimmysong.io/kubernetes-handbook/practice/edge-node-configuration.html)
9. Jenkins调用kubernetes的API部署应用