Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a: ✔️ AKS Automatic ✔️ AKS Standard
Azure Kubernetes Service (AKS) supervisa de manera continua el estado de salud de los nodos de trabajo y realiza reparaciones automáticas si están en mal estado. La plataforma de máquina virtual (VM) de Azure realiza el mantenimiento de las VM que experimentan problemas. AKS y las VM de Azure trabajan de forma conjunta para minimizar las interrupciones del servicio de los clústeres.
Para la mayoría de las cargas de trabajo de producción, AKS Automatic es la experiencia predeterminada recomendada lista para producción para AKS. Los clústeres de AKS Automatic y AKS Standard vienen preconfigurados con la reparación automática del nodo.
En este artículo, aprenderá cómo funciona la reparación automática de nodos, cuando se desencadenan acciones de reparación, qué limitaciones se aplican y cómo supervisar los eventos de reparación.
Comportamiento de reparación automática del nodo por modo de clúster
Ambos modos de clúster de AKS vienen preconfigurados con la reparación automática del nodo:
- AKS Automatic: preconfigurado como parte de la configuración predeterminada lista para producción de AKS Automatic.
- AKS Standard: preconfigurado en clústeres estándar de AKS sin configuración adicional.
Ambos modos usan las mismas comprobaciones de estado del nodo y la misma secuencia de reparación descrita en este artículo.
Para obtener más información sobre los valores predeterminados de la plataforma de AKS Automatic, consulte ¿Qué es Azure Kubernetes Service (AKS) Automatic?
Cómo AKS verifica los nodos NotReady
AKS utiliza las siguientes reglas para determinar si un nodo está en mal estado y necesita reparación:
- El nodo notifica un estado NotReady en comprobaciones consecutivas durante un período de 10 minutos.
- El nodo no notifica ningún estado en un plazo de 10 minutos.
Puede comprobar manualmente el estado de mantenimiento de los nodos con el comando kubectl get nodes.
Funcionamiento de la reparación automática
Nota
AKS inicia las operaciones de reparación con la cuenta de usuario aks-remediator.
Si AKS identifica un nodo incorrecto que permanece incorrecto durante al menos cinco minutos, AKS realiza las siguientes acciones:
- AKS reinicia el nodo.
- Si el nodo sigue sin estar en buen estado después de reiniciarse, AKS reinstala la imagen del nodo.
- Si el nodo sigue sin funcionar correctamente después de volver a crear la imagen y es un nodo Linux, AKS vuelve a desplegar el nodo.
AKS vuelve a intentar la secuencia de reinicio, recreación de la imagen y redespliegue hasta tres veces si el nodo sigue en mal estado. El proceso general de reparación automática puede tardar hasta una hora en completarse.
Consideraciones de producción
La reparación automática de nodos es un mecanismo de resistencia principal, pero compárelo con los procedimientos de resistencia de nivel de carga de trabajo:
- Ejecute cargas de trabajo críticas con varias réplicas.
- Use PodDisruptionBudgets y sondeos de preparación para reducir el impacto perceptible para el usuario.
- Supervise la actividad de reparación y los eventos de error para detectar problemas repetidos de nodo.
- Integre los tiempos de autorreparación en la planificación de SLO/SLA y de la respuesta ante incidentes.
Limitaciones
La reparación automática de nodos de AKS se ofrece según el principio de mejor esfuerzo. AKS no garantiza que un nodo se restaure a un estado correcto en cada escenario. Si un nodo sigue sin estar en buen estado, realice una comprobación manual. Para obtener más información, consulte Solución de problemas del estado notReady del nodo.
Es posible que AKS no realice la reparación automática en los escenarios siguientes:
- Un error de configuración de red impide notificar el estado de un nodo.
- Un nodo no se registra como un nodo en buen estado.
- Un nodo tiene alguna de las siguientes manchas:
node.cloudprovider.kubernetes.io/shutdownToBeDeletedByClusterAutoscaler
- Se está actualizando un nodo y tiene las siguientes anotaciones:
"cluster-autoscaler.kubernetes.io/scale-down-disabled": "true""kubernetes.azure.com/azure-cluster-autoscaler-scale-down-disabled-reason": "upgrade"
Supervisar la reparación automática de nodos mediante eventos de Kubernetes
Cuando AKS realiza la reparación automática del nodo, emite eventos de Kubernetes desde el origen aks-auto-repair . Los siguientes eventos aparecen en un objeto de nodo cuando se produce la reparación automática.
Para más información sobre el acceso, el almacenamiento y las alertas en eventos de Kubernetes, consulte Uso de eventos de Kubernetes para solucionar problemas en AKS.
| Motivo | Mensaje de evento | Descripción |
|---|---|---|
| NodeRebootStart | La reparación automática del nodo inicia una acción de reinicio debido al estado NotReady persistente durante más de cinco minutos. | Este evento le notifica cuando el reinicio está a punto de realizarse en el nodo. Esta acción es la primera de la secuencia general de reparación automática del nodo. |
| NodeRebootEnd | Se ha completado la acción de reinicio desde la reparación automática del nodo. | Se emite una vez completado el reinicio en el nodo. Este evento no indica el estado de mantenimiento (correcto o incorrecto) del nodo después de realizar el reinicio. |
| NodeReimageStart | La reparación automática del nodo inicia una acción de nueva imagen debido al estado NotReady persistente durante más de cinco minutos. | Este evento le notifica cuándo se va a realizar una nueva imagen en el nodo. |
| NodeReimageEnd | Se completó la acción de reimagen de la reparación automática del nodo. | Se genera una vez completada la imagen nueva en el nodo. Este evento no indica el estado de mantenimiento (correcto o incorrecto) del nodo después de realizar la nueva imagen. |
| NodeRedeployStart | La reparación automática del nodo está iniciando una acción de redespliegue debido a que el estado NotReady persiste durante más de cinco minutos. | Este evento le notifica cuando la reimplementación está a punto de realizarse en el nodo. Volver a implementar es la última acción de la secuencia de reparación automática del nodo. |
| NodeRedeployEnd | Se ha completado la acción de reimplementación desde la reparación automática del nodo. | Se emite una vez que el despliegue se completa en el nodo. Este evento no indica el estado de salud (saludable o no saludable) del nodo después de realizar la reimplementación. |
Si se producen errores durante la reparación automática del nodo, AKS emite los siguientes eventos con el mensaje de error textual. Para obtener más información, consulte Solución de problemas de errores comunes de reparación automática de nodos.
Nota
El código de error de los siguientes mensajes de evento varía en función del error notificado.
| Motivo | Mensaje de evento | Descripción |
|---|---|---|
| NodeRebootError | Error en la acción de reinicio de reparación automática del nodo debido a un error de operación. Consulte los detalles del error aquí: Código de error | Se genera cuando se produce un error con la acción de reinicio. |
| NodeReimageError | Error en la acción de reimagen de reparación automática del nodo debido a un error de operación. Consulte los detalles del error aquí: Código de error | Se emite cuando hay un error con la acción de reimagen. |
| NodeRedeployError | Error en la acción de reimplementación de la reparación automática del nodo debido a un error de operación. Consulte los detalles del error aquí: Código de error | Se genera cuando se produce un error con la acción de reimplementación. |
Contenido relacionado
- ¿Qué es Azure Kubernetes Service (AKS) Automático?
- Creación de un clúster automático de AKS
- Uso de eventos de Kubernetes para solucionar problemas en AKS
- Solución de problemas del estado notReady del nodo en AKS
- Solución de errores comunes de reparación automática de nodos en AKS
- Introducción a Container Insights