Entiende el flujo de trabajo de actualización del operador
Antes de usar el operador Trident para actualizar Trident, debes entender los procesos en segundo plano que ocurren durante la actualización. Esto incluye cambios en el controlador Trident, el Pod de controlador y los Pods de nodo, y el nodo DaemonSet que permiten actualizaciones continuas.
Gestión de la actualización del operador Trident
Uno de los muchos "ventajas de usar el operador Trident" para instalar y actualizar Trident es el manejo automático de objetos de Trident y Kubernetes sin interrumpir los volúmenes montados existentes. De esta manera, Trident puede soportar actualizaciones con cero tiempo de inactividad o "actualizaciones continuas". En particular, el operador de Trident se comunica con el clúster de Kubernetes para:
-
Elimina y vuelve a crear el deployment del controlador Trident y el DaemonSet de nodo.
-
Reemplaza el Trident Controller Pod y los Trident Node Pods por nuevas versiones.
-
Si un nodo no se actualiza, no impide que los nodos restantes se actualicen.
-
Solo los nodos con un Trident Node Pod en ejecución pueden montar volúmenes.
-
|
|
Para más información sobre la arquitectura de Trident en el clúster de Kubernetes, consulta "Arquitectura de Trident". |
Flujo de trabajo de actualización de Operator
Cuando inicias una actualización usando el operador Trident:
-
El Trident operator:
-
Detecta la versión de Trident que tienes instalada actualmente (versión n).
-
Actualiza todos los objetos de Kubernetes, incluidos CRDs, RBAC y Trident SVC.
-
Elimina la implementación del controlador Trident para la versión n.
-
Crea el despliegue del controlador Trident para la versión n+1.
-
-
Kubernetes crea Trident Controller Pod para n+1.
-
El Trident operator:
-
Elimina el DaemonSet de nodo de Trident para n. El operador no espera a que termine el Pod de nodo.
-
Crea el Daemonset del nodo Trident para n+1.
-
-
Kubernetes crea Trident Node Pods en nodos que no están ejecutando Trident Node Pod n. Esto garantiza que nunca haya más de un Trident Node Pod, de cualquier versión, en un nodo.