Kubernetes是什么?
問:我們?cè)趺磾U(kuò)大或縮小容器?答:我們啟動(dòng)另外一個(gè)容器。問:我們?nèi)绾卧谌萜鏖g分?jǐn)傌?fù)荷?如果當(dāng)前服務(wù)器的負(fù)荷達(dá)到最大,那我們是否需要另外一個(gè)服務(wù)器?我們?nèi)绾巫畲蠡布褂寐??答:?.....呃......(讓我搜一下)問:如果在打更新補(bǔ)丁的時(shí)候,不影響到所有的服務(wù)?如果服務(wù)出了問題,如何才能返回之前能正常工作的版本?
Kubernetes可以解決以上所有問題(以及更多問題!)
用一句話總結(jié)Kubernetes是什么: Kubernets是容器控制平臺(tái),可以抽象所有的底層基礎(chǔ)設(shè)施(容器運(yùn)行用到的基礎(chǔ)設(shè)施) !
底層基礎(chǔ)設(shè)施的抽象
Kubernetes 通過一個(gè)簡單的 API 提供底層基礎(chǔ)設(shè)施的抽象,我們可以向該 API 發(fā)送請(qǐng)求。這些請(qǐng)求可以讓 Kubernetes 盡最大能力應(yīng)對(duì)。例如,可以簡單地要求“Kubernetes 添加映像 x 的 4 個(gè)容器?!比缓?Kubernetes 會(huì)找出使用中的節(jié)點(diǎn),并在內(nèi)添加新的容器(如圖一)

圖一
在圖一中需要了解的幾個(gè)概念:
- API server: 與集群交互的唯一方式. 負(fù)責(zé)啟動(dòng)或停止另外一個(gè)容器,或檢查當(dāng)前狀態(tài),日志等;
- Kubelet: 監(jiān)視節(jié)點(diǎn)內(nèi)的容器, 并與主節(jié)點(diǎn)交流;
- Pod: 初始階段可以把pod當(dāng)成容器;