4.12. VMware vSphere CSI Driver Operator

4.12.1. 개요

OpenShift Container Platform은 VMDK(가상 머신 디스크) 볼륨용 CSI(Container Storage Interface) VMware vSphere 드라이버를 사용하여 PV(영구 볼륨)를 프로비저닝할 수 있습니다.

중요

vSphere CSI Driver Operator는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 고객은 출시 예정된 제품 기능을 Preview를 통해 미리 사용해 보면서 테스트하고 개발 과정에서 피드백을 제공할 수 있습니다.

Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 https://access.redhat.com/support/offerings/techpreview/를 참조하십시오.

CSI Operator 및 드라이버를 사용하여 작업하는 경우 영구 스토리지CSI 볼륨 구성에 대해 숙지하는 것이 좋습니다.

vSphere 스토리지 자산에 마운트되는 CSI(영구 볼륨)를 생성하려면 OpenShift Container Platform이 활성화된 후 openshift-cluster-csi-drivers 네임스페이스에 기본적으로 vSphere CSI Driver Operator 및 vSphere CSI 드라이버를 설치합니다.

  • vSphere CSI Driver Operator: Operator는 PVC(영구 볼륨 클레임)를 생성하는 데 사용할 수 있는 thin-csi라는 스토리지 클래스를 제공합니다. vSphere CSI Driver Operator는 온디맨드 스토리지 볼륨을 생성할 수 있어 클러스터 관리자가 스토리지를 사전 프로비저닝할 필요가 없어 동적 볼륨 프로비저닝을 지원합니다.
  • vSphere CSI 드라이버: 이 드라이버를 사용하면 vSphere PV를 생성하고 마운트할 수 있습니다.
중요

OpenShift Container Platform은 기본적으로 vSphere 스토리지를 프로비저닝하는 데 in-tree(비CSI) 플러그인을 사용합니다.

향후 OpenShift Container Platform 버전에서는 기존 in-tree 플러그인을 사용하여 프로비저닝된 볼륨이 동등한 CSI 드라이버로 마이그레이션할 계획입니다. CSI 자동 마이그레이션은 원활해야 합니다. 마이그레이션은 영구 볼륨, 영구 볼륨 클레임 및 스토리지 클래스와 같은 기존의 모든 API 오브젝트를 사용하는 방법은 변경하지 않습니다. 마이그레이션에 대한 자세한 내용은 CSI 자동 마이그레이션을 참조하십시오.

전체 마이그레이션 후 in-tree 플러그인은 향후 OpenShift Container Platform 버전에서 제거됩니다.

4.12.2. CSI 정보

스토리지 벤더는 일반적으로 Kubernetes의 일부로 스토리지 드라이버를 제공합니다. CSI(Container Storage Interface) 구현을 통해 타사 공급자는 코어 Kubernetes 코드를 변경하지 않고 표준 인터페이스를 사용하여 스토리지 플러그인을 제공할 수 있습니다.

CSI Operator는 in-tree 볼륨 플러그인에서 사용할 수 없는 볼륨 스냅샷과 같은 OpenShift Container Platform 사용자 스토리지 옵션을 제공합니다.

추가 리소스

4.12.3. vSphere CSI Driver Operator 활성화

vSphere CSI(Container Storage Interface) Driver Operator를 활성화하려면 TechPreviewNoUpgrade 기능 세트를 사용하여 기능 게이트를 활성화해야 합니다.

프로세스

  1. TechPreviewNoUpgrade 기능 세트로 기능 게이트를 활성화합니다(기능 게이트를 사용하여 노드 → 활성화 기능참조).

    중요

    기능 게이트를 사용하여 기술 프리뷰 기능을 켜면 전원을 끌 수 없으며 클러스터 업그레이드가 방지됩니다.

  2. 클러스터 운영자 스토리지를 확인합니다.

    $ oc get co storage
    NAME    VERSION                             AVAILABLE   PROGRESSING DEGRADED    SINCE
    storage 4.8.0-0.nightly-2021-04-30-201824   True        False       False       4h26m
    • AVAILABLE은 "True"여야 합니다.
    • PROGRESSING은 "False"여야 합니다.
    • DEGRADED는 "False"여야 합니다.
  3. openshift-cluster-csi-drivers 네임스페이스에서 Pod의 상태를 확인하여 실행 중인지 확인합니다.

    $ oc get pod -n openshift-cluster-csi-drivers
    NAME                                                    READY   STATUS  RESTARTS    AGE
    vmware-vsphere-csi-driver-controller-5646dbbf54-cnsx7   9/9     Running 0           4h29m
    vmware-vsphere-csi-driver-node-ch22q                    3/3     Running 0           4h37m
    vmware-vsphere-csi-driver-node-gfjrb                    3/3     Running 0           4h37m
    vmware-vsphere-csi-driver-node-ktlmp                    3/3     Running 0           4h37m
    vmware-vsphere-csi-driver-node-lgksl                    3/3     Running 0           4h37m
    vmware-vsphere-csi-driver-node-vb4gv                    3/3     Running 0           4h37m
    vmware-vsphere-csi-driver-operator-7c7fc474c-p544t      1/1     Running 0           4h29m
NAME                                                    READY   STATUS  RESTARTS    AGE
azure-disk-csi-driver-controller-5949bf45fd-pm4qb       11/11   Running 0           39m
azure-disk-csi-driver-node-2tcxr                        3/3     Running 0           53m
azure-disk-csi-driver-node-2xjzm                        3/3     Running 0           53m
azure-disk-csi-driver-node-6wrgk                        3/3     Running 0           53m
azure-disk-csi-driver-node-frvx2                        3/3     Running 0           53m
azure-disk-csi-driver-node-lf5kb                        3/3     Running 0           53m
azure-disk-csi-driver-node-mqdhh                        3/3     Running 0           53m
azure-disk-csi-driver-operator-7d966fc6c5-x74x5         1/1     Running 0           44m
  1. 스토리지 클래스가 설치되었는지 확인합니다.

    $ oc get storageclass
    NAME            PROVISIONER                     RECLAIMPOLICY   VOLUMEBINDINGMODE       ALLOWVOLUMEEXPANSION    AGE
    thin (default)  kubernetes.io/vsphere-volume    Delete          Immediate               false                   5h43m
    thin-csi        csi.vsphere.vmware.com          Delete          WaitForFirstConsumer    false                   4h38m 1
    1
    vSphere 스토리지 클래스
NAME                        PROVISIONER                     RECLAIMPOLICY   VOLUMEBINDINGMODE       ALLOWVOLUMEEXPANSION    AGE
managed-premium (default)   kubernetes.io/azure-disk        Delete          WaitForFirstConsumer    true                    76m
managed-csi                 disk.csi.azure.com              Delete          WaitForFirstConsumer    true                    51m 1
1
Azure 스토리지 클래스

4.12.4. 추가 리소스