Skip to main content
Hay disponible una nueva versión de este producto.
Se proporciona el idioma español mediante traducción automática para su comodidad. En caso de alguna inconsistencia, el inglés precede al español.

Actualizar con el operador

Colaboradores

Puede actualizar fácilmente una instalación existente de Astra Trident con el operador, ya sea manualmente o mediante Helm.

Actualice con el operador Trident

Normalmente, debe actualizar Astra Trident mediante el mismo método que se utilizaba para instalarlo originalmente. Revisar "Seleccione un método de actualización" Antes de intentar actualizar con el operador Trident.

Importante

Al actualizar desde una instancia de Astra Trident instalada con el operador que cuenta con el ámbito de espacio de nombres (de las versiones 20,07 a la 20,10), el operador Trident realiza automáticamente lo siguiente:

  • Migra tridentProvisioner a tridentOrchestrator objeto con el mismo nombre,

  • Eliminaciones TridentProvisioner los objetos y la tridentprovisioner CRD

  • Actualiza Astra Trident a la versión del operador en el ámbito del clúster que se usa

  • Instale Astra Trident en el mismo espacio de nombres donde estaba instalado originalmente

Actualice una instalación de operador de Trident de ámbito de clúster

Puede actualizar una instalación del operador Trident en el ámbito del clúster. Todas las versiones 21.01 y posteriores de Astra Trident utilizan un operador con ámbito de clúster.

Antes de empezar

Asegúrese de que está utilizando un clúster de Kubernetes en ejecución "Una versión de Kubernetes compatible".

Pasos
  1. Compruebe su versión de Astra Trident:

    ./tridentctl -n trident version
  2. Elimine el operador Trident que se ha utilizado para instalar la instancia actual de Astra Trident. Por ejemplo, si va a actualizar desde 22,01, ejecute el siguiente comando:

    kubectl delete -f 22.01/trident-installer/deploy/bundle.yaml -n trident
  3. Si ha personalizado la instalación inicial mediante TridentOrchestrator atributos, puede editar TridentOrchestrator objeto para modificar los parámetros de instalación. Esto podría incluir cambios realizados para especificar registros de imágenes de Trident y CSI reflejados para el modo sin conexión, habilitar registros de depuración o especificar secretos de extracción de imágenes.

  4. Instale Astra Trident con el archivo YAML de paquete correcto para su entorno y la versión Astra Trident. Por ejemplo, si va a instalar Astra Trident 23,04 para Kubernetes 1,27, ejecute el siguiente comando:

    kubectl create -f 23.04.0/trident-installer/deploy/bundle_post_1_25.yaml -n trident
    Nota

    Trident proporciona un archivo de paquete que se puede usar para instalar el operador y crear objetos asociados para la versión de Kubernetes.

Resultados

El operador de Trident identifica una instalación existente de Astra Trident y la actualiza a la misma versión que el operador.

Actualice la instalación de un operador de ámbito de espacio de nombres

Puede actualizar desde una instancia de Astra Trident instalada mediante el operador con ámbito de espacio de nombres (versiones 20,07 a 20,10) a una instalación de operadores en el ámbito del clúster.

Antes de empezar

Necesita el archivo YAML del paquete utilizado para desplegar el operador de ámbito de espacio de nombres desde https://github.com/NetApp/trident/tree/stable/vXX.XX/deploy/BUNDLE.YAML donde vXX.XX es el número de versión y. BUNDLE.YAML Es el nombre del archivo YAML del grupo.

Pasos
  1. Compruebe el TridentProvisioner El estado de la instalación existente de Trident es Installed.

    kubectl describe tprov trident -n trident | grep Message: -A 3
    
    Message:  Trident installed
    Status:   Installed
    Version:  v20.10.1
    Nota Si el estado muestra Updating, asegúrese de resolverlo antes de continuar. Para obtener una lista de los posibles valores de estado, consulte "aquí".
  2. Cree el TridentOrchestrator CRD mediante el manifiesto proporcionado con el instalador de Trident.

    # Download the release required [23.04.0]
    mkdir 23.04.0
    cd 23.04.0
    wget https://github.com/NetApp/trident/releases/download/v23.04.0/trident-installer-23.04.0.tar.gz
    tar -xf trident-installer-23.04.0.tar.gz
    cd trident-installer
    kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml
  3. Elimine el operador de ámbito del espacio de nombres mediante su manifiesto.

    1. Asegúrese de que está en el directorio correcto.

      pwd
      /root/20.10.1/trident-installer
    2. Suprima el operador de ámbito de espacio de nombres.

      kubectl delete -f deploy/<BUNDLE.YAML> -n trident
      
      serviceaccount "trident-operator" deleted
      clusterrole.rbac.authorization.k8s.io "trident-operator" deleted
      clusterrolebinding.rbac.authorization.k8s.io "trident-operator" deleted
      deployment.apps "trident-operator" deleted
      podsecuritypolicy.policy "tridentoperatorpods" deleted
    3. Confirme que se ha eliminado el operador Trident.

      kubectl get all -n trident
      
      NAME                               READY   STATUS    RESTARTS   AGE
      pod/trident-csi-68d979fb85-dsrmn   6/6     Running   12         99d
      pod/trident-csi-8jfhf              2/2     Running   6          105d
      pod/trident-csi-jtnjz              2/2     Running   6          105d
      pod/trident-csi-lcxvh              2/2     Running   8          105d
      
      NAME                  TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)              AGE
      service/trident-csi   ClusterIP   10.108.174.125   <none>        34571/TCP,9220/TCP   105d
      
      NAME                         DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR                                     AGE
      daemonset.apps/trident-csi   3         3         3       3            3           kubernetes.io/arch=amd64,kubernetes.io/os=linux   105d
      
      NAME                          READY   UP-TO-DATE   AVAILABLE   AGE
      deployment.apps/trident-csi   1/1     1            1           105d
      
      NAME                                     DESIRED   CURRENT   READY   AGE
      replicaset.apps/trident-csi-68d979fb85   1         1         1       105d
  4. (Opcional) Si es necesario modificar los parámetros de instalación, actualice TridentProvisioner espec. Esto puede incluir cambios como cambiar: Los valores de tridentImage, autosupportImage, repositorio privado de imágenes y provisión imagePullSecrets) después de eliminar el operador de ámbito de espacio de nombres y antes de instalar el operador de ámbito de clúster. Para obtener una lista completa de los parámetros que se pueden actualizar, consulte la "opciones de configuración".

    kubectl patch tprov <trident-provisioner-name> -n <trident-namespace> --type=merge -p '{"spec":{"debug":true}}'
  5. Instale el operador del ámbito del clúster Trident.

    1. Asegúrese de que está en el directorio correcto.

      pwd
      /root/23.04.0/trident-installer
    2. Instale el operador de ámbito de cluster en el mismo espacio de nombres.

      Nota

      Trident proporciona un archivo de paquete que se puede usar para instalar el operador y crear objetos asociados para la versión de Kubernetes.

      kubectl create -f deploy/<BUNDLE.YAML>
      
      serviceaccount/trident-operator created
      clusterrole.rbac.authorization.k8s.io/trident-operator created
      clusterrolebinding.rbac.authorization.k8s.io/trident-operator created
      deployment.apps/trident-operator created
      podsecuritypolicy.policy/tridentoperatorpods created
      
      #All tridentProvisioners will be removed, including the CRD itself
      kubectl get tprov -n trident
      Error from server (NotFound): Unable to list "trident.netapp.io/v1, Resource=tridentprovisioners": the server could not find the requested resource (get tridentprovisioners.trident.netapp.io)
      
      #tridentProvisioners are replaced by tridentOrchestrator
      kubectl get torc
      NAME      AGE
      trident   13s
    3. Examine los pods de Trident en el espacio de nombres. La trident-controller y los nombres de pod reflejan la convención de nomenclatura introducida en 23.01.

      kubectl get pods -n trident
      
      NAME                                     READY   STATUS    RESTARTS   AGE
      trident-controller-79df798bdc-m79dc      6/6     Running   0          1m41s
      trident-node-linux-xrst8                 2/2     Running   0          1m41s
      trident-operator-5574dbbc68-nthjv        1/1     Running   0          1m52s
    4. Confirme que Trident se ha actualizado a la versión prevista.

      kubectl describe torc trident | grep Message -A 3
      Message:                Trident installed
      Namespace:              trident
      Status:                 Installed
      Version:                v23.04.0

Actualice la instalación de un operador basado en Helm

Realice los pasos siguientes para actualizar la instalación de un operador basado en Helm.

Advertencia Cuando actualice un clúster de Kubernetes de 1.24 a 1.25 o posterior que tenga instalado Astra Trident, debe actualizar Values.yaml para establecer excludePodSecurityPolicy para true o agregar --set excludePodSecurityPolicy=true para la helm upgrade comando antes de poder actualizar el clúster.
Pasos
  1. Descargue la última versión de Astra Trident.

  2. Utilice la helm upgrade comando donde trident-operator-23.04.0.tgz refleja la versión a la que desea actualizar.

    helm upgrade <name> trident-operator-23.04.0.tgz
    Nota

    Si establece cualquier opción no predeterminada durante la instalación inicial (como especificar registros privados reflejados para imágenes Trident y CSI), utilice --set para asegurarse de que estas opciones están incluidas en el comando upgrade, de lo contrario, los valores se restablecerán a los valores predeterminados.

    Por ejemplo, para cambiar el valor predeterminado de tridentDebug, ejecute el siguiente comando:

    helm upgrade <name> trident-operator-23.04.0-custom.tgz --set tridentDebug=true
  3. Ejecución helm list para comprobar que la versión de la gráfica y de la aplicación se han actualizado. Ejecución tridentctl logs para revisar cualquier mensaje de depuración.

Resultados

El operador de Trident identifica una instalación existente de Astra Trident y la actualiza a la misma versión que el operador.

Actualizar desde una instalación que no sea del operador

Puede actualizarlo a la versión más reciente del operador de Trident desde un tridentctl instalación.

Pasos
  1. Descargue la última versión de Astra Trident.

    # Download the release required [23.04.0]
    mkdir 23.04.0
    cd 23.04.0
    wget https://github.com/NetApp/trident/releases/download/v22.01.1/trident-installer-23.04.0.tar.gz
    tar -xf trident-installer-23.04.0.tar.gz
    cd trident-installer
  2. Cree el tridentorchestrator CRD del manifiesto.

    kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml
  3. Despliegue el operador de ámbito de cluster en el mismo espacio de nombres.

    kubectl create -f deploy/<BUNDLE.YAML>
    
    serviceaccount/trident-operator created
    clusterrole.rbac.authorization.k8s.io/trident-operator created
    clusterrolebinding.rbac.authorization.k8s.io/trident-operator created
    deployment.apps/trident-operator created
    podsecuritypolicy.policy/tridentoperatorpods created
    
    #Examine the pods in the Trident namespace
    NAME                                  READY   STATUS    RESTARTS   AGE
    trident-controller-79df798bdc-m79dc   6/6     Running   0          150d
    trident-node-linux-xrst8              2/2     Running   0          150d
    trident-operator-5574dbbc68-nthjv     1/1     Running   0          1m30s
  4. Cree un TridentOrchestrator CR para instalar Astra Trident.

    cat deploy/crds/tridentorchestrator_cr.yaml
    apiVersion: trident.netapp.io/v1
    kind: TridentOrchestrator
    metadata:
      name: trident
    spec:
      debug: true
      namespace: trident
    
    kubectl create -f deploy/crds/tridentorchestrator_cr.yaml
    
    #Examine the pods in the Trident namespace
    NAME                                READY   STATUS    RESTARTS   AGE
    trident-csi-79df798bdc-m79dc        6/6     Running   0          1m
    trident-csi-xrst8                   2/2     Running   0          1m
    trident-operator-5574dbbc68-nthjv   1/1     Running   0          5m41s
  5. Confirmar que Trident se ha actualizado a la versión prevista.

    kubectl describe torc trident | grep Message -A 3
    
    Message:                Trident installed
    Namespace:              trident
    Status:                 Installed
    Version:                v23.04.0
Resultados

Los back-ends y las CVP existentes están disponibles automáticamente.