5.22. VMware vSphere CSI Driver Operator


5.22.1. 개요

OpenShift Container Platform은 VMDK(Virtual Machine Disk) 볼륨용 CSI(Container Storage Interface) VMware vSphere 드라이버를 사용하여 영구 볼륨(PV)을 프로비저닝할 수 있습니다.

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 4.14에서 드라이버 버전은 3.0.2입니다. vSphere CSI 드라이버는 XFS 및 Ext4를 포함하여 기본 Red Hat Core OS 릴리스에서 지원하는 모든 파일 시스템을 지원합니다. 지원되는 파일 시스템에 대한 자세한 내용은 사용 가능한 파일 시스템 개요 를 참조하십시오.
중요

vSphere의 경우:

  • OpenShift Container Platform 4.13 이상을 새로 설치하는 경우 자동 마이그레이션이 기본적으로 활성화됩니다. OpenShift Container Platform 4.14 이상으로 업데이트하면 자동 마이그레이션도 제공됩니다.

    CSI 자동 마이그레이션이 원활해야 합니다. 마이그레이션은 영구 볼륨, 영구 볼륨 클레임 및 스토리지 클래스와 같은 기존 API 오브젝트를 사용하는 방법을 변경하지 않습니다. 마이그레이션에 대한 자세한 내용은 CSI 자동 마이그레이션 을 참조하십시오.

  • OpenShift Container Platform 4.12 또는 이전 버전에서 4.13으로 업데이트할 때 vSphere에 대한 자동 CSI 마이그레이션은 선택한 경우에만 수행됩니다. 선택하지 않으면 OpenShift Container Platform은 기본적으로 in-tree (비 CSI) 플러그인을 사용하여 vSphere 스토리지를 프로비저닝합니다. 마이그레이션에 옵트인하기 전에 표시된 결과를 신중하게 검토합니다.

5.22.2. CSI 정보

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

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

5.22.3. vSphere CSI 제한 사항

다음 제한 사항은 vSphere CSI(Container Storage Interface) Driver Operator에 적용됩니다.

  • vSphere CSI 드라이버는 동적 및 정적 프로비저닝을 지원합니다. 그러나 PV 사양에서 정적 프로비저닝을 사용하는 경우 이 키가 동적으로 프로비저닝된 PV를 나타내므로 csi.volumeAttributes 에서 키 storage.kubernetes.io/csiProvisionerIdentity 를 사용하지 마십시오.
  • vSphere 클라이언트 인터페이스를 사용하여 데이터 저장소 간에 영구 컨테이너 볼륨을 마이그레이션하는 것은 OpenShift Container Platform에서 지원되지 않습니다.

5.22.4. vSphere 스토리지 정책

vSphere CSI Driver Operator 스토리지 클래스는 vSphere의 스토리지 정책을 사용합니다. OpenShift Container Platform은 클라우드 구성에 구성된 데이터 저장소를 대상으로 하는 스토리지 정책을 자동으로 생성합니다.

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: thin-csi
provisioner: csi.vsphere.vmware.com
parameters:
  StoragePolicyName: "$openshift-storage-policy-xxxx"
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: false
reclaimPolicy: Delete

5.22.5. ReadWriteMany vSphere 볼륨 지원

기본 vSphere 환경에서 vSAN 파일 서비스를 지원하는 경우 OpenShift Container Platform에서 설치한 vSphere CSI(Container Storage Interface) Driver Operator는 RWX(ReadWriteMany) 볼륨의 프로비저닝을 지원합니다. vSAN 파일 서비스가 구성되지 않은 경우 RWO(ReadWriteOnce)가 사용 가능한 유일한 액세스 모드입니다. vSAN 파일 서비스가 구성되어 있지 않고 RWX를 요청하면 볼륨이 생성되지 않고 오류가 기록됩니다.

사용자 환경에서 vSAN 파일 서비스를 구성하는 방법에 대한 자세한 내용은 vSAN 파일 서비스를 참조하십시오.

다음과 같은 PVC(영구 볼륨 클레임)를 수행하여 RWX 볼륨을 요청할 수 있습니다.

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: myclaim
spec:
  resources:
    requests:
      storage: 1Gi
  accessModes:
     - ReadWriteMany
  storageClassName: thin-csi

RWX 볼륨 유형의 PVC를 요청하면 vSAN 파일 서비스에서 지원하는 PV(영구 볼륨)가 프로비저닝됩니다.

5.22.6. VMware vSphere CSI Driver Operator 요구 사항

vSphere CSI Driver Operator를 설치하려면 다음 요구 사항을 충족해야 합니다.

  • VMware vSphere 버전: 7.0 업데이트 2 이상 또는 VMware Cloud Foundation 4.3 이상; 8.0 업데이트 1 이상 또는 VMware Cloud Foundation 5.0 이상
  • vCenter 버전: 7.0 업데이트 2 이상 또는 VMware Cloud Foundation 4.3 이상; 8.0 업데이트 1 이상 또는 VMware Cloud Foundation 5.0 이상
  • 하드웨어 버전 15 이상의 가상 머신
  • 클러스터에 이미 설치된 타사 vSphere CSI 드라이버가 없습니다

타사 vSphere CSI 드라이버가 클러스터에 있는 경우 OpenShift Container Platform은 이를 덮어쓰지 않습니다. 타사 vSphere CSI 드라이버가 있으면 OpenShift Container Platform이 OpenShift Container Platform 4.13 이상으로 업데이트되지 않습니다.

참고

VMware vSphere CSI Driver Operator는 설치 매니페스트에서 platform: vsphere 와 함께 배포된 클러스터에서만 지원됩니다.

타사 CSI 드라이버를 제거하려면 타사 vSphere CSI 드라이버 제거를 참조하십시오.

5.22.7. 타사 vSphere CSI Driver Operator 제거

OpenShift Container Platform 4.10 이상에는 Red Hat에서 지원하는 vSphere CSI(Container Storage Interface) Operator 드라이버 기본 제공 버전이 포함되어 있습니다. 커뮤니티 또는 다른 공급 업체가 제공하는 vSphere CSI 드라이버를 설치한 경우 클러스터에 대해 4.13 이상과 같은 OpenShift Container Platform의 다음 주요 버전으로 업데이트를 비활성화할 수 있습니다.

OpenShift Container Platform 4.12 이상에서는 클러스터가 완전히 지원되며 4.12.z와 같은 z-stream 릴리스의 업데이트는 차단되지 않지만 OpenShift Container Platform의 다음 주요 버전으로 업데이트하기 전에 타사 vSphere CSI 드라이버를 제거하여 이 상태를 수정해야 합니다. 타사 vSphere CSI 드라이버를 제거해도 연결된 PV(영구 볼륨) 오브젝트를 삭제할 필요가 없으며 데이터 손실이 발생하지 않습니다.

참고

이러한 지침은 완료되지 않을 수 있으므로 공급 업체 또는 커뮤니티 공급자 제거 가이드를 참조하여 드라이버 및 구성 요소를 제거하십시오.

타사 vSphere CSI 드라이버를 설치 제거하려면 다음을 수행합니다.

  1. 타사 vSphere CSI 드라이버(VMware vSphere Container Storage 플러그인) Deployment 및 Daemonset 오브젝트를 삭제합니다.
  2. 타사 vSphere CSI 드라이버와 함께 이전에 설치된 configmap 및 secret 오브젝트를 삭제합니다.
  3. 타사 vSphere CSI 드라이버 CSIDriver 오브젝트를 삭제합니다.

    ~ $ oc delete CSIDriver csi.vsphere.vmware.com
    csidriver.storage.k8s.io "csi.vsphere.vmware.com" deleted

OpenShift Container Platform 클러스터에서 타사 vSphere CSI 드라이버를 제거한 후 Red Hat vSphere CSI Driver Operator를 자동으로 다시 시작하며 OpenShift Container Platform 4.11 이상으로의 업그레이드를 차단할 수 있는 모든 조건이 자동으로 제거됩니다. 기존 vSphere CSI PV 오브젝트가 있는 경우 이제 Red Hat의 vSphere CSI Driver Operator에서 라이프사이클을 관리합니다.

5.22.8. vSphere 영구 디스크 암호화

vSphere에서 실행 중인 OpenShift Container Platform에서 VM(가상 머신)과 동적으로 프로비저닝된 PV(영구 볼륨)를 암호화할 수 있습니다.

참고

OpenShift Container Platform은 RWX 암호화 PV를 지원하지 않습니다. 암호화된 스토리지 정책을 사용하는 스토리지 클래스 중 RWX PV를 요청할 수 없습니다.

설치 중 또는 설치 후 수행할 수 있는 PV를 암호화하기 전에 VM을 암호화해야 합니다.

VM 암호화에 대한 자세한 내용은 다음을 참조하십시오.

VM을 암호화한 후 vSphere CSI(Container Storage Interface) 드라이버를 사용하여 동적 암호화 볼륨 프로비저닝을 지원하는 스토리지 클래스를 구성할 수 있습니다. 이 작업은 다음 두 가지 방법 중 하나로 수행할 수 있습니다.

  • Datastore URL:이 방법은 매우 유연하지 않으며 단일 데이터 저장소를 사용하도록 강제합니다. 토폴로지 인식 프로비저닝도 지원하지 않습니다.
  • 태그 기반 배치: 프로비저닝된 볼륨을 암호화하고 태그 기반 배치를 사용하여 특정 데이터 저장소를 대상으로 합니다.

5.22.8.1. 데이터 저장소 URL 사용

프로세스

데이터 저장소 URL을 사용하여 암호화하려면 다음을 수행합니다.

  1. 암호화를 지원하는 데이터 저장소의 기본 스토리지 정책 이름을 확인합니다.

    이 정책은 VM을 암호화하는 데 사용된 정책과 동일합니다.

  2. 이 스토리지 정책을 사용하는 스토리지 클래스를 생성합니다.

    kind: StorageClass
    apiVersion: storage.k8s.io/v1
    metadata:
     name: encryption
    provisioner: csi.vsphere.vmware.com
    parameters:
     storagePolicyName: <storage-policy-name> 1
     datastoreurl: "ds:///vmfs/volumes/vsan:522e875627d-b090c96b526bb79c/"
    1
    암호화를 지원하는 데이터 저장소의 기본 스토리지 정책 이름

5.22.8.2. 태그 기반 배치 사용

프로세스

태그 기반 배치를 사용하여 암호화하려면 다음을 수행합니다.

  1. vCenter에서 이 스토리지 클래스에서 사용할 수 있는 데이터 저장소를 태그하는 카테고리를 생성합니다. 또한 StoragePod(Datastore 클러스터) , Datastore (데이터 저장소) 및 폴더 가 생성된 카테고리에 대해 Associable Entities로 선택되어 있는지 확인합니다.
  2. vCenter에서 이전에 만든 카테고리를 사용하는 태그를 생성합니다.
  3. 스토리지 클래스에서 사용할 수 있는 각 데이터 저장소에 이전에 생성된 태그를 할당합니다. 데이터 저장소가 OpenShift Container Platform 클러스터에 참여하는 호스트와 공유되는지 확인합니다.
  4. vCenter의 주 메뉴에서 정책 및 프로필을 클릭합니다.
  5. 정책 및 프로필 페이지의 탐색 창에서 VM Storage Policies 를 클릭합니다.
  6. 만들기를 클릭합니다.
  7. 스토리지 정책의 이름을 입력합니다.
  8. 호스트 기반 규칙 사용을 선택하고 태그 기반 배치 규칙 사용을 선택합니다.
  9. 다음 탭에서 다음을 수행합니다.

    1. 암호화기본 암호화 속성을 선택합니다.
    2. 이전에 만든 태그 범주를 선택하고 선택한 태그를 선택합니다. 정책이 일치하는 데이터 저장소를 선택 중인지 확인합니다.
  10. 스토리지 정책을 생성합니다.
  11. 스토리지 정책을 사용하는 스토리지 클래스를 생성합니다.

    kind: StorageClass
    apiVersion: storage.k8s.io/v1
    metadata:
     name:  csi-encrypted
    provisioner: csi.vsphere.vmware.com
    reclaimPolicy: Delete
    volumeBindingMode: WaitForFirstConsumer
    parameters:
     storagePolicyName: <storage-policy-name> 1
    1
    암호화를 위해 생성한 스토리지 정책의 이름

5.22.9. vSphere CSI 토폴로지 개요

OpenShift Container Platform은 다양한 영역과 지역에 vSphere용 OpenShift Container Platform을 배포할 수 있으므로 여러 컴퓨팅 클러스터 및 데이터센터에 배포할 수 있으므로 단일 장애 지점을 방지할 수 있습니다.

이는 vCenter에서 영역 및 지역 카테고리를 정의한 다음 이러한 범주를 컴퓨팅 클러스터와 같은 다양한 장애 도메인에 할당하여 이러한 영역 및 지역 카테고리에 대한 태그를 생성하여 수행됩니다. 적절한 카테고리를 생성하고 vCenter 오브젝트에 태그를 할당하면 해당 실패 도메인에서 Pod를 예약하는 VM(가상 머신)을 생성하는 추가 머신 세트를 생성할 수 있습니다.

다음 예제에서는 하나의 리전과 두 개의 영역이 있는 두 개의 실패 도메인을 정의합니다.

표 5.6. 하나의 리전 및 두 개의 영역이 있는 vSphere 스토리지 토폴로지
컴퓨팅 클러스터실패 도메인설명

컴퓨팅 클러스터: ocp1, Datacenter: Atlanta

openshift-region: us-east-1 (태그), openshift-zone: us-east-1a (태그)

이는 us-east-1a 영역과 함께 us-east-1 리전에서 실패 도메인을 정의합니다.

컴퓨터 클러스터: ocp2, Datacenter: Atlanta

openshift-region: us-east-1(태그), openshift-zone: us-east-1b(태그)

이는 us-east-1b라는 동일한 리전 내에서 다른 실패 도메인을 정의합니다.

5.22.9.1. 설치 중 vSphere 스토리지 토폴로지 생성

5.22.9.1.1. 프로세스
  • 설치 중에 토폴로지를 지정합니다. VMware vCenter 섹션의 지역 및 영역 구성 섹션을 참조하십시오.

추가 작업이 필요하지 않으며 OpenShift Container Platform에서 생성한 기본 스토리지 클래스는 토폴로지를 인식하고 다른 장애 도메인에서 볼륨을 프로비저닝할 수 있어야 합니다.

5.22.9.2. vSphere 스토리지 토폴로지 후 설치 생성

5.22.9.2.1. 프로세스
  1. VMware vCenter vSphere 클라이언트 GUI에서 적절한 영역 및 지역 분류 및 태그를 정의합니다.

    vSphere를 사용하면 임의의 이름으로 카테고리를 생성할 수 있지만 OpenShift Container Platform은 토폴로지 카테고리를 정의하는 데 openshift-regionopenshift-zone 이름을 사용하는 것이 좋습니다.

    vSphere 카테고리 및 태그에 대한 자세한 내용은 VMware vSphere 설명서를 참조하십시오.

  2. OpenShift Container Platform에서 실패 도메인을 생성합니다. vSphere에서 클러스터의 여러 리전 및 영역 지정 섹션을 참조하십시오.
  3. 장애 도메인에서 데이터 저장소에 할당할 태그를 생성합니다.

    OpenShift Container Platform이 두 개 이상의 장애 도메인을 확장하면 데이터 저장소가 해당 장애 도메인에서 공유되지 않을 수 있습니다. 여기서 PV(영구 볼륨)의 토폴로지 인식 프로비저닝이 유용합니다.

    1. vCenter에서 데이터 저장소 태그를 지정하는 카테고리를 생성합니다. 예를 들면 openshift-zonal-datastore-cat 입니다. 카테고리가 OpenShift Container Platform 클러스터에 참여하는 데이터 저장소에 태그를 지정하는 데 고유하게 사용되는 경우 다른 카테고리 이름을 사용할 수 있습니다. 또한 StoragePod,Datastore, Folder 가 생성된 카테고리의 연관 가능한 엔티티로 선택되어 있는지 확인합니다.
    2. vCenter에서 이전에 생성된 카테고리를 사용하는 태그를 생성합니다. 이 예에서는 태그 이름 openshift-zonal-datastore 를 사용합니다.
    3. 이전에 생성된 태그(이 예에서는 openshift-zonal-datastore)를 동적 프로비저닝으로 간주하는 실패 도메인의 각 데이터 저장소에 할당합니다.

      참고

      데이터 저장소 카테고리 및 태그에 원하는 모든 이름을 사용할 수 있습니다. 이 예제에서 사용되는 이름은 권장 사항으로 제공됩니다. OpenShift Container Platform 클러스터의 모든 호스트와 공유되는 데이터 저장소만 고유하게 정의하는 태그 및 카테고리가 있는지 확인합니다.

  4. 필요에 따라 각 실패 도메인의 태그 기반 데이터 저장소를 대상으로 하는 스토리지 정책을 생성합니다.

    1. vCenter의 주 메뉴에서 정책 및 프로필을 클릭합니다.
    2. 정책 및 프로필 페이지의 탐색 창에서 VM Storage Policies 를 클릭합니다.
    3. 만들기를 클릭합니다.
    4. 스토리지 정책의 이름을 입력합니다.
    5. 규칙의 경우 태그 배치 규칙을 선택하고 원하는 데이터 저장소를 대상으로 하는 태그 및 카테고리(이 예에서는 openshift-zonal-datastore 태그)를 선택합니다.

      데이터 저장소는 스토리지 호환성 테이블에 나열됩니다.

  5. 새 영역 스토리지 정책을 사용하는 새 스토리지 클래스를 생성합니다.

    1. 스토리지 > StorageClass 를 클릭합니다.
    2. StorageClasses 페이지에서 StorageClass 만들기 를 클릭합니다.
    3. 이름에 새 스토리지 클래스의 이름을 입력합니다.
    4. Provisioner 에서 csi.vsphere.vmware.com 을 선택합니다.
    5. 추가 매개변수 에서 StoragePolicyName 매개변수의 경우 Value 를 이전에 생성한 새 영역 스토리지 정책의 이름으로 설정합니다.
    6. 생성을 클릭합니다.

      출력 예

      kind: StorageClass
      apiVersion: storage.k8s.io/v1
      metadata:
        name: zoned-sc 1
      provisioner: csi.vsphere.vmware.com
      parameters:
        StoragePolicyName: zoned-storage-policy 2
      reclaimPolicy: Delete
      allowVolumeExpansion: true
      volumeBindingMode: WaitForFirstConsumer

      1
      새 토폴로지 인식 스토리지 클래스 이름입니다.
      2
      영역화된 스토리지 정책을 지정합니다.
      참고

      이전 YAML 파일을 편집하고 oc create -f $FILE 명령을 실행하여 스토리지 클래스를 생성할 수도 있습니다.

5.22.9.3. 인프라 토폴로지 없이 vSphere 스토리지 토폴로지 생성

참고

OpenShift Container Platform은 토폴로지 인식 설정에서 실패 도메인을 지정하는 데 인프라 오브젝트를 사용하는 것이 좋습니다. 인프라 오브젝트에 실패 도메인을 지정하고 ClusterCSIDriver 오브젝트에 topology-categories를 지정하는 것은 지원되지 않는 작업입니다.

5.22.9.3.1. 프로세스
  1. VMware vCenter vSphere 클라이언트 GUI에서 적절한 영역 및 지역 분류 및 태그를 정의합니다.

    vSphere를 사용하면 임의의 이름으로 카테고리를 생성할 수 있지만 OpenShift Container Platform은 토폴로지를 정의하는 데 openshift-regionopenshift-zone 이름을 사용하는 것이 좋습니다.

    vSphere 카테고리 및 태그에 대한 자세한 내용은 VMware vSphere 설명서를 참조하십시오.

  2. CSI(컨테이너 스토리지 인터페이스) 드라이버가 이 토폴로지를 감지할 수 있도록 하려면 clusterCSIDriver 오브젝트 YAML 파일 driverConfig 섹션을 편집합니다.

    • 이전에 생성한 openshift-zoneopenshift-region 카테고리를 지정합니다.
    • driverTypevSphere 로 설정합니다.

      ~ $ oc edit clustercsidriver csi.vsphere.vmware.com -o yaml

      출력 예

      apiVersion: operator.openshift.io/v1
      kind: ClusterCSIDriver
      metadata:
        name: csi.vsphere.vmware.com
      spec:
        logLevel: Normal
        managementState: Managed
        observedConfig: null
        operatorLogLevel: Normal
        unsupportedConfigOverrides: null
        driverConfig:
          driverType: vSphere 1
            vSphere:
              topologyCategories: 2
              - openshift-zone
              - openshift-region

      1
      driverTypevSphere 로 설정되어 있는지 확인합니다.
      2
      vCenter에서 이전에 생성된 OpenShift -zoneopenshift-region 카테고리입니다.
  3. 다음 명령을 실행하여 CSINode 오브젝트에 토폴로지 키가 있는지 확인합니다.

    ~ $ oc get csinode

    출력 예

    NAME DRIVERS AGE
    co8-4s88d-infra-2m5vd 1 27m
    co8-4s88d-master-0 1 70m
    co8-4s88d-master-1 1 70m
    co8-4s88d-master-2 1 70m
    co8-4s88d-worker-j2hmg 1 47m
    co8-4s88d-worker-mbb46 1 47m
    co8-4s88d-worker-zlk7d 1 47m

    ~ $ oc get csinode co8-4s88d-worker-j2hmg -o yaml

    출력 예

    ...
    spec:
      drivers:
      - allocatable:
          count: 59
      name: csi-vsphere.vmware.com
      nodeID: co8-4s88d-worker-j2hmg
      topologyKeys: 1
      - topology.csi.vmware.com/openshift-zone
      - topology.csi.vmware.com/openshift-region

    1
    vSphere openshift-zoneopenshift-region catagories의 토폴로지 키입니다.
    참고

    CSINode 오브젝트는 업데이트된 토폴로지 정보를 수신하는 데 약간의 시간이 걸릴 수 있습니다. 드라이버가 업데이트되면 CSINode 오브젝트에 토폴로지 키가 있어야 합니다.

  4. 장애 도메인에서 데이터 저장소에 할당할 태그를 생성합니다.

    OpenShift Container Platform이 두 개 이상의 장애 도메인을 확장하면 데이터 저장소가 해당 장애 도메인에서 공유되지 않을 수 있습니다. 여기서 PV(영구 볼륨)의 토폴로지 인식 프로비저닝이 유용합니다.

    1. vCenter에서 데이터 저장소 태그를 지정하는 카테고리를 생성합니다. 예를 들면 openshift-zonal-datastore-cat 입니다. 카테고리가 OpenShift Container Platform 클러스터에 참여하는 데이터 저장소에 태그를 지정하는 데 고유하게 사용되는 경우 다른 카테고리 이름을 사용할 수 있습니다. 또한 StoragePod,Datastore, Folder 가 생성된 카테고리의 연관 가능한 엔티티로 선택되어 있는지 확인합니다.
    2. vCenter에서 이전에 생성된 카테고리를 사용하는 태그를 생성합니다. 이 예에서는 태그 이름 openshift-zonal-datastore 를 사용합니다.
    3. 이전에 생성된 태그(이 예에서는 openshift-zonal-datastore)를 동적 프로비저닝으로 간주하는 실패 도메인의 각 데이터 저장소에 할당합니다.

      참고

      카테고리 및 태그에 대해 원하는 모든 이름을 사용할 수 있습니다. 이 예제에서 사용되는 이름은 권장 사항으로 제공됩니다. OpenShift Container Platform 클러스터의 모든 호스트와 공유되는 데이터 저장소만 고유하게 정의하는 태그 및 카테고리가 있는지 확인합니다.

  5. 각 실패 도메인의 태그 기반 데이터 저장소를 대상으로 하는 스토리지 정책을 생성합니다.

    1. vCenter의 주 메뉴에서 정책 및 프로필을 클릭합니다.
    2. 정책 및 프로필 페이지의 탐색 창에서 VM Storage Policies 를 클릭합니다.
    3. 만들기를 클릭합니다.
    4. 스토리지 정책의 이름을 입력합니다.
    5. 규칙의 경우 태그 배치 규칙을 선택하고 원하는 데이터 저장소를 대상으로 하는 태그 및 카테고리(이 예에서는 openshift-zonal-datastore 태그)를 선택합니다.

      데이터 저장소는 스토리지 호환성 테이블에 나열됩니다.

  6. 새 영역 스토리지 정책을 사용하는 새 스토리지 클래스를 생성합니다.

    1. 스토리지 > StorageClass 를 클릭합니다.
    2. StorageClasses 페이지에서 StorageClass 만들기 를 클릭합니다.
    3. 이름에 새 스토리지 클래스의 이름을 입력합니다.
    4. Provisioner 에서 csi.vsphere.vmware.com 을 선택합니다.
    5. 추가 매개변수 에서 StoragePolicyName 매개변수의 경우 Value 를 이전에 생성한 새 영역 스토리지 정책의 이름으로 설정합니다.
    6. 생성을 클릭합니다.

      출력 예

      kind: StorageClass
      apiVersion: storage.k8s.io/v1
      metadata:
        name: zoned-sc 1
      provisioner: csi.vsphere.vmware.com
      parameters:
        StoragePolicyName: zoned-storage-policy 2
      reclaimPolicy: Delete
      allowVolumeExpansion: true
      volumeBindingMode: WaitForFirstConsumer

      1
      새 토폴로지 인식 스토리지 클래스 이름입니다.
      2
      영역화된 스토리지 정책을 지정합니다.
      참고

      이전 YAML 파일을 편집하고 oc create -f $FILE 명령을 실행하여 스토리지 클래스를 생성할 수도 있습니다.

5.22.9.4. 결과

토폴로지 인식 스토리지 클래스의 PVC(영구 볼륨 클레임) 및 PV를 생성하는 것은 실제로 영역이므로 Pod 예약 방법에 따라 각 영역에 데이터 저장소를 사용해야 합니다.

~ $ oc get pv <pv-name> -o yaml

출력 예

...
nodeAffinity:
  required:
    nodeSelectorTerms:
    - matchExpressions:
      - key: topology.csi.vmware.com/openshift-zone 1
        operator: In
        values:
        - <openshift-zone>
      -key: topology.csi.vmware.com/openshift-region 2
        operator: In
        values:
        - <openshift-region>
...
peristentVolumeclaimPolicy: Delete
storageClassName: <zoned-storage-class-name> 3
volumeMode: Filesystem
...

1 2
PV에는 영역 키가 있습니다.
3
PV에서 zoned 스토리지 클래스를 사용하고 있습니다.

5.22.10. 추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.