Um volume é considerado offline quando não está anexado a um nó ou pod. Ambos os tipos de clusters, Supervisor Clusters e Tanzu Kubernetes, oferecem suporte à expansão de volume offline.

Pré-requisitos

Certifique-se de atualizar seu ambiente vSphere para uma versão apropriada que ofereça suporte à expansão de volume offline. Consulte o Expansão de volume no vSphere com Tanzu.

Procedimento

  1. Crie uma declaração de volume persistente (PVC) com uma classe de armazenamento.
    1. Defina um PVC usando o seguinte manifesto YAML como exemplo.
      No exemplo, o tamanho do armazenamento solicitado é de 1 Gi.
      apiVersion: v1
      kind: PersistentVolumeClaim
      metadata:
        name: example-block-pvc
      spec:
        accessModes:
        - ReadWriteOnce
        resources:
          requests:
            storage: 1Gi
        storageClassName: example-block-sc
    2. Aplique o PVC ao cluster do Kubernetes.
      kubectl apply -f example-block-pvc.yaml 
  2. Aplique um patch no PVC para aumentar seu tamanho.
    Se o PVC não estiver conectado a um nó ou sendo usado por um pod, use o seguinte comando para corrigir o PVC. Neste exemplo, o aumento de armazenamento solicitado é de 2 Gi.
    kubectl patch pvc example-block-pvc -p '{"spec": {"resources": {"requests": {"storage": "2Gi"}}}}'
    Essa ação aciona uma expansão no volume associado ao PVC.
  3. Verifique se o tamanho do volume aumentou.
    kubectl get pv
    NAME                                       CAPACITY ACCESS MODES RECLAIM POLICY STATUS   CLAIM                       STORAGECLASS           REASON AGE
    pvc-9e9a325d-ee1c-11e9-a223-005056ad1fc1   2Gi           RWO         Delete     Bound    default/example-block-pvc   example-block-sc              6m44s
    Observação: O tamanho do PVC permanece inalterado até que o PVC seja usado por um pod.
    O exemplo a seguir mostra que o tamanho do PVC não foi alterado. Se você descrever o PVC, poderá ver a condição FilesystemResizePending aplicada ao PVC.
    kubectl get pvc
    NAME                STATUS VOLUME                                     CAPACITY ACCESS MODES   STORAGECLASS       AGE
    example-block-pvc   Bound  pvc-9e9a325d-ee1c-11e9-a223-005056ad1fc1   1Gi           RWO       example-block-sc   6m57s
  4. Crie um pod para usar o PVC.
    Quando o PVC é usado pelo pod, o sistema de arquivos é expandido.
  5. Verifique se o tamanho do PVC foi modificado.
    kubectl get pvc
    NAME                STATUS VOLUME                                    CAPACITY ACCESS MODES STORAGECLASS     AGE
    example-block-pvc   Bound  pvc-24114458-9753-428e-9c90-9f568cb25788   2Gi         RWO      example-block-sc 2m12s
    A condição FilesystemResizePending foi removida do PVC. A expansão do volume está concluída.

O que Fazer Depois

Um administrador do vSphere pode ver o novo tamanho do volume no vSphere Client. Consulte o Monitore volumes persistentes no vSphere Client.