Cassandra 資料庫會使用 動態建立的永久磁碟區儲存資料。為確保資料庫正常運作,Apigee 要求您設定由固態硬碟 (SSD) 支援的 StorageClass 定義。
如果您目前未為 Cassandra 設定 SSD,本主題將說明如何建立使用 SSD 的新 StorageClass,並將其設為預設類別。Cassandra 啟動時,會使用這個預設的 StorageClass。
變更預設儲存空間級別
下列步驟說明如何建立 StorageClass 並設為預設類別。詳情請參閱 Kubernetes 說明文件中的「 變更預設儲存空間類別」。
- 取得目前預設 StorageClass 的名稱:
kubectl get sc
例如:
kubectl get scNAME 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 scNAME 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