Configuração do StorageClass

Para o banco de dados do Cassandra, o ambiente de execução híbrido usa os volumes permanentes criados dinamicamente para armazenar os dados. Para configurar o Cassandra corretamente, especifique uma definição de StorageClass auxiliada por uma unidade de estado sólido (SSD, na sigla em inglês).

Neste tópico, você aprenderá como criar uma nova StorageClass que usa SSD e torná-la a classe padrão. Quando o Cassandra é iniciado, ele usa essa StorageClass padrão.

Alterar a StorageClass padrão

As etapas a seguir explicam como criar uma StorageClass e torná-la a classe padrão. Para mais informações, consulte Alterar a classe de armazenamento padrão na documentação do Kubernetes.

  1. Consiga o nome da StorageClass padrão atual:
    kubectl get sc

    Exemplo:

    kubectl get sc
      NAME                 PROVISIONER            AGE
      standard (default)   kubernetes.io/gce-pd   98d
    
  2. Descreva a StorageClass chamada standard. Observe que o tipo dela é pd-standard:
    kubectl describe sc standard

    Exemplo:

    kubectl describe sc standard
      Name:                  standard
      IsDefaultClass:        Yes
      Annotations:           storageclass.beta.kubernetes.io/is-default-class=true
      Provisioner:           kubernetes.io/gce-pd
      Parameters:            type=pd-standard
      AllowVolumeExpansion:  <unset>
      MountOptions:          <none>
      ReclaimPolicy:         Delete
      VolumeBindingMode:     Immediate
      Events:                <none>
  3. Crie um novo arquivo chamado storageclass.yaml.
  4. Adicione este código ao arquivo. Observe que o nome da nova classe é apigee-sc. Use o nome que preferir. Além disso, o tipo de armazenamento é pd-ssd:
    ---
    kind: StorageClass
    apiVersion: storage.k8s.io/v1
    metadata:
      name: "apigee-sc"
    provisioner: kubernetes.io/gce-pd
    parameters:
      type: pd-ssd
      replication-type: none
      volumeBindingMode: WaitForFirstConsumer
    
  5. Aplique a nova StorageClass ao cluster do Kubernetes:
    kubectl apply -f storageclass.yaml
  6. Execute os dois comandos a seguir para alterar a StorageClass padrão:
    kubectl patch storageclass standard \
      -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"}}}'
  7. Execute este comando para verificar se a nova StorageClass padrão é chamada apigee-sc:
    kubectl get sc

    Exemplo:

    kubectl get sc
      NAME                 PROVISIONER            AGE
      apigee-sc (default)  kubernetes.io/gce-pd   1d
      standard             kubernetes.io/gce-pd   98d