Skip to main content
Uma versão mais recente deste produto está disponível.
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Atualize com o tridentctl

Colaboradores

É possível atualizar facilmente uma instalação existente do Astra Trident usando `tridentctl`o .

Atualizar o Astra Trident usando tridentctl

Desinstalar e reinstalar o Astra Trident funciona como uma atualização. Quando você desinstalar o Trident, a reivindicação de volume persistente (PVC) e o volume persistente (PV) usados pela implantação do Astra Trident não são excluídos. Os PVS que já tiverem sido provisionados permanecerão disponíveis enquanto o Astra Trident estiver offline, e o Astra Trident provisionará volumes para quaisquer PVCs que forem criados nesse período, uma vez que estiverem novamente online.

Antes de começar

Revise "Selecione um método de atualização" antes de atualizar usando `tridentctl`o .

Passos
  1. Execute o comando uninstall tridentctl para remover todos os recursos associados ao Astra Trident, exceto para CRDs e objetos relacionados.

    ./tridentctl uninstall -n <namespace>
  2. Reinstale o Astra Trident. "Instale o Astra Trident usando o tridentctl"Consulte a .

Importante Não interrompa o processo de atualização. Certifique-se de que o instalador é executado até a conclusão.

Atualizar volumes usando tridentctl

Após a atualização, você pode fazer uso do rico conjunto de recursos que estão disponíveis em versões mais recentes do Trident (como snapshots de volume sob demanda), você pode atualizar os volumes usando o tridentctl upgrade comando.

Se houver volumes legados, você deve atualizá-los de um tipo NFS ou iSCSI para o tipo CSI para usar o conjunto completo de novos recursos no Astra Trident. Um PV legado que foi provisionado pelo Trident suporta o conjunto tradicional de recursos.

Antes de começar

Considere o seguinte antes de decidir atualizar volumes para o tipo CSI:

  • Talvez você não precise atualizar todos os volumes. Os volumes criados anteriormente continuarão a ser acessíveis e a funcionar normalmente.

  • Um PV pode ser montado como parte de um deployment/StatefulSet ao atualizar. Não é necessário derrubar o deployment/StatefulSet.

  • Você não pode anexar um PV a um pod autônomo ao atualizar. Você deve desligar o pod antes de atualizar o volume.

  • Você pode atualizar apenas um volume que esteja vinculado a um PVC. Os volumes que não estão vinculados a PVCs devem ser removidos e importados antes da atualização.

Passos
  1. Execute kubectl get pv para listar os PVS.

    kubectl get pv
    NAME                         CAPACITY     ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM                  STORAGECLASS    REASON   AGE
    default-pvc-1-a8475          1073741824   RWO            Delete           Bound    default/pvc-1          standard                 19h
    default-pvc-2-a8486          1073741824   RWO            Delete           Bound    default/pvc-2          standard                 19h
    default-pvc-3-a849e          1073741824   RWO            Delete           Bound    default/pvc-3          standard                 19h
    default-pvc-4-a84de          1073741824   RWO            Delete           Bound    default/pvc-4          standard                 19h
    trident                      2Gi          RWO            Retain           Bound    trident/trident                                 19h

    Atualmente, existem quatro PVS que foram criados pelo Trident 20,07, usando o netapp.io/trident provisionador.

  2. Corra kubectl describe pv para obter os detalhes do PV.

    kubectl describe pv default-pvc-2-a8486
    
    Name:            default-pvc-2-a8486
    Labels:          <none>
    Annotations:     pv.kubernetes.io/provisioned-by: netapp.io/trident
                     volume.beta.kubernetes.io/storage-class: standard
    Finalizers:      [kubernetes.io/pv-protection]
    StorageClass:    standard
    Status:          Bound
    Claim:           default/pvc-2
    Reclaim Policy:  Delete
    Access Modes:    RWO
    VolumeMode:      Filesystem
    Capacity:        1073741824
    Node Affinity:   <none>
    Message:
    Source:
        Type:      NFS (an NFS mount that lasts the lifetime of a pod)
        Server:    10.xx.xx.xx
        Path:      /trid_1907_alpha_default_pvc_2_a8486
        ReadOnly:  false

    O PV foi criado usando o netapp.io/trident provisionador e é do tipo NFS. Para suportar todos os novos recursos fornecidos pelo Astra Trident, este PV deve ser atualizado para o tipo CSI.

  3. Execute o tridentctl upgrade volume <name-of-trident-volume> comando para atualizar um volume legado Astra Trident para a especificação CSI.

    ./tridentctl get volumes -n trident
    +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+
    |            NAME     |  SIZE   | STORAGE CLASS | PROTOCOL |             BACKEND UUID             | STATE  | MANAGED |
    +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+
    | default-pvc-2-a8486 | 1.0 GiB | standard      | file     | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true    |
    | default-pvc-3-a849e | 1.0 GiB | standard      | file     | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true    |
    | default-pvc-1-a8475 | 1.0 GiB | standard      | file     | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true    |
    | default-pvc-4-a84de | 1.0 GiB | standard      | file     | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true    |
    +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+
    
    ./tridentctl upgrade volume default-pvc-2-a8486 -n trident
    +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+
    |            NAME     |  SIZE   | STORAGE CLASS | PROTOCOL |             BACKEND UUID             | STATE  | MANAGED |
    +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+
    | default-pvc-2-a8486 | 1.0 GiB | standard      | file     | c5a6f6a4-b052-423b-80d4-8fb491a14a22 | online | true    |
    +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+
  4. Execute um kubectl describe pv para verificar se o volume é um volume CSI.

    kubectl describe pv default-pvc-2-a8486
    Name:            default-pvc-2-a8486
    Labels:          <none>
    Annotations:     pv.kubernetes.io/provisioned-by: csi.trident.netapp.io
                     volume.beta.kubernetes.io/storage-class: standard
    Finalizers:      [kubernetes.io/pv-protection]
    StorageClass:    standard
    Status:          Bound
    Claim:           default/pvc-2
    Reclaim Policy:  Delete
    Access Modes:    RWO
    VolumeMode:      Filesystem
    Capacity:        1073741824
    Node Affinity:   <none>
    Message:
    Source:
        Type:              CSI (a Container Storage Interface (CSI) volume source)
        Driver:            csi.trident.netapp.io
        VolumeHandle:      default-pvc-2-a8486
        ReadOnly:          false
        VolumeAttributes:      backendUUID=c5a6f6a4-b052-423b-80d4-8fb491a14a22
                               internalName=trid_1907_alpha_default_pvc_2_a8486
                               name=default-pvc-2-a8486
                               protocol=file
    Events:                <none>