기본 StorageClass 변경하기
기본 StorageClass 변경하기 (Change the default StorageClass)
이 페이지는 특별한 요구 사항이 없는 PersistentVolumeClaim의 볼륨을 프로비저닝하는 데 사용되는 기본 스토리지 클래스(StorageClass)를 변경하는 방법을 보여줘요.
출처: 문서
본문
왜 기본 스토리지 클래스를 바꿔야 하나요?
설치 방법에 따라 쿠버네티스 클러스터는 기본으로 표시된 기존 StorageClass와 함께 배포될 수 있어요. 이 기본 StorageClass는 특정 스토리지 클래스를 요구하지 않는 PersistentVolumeClaim을 위해 스토리지를 동적으로 프로비저닝하는 데 사용돼요. 자세한 내용은 PersistentVolumeClaim 문서를 참고해요.
미리 설치된 기본 StorageClass가 예상 워크로드에 잘 맞지 않을 수 있어요. 예를 들어 너무 비싼 스토리지를 프로비저닝할 수도 있어요. 이런 경우 기본 StorageClass를 변경하거나 완전히 비활성화해서 스토리지의 동적 프로비저닝을 피할 수 있어요.
기본 StorageClass를 삭제하는 것은 동작하지 않을 수 있어요. 클러스터에서 실행되는 애드온 매니저(addon manager)가 자동으로 다시 만들 수 있기 때문이에요. 애드온 매니저와 개별 애드온을 비활성화하는 방법에 대한 자세한 내용은 설치 문서를 참고하세요.
기본 StorageClass 변경하기
클러스터의 StorageClass를 나열합니다:
kubectl get storageclass
출력은 다음과 비슷해요:
NAME PROVISIONER AGE
standard (default) kubernetes.io/gce-pd 1d
gold kubernetes.io/gce-pd 1d
기본 StorageClass는 (default) 로 표시돼요.
기본 StorageClass를 non-default로 표시합니다:
기본 StorageClass에는 storageclass.kubernetes.io/is-default-class 애노테이션이 true 로 설정돼 있어요. 다른 값이거나 애노테이션이 없으면 false 로 해석돼요.
StorageClass를 non-default로 표시하려면 그 값을 false 로 변경해야 해요:
kubectl patch storageclass standard -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'
여기서 standard 는 선택한 StorageClass의 이름이에요.
StorageClass를 default로 표시합니다:
이전 단계와 유사하게 storageclass.kubernetes.io/is-default-class=true 애노테이션을 추가/설정해야 해요.
kubectl patch storageclass gold -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
여러 StorageClass를 default로 표시할 수 있다는 점을 기억하세요. 둘 이상의 StorageClass가 default로 표시되면, 명시적으로 storageClassName 을 정의하지 않은 PersistentVolumeClaim은 가장 최근에 생성된 default StorageClass를 사용해 생성돼요.
특정 volumeName 으로 PersistentVolumeClaim을 생성할 때, 정적 볼륨의 storageClassName 이 PersistentVolumeClaim의 StorageClass와 일치하지 않으면 그 PersistentVolumeClaim은 보류(pending) 상태로 남아요.
선택한 StorageClass가 default인지 확인합니다:
kubectl get storageclass
출력은 다음과 비슷해요:
NAME PROVISIONER AGE
standard kubernetes.io/gce-pd 1d
gold (default) kubernetes.io/gce-pd 1d
더 알아보기 (Learn more)
- PersistentVolume에 대해 더 알아보기