淺談k8s:k8s部署架構以及工作原理
阿新 • • 發佈:2019-04-29
uber blog net clust RoCE manage service pro cto 對於每個想落地kubernetes應用的工程師來說,熟悉kubernetes的架構和工作原理是必經之路,也是必須知道的知識,只有了解kubernetes的架構和工作原理才能更好的應用kubernetes!
kubernetes架構
Kubernetes最初源於谷歌內部的Borg,提供了面向應用的容器集群部署和管理系統,所以整體的架構和borg很相似,整個架構有api server,control manager,scheduler,etcd,kubelet,kube-proxy,network-plugin等相關組件完成,整體架構如下:
其中
Api server,Control manager,Scheduler,Etcd屬於master節點,相關組件功能如下:
1.Etcd保存了整個集群的狀態;
2.Apiserver提供了資源操作的唯一入口,並提供認證、授權、訪問控制、API註冊和發現等機制;
3.Controller manager負責維護集群的狀態,比如故障檢測、自動擴展、滾動更新等;
4.Scheduler負責資源的調度,按照預定的調度策略將Pod調度到相應的機器上;
Kubelet,Container runtine,Kube-proxy屬於woker節點,相關組件功能如下:
kubelet負責維護容器的生命周期,同時也負責Volume(CSI)和網絡(CNI)的管理; Container runtime負責鏡像管理以及Pod和容器的真正運行(CRI); kube-proxy負責為Service提供cluster內部的服務發現和負載均衡;
淺談k8s:k8s部署架構以及工作原理