七、Kubernetes 架構(上)
Kubernetes Cluster 由 Master 和 Node 組成,節點上運行著若干 Kubernetes 服務,
(一)Master 節點
? Master 是 Kubernetes Cluster 的大腦,運行著如下 Daemon 服務:kube-apiserver、kube-scheduler、kube-controller-manager、etcd 和 Pod 網路(例如 flannel),
(1)API Server(kube-apiserver)
? API Server 提供 HTTP/HTTPS RESTful API,即 Kubernetes API,API Server 是 Kubernetes Cluster 的前端介面,各種客戶端工具(CLI 或 UI)以及 Kubernetes 其他組件可以通過它管理 Cluster 的各種資源,
(2)Scheduler(kube-scheduler)
? Scheduler 負責決定將 Pod 放在哪個 Node 上運行,Scheduler 在調度時會充分考慮 Cluster 的拓撲結構,當前各個節點的負載,以及應用對高可用、性能、資料親和性的需求,
(3)Controller Manager(kube-controller-manager)
? Controller Manager 負責管理 Cluster 各種資源,保證資源處于預期的狀態,Controller Manager 由多種 controller 組成,包括 replication controller、endpoints controller、namespace controller、serviceaccounts controller 等,
? 不同的 controller 管理不同的資源,例如 replication controller 管理 Deployment、StatefulSet、DaemonSet 的生命周期,namespace controller 管理 Namespace 資源,
(4)etcd
? etcd 負責保存 Kubernetes Cluster 的配置資訊和各種資源的狀態資訊,當資料發生變化時,etcd 會快速地通知 Kubernetes 相關組件,
(5)Pod 網路
? Pod 要能夠相互通信,Kubernetes Cluster 必須部署 Pod 網路,flannel 是其中一個可選方案,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/251999.html
標籤:其他
上一篇:推薦 | Transformer最新成果!Learn to Dance with AIST++: Music Conditioned 3D Dance Generation!
