5.18. OpenStack Cinder CSI Driver Operator


5.18.1. 개요

OpenShift Container Platform은 OpenStack Cinder 용 CSI(Container Storage Interface) 드라이버를 사용하여 PV(영구 볼륨)를 프로비저닝할 수 있습니다.

CSI(Container Storage Interface) Operator 및 드라이버를 사용할 때는 영구 스토리지 및 CSI 볼륨 구성에 대해 숙지하는 것이 좋습니다.

OpenStack Cinder 스토리지 자산에 마운트되는 CSI 프로비저닝 PV를 생성하기 위해 OpenShift Container Platform은 openshift-cluster-csi-drivers 네임스페이스에 OpenStack Cinder CSI 드라이버와 OpenStack Cinder CSI 드라이버를 설치합니다.

  • OpenStack Cinder CSI Driver Operator는 PVC를 생성하는 데 사용할 수 있는 CSI 스토리지 클래스를 제공합니다. 필요한 경우 이 기본 스토리지 클래스를 비활성화할 수 있습니다( 기본 스토리지 클래스 관리참조).
  • OpenStack Cinder CSI 드라이버를 사용하면 OpenStack Cinder PV를 생성 및 마운트할 수 있습니다.
참고

OpenShift Container Platform은 Cinder in-tree 볼륨 플러그인에 대한 자동 마이그레이션을 동등한 CSI 드라이버로 제공합니다. 자세한 내용은 CSI 자동 마이그레이션 을 참조하십시오.

5.18.2. CSI 정보

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

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

중요

OpenShift Container Platform은 기본적으로 CSI 플러그인을 사용하여 Cinder 스토리지를 프로비저닝합니다.

5.18.3. OpenStack Cinder CSI를 기본 스토리지 클래스로 설정

OpenStack Cinder CSI 드라이버는 cinder.csi.openstack.org 매개변수 키를 사용한 동적 프로비저닝을 지원합니다.

OpenShift Container Platform에서 OpenStack Cinder CSI 프로비저닝을 활성화하려면 기본 in-tree 스토리지 클래스를 standard-csi로 덮어쓰는 것이 좋습니다. 다른 방법으로 PVC(영구 볼륨 클레임)를 생성하고 스토리지 클래스를 "standard-csi"로 지정할 수 있습니다.

OpenShift Container Platform에서 기본 스토리지 클래스는 in-tree Cinder 드라이버를 참조합니다. 그러나 CSI 자동 마이그레이션이 활성화된 경우 기본 스토리지 클래스를 사용하여 생성된 볼륨은 실제로 CSI 드라이버를 사용합니다.

프로세스

기본 in-tree 스토리지 클래스를 작성하여 standard-csi 스토리지 클래스를 적용하려면 다음 단계를 사용합니다.

  1. 스토리지 클래스를 나열합니다.

    $ oc get storageclass

    출력 예

    NAME                   PROVISIONER                RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
    standard(default)      cinder.csi.openstack.org   Delete          WaitForFirstConsumer   true                   46h
    standard-csi           kubernetes.io/cinder       Delete          WaitForFirstConsumer   true                   46h

  2. 기본 StorageClass에 대해 주석 storageclass.kubernetes.io/is-default-class의 값을 false로 변경합니다.

    $ oc patch storageclass standard -p '{"metadata": {"annotations": {"storageclass.kubernetes.io/is-default-class": "false"}}}'
  3. 주석을 storageclass.kubernetes.io/is-default-class=true로 추가하거나 수정하여 다른 스토리지 클래스를 기본값으로 설정합니다.

    $ oc patch storageclass standard-csi -p '{"metadata": {"annotations": {"storageclass.kubernetes.io/is-default-class": "true"}}}'
  4. PVC가 기본적으로 CSI 스토리지 클래스를 참조하는지 확인합니다.

    $ oc get storageclass

    출력 예

    NAME                   PROVISIONER                RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
    standard               kubernetes.io/cinder       Delete          WaitForFirstConsumer   true                   46h
    standard-csi(default)  cinder.csi.openstack.org   Delete          WaitForFirstConsumer   true                   46h

  5. 선택 사항: 스토리지 클래스를 지정하지 않고도 새 PVC를 정의할 수 있습니다.

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: cinder-claim
    spec:
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 1Gi

    특정 스토리지 클래스를 지정하지 않는 PVC는 기본 스토리지 클래스를 사용하여 자동으로 프로비저닝됩니다.

  6. 선택 사항: 새 파일을 구성한 후 클러스터에서 파일을 생성합니다.

    $ oc create -f cinder-claim.yaml

추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.