INFORME DE ERROR (copiado del problema de
1.8.0 - hasta el maestro actual (2017-10-26)
Cuando se usa kubeadm con un token generado por kubeadm, el token se genera por adelantado, pero también cuando se permite que kubeadm cree el token, se ignora una configuración tokenTTL
. Lo mismo ocurre cuando no se usa un archivo de configuración pero se usa kubeadm init --token-ttl 0
Al proporcionar un tokenTTL de 0s, esperaría que el token no caduque.
Vea https://github.com/kubernetes/kubernetes/issues/53637 donde @rhuss describió esto muy bien.
Este error se introdujo en https://github.com/kubernetes/kubernetes/pull/48783 cuando se cambió el token TTL predeterminado.
El mecanismo de incumplimiento de la maquinaria API no tiene una forma de diferenciar entre un valor no establecido y un valor que se establece explícitamente en cero.
Hice algunas pruebas manuales en ese cambio, pero aparentemente solo por kubeadm token create --ttl 0
, que funciona bien porque no usa el mecanismo predeterminado de MasterConfiguration.
cc @ kubernetes / sig-cluster-lifecycle-bugs
/ tipo error
Mi solución actual es crear un token adicional por mi cuenta _after_ kubeadm init
:
kubeadm init --config /etc/kubernetes/kubeadm.yml
kubeadm token create --ttl 0 --groups system:bootstrappers:kubeadm:default-node-token --description "Bootstrap token which does not expire"
El último token se usa para kubeadm join
en los nodos.
Gracias @mattmoyer por la corrección del error: aplaudir :! Aprobado
Esto está arreglado en master
y debería estar en v1.8.3.
Comentario más útil
Mi solución actual es crear un token adicional por mi cuenta _after_
kubeadm init
:El último token se usa para
kubeadm join
en los nodos.