摘要:基本架構彩色版基本概念節點運行著集群管理相關的一組進程這些進程實現了整個集群的資源管理調度彈性伸縮安全控制系統監控糾錯等管理功能。內置了透明的負載均衡以及故障恢復的機制。標簽解決與之間的關聯問題。
基本架構
彩色版
基本概念 Mastermaster節點運行著集群管理相關的一組進程:
etcd
kube-apiserver
kube-controller-manager
scheduler
這些進程實現了整個集群的資源管理、Pod調度、彈性伸縮、安全控制、系統監控、糾錯等管理功能。
Node(節點)之前的版本叫做Minion,可以是一臺物理主機,也可以是一臺虛擬機。
每個Node上運行用于啟動和管理Pod的服務Kubelet
運行Kubelet、kube-proxy、docker daemon等服務進程
相關命令
kubectl get node
NAME LABELS STATUS AGE xxx kubernetes.io/hostname=xxxx Ready 3h 127.0.0.1 kubernetes.io/hostname=127.0.0.1 NotReady 3h
kubectl describe node xxx
Pod(最小調度單元、服務隔離)一個Pod可以被一個容器化的環境看做是應用層的邏輯宿主機(Logical Host),通常一個Node中可以運行幾百個Pod,每個Pod中有多個容器應用,同一個Pod中的多個容器應用通常是緊密耦合的(相當于多個業務容器組成的一個邏輯虛擬機)。
每個Pod中有一個特殊的Pause容器,其他的成為業務容器,這些業務容器共享Pause容器的網絡棧以及Volume掛載卷,因而他們之間的通信及數據交互更為高效。
同一個pod中的業務容器共享如下資源:
PID命名空間(不同應用程序可以看到其他應用程序的PID)
網絡命名空間(pod中多個容器可以訪問同一個IP和端口范圍)
IPC命名空間(能夠使用SystemV IPC或者POSIX消息隊列進行通信)
UTS命名空間(共享同一個主機名)
Volumes(訪問定義在pod級別的存儲卷)
Replication Controller(管理一組Pod)kubernetes通過RC中定義的Label篩選出對應的Pod實例并實時監控其狀態和數量,如果實例數量少于定義的副本數量,則會根據RC中定義的Pod模板來創建一個新的Pod,然后Scheduler將此Pod調度到合適的Node上啟動運行,直到Pod實例數量達到預定目標。這個過程完全是自動化的。
確保用戶期望的Pod數量(創建或銷毀Pod)
在線Pod數量調整
Service(一組提供相同服務的pod的對外訪問接口)具有如下特征:
擁有一個唯一指定的名字
擁有一個虛擬IP和端口號
能夠提供某種遠程服務能力
被映射到提供這種服務能力的一組容器上
service的服務進程目前都基于socket通信方式對外提供服務。
kubernetes內置了透明的負載均衡以及故障恢復的機制。
Label(標簽)解決service與pod之間的關聯問題。kubernetes給每個pod貼上一個標簽,然后給service定義定義標簽選擇器。
Scheduler(將Pod調度到Node上)將Pod調度到合適的Node上啟動運行
Volume(容器共享存儲卷)pod中能夠被多個容器訪問的共享目錄,與pod同生命周期,但與容器的生命周期無關,當容器終止或重啟時,volume中的數據不會丟失。
Namespace(命名空間)使用namespace來組織kubernetes的各種對象,可以實現用戶的分組(多租戶),對不同的租戶還可以進行多帶帶的資源設置和管理,是的整個集群的資源配置非常靈活。
參考Kubernetes: Getting Started With a Local Deployment
Kubernetes權威指南
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/32442.html
摘要:功能強大擴展性高,在許多人看來,它正在成為云計算的終極解決方案。我已經多次給具有豐富存儲和云計算經驗的人解釋過這些問題,他們幾乎都是抓耳撓腮,不明白這是怎么回事。和可能因為和使用起來太麻煩了,在年月,隨著版本的發布,引入了動態納管和的概念。 Kubernetes存儲全解!你知道PV和PVC的區別嗎?storage class和provisioner是什么關系?VolumeClaimTe...
摘要:標識是與操作對象間的紐帶。集群為每個對象維護三類信息對象元數據期望狀態與實際狀態元數據指對象的基本信息,比如命名標簽注釋等等,用于識別對象期望狀態一般由用戶配置來描述的實際狀態是由集群各個組件上報的集群實際的運行情況。 綜述 學習Kubernetes時,發現它的概念和術語還是比較多的,光靠啃官方文檔比較晦澀。所以邊學習邊整理,對主要的概念和術語做一下分類及簡要說明。感覺把重要概念都理解...
摘要:它最基本的功能是實現了虛擬交換機,可以把虛擬網卡和虛擬交換機的端口連接,這樣一個交換機下的多個網卡網絡就打通了,類似的功能。最基礎的分布式虛擬交換機,這樣可以將多臺機器上的容器組織在一個二層網絡下,看上去就好像所有容器接在一臺交換機上。 【編者的話】Kubernetes經過了幾年的發展,存在著很多的網絡方案。然而網絡虛擬化在Kubernetes出現前就一直在發展,其中基于OpenVsw...
摘要:在上更進一步時,我們需要了解一些之前不存在的東西,比如基于角色的訪問控制等等。這些功能一年前還沒有,但現在正在變得越來越重要,對于在整個流程上的不同角色來說好處多多,確保正在做的事情不會影響到其他不該觸及的事情。 在過去的一年多時間了里,我們深入了解了容器編排工具,引導團隊構建并發布了可以部署在kubernetes上的cloud native GitLab helm chart。對于正...
摘要:本文中,我們將描述系統的架構開發演進過程,以及背后的驅動原因。應用管理層提供基本的部署和路由,包括自愈能力彈性擴容服務發現負載均衡和流量路由。 帶你了解Kubernetes架構的設計意圖、Kubernetes系統的架構開發演進過程,以及背后的驅動原因。 showImg(https://segmentfault.com/img/remote/1460000016446636?w=1280...
閱讀 2964·2023-04-26 02:04
閱讀 1278·2021-11-04 16:07
閱讀 3699·2021-09-22 15:09
閱讀 678·2019-08-30 15:54
閱讀 1899·2019-08-29 14:11
閱讀 2525·2019-08-26 12:19
閱讀 2255·2019-08-26 12:00
閱讀 752·2019-08-26 10:27