Actualizar con el operador
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.
|
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:
|
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.
Asegúrese de que está utilizando un clúster de Kubernetes en ejecución "Una versión de Kubernetes compatible".
-
Compruebe su versión de Astra Trident:
./tridentctl -n trident version
-
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
-
Si ha personalizado la instalación inicial mediante
TridentOrchestrator
atributos, puede editarTridentOrchestrator
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. -
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
Trident proporciona un archivo de paquete que se puede usar para instalar el operador y crear objetos asociados para la versión de Kubernetes.
-
Para los clústeres que ejecutan Kubernetes 1,24 o una versión anterior, utilice "bundle_pre_1_25.yaml".
-
Para los clústeres que ejecutan Kubernetes 1,25 o posterior, utilice "bundle_post_1_25.yaml".
-
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.
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.
-
Compruebe el
TridentProvisioner
El estado de la instalación existente de Trident esInstalled
.kubectl describe tprov trident -n trident | grep Message: -A 3 Message: Trident installed Status: Installed Version: v20.10.1
Si el estado muestra Updating
, asegúrese de resolverlo antes de continuar. Para obtener una lista de los posibles valores de estado, consulte "aquí". -
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
-
Elimine el operador de ámbito del espacio de nombres mediante su manifiesto.
-
Asegúrese de que está en el directorio correcto.
pwd /root/20.10.1/trident-installer
-
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
-
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
-
-
(Opcional) Si es necesario modificar los parámetros de instalación, actualice
TridentProvisioner
espec. Esto puede incluir cambios como cambiar: Los valores detridentImage
,autosupportImage
, repositorio privado de imágenes y provisiónimagePullSecrets
) 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}}'
-
Instale el operador del ámbito del clúster Trident.
-
Asegúrese de que está en el directorio correcto.
pwd /root/23.04.0/trident-installer
-
Instale el operador de ámbito de cluster en el mismo espacio de nombres.
Trident proporciona un archivo de paquete que se puede usar para instalar el operador y crear objetos asociados para la versión de Kubernetes.
-
Para los clústeres que ejecutan Kubernetes 1,24 o una versión anterior, utilice "bundle_pre_1_25.yaml".
-
Para los clústeres que ejecutan Kubernetes 1,25 o posterior, utilice "bundle_post_1_25.yaml".
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
-
-
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
-
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.
|
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.
|
-
Descargue la última versión de Astra Trident.
-
Utilice la
helm upgrade
comando dondetrident-operator-23.04.0.tgz
refleja la versión a la que desea actualizar.helm upgrade <name> trident-operator-23.04.0.tgz
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
-
Ejecución
helm list
para comprobar que la versión de la gráfica y de la aplicación se han actualizado. Ejecucióntridentctl logs
para revisar cualquier mensaje de depuración.
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.
-
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
-
Cree el
tridentorchestrator
CRD del manifiesto.kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml
-
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
-
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
-
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
Los back-ends y las CVP existentes están disponibles automáticamente.