Kubeadm: `kubeadm init --token-ttl 0` (flag) dan `tokenTTL: "0"` (config) rusak sejak 1.8.0

Dibuat pada 26 Okt 2017  ·  4Komentar  ·  Sumber: kubernetes/kubeadm

Apakah ini LAPORAN BUG atau PERMINTAAN FITUR?

LAPORAN BUG (disalin dari masalah @rhuss yang diajukan di sini https://github.com/kubernetes/kubernetes/issues/5363)

Versi

1.8.0 - hingga master saat ini (26-10-2017)

Apa yang terjadi?

Saat menggunakan kubeadm dengan token yang dihasilkan oleh kubeadm token generate terlebih dahulu, tetapi juga saat membiarkan kubeadm membuat token, konfigurasi tokenTTL diabaikan. Hal yang sama berlaku ketika tidak menggunakan file konfigurasi tetapi menggunakan kubeadm init --token-ttl 0

Apa yang Anda harapkan terjadi?

Saya berharap ketika memberikan tokenTTL 0s bahwa token tidak kedaluwarsa.

Bagaimana cara mereproduksinya (seminimal dan setepat mungkin)?

Lihat https://github.com/kubernetes/kubernetes/issues/53637 di mana @rhuss menggambarkan ini dengan baik.

Ada lagi yang perlu kita ketahui?

Bug ini diperkenalkan di https://github.com/kubernetes/kubernetes/pull/48783 ketika token default TTL diubah.

Mekanisme default mesin API tidak memiliki cara untuk membedakan antara nilai yang tidak disetel dan nilai yang secara eksplisit disetel ke nol.

Saya melakukan beberapa pengujian manual pada perubahan itu, tetapi ternyata hanya untuk kubeadm token create --ttl 0 , yang berfungsi dengan baik karena tidak menggunakan mekanisme default MasterConfiguration.

kinbug prioritimportant-soon

Komentar yang paling membantu

Solusi saya saat ini adalah membuat token tambahan sendiri _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"

Token selanjutnya kemudian digunakan untuk kubeadm join pada node.

Semua 4 komentar

cc @kubernetes/sig-cluster-lifecycle-bugs
/ketik bug

Solusi saya saat ini adalah membuat token tambahan sendiri _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"

Token selanjutnya kemudian digunakan untuk kubeadm join pada node.

Terima kasih @mattmoyer untuk perbaikan bug :clap:! Disetujui

Ini diperbaiki di master dan harus di v1.8.3.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat