네임스페이스 간 볼륨 복제
Trident를 사용하면 동일한 Kubernetes 클러스터 내의 다른 네임스페이스에 있는 기존 볼륨 또는 볼륨 스냅샷을 사용하여 새 볼륨을 생성할 수 있습니다.
필수 구성 요소
볼륨을 복제하기 전에 소스 및 대상 백엔드가 동일한 유형이고 동일한 스토리지 클래스를 가지고 있는지 확인하십시오.
|
|
네임스페이스 간 복제는 ontap-san 및 ontap-nas 스토리지 드라이버에 한해서만 지원됩니다. 읽기 전용 복제는 지원되지 않습니다.
|
빠른 시작
몇 단계만 거치면 볼륨 클로닝을 설정할 수 있습니다.
소스 PVC를 구성하여 볼륨 복제소스 네임스페이스 소유자는 소스 PVC의 데이터에 액세스할 수 있는 권한을 부여합니다.
대상 네임스페이스에 CR을 생성할 수 있는 권한을 부여하십시오클러스터 관리자는 대상 네임스페이스 소유자에게 TridentVolumeReference CR을 생성할 수 있는 권한을 부여합니다.
대상 네임스페이스에 TridentVolumeReference를 생성합니다대상 네임스페이스의 소유자는 소스 PVC를 참조하기 위해 TridentVolumeReference CR을 생성합니다.
대상 네임스페이스에 클론 PVC를 생성합니다대상 네임스페이스의 소유자는 소스 네임스페이스의 PVC를 복제하기 위해 PVC를 생성합니다.
소스 및 대상 네임스페이스를 구성합니다
보안을 보장하기 위해 네임스페이스 간 볼륨 복제에는 소스 네임스페이스 소유자, 클러스터 관리자 및 대상 네임스페이스 소유자의 협업과 조치가 필요합니다. 각 단계에서 사용자 역할이 지정됩니다.
-
소스 네임스페이스 소유자: 소스 네임스페이스(
namespace1)에서 PVC(pvc1)를 생성하고,cloneToNamespace`주석을 사용하여 대상 네임스페이스(`namespace2)와 공유할 수 있는 권한을 부여합니다.kind: PersistentVolumeClaim apiVersion: v1 metadata: name: pvc1 namespace: namespace1 annotations: trident.netapp.io/cloneToNamespace: namespace2 spec: accessModes: - ReadWriteMany storageClassName: trident-csi resources: requests: storage: 100GiTrident가 PV와 해당 백엔드 스토리지 볼륨을 생성합니다.
-
쉼표로 구분된 목록을 사용하여 여러 네임스페이스에서 PVC를 공유할 수 있습니다. 예를 들어
trident.netapp.io/cloneToNamespace: namespace2,namespace3,namespace4. -
*`를 사용하여 모든 네임스페이스에 공유할 수 있습니다. 예를 들어 `trident.netapp.io/cloneToNamespace: * -
언제든지 PVC를 업데이트하여
cloneToNamespace주석을 포함시킬 수 있습니다.
-
-
클러스터 관리자: 대상 네임스페이스 소유자가 대상 네임스페이스에 TridentVolumeReference CR을 생성할 수 있도록 적절한 RBAC가 설정되어 있는지 확인하십시오(
namespace2. -
대상 네임스페이스 소유자: 대상 네임스페이스에 소스 네임스페이스를 참조하는 TridentVolumeReference CR을 생성합니다
pvc1.apiVersion: trident.netapp.io/v1 kind: TridentVolumeReference metadata: name: my-first-tvr namespace: namespace2 spec: pvcName: pvc1 pvcNamespace: namespace1 -
대상 네임스페이스 소유자: 대상 네임스페이스 (
namespace2)에서 PVC (pvc2)를 생성하고,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의 경우 읽기 전용 클론은 지원되지 않습니다.