Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

名前空間を越えてボリュームを複製する

共同作成者 netapp-aruldeepa

Tridentを使用すると、同じ Kubernetes クラスター内の別の名前空間の既存のボリュームまたはボリュームスナップショットを使用して新しいボリュームを作成できます。

前提条件

ボリュームを複製する前に、ソースと宛先のバックエンドが同じタイプであり、同じストレージ クラスを持っていることを確認してください。

メモ 名前空間をまたがるクローン作成は、 `ontap-san`そして `ontap-nas`ストレージ ドライバー。読み取り専用クローンはサポートされていません。

クイック スタート

わずか数ステップでボリュームのクローンを設定できます。

1ボリュームを複製するためのソースPVCを構成する

ソース名前空間の所有者は、ソース PVC 内のデータにアクセスする権限を付与します。

2宛先名前空間に CR を作成する権限を付与する

クラスター管理者は、宛先名前空間の所有者に TridentVolumeReference CR を作成する権限を付与します。

三つ宛先名前空間にTridentVolumeReferenceを作成する

宛先名前空間の所有者は、ソース PVC を参照するための TridentVolumeReference CR を作成します。

4宛先名前空間にクローンPVCを作成する

宛先名前空間の所有者は、ソース名前空間から PVC を複製するための PVC を作成します。

ソースと宛先の名前空間を構成する

セキュリティを確保するために、名前空間間でボリュームを複製するには、ソース名前空間の所有者、クラスター管理者、および宛先名前空間の所有者による共同作業とアクションが必要です。各ステップでユーザー ロールが指定されます。

手順
  1. ソース名前空間の所有者: PVCを作成する(pvc1)ソース名前空間(namespace1)は、宛先名前空間と共有する権限を付与します(namespace2)を使用して `cloneToNamespace`注釈。

    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
      name: pvc1
      namespace: namespace1
      annotations:
        trident.netapp.io/cloneToNamespace: namespace2
    spec:
      accessModes:
        - ReadWriteMany
      storageClassName: trident-csi
      resources:
        requests:
          storage: 100Gi

    Trident はPV とそのバックエンド ストレージ ボリュームを作成します。

    メモ
    • コンマ区切りのリストを使用して、PVC を複数の名前空間で共有できます。例えば、 trident.netapp.io/cloneToNamespace: namespace2,namespace3,namespace4

    • すべての名前空間に共有するには、 * 。例えば、 trident.netapp.io/cloneToNamespace: *

    • PVCを更新して、 `cloneToNamespace`いつでも注釈を付けることができます。

  2. クラスタ管理者: 宛先名前空間の所有者に、宛先名前空間に TridentVolumeReference CR を作成する権限を付与するための適切な RBAC が設定されていることを確認します。(namespace2 )。

  3. 宛先名前空間の所有者: ソース名前空間を参照する TridentVolumeReference CR を宛先名前空間に作成します。 pvc1

    apiVersion: trident.netapp.io/v1
    kind: TridentVolumeReference
    metadata:
      name: my-first-tvr
      namespace: namespace2
    spec:
      pvcName: pvc1
      pvcNamespace: namespace1
  4. 宛先名前空間の所有者: PVCを作成する(pvc2)を宛先名前空間に(namespace2)を使用して cloneFromPVC`または `cloneFromSnapshot、 そして `cloneFromNamespace`ソース PVC を指定するための注釈。

    kind: PersistentVolumeClaim
    apiVersion: v1
    metadata:
      annotations:
        trident.netapp.io/cloneFromPVC: pvc1
        trident.netapp.io/cloneFromNamespace: namespace1
      name: pvc2
      namespace: namespace2
    spec:
      accessModes:
        - ReadWriteMany
      storageClassName: trident-csi
      resources:
        requests:
          storage: 100Gi

制限事項

  • ontap-nas-economy ドライバーを使用してプロビジョニングされた PVC の場合、読み取り専用クローンはサポートされません。