Skip to main content
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

스토리지 클래스를 관리합니다

기여자 juliantap netapp-aruldeepa

기존 스토리지 클래스를 보고, 기본 스토리지 클래스를 설정하고, 스토리지 클래스 백엔드를 식별하고, 스토리지 클래스를 삭제할 수 있습니다.

기존 스토리지 클래스를 봅니다

  • 기존 Kubernetes 스토리지 클래스를 보려면 다음 명령을 실행합니다.

kubectl get storageclass
  • Kubernetes 스토리지 클래스 세부 정보를 보려면 다음 명령을 실행합니다.

kubectl get storageclass <storage-class> -o json
  • Trident의 동기화된 스토리지 클래스를 보려면 다음 명령을 실행합니다.

tridentctl get storageclass
  • Trident의 동기화된 스토리지 클래스 세부 정보를 보려면 다음 명령을 실행합니다.

tridentctl get storageclass <storage-class> -o json

기본 스토리지 클래스를 설정합니다

Kubernetes 1.6에는 기본 스토리지 클래스를 설정하는 기능이 추가되었습니다. 사용자가 영구 볼륨 클레임(PVC)에 영구 볼륨을 지정하지 않는 경우 영구 볼륨을 프로비저닝하는 데 사용되는 스토리지 클래스입니다.

  • 스토리지 클래스 정의에서 주석 'torageclass.Kubernetes.io/is-default-class'를 true로 설정하여 기본 스토리지 클래스를 정의합니다. 사양에 따라 다른 값이나 주석 부재는 FALSE로 해석됩니다.

  • 다음 명령을 사용하여 기존 스토리지 클래스를 기본 스토리지 클래스로 구성할 수 있습니다.

kubectl patch storageclass <storage-class-name> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
  • 마찬가지로 다음 명령을 사용하여 기본 스토리지 클래스 주석을 제거할 수 있습니다.

kubectl patch storageclass <storage-class-name> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'

또한 Trident 설치 프로그램 번들에는 이 주석을 포함하는 예제도 있습니다.

참고 클러스터에는 한 번에 하나의 기본 스토리지 클래스만 있어야 합니다. Kubernetes에서 둘 이상의 작업을 수행하는 것을 기술적으로 금지하지는 않지만 기본 스토리지 클래스가 없는 것처럼 동작합니다.

스토리지 클래스에 대한 백엔드를 식별합니다

다음은 Trident 백엔드 객체에 대해 출력하는 JSON으로 답변할 수 있는 질문의 tridentctl 예입니다. 이 jq 유틸리티는 먼저 설치해야 할 수 있는 유틸리티를 사용합니다.

tridentctl get storageclass -o json | jq  '[.items[] | {storageClass: .Config.name, backends: [.storage]|unique}]'

스토리지 클래스를 삭제합니다

Kubernetes에서 스토리지 클래스를 삭제하려면 다음 명령을 실행합니다.

kubectl delete storageclass <storage-class>

'<storage-class>'은(는) 스토리지 클래스로 교체해야 합니다.

이 스토리지 클래스를 통해 생성된 영구 볼륨은 변경되지 않으며 Trident에서 계속 관리합니다.

참고 Trident는 생성한 볼륨에 대해 빈 값을 fsType 적용합니다. iSCSI 백엔드의 경우 StorageClass에 적용하는 것이 좋습니다 parameters.fsType. 기존 StorageClasses를 삭제하고 지정된 대로 다시 parameters.fsType 생성해야 합니다.