5.5. CSI 볼륨 복제
볼륨 복제는 OpenShift Container Platform의 데이터 손실을 방지하기 위해 기존 영구 볼륨을 중복합니다. 이 기능은 지원되는 CSI(Container Storage Interface) 드라이버에서만 사용할 수 있습니다. CSI 볼륨 복제를 프로비저닝하기 전에 영구 볼륨에 대해 잘 알고 있어야 합니다.
5.5.1. CSI 볼륨 복제 개요 링크 복사링크가 클립보드에 복사되었습니다!
CSI(Container Storage Interface) 볼륨 복제는 특정 시점에서 기존 영구 볼륨이 복제됩니다.
볼륨 복제는 볼륨 스냅샷과 유사하지만 더 효율적으로 사용할 수 있습니다. 예를 들어, 클러스터 관리자는 기존 클러스터 볼륨의 다른 인스턴스를 생성하여 클러스터 볼륨을 복제할 수 있습니다.
복제는 새 빈 볼륨을 생성하지 않고 백엔드 장치에서 지정된 볼륨을 정확하게 복제합니다. 동적 프로비저닝 후 모든 표준 볼륨을 사용하는 것처럼 볼륨 복제를 사용할 수 있습니다.
복제에는 새 API 오브젝트가 필요하지 않습니다. PersistentVolumeClaim
오브젝트의 기존 dataSource
필드가 동일한 네임스페이스에서 기존 PersistentVolumeClaim의 이름을 허용하도록 확장됩니다.
5.5.1.1. 지원 제한 링크 복사링크가 클립보드에 복사되었습니다!
기본적으로 OpenShift Container Platform은 이러한 제한이 있는 CSI 볼륨 복제를 지원합니다.
- 대상 PVC(영구 볼륨 클레임)는 소스 PVC와 동일한 네임스페이스에 있어야 합니다.
복제는 다른 스토리지 클래스에서 지원됩니다.
- 대상 볼륨은 소스와 다른 스토리지 클래스에 대해 같을 수 있습니다.
-
기본 스토리지 클래스를 사용하고
spec
에서storageClassName
을 생략할 수 있습니다.
- CSI 드라이버에서만 지원을 사용할 수 있습니다. In-tree 및 FlexVolumes는 지원되지 않습니다.
- CSI 드라이버가 볼륨 복제 기능을 구현하지 못할 수 있습니다. 자세한 내용은 CSI 드라이버 설명서를 참조하십시오.
5.5.2. CSI 볼륨 복제 프로비저닝 링크 복사링크가 클립보드에 복사되었습니다!
복제된 PVC(영구 볼륨 클레임) API 오브젝트를 생성할 때 CSI 볼륨 복제 프로비저닝을 트리거합니다. 복제본은 다른 PVC 콘텐츠로 미리 채워져 다른 영구 볼륨과 동일한 규칙으로 구성됩니다. 한 가지 예외는 동일한 네임스페이스에서 기존 PVC를 참조하는 dataSource
를 추가해야 한다는 것입니다.
사전 요구 사항
- 실행 중인 OpenShift Container Platform 클러스터에 로그인되어 있습니다.
- 볼륨 복제를 지원하는 CSI 드라이버를 사용하여 PVC가 생성되었습니다.
- 동적 프로비저닝을 위해 스토리지 백엔드가 구성되어 있습니다. 정적 프로비저너에서는 복제 지원을 사용할 수 없습니다.
절차
기존 PVC에서 PVC를 복제하려면 다음을 수행합니다.
다음 YAML로 설명된
PersistentVolumeClaim
오브젝트를 사용하여 파일을 생성하고 저장합니다.pvc-clone.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 스토리지 백엔드를 프로비저닝하는 스토리지 클래스의 이름입니다. 기본 스토리지 클래스를 사용할 수 있으며
storageClassName
은 사양에서 생략할 수 있습니다.
다음 명령을 실행하여 이전 단계에서 저장한 오브젝트를 생성합니다.
oc create -f pvc-clone.yaml
$ oc create -f pvc-clone.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 새 PVC
pvc-1-clone
이 생성됩니다.볼륨 복제가 생성되어 다음 명령을 실행하여 준비되었는지 확인합니다.
oc get pvc pvc-1-clone
$ oc get pvc pvc-1-clone
Copy to Clipboard Copied! Toggle word wrap Toggle overflow pvc-1-clone
에Bound
로 표시됩니다.이제 새로 복제된 PVC를 사용하여 Pod를 구성할 준비가 되었습니다.
YAML로 설명된
Pod
오브젝트로 파일을 생성하고 저장합니다. 예를 들면 다음과 같습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- CSI 볼륨 복제 작업 중에 생성된 복제 PVC입니다.
생성된
Pod
오브젝트가 원래dataSource
PVC와 독립적으로 복제된 PVC를 사용, 복제, 삭제하거나 그 스냅샷을 생성할 준비가 되었습니다.