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