Actualice con trimentctl
Puede actualizar fácilmente una instalación de Astra Trident existente mediante tridentctl
.
Actualiza Astra Trident con tridentctl
La desinstalación y reinstalación de Astra Trident actúa como una actualización. Cuando desinstala Trident, la reclamación de volumen persistente (PVC) y el volumen persistente (PV) que utiliza la puesta en marcha de Astra Trident no se eliminan. Las RVP que ya se han aprovisionado seguirán disponibles mientras Astra Trident está offline y Astra Trident aprovisiona volúmenes para cualquier RVP que se crean interanualmente una vez que vuelve a estar online.
Revisar "Seleccione un método de actualización" antes de actualizar mediante tridentctl
.
-
Ejecute el comando uninstall en
tridentctl
Para quitar todos los recursos asociados con Astra Trident, excepto los CRD y los objetos relacionados../tridentctl uninstall -n <namespace>
-
Vuelva a instalar Astra Trident. Consulte "Instalar Astra Trident mediante tridentctl".
No interrumpa el proceso de actualización. Asegúrese de que el instalador se ejecuta hasta su finalización. |
Actualizar volúmenes mediante tridentctl
Después de la actualización, puede utilizar el completo conjunto de funciones que están disponibles en las versiones más recientes de Trident (como, las Snapshots de volumen bajo demanda), puede actualizar los volúmenes con el tridentctl upgrade
comando.
Si hay volúmenes heredados, debe actualizar desde un tipo NFS o iSCSI al tipo CSI para utilizar el conjunto completo de funciones nuevas en Astra Trident. Un VP heredado que ha sido aprovisionado por Trident admite el conjunto tradicional de funciones.
Tenga en cuenta lo siguiente antes de decidir actualizar los volúmenes al tipo CSI:
-
Es posible que no sea necesario actualizar todos los volúmenes. Los volúmenes creados previamente seguirán siendo accesibles y funcionarán normalmente.
-
Un PV se puede montar como parte de un despliegue/Statilusionados al actualizar. No es necesario que los ilusionados traigan el despliegue/StatSet.
-
No puede conectar un PV a un pod independiente al realizar la actualización. Debe apagar el pod antes de actualizar el volumen.
-
Solo puede actualizar un volumen vinculado a una RVP. Los volúmenes que no están enlazados a PVC deben eliminarse e importarse antes de actualizar.
-
Ejecución
kubectl get pv
Para enumerar los VP.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
Actualmente hay cuatro VP creados por Trident 20.07 con la
netapp.io/trident
aprovisionador. -
Ejecución
kubectl describe pv
Para obtener los detalles del 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
El VP se creó mediante la
netapp.io/trident
provisioner y es del tipo NFS. Para admitir todas las nuevas funciones proporcionadas por Astra Trident, este PV debe actualizarse al tipo CSI. -
Ejecute el
tridentctl upgrade volume <name-of-trident-volume>
Comando para actualizar un volumen heredado de Astra Trident a la especificación 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 | +---------------------+---------+---------------+----------+--------------------------------------+--------+---------+
-
Ejecute un
kubectl describe pv
Para verificar que el volumen es un volumen 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>