Describa el error
No podemos separar volúmenes adjuntos a nodos eliminados en Trident 21.10.1. En Trident v21.07.2, estos volúmenes se separarían automáticamente después de un período determinado. Si entiendo correctamente, esta separación forzada la realiza AttachDetachController después de ReconcilerMaxWaitForUnmountDuration .
Parece que este cambio se introduce en este compromiso . Esta confirmación hace que ControllerUnpublishVolume de Trident verifique la existencia del nodo. Si el nodo no existe, ControllerUnpublishVolume ahora devuelve un error NotFound , por lo que la separación del volumen siempre falla cuando el nodo ya se eliminó.
En caso de falla del servidor, la desconexión del volumen puede fallar y no tenemos más remedio que eliminar el nodo, por lo que es deseable desconectar los volúmenes adjuntos a los nodos eliminados automáticamente.
Ambiente
silenceAutosupport: true
(Operador Trident)Reproducir
kubectl delete node
En VolumeAttachment, se puede encontrar el siguiente error.
rpc error: code = NotFound desc = node <NODE_NAME> was not found'
Comportamiento esperado
Trident separa automáticamente los volúmenes adjuntos a los nodos eliminados.
Ejecutamos un clúster de Kubernetes de más de 100 nodos en AWS que depende en gran medida de los nodos puntuales. Los nodos puntuales se cancelarán con solo unos minutos de advertencia en AWS, lo que se espera que suceda con bastante frecuencia. Incluso si ejecutamos el controlador de terminación de nodos en modo SQS y reaccionamos a las notificaciones de terminación de puntos con drenaje automático de nodos, generalmente terminamos en una situación en la que el proceso de separación no finaliza antes de que se elimine un nodo.
En este escenario, a menudo encontramos exactamente el mismo problema descrito por @tksm. Este es un problema grave, ya que las cargas de trabajo se atascarán en un estado de bloqueo debido a que el PVC no se conecta después de que el pod se mueva a un nuevo nodo. Espero que el problema se pueda solucionar.
Cualquier ETA en una solución?
@paalkr , el equipo está trabajando actualmente en una solución. Actualizaremos este problema con un enlace a la confirmación una vez que se fusione.
Excelente! Muchas gracias.
Comentario más útil
@paalkr , el equipo está trabajando actualmente en una solución. Actualizaremos este problema con un enlace a la confirmación una vez que se fusione.