Kubernetes Kernel(技術(shù)架構(gòu) 基礎(chǔ)知識了解)

Kubernetes Kernel

設(shè)計思想:
與傳統(tǒng)架構(gòu)區(qū)別:
更關(guān)注業(yè)務模塊
不在費心與負載均衡的選項和部署實施問題
不在考慮引入或自研一個復雜的治理框架
不在頭疼服務監(jiān)控和故障處理模塊的開發(fā)
節(jié)省30%的開發(fā)成本
自動化機制, 大幅降低系統(tǒng)后期的運維難度和成本
服務跨平臺, 無語言限制
K編程框架,中間件沒有任何侵入性, 現(xiàn)有服務更容易遷移到該平臺
完全屏蔽底層網(wǎng)絡的細節(jié),基于Service的虛擬IP(Cluster IP)的設(shè)計思路,讓架構(gòu)與底層的硬件拓撲無關(guān)

Master

分支三進程: 實現(xiàn)了整個集群的資源管理, Pod調(diào)度, 彈性伸縮, 安全控制, 系統(tǒng)監(jiān)控和糾錯等管理功能, 且為自動完成.

高可用部署建議3臺服務器互備, 集群首腦.

Kube-apiserver

提供Http Rest接口的關(guān)鍵服務進程, 是K里所有資源的增刪改查等操作的唯一入口,也是集群控制的入口進程.

Kube-controller-manager

K里所有資源對象的自動化控制中心,可以理解為資源對象的"大總管"

Kube-scheduler

負責資源調(diào)度(Pod調(diào)度)的進程, 相當于公交公司的"調(diào)度室"

etcd

K-V數(shù)據(jù)庫
存儲K里所有資源對象的數(shù)據(jù)

Node

早期版本叫Minion, 可以是一臺物理機或虛擬機
Node故障, Master會將工作調(diào)度到其他Node
作為集群工作節(jié)點, 運行真正的應用程序, 最小單元為Pod.
倆服務進程Kubelet&Kube-proxy,主要負責Pod的創(chuàng)建,啟動,監(jiān)控,重啟,銷毀,以及實現(xiàn)軟件模式的負載均衡器.


Node可以再運行期間動態(tài) Add到K集群中, 前提是這個節(jié)點上已經(jīng)正確安裝,配置和啟動了上述關(guān)鍵進程, 默認情況下Kubelet會向Master注冊自己, 這也是K推薦的Node管理方式, 一旦Node被納入集群管理范圍, Kubelet進程會定時向Master匯報自身情況, 包括操作系統(tǒng),Docker版本,機器的CPU和內(nèi)存, 以及那些Pod再運行等, 這樣Master可以獲知每個Node的資源使用情況, 并實現(xiàn)高效均衡的資源調(diào)度策略, 如果Node指定時間內(nèi)不上報信息, 會被Master判定為"失聯(lián)", Node會被標記為不可用(Not Ready), 隨后Master會觸發(fā)"工作負載大轉(zhuǎn)移"的自動流程.

Kubelet

負責Pod對應的容器的創(chuàng)建,啟停等任務,同時與Master密切協(xié)作,實現(xiàn)集群管理的基本功能

Kube-proxy

實現(xiàn)K Service的通信與負載均衡機制的重要組件

Docker Engine(docker)

Docker引擎, 負責本機的容器創(chuàng)建和管理工作

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容