首先,它是全新的基于容器技術的分布式架構領先方案。最后,是一個完備的分布式系統(tǒng)支撐平臺,具有完備的集群管理能力。
Service是分布式集群架構的核心,關鍵特征有四個:
????擁有唯一指定的名字?
????擁有虛擬IP和端口號
????能夠提供遠程服務能力
????被映射到提供遠程服務能力的一組容器上
Service的服務進程否基于Socket通信方式對外提供服務,Service通常由多個相關的服務進程來提供服務,每個服務進程都有一個獨立的Endpoint(IP+Port)訪問點,k8s能夠讓我們通過Service連接到指定的Service上。
Pod對象,容器提供了強大的隔離功能,可以把為Service提供服務的這組進程放入容器中進行隔離,因此設計了Pod對象,將每個服務進程包裝到相應的Pod中,使其成為Pod中運行的一個容器。Service與Pod之間通過Label標簽進行關聯(lián),Service的標簽選擇器Label Selector和Pod的Label標簽的name相同,即進行了關聯(lián)。
Pod通常運行在一個節(jié)點上,一個節(jié)點上一般運行幾百個Pod,每個Pod里面運行一個Pause的根容器,其他容器為業(yè)務容器,業(yè)務容器共享Pause容器的網(wǎng)絡棧和Volume掛載卷。只有提供服務的一組Pod才會被映射成一個服務。
Master節(jié)點上運行著kube-apiserver、kube-controller-manager和kube-scheduler,這些進程實現(xiàn)了整個集群的資源管理、Pod調度、彈性伸縮、安全控制等管理功能。Node為工作節(jié)點,運行k8s管理的最小單元Pod,運行kubelet、kube-proxy服務進程,負責Pod的創(chuàng)建、啟動、銷毀等。
k8s 的服務擴容和服務升級,只需為需要擴容的Service關聯(lián)的Pod創(chuàng)建一個RC,通過Label篩選出相應的Pod。根據(jù)RC文件會自動創(chuàng)建Pod,還會啟動相應的容器。
k8s是微服務架構。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?2018-12-26k8s-權威指南