5.11. Red Hat Virtualization CSI Driver Operator
5.11.1. 개요
OpenShift Container Platform은 RHV(Red Hat Virtualization)용 CSI(Container Storage Interface) 드라이버를 사용하여 PV(영구 볼륨)를 프로비저닝할 수 있습니다.
CSI(Container Storage Interface) Operator 및 드라이버를 사용할 때는 영구 스토리지 및 CSI 볼륨 구성에 대해 숙지하는 것이 좋습니다.
RHV 스토리지 자산에 마운트된 CSI 프로비저닝 PV를 생성하기 위해 OpenShift Container Platform은 openshift-cluster-csi-drivers
네임스페이스에 기본적으로 oVirt CSI Driver Operator 및 oVirt CSI 드라이버를 설치합니다.
-
oVirt CSI Driver Operator는 PVC(영구 볼륨 클레임)를 생성하는 데 사용할 수 있는 기본
StorageClass
오브젝트를 제공합니다. - oVirt CSI 드라이버를 사용하면 oVirt PV를 생성 및 마운트할 수 있습니다.
5.11.2. CSI 정보
스토리지 벤더는 일반적으로 Kubernetes의 일부로 스토리지 드라이버를 제공합니다. CSI(Container Storage Interface) 구현을 통해 타사 공급자는 코어 Kubernetes 코드를 변경하지 않고도 표준 인터페이스를 사용하여 스토리지 플러그인을 제공할 수 있습니다.
CSI Operator는 in-tree 볼륨 플러그인에서 사용할 수 없는 볼륨 스냅샷과 같은 OpenShift Container Platform 사용자 스토리지 옵션을 제공합니다.
oVirt CSI 드라이버는 스냅샷을 지원하지 않습니다.
5.11.3. oVirt CSI 드라이버 스토리지 클래스
OpenShift Container Platform은 동적으로 프로비저닝된 영구 볼륨을 생성하는 데 사용되는 ovirt-csi-sc
라는 이름의 StorageClass
유형의 기본 오브젝트를 생성합니다.
다양한 구성을 위한 추가 스토리지 클래스를 생성하려면 다음 샘플 YAML에서 설명되는 StorageClass
오브젝트로 파일을 생성하고 저장합니다.
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: <storage-class-name> 1 annotations: storageclass.kubernetes.io/is-default-class: "false" 2 provisioner: csi.ovirt.org parameters: storageDomainName: <rhv-storage-domain-name> 3 thinProvisioning: "true" 4 csi.storage.k8s.io/fstype: ext4 5
5.11.4. RHV에서 영구 볼륨 생성
PVC(PersistentVolumeClaim
) 오브젝트를 생성할 때 OpenShift Container Platform에서 새 PV(영구 볼륨)를 프로비저닝하고 PersistentVolume
오브젝트를 생성합니다.
사전 요구 사항
- 실행 중인 OpenShift Container Platform 클러스터에 로그인되어 있습니다.
-
ovirt-credentials
보안에 올바른 RHV 인증 정보가 제공되었습니다. - oVirt CSI 드라이버가 설치되어 있습니다.
- 하나 이상의 스토리지 클래스가 정의되어 있습니다.
절차
RHV에 영구 볼륨을 동적으로 생성하기 위해 we 콘솔을 사용하는 경우:
-
OpenShift Container Platform 콘솔에서 스토리지
영구 볼륨 클레임을 클릭합니다. - 영구 볼륨 클레임 생성 개요에서 영구 볼륨 클레임 생성을 클릭합니다.
- 결과 페이지에 필요한 옵션을 정의합니다.
-
적절한
StorageClass
오브젝트를 선택합니다. 이는 기본적으로ovirt-csi-sc
입니다. - 스토리지 클레임의 고유한 이름을 입력합니다.
- 액세스 모드를 선택합니다. 현재는 RWO(ReadWriteOnce)가 지원되는 유일한 액세스 모드입니다.
- 스토리지 클레임의 크기를 정의합니다.
볼륨 모드 선택:
파일 시스템
: 포드에 디렉터리로 마운트됩니다. 이 모드가 기본값입니다.블록
: 파일 시스템이 없는 블록 장치-
만들기를 클릭하여
PersistentVolumeClaim
오브젝트를 생성하고PersistentVolume
오브젝트를 생성합니다.
-
OpenShift Container Platform 콘솔에서 스토리지
CLI(명령줄 인터페이스)를 사용하여 RHV CSI 볼륨을 동적으로 생성하는 경우 다음을 실행합니다.
다음 샘플 YAML로 설명된
PersistentVolumeClaim
오브젝트를 사용하여 파일을 생성하고 저장합니다.pvc-ovirt.yaml
apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc-ovirt spec: storageClassName: ovirt-csi-sc 1 accessModes: - ReadWriteOnce resources: requests: storage: <volume size> 2 volumeMode: <volume mode> 3
다음 명령을 실행하여 이전 단계에서 저장한 오브젝트를 생성합니다.
$ oc create -f pvc-ovirt.yaml
볼륨이 생성되고 준비되었는지 확인하려면 다음 명령을 실행합니다.
$ oc get pvc pvc-ovirt
pvc-ovirt
는 Bound임을 보여줍니다.