最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

深究Kubernetes源碼-存儲(chǔ)-8 Volume創(chuàng)建掛載流程總結(jié)

2022-09-15 09:22 作者:黑暗光影DIY  | 我要投稿


分析基于kubernetes v1.26

kubernetes的動(dòng)態(tài)Volume創(chuàng)建和掛載共涉及7個(gè)組件(scheduler另外分析),包括在3個(gè)項(xiàng)目中,如下圖,三個(gè)項(xiàng)目為kubernetes、kubernetes-csi和csi plugin項(xiàng)目,其中kubernetes和kubernetes-csi項(xiàng)目由kubernetes社區(qū)維護(hù),csi plugin項(xiàng)目則由存儲(chǔ)提供方維護(hù),例如cinder csi plugin由OpenStack Cinder 相關(guān)維護(hù)。核心流程如下,總體上分大致為三個(gè)階段15個(gè)步驟:


階段一,Create&Bind

1 當(dāng)kube-apiserver收到PVC創(chuàng)建請(qǐng)求,創(chuàng)建PVC,kube-controllermanager 中的PVController 通過(guò)PVC Informer獲取到新的PVC,通過(guò)syncClaim協(xié)程對(duì)PVC進(jìn)行處理

2 對(duì)設(shè)置了StorageClassName的PVC進(jìn)行動(dòng)態(tài)Provision,對(duì)于CSI Volume則更新PVC Annotation volume.beta.kubernetes.io/storage-provisioner: {provisioner}, 例如cinder csi plugin的StorageClass Provisioner為cinder.csi.openstack.org

3 external-provisioner ProvisionController通過(guò)PVC Informer獲取到PVC,在syncClaim協(xié)程中處理Annotation provisioner于自己的csi driverName一致的PVC

4 external-provisioner 通過(guò)gRPC調(diào)用csi-controller-plugin CreateVolume接口創(chuàng)建Volume

5 完成Volume創(chuàng)建后external-provisioner創(chuàng)建PV

6 PVController 執(zhí)行對(duì)PV/PVC只想bind操作,將PV/PVC的狀態(tài)設(shè)置為Bound


階段二,Controller Attach

7 當(dāng)kube-controllermanager AttachDetachController通過(guò)Pod/PVC/PV Informer發(fā)現(xiàn)PVC被Pod所引用,并且Pod已經(jīng)調(diào)度到了某個(gè)節(jié)點(diǎn),執(zhí)行Attach操作,對(duì)于CSI Volume,生成VolumeAttachment資源

9 external-attacher通過(guò)VolumeAttachment Informer獲取到最新VA

10 syncVA協(xié)程中執(zhí)行Attach操作,通過(guò)gRPC調(diào)用csi-controller-plugin ControllerPublishVolume

11 更新VA狀態(tài)到attached,并更新PV Finalizer


階段三,Node Attach&Mount

12 kubelet在獲取到對(duì)應(yīng)的Pod執(zhí)行Pod創(chuàng)建,等待Volume掛載完成

13 kubelet VolumeManager Reconcile協(xié)程通過(guò)gRPC調(diào)用csi-node-plugin NodeStageVolumne

14 kubelet VolumeManagter Reconcile協(xié)程通過(guò)gRPC調(diào)用csi-node-plugin NodePublishVolume

15 完成Pod創(chuàng)建,更新Pod狀態(tài)


深究Kubernetes源碼-存儲(chǔ)-8 Volume創(chuàng)建掛載流程總結(jié)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
江陵县| 微山县| 渑池县| 时尚| 八宿县| 林西县| 沐川县| 扶风县| 阆中市| 琼海市| 铅山县| 六盘水市| 蕉岭县| 横峰县| 乌鲁木齐市| 东乌珠穆沁旗| 濉溪县| 高碑店市| 通城县| 龙海市| 和静县| 改则县| 庆阳市| 三原县| 天镇县| 房山区| 普兰县| 六枝特区| 淮安市| 高平市| 宜兴市| 龙胜| 德钦县| 德兴市| 西和县| 姚安县| 商水县| 任丘市| 苏尼特左旗| 明溪县| 青海省|