10.19.2.4. 스토리지 프로파일 사용자 정의
프로비저너의 스토리지 클래스에 대해 StorageProfile 오브젝트를 편집하여 기본 매개변수를 지정할 수 있습니다. 이러한 기본 매개변수는 DataVolume 오브젝트에 구성되지 않은 경우에만 PVC(영구 볼륨 클레임)에 적용됩니다.
스토리지 프로필의 빈 status 섹션은 스토리지 프로비저너가 CDI(Containerized Data Interface)에서 인식되지 않았음을 나타냅니다. CDI에서 인식하지 않는 스토리지 프로비저너가 있는 경우 스토리지 프로필을 사용자 정의해야 합니다. 이 경우 관리자는 스토리지 프로필에 적절한 값을 설정하여 성공적으로 할당되도록 합니다.
데이터 볼륨을 생성하고 YAML 속성을 생략하고 이러한 특성이 스토리지 프로필에 정의되지 않으면 요청된 스토리지가 할당되지 않고 기본 PVC(영구 볼륨 클레임)가 생성되지 않습니다.
사전 요구 사항
- 계획된 구성이 스토리지 클래스 및 해당 공급자에 의해 지원되는지 확인하십시오. 스토리지 프로필에 호환되지 않는 구성을 지정하면 볼륨 프로비저닝이 실패합니다.
절차
스토리지 프로파일을 편집합니다. 이 예에서 CDI는 제공자를 인식하지 못합니다.
$ oc edit -n openshift-cnv storageprofile <storage_class>스토리지 프로필 예
apiVersion: cdi.kubevirt.io/v1beta1 kind: StorageProfile metadata: name: <unknown_provisioner_class> # ... spec: {} status: provisioner: <unknown_provisioner> storageClass: <unknown_provisioner_class>스토리지 프로파일에 필요한 속성 값을 제공합니다.
스토리지 프로필 예
apiVersion: cdi.kubevirt.io/v1beta1 kind: StorageProfile metadata: name: <unknown_provisioner_class> # ... spec: claimPropertySets: - accessModes: - ReadWriteOnce1 volumeMode: Filesystem2 status: provisioner: <unknown_provisioner> storageClass: <unknown_provisioner_class>변경 사항을 저장하면 선택한 값이 스토리지 프로필
status요소에 표시됩니다.
10.19.2.4.1. 스토리지 프로필을 사용하여 기본 복제 전략 설정 링크 복사링크가 클립보드에 복사되었습니다!
스토리지 프로필을 사용하여 스토리지 클래스의 기본 복제 방법을 설정하여 복제 전략을 생성할 수 있습니다. 예를 들어, 스토리지 벤더가 특정 복제 방법만 지원하는 경우 복제 전략을 설정하면 유용할 수 있습니다. 또한 리소스 사용을 제한하거나 성능을 극대화하는 방법을 선택할 수 있습니다.
스토리지 프로필의 cloneStrategy 특성을 다음 값 중 하나로 설정하여 전략을 복제할 수 있습니다.
-
스냅샷은 스냅샷이 구성될 때 기본적으로 사용됩니다. 이 복제 전략에서는 임시 볼륨 스냅샷을 사용하여 볼륨을 복제합니다. 스토리지 프로비저너는 CSI(Container Storage Interface) 스냅샷을 지원해야 합니다. -
복사는 소스 Pod와 대상 Pod를 사용하여 소스 볼륨에서 대상 볼륨으로 데이터를 복사합니다. 호스트 지원 복제는 가장 효율적인 복제 방법입니다. -
CSI-clone은 CSI 복제 API를 사용하여 임시 볼륨 스냅샷을 사용하지 않고 기존 볼륨을 효율적으로 복제합니다. 스토리지 프로파일이 정의되지 않은 경우 기본적으로 사용되는snapshot또는copy와 달리 CSI 볼륨 복제는 프로비저너의 스토리지 클래스에 대해StorageProfile오브젝트에 지정된 경우에만 사용됩니다.
YAML spec 섹션의 기본 claimPropertySets 를 수정하지 않고 CLI를 사용하여 복제 전략을 설정할 수도 있습니다.
스토리지 프로필 예
apiVersion: cdi.kubevirt.io/v1beta1
kind: StorageProfile
metadata:
name: <provisioner_class>
# ...
spec:
claimPropertySets:
- accessModes:
- ReadWriteOnce
volumeMode:
Filesystem
cloneStrategy: csi-clone
status:
provisioner: <provisioner>
storageClass: <provisioner_class>