docker :
? namespace : 環(huán)境隔離(進(jìn)程蚌吸、網(wǎng)絡(luò)以及文件系統(tǒng))
? cgroup:資源隔離(cpu窘茁、內(nèi)存)
? UnionFS(鏡像分層存儲)
k8S:
? master:master節(jié)點(diǎn)是k8s集群的控制節(jié)點(diǎn)瘟斜,負(fù)責(zé)整個集群的管理與控制。
? kube-apiserver:集群控制的入口拂共,提供http服務(wù)唆途。
? kube-controller-manager:集群中所有資源對象的自動化控制中心硬贯。
? kube-scheduler:負(fù)責(zé)pod的調(diào)度
? node:NODE節(jié)點(diǎn)是k8s集群中的工作節(jié)點(diǎn)焕襟,Node上的工作負(fù)載由master節(jié)點(diǎn)分配,工作負(fù)載主要是運(yùn)行容器應(yīng)用饭豹。
? kubelet:負(fù)責(zé)Pod的創(chuàng)建鸵赖、啟動、監(jiān)控墨状、重啟卫漫、銷毀等工作,同時與master節(jié)點(diǎn)協(xié)作肾砂,實(shí)現(xiàn)集群管理的基本功能。
? kube-proxy:實(shí)現(xiàn)k8s service的通信和負(fù)載均衡宏悦。
? Pod:k8s最基本的部署調(diào)度單元镐确,每個pod可以由一個或多個業(yè)務(wù)容器和一個根容器(pause)組成,一個pod表示一個應(yīng)用實(shí)例饼煞。
? Deployment:表示部署源葫,內(nèi)部用replicaset實(shí)現(xiàn),可以用來生成相應(yīng)的replicaset完成pod副本的創(chuàng)建砖瞧。
? service:k8S最主要的資源對象息堂,k8S中的service對象可以對應(yīng)微服務(wù)中的服務(wù),service定義了服務(wù)的訪問入口块促,服務(wù)的調(diào)用者通過這個地址訪問service后端的pod副本實(shí)例荣堰。service通過label selector同pod副本建立關(guān)系,deployment保證pod副本的數(shù)量竭翠,也是保證服務(wù)的伸縮性振坚。
Pod創(chuàng)建流程:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ●用戶通過REST API創(chuàng)建一個Pod
? ●apiserver將其寫入etcd
? ●scheduluer 檢測到未綁定Node的Pod,開始調(diào)度并更新Pod的Node綁定
? ●kubelet檢測到有新的Pod調(diào)度過來,通過container runtime運(yùn)行該P(yáng)od
? ●kubelet 通過container runtime取到Pod狀態(tài)斋扰,并更新到apiserver中