Tenemos un nodo en el maestro jenkins (en realidad, varios nodos) que se conecta mediante SSH y una estrategia de verificación de claves de confianza manual. Conectamos correctamente el esclavo a jenkins de esta manera (una máquina Sierra Mac para ser específico). Ahora, Sierra es demasiado vieja, necesitamos usar HighSierra. No solo actualizamos la máquina, la limpiamos por completo, instalamos HighSierra desde cero, instalamos todo lo que necesitamos en este esclavo y lo conectamos nuevamente con el mismo nodo jenkins (aún, no se han realizado modificaciones en jenkins). Obtenemos un error cuando Jenkins intenta conectarse al nodo:
ADVERTENCIA: Actualmente, la clave SSH para este host no es de confianza. Se denegarán las conexiones hasta que se autorice esta nueva clave.
Intentamos solucionar el problema de SSH conectándonos a master y ssh-keygen -R todo con ese nodo, luego conectándonos vía ssh al nodo y funciona perfectamente bien... Pero Jenkins aún no puede conectarse con el mismo mensaje.
Ahora es divertido. Creamos un nuevo nodo que es una copia del primero y simplemente lo guardamos. Ninguna modificación. Se conecta instantáneamente.
Entonces, supongo que hay algún lugar en Jenkins donde almacena la huella digital (que cambia después de la reinstalación), pero no pude averiguar dónde.
Por ahora, la solución alternativa de eliminar el nodo y crear uno nuevo después de la reinstalación funciona bien, pero me pregunto si hay otra forma de hacerlo.
¿Algo que decir jenkins para olvidar la huella?
¿Quizás el problema esté en otra parte?
Usamos Jenkins 2.32.3 y nuestro complemento SSH Slaves es v1.15
Gracias por tu iluminación
Respuesta1
Acabo de encontrar este mismo problema. En el lado izquierdo de las opciones del nodo habrá un enlace con un ícono de disquete para autorizar la clave. Haga clic en el enlace y acepte la nueva firma.