标签:watch 基础 调度 APIServer 概念 kubenetes etcd 组件 pod
1.工作流程
1.1 用户准备一个资源文件(记录了业务应用的名称,镜像地址信息),通过调用APIServer执行插件pod
1.2 APIServer收到用户的pod创建请求,将pod信息写入到etcd中
1.3 调度器通过list-watch的方式,发现有新的pod数据,但是这个pod还没有绑定到某一个节点中
1.4 调度器通过调度算法,计算出最适合该pod运行的节点,并调用APIServer,把信息更新到etcd中
1.5 kueblet同样通过list-watch方式,发现有新的pod调度到本机的节点了,因此调用容器运行,去根据pod的描述信息,拉取镜像,启动容器,同时生成事件信息。
1.6 同时,把容器的信息、事件及状态也通过APIServer写入到etcd中。
2.架构思考
1.1 系统各个组件分工明确(APIServer是所有请求入口,CM是控制中枢,Scheduler主管调度,kubelet负责运行)
1.2 除了配置管理和持久化组件etcd,其它组件并不保存数据,意味着除etcd外,其它组件都是无状态的,从架构设计上对kubenetes系统高可用部署提供了支撑
1.3 同时因为组件无状态,组件的升级,重启,故障等并不影响集群最终状态,只要组件恢复后就可以从中断处继续运行。
1.4 各个组件和kube-apiserver之间的数据推送都是通过list-watch机制来实现。
标签:watch,
基础,
调度,
APIServer,
概念,
kubenetes,
etcd,
组件,
pod
From: https://www.cnblogs.com/lcc-lv/p/16714643.html