Reparación automática de nodos de Azure Kubernetes Service (AKS)
Azure Kubernetes Service (AKS) supervisa de manera continua el estado de mantenimiento de los nodos de trabajo y realiza reparaciones automáticas si son incorrectos. 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.
En este artículo, obtendrá información sobre el funcionamiento de la función de reparación automática de nodo para nodos de Windows y Linux.
Comprobaciones de nodos NotReady en AKS
AKS usa las siguientes reglas para determinar si un nodo es incorrecto 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 siendo incorrecto después del reinicio, AKS vuelve a crear la imagen del nodo.
- Si el nodo sigue siendo incorrecto después de volver a crear una imagen inicial y se trata de un nodo de Linux, AKS vuelve a implementar el nodo.
AKS reintenta el reinicio, la imagen nueva y la secuencia de reimplementación hasta tres veces si el nodo sigue siendo incorrecto. El proceso general de reparación automática puede tardar hasta una hora en completarse.
Limitaciones
La reparación automática del nodo de AKS es un servicio de mejor esfuerzo y no garantizamos que el nodo se restaure de nuevo al estado correcto. Si el nodo persiste en un estado incorrecto, recomendamos encarecidamente que realice una investigación manual del nodo. Obtenga más información sobre solución de problemas de estado del nodo NotReady.
Hay casos en los que AKS no realiza la reparación automática. El error en la reparación automática del nodo puede ocurrir por diseño o si Azure no puede detectar que existe un problema. Entre los ejemplos de cuándo no se realiza la reparación automática se incluyen:
- No se notifica un estado de nodo debido a un error en la configuración de red.
- No se pudo registrar un nodo inicialmente como un nodo en buen estado.
- Si cualquiera de las siguientes intolerancias está presente en el nodo:
node.cloudprovider.kubernetes.io/shutdown
,ToBeDeletedByClusterAutoscaler
.
Supervisar la reparación automática de nodos mediante eventos de Kubernetes
Cuando AKS realiza la reparación automática de nodos en su clúster, AKS emite eventos de Kubernetes desde la fuente aks-auto-repair para mayor visibilidad. Los eventos siguientes 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 la configuración de alertas en eventos de Kubernetes, consulte Uso de eventos de Kubernetes para solucionar problemas en Azure Kubernetes Service.
Motivo | Mensaje del 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 5 minutos. | Este evento se emite para notificarle 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 5 minutos. | Este evento se emite para notificarle 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 reimplementación debido a que el estado NotReady persiste más de 5 minutos. | Este evento se emite para notificarle 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 genera una vez completada la reimplementación en el nodo. Este evento no indica el estado de mantenimiento (correcto o incorrecto) del nodo después de realizar la reimplementación. |
Si se producen errores durante el proceso de reparación automática del nodo, se emiten los siguientes eventos con el mensaje de error textual. Obtenga más información acerca de la solución de problemas de errores comunes de reparación automática de nodos.
Nota:
El código de error en los siguientes mensajes de evento varía en función del error notificado.
Motivo | Mensaje del 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. |
Pasos siguientes
De forma predeterminada, puede acceder a los eventos y registros de Kubernetes en el clúster de AKS desde la últimas hora. Para almacenar y consultar eventos y registros de los últimos 90 días, habilite Container Insights para una solución de problemas más detallada en el clúster de AKS.
Azure Kubernetes Service