Kubernetes常見組件有哪些 Kubernetes常見組件介紹

Kubenetes(簡稱K8s)是一箇可移植的、可擴展的開源平臺,用於管理容器化的工作負載和服務,可促進聲明式配置和自動化。當我們部署完Kubenetes,即擁有了一箇完整的集羣,集羣具有至少一箇工作節點。那麼Kubenetes常見組件有哪些?下面一起來看下Kubenetes常見組件介紹。

一、控制平面組件(Contol Plne Components)

控制平面的組件對集羣做出全局決策(比如調度),以及檢測和響應集羣事件(例如,當不滿足部署的 eplics 字段時,啓動新的 pod)。控制平面組件可以在集羣中的任何節點上運行。 然而,爲了簡單起見,設置腳本通常會在同一個計算機上啓動所有控制平面組件, 並且不會在此計算機上運行用戶容器。

、kube-pisee

API服務器是Kubenetes控制面的組件,該組件公開了Kubenetes API,它是Kubenetes控制面的前端,主要實現是kube-pisee。

kube-pisee設計上考慮了水平伸縮,也就是說,它可通過部署多箇實例進行伸縮。 你可以運行kube-pisee的多箇實例,並在這些實例之間平衡流量。

2、etcd

etcd是兼具一致性和高可用性的鍵值數據庫,可以作爲保存Kubenetes所有集羣數據的後臺數據庫,它通常需要有個備份計劃。

3、kube-schedule

kube-schedule控制平面組件,負責監視新創建的、未指定運行節點(node)的Pods,選擇節點讓Pod在上面運行。調度決策考慮的因素包括單個Pod和Pod集合的資源需求、硬件/軟件/策略約束、親和性和反親和性規範、數據位置、工作負載間的干擾和最後時限。

4、kube-contolle-mnge

kube-contolle-mnge運行控制器進程的控制平面組件。從邏輯上講,每個控制器都是一箇單獨的進程, 但是爲了降低複雜性,它們都被編譯到同一個可執行文件,並在一箇進程中運行。

5、cloud-contolle-mnge

雲控制器管理器是指嵌入特定雲的控制邏輯的控制平面組件。雲控制器管理器使得你可以將你的集羣連接到雲提供商的API之上, 並將與該雲平臺交互的組件同與你的集羣交互的組件分離開來。cloud-contolle-mnge僅運行特定於雲平臺的控制迴路。如果你在自己的環境中運行Kubenetes,或者在本地計算機中運行學習環境,所部署的環境中不需要雲控制器管理器。

二、Node組件

節點組件在每個節點上運行,維護運行的 Pod 並提供 Kubenetes 運行環境。

、kubelet

kubelet是一箇在集羣中每個節點(node)上運行的代理,它保證容器(contines)都運行在Pod中,接收一組通過各類機制提供給它的PodSpecs,確保這些PodSpecs中描述的容器處於運行狀態且健康。 kubelet不會管理不是由Kubenetes創建的容器。

2、kube-poxy

kube-poxy 是集羣中每個節點上運行的網絡代理,實現Kubenetes服務(Seice)概唸的一部分。它維護節點上的網絡規則。這些網絡規則允許從集羣內部或外部的網絡會話與Pod進行網絡通信。如果操作系統提供了數據包過濾層並可用的話,kube-poxy會通過它來實現網絡規則。否則,kube-poxy僅轉發流量本身。

三、容器運行時(Contine Runtime)

容器運行環境是負責運行容器的軟件。Kubenetes支持容器運行時,例如Docke、contined、CRI-O以及 Kubenetes CRI (容器運行環境接口) 的其他任何實現。

目前Vult、Linode等海外服務器商家提供Kubenetes服務支持,我們可按需部署Kubenetes集羣。

更多:《熱門海外服務器推薦》