From 6a3eb0db1ead5580f0a5e2bdb108daf211150a27 Mon Sep 17 00:00:00 2001 From: Zhang Zhenhua Date: Fri, 29 Jun 2018 11:56:08 +0800 Subject: [PATCH] Updates cloud-native/kubernetes-and-cloud-native-app-overview.md Auto commit by GitBook Editor --- .../kubernetes-and-cloud-native-app-overview.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/cloud-native/kubernetes-and-cloud-native-app-overview.md b/cloud-native/kubernetes-and-cloud-native-app-overview.md index 164de185a..ade44fad9 100644 --- a/cloud-native/kubernetes-and-cloud-native-app-overview.md +++ b/cloud-native/kubernetes-and-cloud-native-app-overview.md @@ -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,部署应用