【K8s概念】CSI 卷克隆

WellBay 2月前


標籤:而不是   方式   mode   修改   pac   使用   建立   目標   namespace   

介紹

CSI 卷克隆功能增加了通過在 dataSource 欄位中指定存在的 PVC, 來表示使用者想要克隆的 卷(Volume)。

克隆(Clone),意思是為已有的 Kubernetes 卷建立副本,它可以像任何其它標準卷一樣被使用。 唯一的區別就是配置後,後端裝置將建立指定完全相同的副本,而不是建立一個“新的”空卷。

從 Kubernetes API 的角度看,克隆的實現只是在建立新的 PVC 時, 增加了指定一個現有 PVC 作為資料來源的能力。源 PVC 必須是 bound 狀態且可用的(不在使用中)。

使用者在使用該功能時,需要注意以下事項:

  • 克隆支援(VolumePVCDataSource)僅適用於 CSI 驅動。
  • 克隆支援僅適用於 動態供應器。
  • CSI 驅動可能實現,也可能未實現卷克隆功能。
  • 僅當 PVC 與目標 PVC 存在於同一名稱空間(源和目標 PVC 必須在相同的名稱空間)時,才可以克隆 PVC。
  • 僅在同一儲存類中支援克隆。
    • 目標卷必須和源卷具有相同的儲存類
    • 可以使用預設的儲存類並且 storageClassName 欄位在規格中忽略了
  • 克隆只能在兩個使用相同 VolumeMode 設定的卷中進行 (如果請求克隆一個塊儲存模式的卷,源卷必須也是塊儲存模式)。

製備

克隆卷與其他任何 PVC 一樣配置,除了需要增加 dataSource 來引用同一名稱空間中現有的 PVC。

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
    name: clone-of-pvc-1
    namespace: myns
spec:
  accessModes:
  - ReadWriteOnce
  storageClassName: cloning
  resources:
    requests:
      storage: 5Gi
  dataSource:
    kind: PersistentVolumeClaim
    name: pvc-1

說明:你必須為 spec.resources.requests.storage 指定一個值,並且你指定的值必須大於或等於源卷的值。

結果是一個名稱為 clone-of-pvc-1 的新 PVC 與指定的源 pvc-1 擁有相同的內容。

使用

一旦新的 PVC 可用,被克隆的 PVC 像其他 PVC 一樣被使用。 可以預期的是,新建立的 PVC 是一個獨立的物件。 可以獨立使用、克隆、快照或刪除它,而不需要考慮它的原始資料來源 PVC。 這也意味著,源沒有以任何方式連結到新建立的 PVC,它也可以被修改或刪除,而不會影響到新建立的克隆。

【K8s概念】CSI 卷克隆

標籤:而不是   方式   mode   修改   pac   使用   建立   目標   namespace   

原文地址:https://www.cnblogs.com/varden/p/15074648.html


上一篇:getLastRowNum()與getLastCellNum()/getPhysicalNumberOfRows()與getPhysicalNumberOfCells()
下一篇:vue3.0使用ant-design-vue進行按需載入原來這麼簡單