Kubernetes 這個(gè)單詞來(lái)自于希臘語(yǔ),含義是舵手或領(lǐng)航員。Kubernetes簡(jiǎn)稱k8s,因?yàn)閗到s有8個(gè)字母。Kubernetes是谷歌貢獻(xiàn)給開源社區(qū)的,是谷歌根據(jù)自己內(nèi)部容器borg(布谷鳥),在去除自己業(yè)務(wù)屬性后開源的一個(gè)產(chǎn)品。
K8s的標(biāo)準(zhǔn)架構(gòu)中是以集群為整體的,一個(gè)集群就是一套完整的k8s產(chǎn)品,大多數(shù)企業(yè)會(huì)在其上封裝管理面進(jìn)行集群級(jí)別的管理;
集群中會(huì)有一個(gè)主控節(jié)點(diǎn)master,負(fù)責(zé)管理整個(gè)容器集群,一般由于其中使用的etcd,高可用場(chǎng)景下master的數(shù)量至少是3個(gè);
集群中會(huì)有很多的業(yè)務(wù)節(jié)點(diǎn)node,負(fù)責(zé)運(yùn)行容器應(yīng)用。Master會(huì)在每個(gè)node上安裝kubelet作為其管理node的agent;
用戶使用k8s時(shí)通過master上的apiserver,調(diào)用聲明式的接口里定義所需要的應(yīng)用、服務(wù)等各類資源對(duì)象,master的控制器和調(diào)度器會(huì)根據(jù)用戶的定義,在node中進(jìn)行創(chuàng)建,并且時(shí)刻監(jiān)控其狀態(tài),保證一直符合用戶的定義;
在node上容器應(yīng)用,通過kubeproxy提供統(tǒng)一訪問能力。
