Il database Cassandra utilizza volumi permanenti creati dinamicamente per archiviare i dati. Per un corretto funzionamento del database, Apigee richiede la configurazione di una definizione di StorageClass supportata da un'unità a stato solido (SSD).
Se al momento non hai un'unità SSD configurata per Cassandra, questo argomento spiega come creare un nuovo oggetto StorageClass che utilizzi SSD e renderlo la classe predefinita. All'avvio, Cassandra utilizzerà il valore predefinito di StorageClass.
Modifica il valore predefinito del campo StorageClass
I passaggi seguenti spiegano come creare un oggetto StorageClass e renderlo la classe predefinita. Per ulteriori informazioni, consulta Modificare la classe di archiviazione predefinita nella documentazione di Kubernetes.
- Visualizza il nome dell'attuale oggetto StorageClass predefinito:
kubectl get sc
Ad esempio:
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 - Descrivi il valore di StorageClass denominato
standard-rwo
. Tieni presente che il suo tipo èpd-balanced
:kubectl describe sc standard-rwo
Ad esempio:
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>
- Crea un nuovo file denominato
storageclass.yaml
. - Aggiungi questo codice al file. Tieni presente che il nome della nuova classe
è
apigee-sc
. Puoi utilizzare il nome che preferisci. Inoltre, tieni presente che il tipo di archiviazione è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
- Applica il nuovo oggetto StorageClass al tuo cluster Kubernetes:
kubectl apply -f storageclass.yaml
- Esegui questi due comandi per modificare il valore predefinito di 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"}}}'
- Esegui questo comando per verificare che il nuovo valore predefinito di StorageClass sia denominato
apigee-sc
:kubectl get sc
Ad esempio:
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