Espandere i volumi permanenti Cassandra

Questo processo consente di espandere i volumi permanenti utilizzati dalla piattaforma Apigee ibrida Cassandra per soddisfare esigenze di archiviazione più elevate senza dover creare nuovi nodi solo per più spazio di archiviazione.

Il componente Apigee ibrido cassandra, che utilizza volumi permanenti per archiviare i dati. Le dimensioni del volume permanente viene definito durante l'installazione e la configurazione iniziale. Questa dimensione iniziale dello spazio di archiviazione è un valore immutabile e non può essere modificata. Di conseguenza, ogni nuovo nodo aggiunto al cluster utilizzerà le stesse dimensioni di volume permanente.

È possibile aumentare le dimensioni del volume permanente esistente apportando le modifiche direttamente al claim del volume permanente, ma i nuovi nodi utilizzeranno comunque le dimensioni iniziali più piccole del volume permanente.

Se il database Cassandra ibrido sta per raggiungere la capacità di archiviazione, puoi utilizzare questa procedura di espandere i volumi permanenti esistenti e consentire ai nuovi nodi di espandere i propri volumi permanenti beh.

Processo

  1. Prima di procedere con l'espansione del volume permanente, assicurati che "allowVolumeExpansion: true" sia impostato su StorageClass al momento della creazione:
    kubectl get sc standard -o json | jq .allowVolumeExpansion true
  2. Aggiorna la dimensione del volume per la configurazione del volume permanente (PVC) esistente:
    kubectl -n apigee edit pvc 
  3. Elimina lo statefulset senza eliminazione a cascata:
    kubectl -n apigee delete sts --cascade=false apigee-cassandra
  4. Aggiorna il file overrides.yaml e applica le modifiche:
    cassandra:
      storage:
        capacity: 20Gi
    ./apigeectl apply -c cassandra -f overrides.yaml
  5. Riavviare gradualmente i pod Cassandra in base alle nuove dimensioni. Elimina i pod Cassandra uno alla volta. Verifica che il set statefulset sia integro prima di passare ai nodi successivi:
    kubectl -n apigee delete pod apigee-cassandra-2
    kubectl -n apigee get sts
      NAME               READY   AGE
      apigee-cassandra   3/3     64s
  6. Verifica che i pod di Cassandra stiano preparando la nuova dimensione del volume:
    kubectl -n apigee get pvc