Die Cassandra-Datenbank verwendet dynamisch erstellte nichtflüchtige Volumes zum Speichern von Daten. Für eine ordnungsgemäße Datenbankfunktion müssen Sie in Apigee eine StorageClass-Definition konfigurieren, die von einem Solid-State-Laufwerk (SSD) unterstützt wird.
Wenn Sie derzeit keine SSD für Cassandra konfiguriert haben, wird in diesem Thema erläutert, wie Sie eine neue StorageClass erstellen, die SSD verwendet, und als Standardklasse festlegen. Wenn Cassandra gestartet wird, wird diese Standard-StorageClass verwendet.
Standard-StorageClass ändern
In den folgenden Schritten wird erläutert, wie Sie eine StorageClass erstellen und als Standardklasse festlegen. Weitere Informationen finden Sie in der Kubernetes-Dokumentation unter Standardspeicherklasse ändern.
- Rufen Sie den Namen der aktuellen Standard-StorageClass ab:
kubectl get sc
Beispiel:
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 - Beschreiben Sie die StorageClass mit dem Namen
standard-rwo
. Der Typ lautetpd-balanced
:kubectl describe sc standard-rwo
Beispiel:
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>
- Erstellen Sie eine neue Datei mit dem Namen
storageclass.yaml
: - Fügen Sie diesen Code in die Datei ein. Beachten Sie, dass der Name der neuen Klasse
apigee-sc
ist. Sie können einen beliebigen Namen verwenden. Beachten Sie auch, dass der Speichertyppd-ssd
ist:--- 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
- Wenden Sie die neue StorageClass auf Ihren Kubernetes-Cluster an:
kubectl apply -f storageclass.yaml
- Führen Sie die folgenden beiden Befehle aus, um die Standard-StorageClass zu ändern:
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"}}}'
- Führen Sie den folgenden Befehl aus, um zu prüfen, ob die neue Standard-StorageClass
apigee-sc
heißt:kubectl get sc
Beispiel:
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