Kubeadm: Kubelet ์‹คํ–‰ ์‹คํŒจ : ์ธ์ฆ์„œ ์„œ๋ช… ์š”์ฒญ์„ ์ƒ์„ฑ ํ•  ์ˆ˜ ์—†์Œ : ๊ถŒํ•œ ์—†์Œ

์— ๋งŒ๋“  2018๋…„ 05์›” 14์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: kubernetes/kubeadm

OpenStack ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž์—์„œ ์‹คํ–‰๋˜๋Š” K8s ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

ํด๋Ÿฌ์Šคํ„ฐ๋Š” ๋งˆ์Šคํ„ฐ ๋…ธ๋“œ์™€ ์Šฌ๋ ˆ์ด๋ธŒ ๋…ธ๋“œ๋ฅผ ํฌํ•จํ•˜๋Š” kubeadm ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์ •๋ฉ๋‹ˆ๋‹ค.

kubeadm join ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ์ž‘์—…์ž ๋…ธ๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ ค๊ณ ํ•ฉ๋‹ˆ๋‹ค. ๋ช…๋ น์€ ๋…ธ๋“œ๊ฐ€ ์„ฑ๊ณต์ ์œผ๋กœ ์ถ”๊ฐ€๋˜์—ˆ์Œ์„ ์•Œ๋ฆฌ๋Š” ๊ธ์ •์  ์ธ ์‘๋‹ต์„ ํ‘œ์‹œํ•˜์ง€๋งŒ kubectl get nodes ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์กฐ์‚ฌํ•œ ๊ฒฐ๊ณผ ์ƒˆ ์Šฌ๋ ˆ์ด๋ธŒ ๋…ธ๋“œ์˜ kubelet์ด ์‹คํ–‰๋˜์ง€ ์•Š๊ณ  cannot create certificate signing request: Unauthorized ํ‘œ์‹œ๋˜๋Š” ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค.

-- The start-up result is done.
May 14 12:15:33 vm1 kubelet[17678]: W0514 12:15:33.715964   17678 cni.go:171] Unable to update cni config: No networks found in /etc/cni/net.d
May 14 12:15:33 vm1 kubelet[17678]: W0514 12:15:33.738398   17678 hostport_manager.go:68] The binary conntrack is not installed, this can cause failures in network connection cleanup.
May 14 12:15:33 vm1 kubelet[17678]: I0514 12:15:33.738669   17678 server.go:376] Version: v1.10.1
May 14 12:15:33 vm1 kubelet[17678]: I0514 12:15:33.738913   17678 feature_gate.go:226] feature gates: &{{} map[]}
May 14 12:15:33 vm1 kubelet[17678]: I0514 12:15:33.739222   17678 plugins.go:89] No cloud provider specified.
May 14 12:15:33 vm1 kubelet[17678]: F0514 12:15:33.784257   17678 server.go:233] failed to run Kubelet: cannot create certificate signing request: Unauthorized
May 14 12:15:33 vm1 systemd[1]: kubelet.service: Main process exited, code=exited, status=255/n/a
May 14 12:15:33 vm1 systemd[1]: kubelet.service: Unit entered failed state.
May 14 12:15:33 vm1 systemd[1]: kubelet.service: Failed with result 'exit-code'.

์ž‘์—…์ž ๋…ธ๋“œ์˜ ๋ฒ„์ „ : kubeadm version kubeadm version: &version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.1", GitCommit:"d4ab47518836c750f9949b9e0d387f20fb92260b", GitTreeState:"clean", BuildDate:"2018-04-12T14:14:26Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}

๋งˆ์Šคํ„ฐ ๋…ธ๋“œ์˜ ๋ฒ„์ „ :

kubeadm version
kubeadm version: &version.Info{Major:"1", Minor:"10", 
GitVersion:"v1.10.1", 
GitCommit:"d4ab47518836c750f9949b9e0d387f20fb92260b", 
GitTreeState:"clean", BuildDate:"2018-04-12T14:14:26Z", 
GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}

์กฐ์ธ์„ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋ช…๋ น :

  • ํ† ํฐ ๋ฐ›๊ธฐ : kubeadm token list | awk '/The default bootstrap token/ { print $1; }'

  • ํ•ด์‹œ ์–ป๊ธฐ : openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'

  • join ๋ช…๋ น : kubeadm join --skip-preflight-checks --token {{token}} --discovery-token-ca-cert-hash sha256:{{hash}} master_ip:6443

help wanted kinsupport prioritimportant-longterm

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

@ qianyong-2005

์—ฌ๊ธฐ์—๋„ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งํฌ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

kubeadm token create --print-join-command 

๋ชจ๋“  3 ๋Œ“๊ธ€

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ์€ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค.

ํ† ํฐ ๊ธฐ๋ณธ ์ˆ˜๋ช…์€ 24 ์‹œ๊ฐ„์ด๋ฉฐ ์ƒˆ ํ† ํฐ์„ ์ƒ์„ฑ ํ•œ ๋‹ค์Œ kubeadm ์กฐ์ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
https://kubernetes.io/docs/reference/setup-tools/kubeadm/kubeadm-token/

์˜ˆ, ๊ฐ€์ž…ํ•˜๋ ค๋Š” ์‹œ์ ์—์„œ ํ† ํฐ์ด ๋งŒ๋ฃŒ ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ ๋œ๋Œ€๋กœ ๋‹ซ์Šต๋‹ˆ๋‹ค.
๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ๋‹ค์‹œ์—ฌ์‹ญ์‹œ์˜ค.

@ qianyong-2005

์—ฌ๊ธฐ์—๋„ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งํฌ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

kubeadm token create --print-join-command 
์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰