バグレポート(ここに提出された@rhussの問題からコピーhttps://github.com/kubernetes/kubernetes/issues/5363)
1.8.0-現在のマスターまで(2017-10-26)
kubeadmトークンによって生成されたトークンでkubeadmを使用する場合、事前に生成されますが、kubeadmにトークンを作成させる場合も、 tokenTTL
構成は無視されます。 構成ファイルを使用せずにkubeadm init --token-ttl 0
を使用する場合も同様です。
0のtokenTTLを提供する場合、トークンは期限切れにならないことを期待します。
https://github.com/kubernetes/kubernetes/issues/53637を参照して@ rhussはこれをうまく説明しています。
このバグは、デフォルトのトークンTTLが変更されたときに、 https://github.com/kubernetes/kubernetes/pull/48783で導入されました。
API機構のデフォルトメカニズムには、未設定の値と明示的にゼロに設定された値を区別する方法がありません。
私はその変更についていくつかの手動テストを行いましたが、明らかにkubeadm token create --ttl 0
に対してのみであり、MasterConfigurationのデフォルトメカニズムを使用していないため、正常に機能します。
cc @ kubernetes / sig-cluster-lifecycle-bugs
/ typeバグ
私の現在の回避策は、自分で追加のトークンを作成することです_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にあるはずです。
最も参考になるコメント
私の現在の回避策は、自分で追加のトークンを作成することです_after_
kubeadm init
:後者のトークンは、ノードの
kubeadm join
に使用されます。