Kubeadm: `kubeadm init --token-ttl 0`(标志)和 `tokenTTL: "0"`(配置)自 1.8.0 起被破坏

创建于 2017-10-26  ·  4评论  ·  资料来源: kubernetes/kubeadm

这是错误报告还是功能请求?

BUG 报告(复制自@rhuss在这里提交的问题 https://github.com/kubernetes/kubernetes/issues/5363)

版本

1.8.0 - 到当前主版本 (2017-10-26)

发生了什么?

当使用 kubeadm 和 kubeadm token generate 预先生成的令牌时,以及让 kubeadm 创建令牌时, tokenTTL配置将被忽略。 不使用配置文件而是使用kubeadm init --token-ttl 0

你预计会发生什么?

我希望在提供 0 的令牌TTL 时令牌不会过期。

如何重现它(尽可能少且精确)?

https://github.com/kubernetes/kubernetes/issues/53637其中@rhuss描述这很好。

还有什么我们需要知道的吗?

当默认令牌 TTL 更改时,此错误是在https://github.com/kubernetes/kubernetes/pull/48783中引入的。

API 机制默认机制无法区分未设置的值和明确设置为零的值。

我对该更改进行了一些手动测试,但显然仅适用于kubeadm token create --ttl 0 ,这很好用,因为它不使用 MasterConfiguration 默认机制。

kinbug prioritimportant-soon

最有用的评论

我目前的解决方法是在我自己的 _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"

然后将后面的令牌用于节点上的kubeadm join

所有4条评论

cc @kubernetes/sig-cluster-lifecycle-bugs
/类型错误

我目前的解决方法是在我自己的 _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"

然后将后面的令牌用于节点上的kubeadm join

感谢@mattmoyer修复错误 :clap:! 得到正式认可的

这是在master中修复的,应该在 v1.8.3 中。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

imedaouidene picture imedaouidene  ·  3评论

ep4eg picture ep4eg  ·  3评论

helphi picture helphi  ·  3评论

kvaps picture kvaps  ·  3评论

atoato88 picture atoato88  ·  4评论