Expandir volumes permanentes do Cassandra

Esse processo permite expandir os volumes permanentes usados pelo banco de dados híbrido do Cassandra da Apigee para acomodar maiores necessidades de armazenamento sem precisar criar novos nós apenas para fornecer mais armazenamento.

O componente cassandra híbrido da Apigee usa volumes permanentes para armazenar dados. O tamanho do volume permanente é definido durante a instalação e a configuração inicial. Esse tamanho de armazenamento inicial é um valor imutável e não pode ser alterado. Portanto, qualquer novo nó adicionado ao cluster usará o mesmo tamanho de volume permanente.

É possível aumentar o tamanho do volume permanente existente fazendo alterações diretamente na reivindicação de volume permanente, mas novos nós ainda usarão o tamanho de volume permanente inicial menor.

Se seu banco de dados híbrido do Cassandra estiver próximo à capacidade de armazenamento, use este procedimento para expandir os volumes permanentes existentes e permitir que novos nós também expandam os respectivos volumes permanentes.

Processe

  1. Antes de prosseguir com a expansão do volume permanente, verifique se "allowVolumeExpansion: true" está definido no StorageClass quando ele é criado:
    kubectl get sc standard -o json | jq .allowVolumeExpansion true
  2. Atualize o tamanho do volume para a configuração de volume permanente (PVC) atual:
    kubectl -n apigee edit pvc 
  3. Excluir o statefulset sem exclusão em cascata:
    kubectl -n apigee delete sts --cascade=false apigee-cassandra
  4. Atualize o arquivo overrides.yaml e aplique as alterações:
    cassandra:
      storage:
        capacity: 20Gi
    ./apigeectl apply -c cassandra -f overrides.yaml
  5. Reinicialização contínua dos pods do Cassandra para refletir o novo tamanho Exclua os pods do Cassandra de cada vez. Verifique se o statefulset está íntegro antes de continuar para os próximos nós:
    kubectl -n apigee delete pod apigee-cassandra-2
    kubectl -n apigee get sts
      NAME               READY   AGE
      apigee-cassandra   3/3     64s
  6. Verifique se os pods do Cassandra estão criando o novo tamanho de volume:
    kubectl -n apigee get pvc