華為云云原生鉆石集訓(xùn)營 第四課:Kubernetes存儲架構(gòu)原理深度剖析(上)

      網(wǎng)友投稿 759 2022-05-28

      課程目標:

      1.了解Kubernetes容器存儲發(fā)展歷程

      2.了解Kubernetes持久化存儲原理

      3.了解PV/PVC的工作原理

      4.了解華為云CCE云原生存儲解決方案Everest的架構(gòu)

      目錄:

      1. Kubernetes容器存儲發(fā)展歷程

      2. Kubernetes持久化存儲體系

      3. PV/PVC的工作原理剖析

      4.華為云CCE云原生存儲解決方案Everest的架構(gòu)介紹

      在生產(chǎn)環(huán)境中,存儲也是種類繁雜多樣的:

      1.存儲產(chǎn)品:不同存儲提供商的產(chǎn)品存在差異性;

      2.存儲性能:不同磁盤(SATA、SAS、PCIE)的性能存在差異性;

      3.存儲類型:本地盤、塊存儲、文件存儲、對象存儲;

      4.存儲網(wǎng)絡(luò):IP、FC等

      5.存儲地域:不同存儲池所服務(wù)的地域不同

      6。。。。。。

      面對復(fù)雜存儲環(huán)境,k8s是如何應(yīng)對的呢?

      這就是我們要將討論的云原生存儲體系。

      一、Kubernetes容器存儲發(fā)展歷程

      應(yīng)用程序生成的數(shù)據(jù)可簡單分為兩類:

      1.臨時數(shù)據(jù):經(jīng)過程序處理生成的中間態(tài)數(shù)據(jù),不需要保留;

      2.結(jié)果數(shù)據(jù):經(jīng)過程序處理生成的最終態(tài)數(shù)據(jù),需要永久保留。

      k8s初期為存算分離所做的解耦設(shè)計Volume,采用強耦合、靈活性差的in-tree模式,雖然已經(jīng)讓用戶專注于業(yè)務(wù)功能設(shè)計。但這類存儲卷的生命周期是跟隨pod的,只能用作存儲臨時數(shù)據(jù),無法做為最終數(shù)據(jù)使用。

      隨著k8s的不斷成熟,為支持更多的應(yīng)用場景,提供了一種脫離pod生命周期的、用戶可管理的存儲抽象設(shè)計低耦合、靈活性更強的PersistentVolume/PersistentVolumeClaim。

      二、Kubernetes持久化存儲體系

      1. PersistentVolume:簡稱pv,持久化存儲,是k8s為云原生應(yīng)用提供一種擁有獨立生命周期的、用戶可管理的存儲抽象設(shè)計

      2. PersistentVolumeClaim:簡稱pvc,持久化存儲聲明,是K8S為解耦云原生應(yīng)用和數(shù)據(jù)存儲而設(shè)計的,通過PVC可以讓資源管控更細更靈活、團隊職責(zé)分離、應(yīng)用模板更通用,進一步解除了用戶被云平臺鎖定的顧慮。

      華為云云原生鉆石集訓(xùn)營 第四課:Kubernetes存儲架構(gòu)原理深度剖析(上)

      3. StorageClass: 簡稱sc,存儲類,是K8S平臺為存儲提供商提供存儲接入的一種聲明,通過sc和相應(yīng)的存儲插件(csi)為容器應(yīng)用提供動態(tài)分配存儲卷的能力;

      4.Driver Plugin:存儲驅(qū)驅(qū)動插件,由存儲提供商提供,能夠?qū)泳W(wǎng)絡(luò)存儲,并管理持久存儲卷的生命周期。

      持久化存儲優(yōu)勢分析

      與臨時存儲相比,PV具有:

      1.每個存儲卷可以擁有獨立的生命周期,不再跟隨pod創(chuàng)建和銷毀;

      2.使能計算+數(shù)據(jù)的遷移,也即:存儲卷中的數(shù)據(jù)可以隨pod在集群中遷移;

      3.多個不同的pod可以共享同一個存儲卷(存儲卷支持共享);

      引入PVC/SC后,帶來更大的收益:

      1.資源管控更加靈活,可適應(yīng)資源管控嚴格、寬松的不同場景;

      2.團隊職責(zé)更加明確,開發(fā)人員只需考慮存儲需求(IO、容量、訪問模式等),不需要關(guān)注存儲類型,甚至品牌;

      3.靈活的擴展一些增強功能,比如:擴容、快照能力;

      4.應(yīng)用模板更加通用,可通過參數(shù)配置,適應(yīng)不同類型的k8s平臺;

      5.進一步消除用戶被存儲提供商、云平臺鎖定的顧慮.

      三、PV/PVC的工作原理剖析

      pv/pvc綁定原理分析

      pvc刷選pv的流程(findBestMatchForClaim) :

      1.通過size刷選恰當?shù)膒v;

      2通過volumeMode刷選一致的pv;

      3.通過Label刷選合適的pv;

      4.通過sc刷選符合的pv;

      5.通過AccessMode刷選符合條件的pv;

      6.返回并綁定符合pvc條件,且size最小的pv。

      靜態(tài)卷:pv/pvc使用場景示例

      pv/pvc適合在資源管理比較嚴格的場景:

      1.開發(fā)人員向集群管理員申請存儲需求;

      2.存儲管理員按需求分配存儲;

      3.集群管理員按照分配的存儲創(chuàng)建pv;

      4.開發(fā)人員創(chuàng)建pvc, pvc關(guān)聯(lián)合適的pv;

      5.開發(fā)人員創(chuàng)建pod,并且pod使用pvc.

      四、華為云CCE云原生存儲解決方案Everest的架構(gòu)介紹

      Everest架構(gòu)介紹

      1.部署在系統(tǒng)命名空間下(kube-system)

      2.Everest管理面:Everest-csi-controller

      ①Csi-external-provisioner:負責(zé)云存儲卷的創(chuàng)建

      ②Csi-external-resizer:負責(zé)云存儲卷的擴容

      ③Csi-external-attacher:負責(zé)云盤的掛卷/卸卷

      ④Csi-external-snapshotter:負責(zé)云盤的快照

      3.Everest數(shù)據(jù)面:Everest-csi-driver (agent)

      ①Evs-csi-driver:負責(zé)將云盤格式化,并掛給pod使用;

      ②Sfs-csi-driver:負責(zé)將文件存儲卷掛給pod使用

      ③Sfsturbo-csi-driver:負責(zé)將極速文件系統(tǒng)掛給pod使用使用;

      ④Obs-csi-driver:負責(zé)將對象存儲的并行文件系統(tǒng)準備好,并給pod使用;

      本課總結(jié):

      StatefulSet:簡稱sts,有狀態(tài)應(yīng)用,一種k8s為用戶提供一組具有有序、唯一、穩(wěn)定的應(yīng)用實例集合。

      Volume:卷,k8s為存算分離所做的解耦設(shè)計,讓用戶更加專注于業(yè)務(wù)功能設(shè)計。它在k8s中是依托于pod而使用的。

      PersistentVolume:簡稱pv,持久化存儲,是k8s為云原生應(yīng)用提供一種擁有獨立生命周期的、用戶可管理的存儲抽象設(shè)計。

      PersistentVolumeClaim:簡稱pvc,持久化存儲聲明,是K8S為解耦云原生應(yīng)用和數(shù)據(jù)存儲而設(shè)計的,通過PVC可以讓資源管控更細更靈活、團隊職責(zé)分離應(yīng)用模板更通用,進一步解除了用戶被云平臺鎖定的顧慮。

      StorageClass:簡稱sc,存儲類,是K8S平臺為存儲提供商提供存儲接入的一種聲明,通過sc和相應(yīng)的存儲插件(csi/flexvolume)為容器應(yīng)用提供動態(tài)分配存儲卷的能力。

      參考鏈接:

      1.相關(guān)內(nèi)容的華為云官網(wǎng)鏈接: https://support.huaweicloud.com/usermanual-cce/cce 01_0042.html

      2.CCE云容器引擎官方首頁: https://www.huaweicloud.com/product/cce.html

      3. Kubernetes官方文檔:

      StatefulSet: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/

      Storage: https://kubernetes.io/docs/concepts/storagel/

      Kubernetes 云原生 容器

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:專家解惑 | 關(guān)于華為云盤古大模型,你想問的都在這里~
      下一篇:linux常用命令指南
      相關(guān)文章
      亚洲AV无码成人精品区日韩| 亚洲第一成人在线| 亚洲人成网站看在线播放| 久久精品国产亚洲一区二区| 国产大陆亚洲精品国产| 精品日韩99亚洲的在线发布 | 亚洲综合一区二区精品导航| 国产亚洲精品a在线观看 | 日韩欧美亚洲国产精品字幕久久久| 精品亚洲成A人无码成A在线观看| 亚洲精品福利网站| 久久精品国产亚洲77777| 亚洲爆乳精品无码一区二区三区 | 亚洲av无码潮喷在线观看 | 亚洲第一精品在线视频| 久久亚洲中文字幕精品一区| 亚洲精品美女久久久久久久| 亚洲精品日韩中文字幕久久久| 亚洲精品无码永久中文字幕| 亚洲欧洲久久久精品| 亚洲一卡2卡3卡4卡国产网站| 亚洲av永久综合在线观看尤物| 亚洲妇熟XXXX妇色黄| 国产V亚洲V天堂A无码| 亚洲av无码精品网站| 亚洲AV综合色一区二区三区| 久久亚洲国产精品| 亚洲av日韩av无码黑人| 亚洲国产精品不卡在线电影| 亚洲高清在线观看| 综合自拍亚洲综合图不卡区| 亚洲一区免费观看| 亚洲喷奶水中文字幕电影| 亚洲女人影院想要爱| 亚洲AV无码国产精品色| 亚洲精品一二三区| 亚洲成AV人片在WWW| 精品韩国亚洲av无码不卡区| 亚洲国产a级视频| 国产成人精品日本亚洲专区 | 亚洲欧美中文日韩视频|