Master
集群控制節點,所有的控制命令都是由Master節點發出,所以必須保證高可用。
Master 上邊運行如下進程:
1. Kubernetes API Server: 提供Http Rest 接口的服務進程,資源增刪改查的入口
2. Kubernetes Controller Manager:資源的自動化控制中心
3. Kubernetes Scheduler:負責資源調用
Node
集群中除Master之外的其他機器節點,是集群中的工作負載節點。
每個Node上運行如下進程:
- kubelet: 負責對應容器的創建、啟停等任務,與Master 節點密切協作,實現集群管理的基本功能
- kube-proxy: 實現Kubernetes Service 的通信和負責均衡的重要組件
- Docker Engine: docker 引擎,負責本機的容器創建和管理工作。
Pod
Kubernetes 的最小操作單元,是一組完整功能的容器組,裡面必須包含一個Pause的根容器,負責Pod的日常,另外包含若干個具有一定功能的業務容器,這些容器一起組成一個完整的功能。
Label
由Key-Value組成的鍵值對,和資源對象進行多對多綁定,主要是為了過濾,搜索和分組資源。
Replication Controller
簡稱RC,定義了一組目標,如果在某一時刻未達到目標,則自身有機制實現這個目標。在新版本改名為Replica Set。其定義包含以下部分:
- 定義Pod的副本數量
- 定義用於篩選目標Pod的Label Seletor
- 當Pod的副本少於定義的目標時,用於創建新的Pod的Pod模板
Deployment
Pod的一個更高層級的抽象,用於瞭解一個或一組Pod在目標Node上的創建、調度、綁定的完整過程。
- Horizontal Pod Autoscaler
- StatefulSet
- ## Service
- 我們常說的微服務,是一個完整功能的抽象。可能是一個或多個Pod的集合,是一種邏輯上的聚合。
Volume
存儲卷,和Docker的volume類似單不等價,kubernetes的volume是定義在Pod上,Pod中的容器是共享的,也就是生命週期和Pod一致。
Namespace
命名空間,是kubernetes 的邏輯隔離概念,比如用來隔離不動的環境等。
Annotation
一種和Label類似的鍵值對,用戶附加一些額外信息,定義規則比較自由,主要便於外部應用搜索使用。
閱讀更多 程序猿鵬哥 的文章