Kubeadm: `kubeadm init --token-ttl 0` (bandera) y` tokenTTL: "0" `(config) están rotos desde 1.8.0

Creado en 26 oct. 2017  ·  4Comentarios  ·  Fuente: kubernetes/kubeadm

¿Es este un INFORME DE ERROR o una SOLICITUD DE FUNCIÓN?

INFORME DE ERROR (copiado del problema de

Versiones

1.8.0 - hasta el maestro actual (2017-10-26)

¿Qué sucedió?

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

¿Qué esperabas que sucediera?

Al proporcionar un tokenTTL de 0s, esperaría que el token no caduque.

¿Cómo reproducirlo (de la forma más mínima y precisa posible)?

Vea https://github.com/kubernetes/kubernetes/issues/53637 donde @rhuss describió esto muy bien.

¿Algo más que necesitemos saber?

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.

kinbug prioritimportant-soon

Comentario más útil

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.

Todos 4 comentarios

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.

¿Fue útil esta página
0 / 5 - 0 calificaciones