Kubernetes

如果想要將Docker應(yīng)用于具體的業(yè)務(wù)實現(xiàn),是存在困難的——編排、管理和調(diào)度等各個方面,都不容易。于是,人們迫切需要一套管理系統(tǒng),對Docker及容器進行更高級更靈活的管理。

K8S,就是基于容器的集群管理平臺,它的全稱,是kubernetes。K8S的創(chuàng)造者,是眾人皆知的行業(yè)巨頭——Google。然而,K8S并不是一件全新的發(fā)明。它的前身,是Google自己搗鼓了十多年的Borg系統(tǒng)。

K8S的架構(gòu),略微有一點復(fù)雜,我們簡單來看一下。

一個K8S系統(tǒng),通常稱為一個K8S集群(Cluster)。

這個集群主要包括兩個部分:

一個Master節(jié)點(主節(jié)點)

一群Node節(jié)點(計算節(jié)點)

一看就明白:Master節(jié)點主要還是負(fù)責(zé)管理和控制。Node節(jié)點是工作負(fù)載節(jié)點,里面是具體的容器。

首先是Master節(jié)點

Master節(jié)點包括API Server、Scheduler、Controller manager、etcd。

API Server是整個系統(tǒng)的對外接口,供客戶端和其它組件調(diào)用,相當(dāng)于“營業(yè)廳”。

Scheduler負(fù)責(zé)對集群內(nèi)部的資源進行調(diào)度,相當(dāng)于“調(diào)度室”。

Controller manager負(fù)責(zé)管理控制器,相當(dāng)于“大總管”。

Node節(jié)點包括Docker、kubelet、kube-proxy、Fluentd、kube-dns(可選),還有就是Pod。

Pod是Kubernetes最基本的操作單元。一個Pod代表著集群中運行的一個進程,它內(nèi)部封裝了一個或多個緊密相關(guān)的容器。除了Pod之外,K8S還有一個Service的概念,一個Service可以看作一組提供相同服務(wù)的Pod的對外訪問接口。這段不太好理解,跳過吧。

Docker,不用說了,創(chuàng)建容器的。

Kubelet,主要負(fù)責(zé)監(jiān)視指派到它所在Node上的Pod,包括創(chuàng)建、修改、監(jiān)控、刪除等。

Kube-proxy,主要負(fù)責(zé)為Pod對象提供代理。

Fluentd,主要負(fù)責(zé)日志收集、存儲與查詢。

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

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

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