Cassandra 데이터베이스의 경우 하이브리드 런타임은 동적으로 생성된 영구 볼륨을 사용하여 데이터를 저장합니다. Cassandra를 올바르게 구성하려면 솔리드 스테이트 드라이브(SSD)에서 지원하는 StorageClass 정의를 구성해야 합니다.
이 주제에서는 SSD를 사용하는 새 StorageClass를 만들고 이것을 기본 클래스로 설정하는 방법을 설명합니다. Cassandra가 시작되면 이 기본 StorageClass를 사용합니다.
기본 StorageClass 변경
다음 단계에서는 StorageClass를 만들고 이것을 기본 클래스로 설정하는 방법을 설명합니다. 자세한 내용은 Kubernetes 문서의 기본 스토리지 클래스 변경을 참조하세요.
- 현재 기본 StorageClass의 이름을 가져옵니다.
kubectl get sc
예를 들면 다음과 같습니다.
kubectl get sc
NAME PROVISIONER AGE standard (default) kubernetes.io/gce-pd 98d standard
라는 StorageClass를 설명합니다. 유형은pd-standard
입니다.kubectl describe sc standard
예를 들면 다음과 같습니다.
kubectl describe sc standard
Name: standard IsDefaultClass: Yes Annotations: storageclass.beta.kubernetes.io/is-default-class=true Provisioner: kubernetes.io/gce-pd Parameters: type=pd-standard AllowVolumeExpansion: <unset> MountOptions: <none> ReclaimPolicy: Delete VolumeBindingMode: Immediate Events: <none>storageclass.yaml
라는 새 파일을 만듭니다.- 이 코드를 파일에 추가합니다. 새 클래스 이름은
apigee-sc
이며, 원하는 이름을 사용할 수 있습니다. 또한 스토리지 유형은pd-ssd
입니다.--- kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: "apigee-sc" provisioner: kubernetes.io/gce-pd parameters: type: pd-ssd replication-type: none volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true
- 새 StorageClass를 Kubernetes 클러스터에 적용합니다.
kubectl apply -f storageclass.yaml
- 다음 두 명령어를 실행하여 기본 StorageClass를 변경합니다.
kubectl patch storageclass standard \ -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'
kubectl patch storageclass apigee-sc \ -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
- 다음 명령어를 실행하여 새 기본 StorageClass를
apigee-sc
라고 하는지 확인합니다.kubectl get sc
예를 들면 다음과 같습니다.
kubectl get sc
NAME PROVISIONER AGE apigee-sc (default) kubernetes.io/gce-pd 1d standard kubernetes.io/gce-pd 98d