![每天5分钟玩转Kubernetes](https://wfqqreader-1252317822.image.myqcloud.com/cover/754/26793754/b_26793754.jpg)
上QQ阅读APP看书,第一时间看更新
4.4 用例子把它们串起来
为了帮助大家更好地理解Kubernetes架构,我们部署一个应用来演示各个组件之间是如何协作的。
执行下列命令,结果如图4-6所示。
![](https://epubservercos.yuewen.com/F29C0A/15253388304118606/epubprivate/OEBPS/Images/Figure-T32_5432.jpg?sign=1739332401-aYIgrmES9CCWKEizVdSGkKv3kip0CcQM-0-894f6740cca443c00976d281f8a7d77e)
![](https://epubservercos.yuewen.com/F29C0A/15253388304118606/epubprivate/OEBPS/Images/Figure-P32_1288.jpg?sign=1739332401-BKTeIgS1p0latbCeaSUYoRwxNhfKHy3I-0-ffb15b38b59cc0ffbcd331204fa16fda)
图4-6
等待一段时间,应用部署完成,如图4-7所示。
![](https://epubservercos.yuewen.com/F29C0A/15253388304118606/epubprivate/OEBPS/Images/Figure-P32_1292.jpg?sign=1739332401-f0FRTmI0BmidmJmjW63Y2WUPznV8fJMn-0-e12fa55b46bc96453be73d60bcf49831)
图4-7
Kubernetes部署了deployment httpd-app,有两个副本Pod,分别运行在k8s-node1和k8s-node2。
详细讨论整个部署过程,如图4-8所示。
![](https://epubservercos.yuewen.com/F29C0A/15253388304118606/epubprivate/OEBPS/Images/Figure-P32_1296.jpg?sign=1739332401-hktk8zoWx2xSppZ3s5p3bxBQbUscX93H-0-4f982fbcfd6f6ad2735cdc45f32d85f5)
图4-8
①kubectl发送部署请求到API Server。
②API Server通知Controller Manager创建一个deployment资源。
③Scheduler执行调度任务,将两个副本Pod分发到k8s-node1和k8s-node2。
④k8s-node1和k8s-node2上的kubectl在各自的节点上创建并运行Pod。
补充两点:
(1)应用的配置和当前状态信息保存在etcd中,执行kubectl get pod时API Server会从etcd中读取这些数据。
(2)flannel会为每个Pod都分配IP。因为没有创建service,所以目前kube-proxy还没参与进来。