Kubernetes是生產級別的容器編排系統,其物理集群有Master和Node兩種類型的節點。
Master節點的進程有:
root@k8s:~# ps -el | grep kube
4 S 0 6224 6152 0 80 0 - 188636 futex_ ? 00:05:00 kube-scheduler
4 S 0 6275 6196 1 80 0 - 206354 ep_pol ? 00:23:02 kube-controller
4 S 0 6287 6181 5 80 0 - 278080 futex_ ? 01:19:40 kube-apiserver
4 S 0 6501 1 3 80 0 - 487736 futex_ ? 00:46:38 kubelet
4 S 0 6846 6818 0 80 0 - 187044 futex_ ? 00:00:26 kube-proxy
Node節點的進程有:
# node1
root@k8s:~# ps -el | grep kube
4 S 0 22869 22845 0 80 0 - 187172 futex_ ? 00:00:23 kube-proxy
4 S 0 26395 1 2 80 0 - 505977 futex_ ? 00:28:10 kubelet
# node2
root@k8s:/# ps -el | grep kube
4 S 0 28227 1 1 80 0 - 487480 futex_ ? 00:17:26 kubelet
4 S 0 28724 28696 0 80 0 - 187044 futex_ ? 00:00:17 kube-proxy
Kubernetes官網,給出的集群組件如下圖所示:
各組件的大致含義是什么:
kube-api-server是負責提供Kubernetes API服務的組件,所有請求都要調用這個組件,結果狀態存在etcd數據庫中。
etcd 是鍵值數據庫,存儲配置信息和狀態信息。
kube-scheduler是負責資源調度的組件,決定將Pod放在哪個Node上運行。
kube-controller-manager是在主節點上運行控制器的組件,負責管理資源并使之處于“用戶期望”的狀態。
kubelet是一個在集群中每個節點上運行的代理。接受kube-scheduler的調度請求,并根據請求信息創建和運行容器。
kube-proxy是集群中每個節點上運行的網絡代理,實現對外服務的提供。
簡單地理解,Master節點是集群的大腦,負責策略應用程序的部署,并達到用戶的期望狀態。具體來說,可以將Master節點本身看成一個APP,該APP接收用戶的部署請求,并將其記錄到數據庫中。同時,根據集群的負載進行資源的靈活調度(Schedule),當資源出現異常時,通過Controller來達到“用戶期望”的狀態。
Node節點是干活的角色,有2個職責,一個是負責創建Pod,提供應用程序的運行環境。這個職責由kubelet組件負責。另一個是負責提供對外服務的訪問點,以便外部能夠訪問。這個職責由kube-proxy負責。
-
節點
+關注
關注
0文章
220瀏覽量
24526 -
容器
+關注
關注
0文章
499瀏覽量
22120 -
MASTER
+關注
關注
0文章
104瀏覽量
11329 -
node
+關注
關注
0文章
23瀏覽量
5953 -
kubernetes
+關注
關注
0文章
227瀏覽量
8752
發布評論請先 登錄
相關推薦
評論