Kubeadm: ๋น„ํ–‰ ์ „ ๊ฒ€์‚ฌ ์‹คํ–‰์ด ์ค‘๋‹จ๋จ

์— ๋งŒ๋“  2019๋…„ 04์›” 01์ผ  ยท  22์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: kubernetes/kubeadm

์ด ํ•ญ๋ชฉ์„ ์ œ์ถœํ•˜๊ธฐ ์ „์— kubeadm ๋ฌธ์ œ์—์„œ ์–ด๋–ค ํ‚ค์›Œ๋“œ๋ฅผ ๊ฒ€์ƒ‰ํ•˜์…จ์Šต๋‹ˆ๊นŒ?

๋น„ํ–‰ ์ „
๊ฑธ๋‹ค
kubeadm ์กฐ์ธ

๋ฒ„๊ทธ ๋ณด๊ณ 

๋ฒ„์ „

kubeadm ๋ฒ„์ „ ( kubeadm version ์‚ฌ์šฉ):
kubeadm ๋ฒ„์ „: &version.Info{์ฃผ์š”:"1", ๋ถ€:"14", GitVersion:"v1.14.0", GitCommit:"641856db18352033a0d96dbc99153fa3b27298e5", GitTreeState:03-0 BuildD9ate:"clean", 1 21Z", GoVersion:"go1.12.1", ์ปดํŒŒ์ผ๋Ÿฌ:"gc", ํ”Œ๋žซํผ:"linux/amd64"}

ํ™˜๊ฒฝ :

  • Kubernetes ๋ฒ„์ „ ( kubectl version ์‚ฌ์šฉ):
    ํด๋ผ์ด์–ธํŠธ ๋ฒ„์ „: version.Info{์ฃผ:"1", ๋ถ€:"14", GitVersion:"v1.14.0", GitCommit:"641856db18352033a0d96dbc99153fa3b27298e5", GitTreeState:"clean", BuildDate:"32:"30", BuildDate:"20 57Z", GoVersion:"go1.12.1", ์ปดํŒŒ์ผ๋Ÿฌ:"gc", ํ”Œ๋žซํผ:"linux/amd64"}
  • ํด๋ผ์šฐ๋“œ ์ œ๊ณต์ž ๋˜๋Š” ํ•˜๋“œ์›จ์–ด ๊ตฌ์„ฑ :
  • OS (์˜ˆ: /etc/os-release):
    NAME="์„ผํŠธOS ๋ฆฌ๋ˆ…์Šค"
    ๋ฒ„์ „="7(์ฝ”์–ด)"
    ์•„์ด๋”” = "์„ผํ† ์Šค"
    ID_LIKE="๋  ํŽ˜๋„๋ผ"
    VERSION_ID="7"
    PRETTY_NAME="CentOS Linux 7(์ฝ”์–ด)"
    ANSI_COLOR="0;31"
    CPE_NAME="cpe:/o: centos:centos :7"
    HOME_URL=" https://www.centos.org/ "
    BUG_REPORT_URL=" https://bugs.centos.org/ "

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="์„ผํ† ์Šค"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

  • ์ปค๋„ (์˜ˆ: uname -a ):
    Linux vm02.andrefagundes.org 3.10.0-957.5.1.el7.x86_64 #1 SMP Fri 2์›” 1์ผ 14:54:57 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

  • ๊ธฐํƒ€ :

๋ฌด์Šจ ์ผ์ด์—์š”?

์ œ์–ด ํ‰๋ฉด์— ์ฐธ์—ฌํ•  ๋•Œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์‹คํ–‰ ์ „ ๊ฒ€์‚ฌ ์‹คํ–‰ ์ค‘์ด๋ผ๋Š” ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ค‘๋‹จ๋ฉ๋‹ˆ๋‹ค. ์•„๋ž˜ ์ฐธ์กฐ:

[ root@vm02 ~]# kubeadm์€ vm10.andrefagundes์— ๊ฐ€์ž…ํ•ฉ๋‹ˆ๋‹ค. ์กฐ์ง : 6443 --token 07nh7g.v8p5fcs61fn3o2h4 ์šด์„ธ ํ† ํฐ-CA-CERT-ํ•ด์‹œ SHA256 : 039a5f9229dafe39d4a51af6899c20adff1de5dda23f780ac9b896e95f95623a --experimental ์ œ์–ด ํ”Œ๋ ˆ์ธ --certificate ํ‚ค 8afd066a7b8baa2abf86ba1b2d5e7f29625875d8f78a3e136f7fd35605b4775
[์‹คํ–‰ ์ „] ์‹คํ–‰ ์ „ ๊ฒ€์‚ฌ ์‹คํ–‰

๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚  ๊ฒƒ์ด๋ผ๊ณ  ์˜ˆ์ƒํ–ˆ์Šต๋‹ˆ๊นŒ?

๋…ธ๋“œ๊ฐ€ ์กฐ์ธ๋˜๊ฑฐ๋‚˜ ์˜ค๋ฅ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ๋‚˜ํƒ€๋‚  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๊ฒƒ์„ ์žฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•(๊ฐ€๋Šฅํ•œ ํ•œ ์ตœ์†Œํ•œ์œผ๋กœ ๊ทธ๋ฆฌ๊ณ  ์ •ํ™•ํ•˜๊ฒŒ)?

์•„๋ž˜ ๊ณต์‹ ๋ฌธ์„œ๋ฅผ ๋”ฐ๋ฅด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

https://kubernetes.io/docs/setup/independent/high-availability/#external -etcd-nodes

์šฐ๋ฆฌ๊ฐ€ ์•Œ์•„์•ผ ํ•  ๋‹ค๋ฅธ ๊ฒƒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

์•„๋‹ˆ์š”.

kinsupport prioritawaiting-more-evidence sinetwork

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

์ง„ํ–‰ ์ƒํ™ฉ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์„ ๋ณด๋ ค๋ฉด kubeadm init/join ๋ฅผ --v=2 $์™€ ๊ฐ™์ด ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

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

v10 ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ.

[ root@vm03 etcd]# kubeadm์€ vm10.andrefagundes์— ๊ฐ€์ž…ํ•ฉ๋‹ˆ๋‹ค. ์กฐ์ง : 6443 --token 07nh7g.v8p5fcs61fn3o2h4 ์šด์„ธ ํ† ํฐ-CA-CERT-ํ•ด์‹œ SHA256 : 039a5f9229dafe39d4a51af6899c20adff1de5dda23f780ac9b896e95f95623a --experimental ์ œ์–ด ํ”Œ๋ ˆ์ธ --certificate ํ‚ค cf3c8ca4f74751bfe7fc9d3e00e03a37619d36a6d6fb79fb5ba3645d74dd7bf4์˜ -v10
I0401 00:34:08.531961 16893 join.go:367] [ํ”„๋ฆฌํ”Œ๋ผ์ดํŠธ] NodeName์ด ๋น„์–ด ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. OS ํ˜ธ์ŠคํŠธ ์ด๋ฆ„์„ NodeName์œผ๋กœ ์‚ฌ์šฉ
I0401 00:34:08.532014 16893 join.go:371] [ํ”„๋ฆฌํ”Œ๋ผ์ดํŠธ] ๊ด‘๊ณ  ์ฃผ์†Œ๊ฐ€ ๋น„์–ด ์žˆ์Œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์ธํ„ฐํŽ˜์ด์Šค์˜ IP ์ฃผ์†Œ๋ฅผ ๊ด‘๊ณ  ์ฃผ์†Œ๋กœ ์‚ฌ์šฉ
I0401 00:34:08.532048 16893 initconfiguration.go:105] ๊ฐ์ง€ ๋ฐ CRI ์†Œ์ผ“ ์‚ฌ์šฉ: /var/run/dockershim.sock
I0401 00:34:08.532179 16893 interface.go:384] IPv4 ์ฃผ์†Œ๋กœ ๊ธฐ๋ณธ ๊ฒฝ๋กœ๋ฅผ ์ฐพ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
I0401 00:34:08.532187 16893 interface.go:389] ๊ธฐ๋ณธ ๊ฒฝ๋กœ ์ „์†ก ์ธํ„ฐํŽ˜์ด์Šค "eth0"
I0401 00:34:08.532324 16893 interface.go:196] ์ธํ„ฐํŽ˜์ด์Šค eth0์ด ์ž‘๋™ ์ค‘์ž…๋‹ˆ๋‹ค.
I0401 00:34:08.532380 16893 interface.go:244] ์ธํ„ฐํŽ˜์ด์Šค "eth0"์—๋Š” 4๊ฐœ์˜ ์ฃผ์†Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. 64 fe80::4381:b4a5:5836:a0e1/64].
I0401 00:34:08.532399 16893 interface.go:211] ์ฃผ์†Œ 192.168.122.103/24๋ฅผ ํ™•์ธ ์ค‘์ž…๋‹ˆ๋‹ค.
I0401 00:34:08.532407 16893 interface.go:218] IP ๋ฐœ๊ฒฌ 192.168.122.103
I0401 00:34:08.532415 16893 interface.go:250] ์ธํ„ฐํŽ˜์ด์Šค "eth0"์— ๋Œ€ํ•ด ์œ ํšจํ•œ IPv4 ์ฃผ์†Œ 192.168.122.103์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค.
I0401 00:34:08.532421 16893 interface.go:395] ํ™œ์„ฑ IP 192.168.122.103์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค.
[์‹คํ–‰ ์ „] ์‹คํ–‰ ์ „ ๊ฒ€์‚ฌ ์‹คํ–‰
I0401 00:34:08.532495 16893 preflight.go:90] [preflight] ์ผ๋ฐ˜ ๊ฒ€์‚ฌ ์‹คํ–‰ ์ค‘
I0401 00:34:08.532539 16893 checks.go:254] /etc/kubernetes/manifests ๋””๋ ‰ํ† ๋ฆฌ์˜ ์กด์žฌ ์—ฌ๋ถ€์™€ ๋น„์–ด ์žˆ๋Š”์ง€ ํ™•์ธ ์ค‘
I0401 00:34:08.532570 16893 checks.go:292] /etc/kubernetes/kubelet.conf ํŒŒ์ผ์˜ ์กด์žฌ ํ™•์ธ
I0401 00:34:08.532579 16893 checks.go:292] /etc/kubernetes/bootstrap-kubelet.conf ํŒŒ์ผ์˜ ์กด์žฌ ํ™•์ธ
I0401 00:34:08.532586 16893 checks.go:105] ์ปจํ…Œ์ด๋„ˆ ๋Ÿฐํƒ€์ž„ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ
I0401 00:34:08.580885 16893 checks.go:131] ์„œ๋น„์Šค๊ฐ€ ํ™œ์„ฑํ™”๋˜๊ณ  ํ™œ์„ฑ ์ƒํƒœ์ธ์ง€ ํ™•์ธ ์ค‘
I0401 00:34:08.638659 16893 checks.go:341] /proc/sys/net/bridge/bridge-nf-call-iptables ํŒŒ์ผ์˜ ๋‚ด์šฉ ํ™•์ธ ์ค‘
I0401 00:34:08.638724 16893 checks.go:341] /proc/sys/net/ipv4/ip_forward ํŒŒ์ผ์˜ ๋‚ด์šฉ์„ ํ™•์ธ ์ค‘์ž…๋‹ˆ๋‹ค.
I0401 00:34:08.638755 16893 checks.go:653] ์Šค์™‘์ด ํ™œ์„ฑํ™”๋˜์—ˆ๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ํ™•์ธ ์ค‘์ž…๋‹ˆ๋‹ค.
I0401 00:34:08.638788 16893 checks.go:382] ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ IP๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธ ์ค‘
I0401 00:34:08.638809 16893 checks.go:382] ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ iptables์˜ ์กด์žฌ ํ™•์ธ
I0401 00:34:08.638824 16893 checks.go:382] ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ๋งˆ์šดํŠธ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธ ์ค‘
I0401 00:34:08.638837 16893 checks.go:382] ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ nsenter์˜ ์กด์žฌ ํ™•์ธ
I0401 00:34:08.638849 16893 checks.go:382] ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ebtables์˜ ์กด์žฌ ํ™•์ธ
I0401 00:34:08.638860 16893 checks.go:382] ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ethtool์˜ ์กด์žฌ ํ™•์ธ
I0401 00:34:08.638871 16893 checks.go:382] ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ socat์˜ ์กด์žฌ ํ™•์ธ
I0401 00:34:08.638883 16893 checks.go:382] ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ tc๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธ ์ค‘
I0401 00:34:08.638894 16893 checks.go:382] ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ํ„ฐ์น˜์˜ ์กด์žฌ ํ™•์ธ
I0401 00:34:08.638914 16893 checks.go:524] ๋ชจ๋“  ๊ฒ€์‚ฌ ์‹คํ–‰ ์ค‘
I0401 00:34:08.664826 16893 checks.go:412] net.LookupHost๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฃผ์–ด์ง„ ๋…ธ๋“œ ์ด๋ฆ„์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธ
I0401 00:34:08.665583 16893 checks.go:622] kubelet ๋ฒ„์ „ ํ™•์ธ ์ค‘
I0401 00:34:08.709573 16893 checks.go:131] ์„œ๋น„์Šค๊ฐ€ ํ™œ์„ฑํ™”๋˜๊ณ  ํ™œ์„ฑ ์ƒํƒœ์ธ์ง€ ํ™•์ธ ์ค‘
I0401 00:34:08.716270 16893 checks.go:209] ํฌํŠธ 10250์˜ ๊ฐ€์šฉ์„ฑ ํ™•์ธ
I0401 00:34:08.716418 16893 checks.go:439] ์—ฐ๊ฒฐ ์œ ํ˜•์ด ํ”„๋ก์‹œ๋ฅผ ํ†ตํ•œ ๊ฒƒ์ธ์ง€ ์ง์ ‘ ํ™•์ธ ์ค‘์ธ์ง€ ํ™•์ธ ์ค‘
I0401 00:34:08.716444 16893 join.go:427] [ํ”„๋ฆฌํ”Œ๋ผ์ดํŠธ] ํด๋Ÿฌ์Šคํ„ฐ ์ •๋ณด ๊ฒ€์ƒ‰ ์ค‘
I0401 00:34:08.716498 16893 token.go:200] [discovery] API ์„œ๋ฒ„ " vm10.andrefagundes.org:6443 "์— ์—ฐ๊ฒฐํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.
I0401 00:34:08.716961 16893 token.go:75] [discovery] " https://vm10.andrefagundes.org :6443"์—์„œ ์ •๋ณด๋ฅผ ์š”์ฒญํ•˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ ์ •๋ณด ๊ฒ€์ƒ‰ ํด๋ผ์ด์–ธํŠธ๋ฅผ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.
I0401 00:34:08.717031 16893 round_trippers.go:419] curl -k -v -XGET -H "์ˆ˜๋ฝ: application/json, / " -H "์‚ฌ์šฉ์ž ์—์ด์ „ํŠธ: kubeadm/v1.14.0(linux/amd64) kubernetes/ 641856d" ' https://vm10.andrefagundes.org :6443/api/v1/namespaces/kube-public/configmaps/cluster-info'
I0401 00:34:08.722405 16893 round_trippers.go:438] GET https://vm10.andrefagundes.org :6443/api/v1/namespaces/kube-public/configmaps/cluster-info 403 5๋ฐ€๋ฆฌ์ดˆ ์•ˆ์— ๊ธˆ์ง€๋จ
I0401 00:34:08.722423 16893 round_trippers.go:444] ์‘๋‹ต ํ—ค๋”:
I0401 00:34:08.722432 16893 round_trippers.go:447] Content-Type: application/json
I0401 00:34:08.722441 16893 round_trippers.go:447] X-Content-Type-Options: nosniff
I0401 00:34:08.722450 16893 round_trippers.go:447] ์ฝ˜ํ…์ธ  ๊ธธ์ด: 321
I0401 00:34:08.722458 16893 round_trippers.go:447] ๋‚ ์งœ: 2019๋…„ 4์›” 1์ผ ์›”์š”์ผ 03:34:08 GMT
I0401 00:34:08.722497 16893 request.go:942] ์‘๋‹ต ๋ณธ๋ฌธ: {"kind":"Status","apiVersion":"v1","metadata":{},"status":"Failure","message ":"configmaps \"cluster-info\"๋Š” ๊ธˆ์ง€๋จ: \" system:anonymous\ " ์‚ฌ์šฉ์ž๋Š” \"kube-public\"" ๋„ค์ž„์ŠคํŽ˜์ด์Šค์˜ API ๊ทธ๋ฃน \"\"์—์„œ ๋ฆฌ์†Œ์Šค \"configmaps\"๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค." ์ด์œ ":"๊ธˆ์ง€","์„ธ๋ถ€ ์ •๋ณด":{"์ด๋ฆ„":"ํด๋Ÿฌ์Šคํ„ฐ ์ •๋ณด","์ข…๋ฅ˜":"configmaps"},"์ฝ”๋“œ":403}
I0401 00:34:08.722937 16893 token.go:83] [discovery] ํด๋Ÿฌ์Šคํ„ฐ ์ •๋ณด๋ฅผ ์š”์ฒญํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์‹œ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค: [configmaps "cluster-info"๋Š” ๊ธˆ์ง€๋จ: ์‚ฌ์šฉ์ž " system:anonymous "๋Š” API์—์„œ "configmaps" ๋ฆฌ์†Œ์Šค๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. "kube-public" ๋„ค์ž„์ŠคํŽ˜์ด์Šค์˜ ๊ทธ๋ฃน ""]

๋˜ ๋‹ค๋ฅธ ์ •๋ณด ... vm10.andrefagundes.org๋Š” ๋‚ด ์ œ์–ด ํ‰๋ฉด ์•ž์˜ Haproxy์ž…๋‹ˆ๋‹ค.

๋‚˜์—๊ฒŒ ๋„คํŠธ์›Œํ‚น ๋ฌธ์ œ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.
์ด ๊ฒฐํ•ฉ ๋…ธ๋“œ๊ฐ€ LB์˜ ํฌํŠธ 6443์— ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๊ณ  vm10.andrefagundes.org๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ™•์‹ ํ•˜์‹ญ๋‹ˆ๊นŒ?

์˜ˆ, ์ œ์–ด ํ‰๋ฉด์„ ๊ฐ€๋ฆฌํ‚ค๋„๋ก vm10๋„ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค. TCDUMP๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ์ปจํŠธ๋กค ํ”Œ๋ ˆ์ธ์˜ ํŠธ๋ž˜ํ”ฝ์„ ๋ณด์•˜์Šต๋‹ˆ๋‹ค.

kubelet ๋กœ๊ทธ์— ๋ฏธํ•ด๊ฒฐ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๊นŒ?

๋กœ๊ทธ์— ๋ช‡ ๊ฐ€์ง€ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๋ช‡ ๋ฒˆ ๋‹ค์‹œ ์„ค์น˜ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ๋งค๋ฒˆ ๋‹ค๋ฅธ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ํฌ๊ธฐํ•˜๊ณ  ์žˆ๋‹ค. ์‚ฌ๊ฑด์„ ์ข…๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ ํ•ด์š”!!

๋‹จ์ผ ์ œ์–ด ํ‰๋ฉด ๋…ธ๋“œ + ์ผ๋ถ€ ์ž‘์—…์ž ๋…ธ๋“œ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ž‘๋™ํ•ฉ๋‹ˆ๊นŒ ์•„๋‹ˆ๋ฉด ์ถ”๊ฐ€ ์ œ์–ด ํ‰๋ฉด ๋…ธ๋“œ๋ฅผ ๊ฒฐํ•ฉํ•  ๋•Œ๋งŒ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๊นŒ?

์‚ฌ์šฉ์ž " system:anonymous "๋Š” ๋„ค์ž„์ŠคํŽ˜์ด์Šค "kube-public"","reason":"Forbidden","details":{"name":"cluster-info"์˜ API ๊ทธ๋ฃน ""์—์„œ ๋ฆฌ์†Œ์Šค "configmaps"๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. "์ข…๋ฅ˜":"configmaps"},"์ฝ”๋“œ":403

kubeadm init๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ ์ •๋ณด๋ฅผ ์ œ๋Œ€๋กœ ์ƒ์„ฑ/๊ตฌ์„ฑํ•˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.
kubeadm ์ดˆ๊ธฐํ™” ๋กœ๊ทธ๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

'kubeadm join ...' ๋ช…๋ น์„ ์‹คํ–‰ํ•œ ํ›„์—๋„ ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์‹คํ–‰ ์ „ ๊ฒ€์‚ฌ๊ฐ€ ์ค‘๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜๋ฆฌํ•  ์ƒ๊ฐ์ด ์—†์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ๋งˆ์Šคํ„ฐ๋ฅผ ์žฌ๋ถ€ํŒ…ํ•ด์•ผ ํ–ˆ๊ณ  ๊ทธ ํ›„ ๋…ธ๋“œ์—์„œ 'kubeadm join ...' ๋ช…๋ น์„ ๋‹ค์‹œ ์‹คํ–‰ํ•˜๋ฉด ํšจ๊ณผ์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

kubeadm v1.15 ์™€ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์žฌ๋ถ€ํŒ… ๋งˆ์Šคํ„ฐ๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

kubeadm v1.15 ์™€ ๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์žฌ๋ถ€ํŒ… ๋งˆ์Šคํ„ฐ๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

kubelet ๋ฐ kubeadm v1.13.1๋กœ ๋Œ€์ฒดํ•˜์—ฌ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.

์ง„ํ–‰ ์ƒํ™ฉ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์„ ๋ณด๋ ค๋ฉด kubeadm init/join ๋ฅผ --v=2 $์™€ ๊ฐ™์ด ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋™์ผํ•œ ๋ฌธ์ œ์— ๋ถ€๋”ช์ณค์ง€๋งŒ ๋ฌธ์ œ๋Š” ์ค‘๋‹จ ๋งˆ์Šคํ„ฐ ๋…ธ๋“œ๊ฐ€ API ์„œ๋น„์Šค VIP๋ฅผ ํ†ตํ•ด ํด๋Ÿฌ์Šคํ„ฐ์— ๊ฐ€์ž…ํ•˜์ง€ ๋ชปํ•˜๋„๋ก ์ž˜๋ชป ๊ตฌ์„ฑ๋œ keepalive ๋ฐ haproxy ๋ฐ๋ชฌ์ด ์žˆ๋Š” ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ๋กœ ์ถ”์ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

--v=2๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ kubeadm init/join์„ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ž„์„ ์ง€์ ํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ง„ํ–‰ ์ƒํ™ฉ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์„ ๋ณด๋ ค๋ฉด kubeadm init/join ๋ฅผ --v=2 $์™€ ๊ฐ™์ด ํ˜ธ์ถœํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

kubeadm v1.15

kubeadm ์กฐ์ธ .. --v=2

I0802 11:47:31.027812 359 token.go:202] [discovery] API ์„œ๋ฒ„ ""์— ์—ฐ๊ฒฐํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค: ํ† ํฐ ID "r5uyqk"๊ฐ€ ์ด ํด๋Ÿฌ์Šคํ„ฐ์— ๋Œ€ํ•ด ์œ ํšจํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ๋งŒ๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ œ์–ด ํ‰๋ฉด ๋…ธ๋“œ์—์„œ "kubeadm token create"๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์œ ํšจํ•œ ์ƒˆ ํ† ํฐ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

kubeadm ์ดˆ๊ธฐ ๋‹จ๊ณ„ ์—…๋กœ๋“œ ์ธ์ฆ์„œ --upload-certs
kubeadm ํ† ํฐ ์ƒ์„ฑ

๊ทธ๋Ÿฐ ๋‹ค์Œ kubeadm ๊ฐ€์ž… ์„ฑ๊ณต

์ œ ๊ฒฝ์šฐ์—๋Š” ๋งˆ์Šคํ„ฐ ๋…ธ๋“œ์—์„œ ๋ฐฉํ™”๋ฒฝ์„ ์ค‘์ง€ํ•˜์—ฌ ๋…ธ๋“œ์— ์„ฑ๊ณต์ ์œผ๋กœ ํ•ฉ๋ฅ˜ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

systemctl stop firewall

์ œ ๊ฒฝ์šฐ์—๋Š” ๋งˆ์Šคํ„ฐ ๋…ธ๋“œ์—์„œ ๋ฐฉํ™”๋ฒฝ์„ ์ค‘์ง€ํ•˜์—ฌ ๋…ธ๋“œ์— ์„ฑ๊ณต์ ์œผ๋กœ ํ•ฉ๋ฅ˜ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

systemctl stop firewall

์ด๊ฒƒ์€ ๋งค๋ ฅ์ฒ˜๋Ÿผ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.
[ ๋ฃจํŠธ @localhost ~]# kubeadm ์กฐ์ธ 192.168.8.128:6443 --token 38lhr8.kxi5uy8aoy71dj17 --discovery-token-ca-cert-hash sha256:a12c805b8d98f42a25648
[์‹คํ–‰ ์ „] ์‹คํ–‰ ์ „ ๊ฒ€์‚ฌ ์‹คํ–‰
[๊ฒฝ๊ณ  IsDockerSystemdCheck]: "cgroupfs"๋ฅผ Docker cgroup ๋“œ๋ผ์ด๋ฒ„๋กœ ๊ฐ์ง€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ถŒ์žฅ ๋“œ๋ผ์ด๋ฒ„๋Š” "systemd"์ž…๋‹ˆ๋‹ค. https://kubernetes.io/docs/setup/cri/ ์˜ ๊ฐ€์ด๋“œ๋ฅผ ๋”ฐ๋ฅด์‹ญ์‹œ์˜ค.
[๊ฒฝ๊ณ  SystemVerification]: ์ด Docker ๋ฒ„์ „์€ ๊ฒ€์ฆ๋œ ๋ฒ„์ „ ๋ชฉ๋ก์— ์—†์Šต๋‹ˆ๋‹ค: 19.03.1. ์ตœ์‹  ๊ฒ€์ฆ ๋ฒ„์ „: 18.09
[ํ”„๋ฆฌํ”Œ๋ผ์ดํŠธ] ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ๊ตฌ์„ฑ์„ ์ฝ๋Š” ์ค‘...
[ํ”„๋ฆฌํ”Œ๋ผ์ดํŠธ] ์ฐธ๊ณ : 'kubectl -n kube-system get cm kubeadm-config -oyaml'์„ ์‚ฌ์šฉํ•˜์—ฌ ์ด ๊ตฌ์„ฑ ํŒŒ์ผ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
[kubelet-start] kube-system ๋„ค์ž„์ŠคํŽ˜์ด์Šค์˜ "kubelet-config-1.14" ConfigMap์—์„œ kubelet์— ๋Œ€ํ•œ ๊ตฌ์„ฑ ๋‹ค์šด๋กœ๋“œ
[kubelet-start] "/var/lib/kubelet/config.yaml" ํŒŒ์ผ์— kubelet ๊ตฌ์„ฑ ์“ฐ๊ธฐ
[kubelet-start] "/var/lib/kubelet/kubeadm-flags.env" ํŒŒ์ผ์— ํ”Œ๋ž˜๊ทธ๊ฐ€ ์žˆ๋Š” kubelet ํ™˜๊ฒฝ ํŒŒ์ผ ์“ฐ๊ธฐ
[kubelet-start] kubelet ์„œ๋น„์Šค ํ™œ์„ฑํ™”
[kubelet-start] kubelet์ด TLS ๋ถ€ํŠธ์ŠคํŠธ๋žฉ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ์ค‘...

์ด ๋…ธ๋“œ๋Š” ํด๋Ÿฌ์Šคํ„ฐ์— ํ•ฉ๋ฅ˜ํ–ˆ์Šต๋‹ˆ๋‹ค:

  • ์ธ์ฆ์„œ ์„œ๋ช… ์š”์ฒญ์ด apiserver๋กœ ์ „์†ก๋˜์—ˆ๊ณ  ์‘๋‹ต์ด ์ˆ˜์‹ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Kubelet์€ ์ƒˆ๋กœ์šด ๋ณด์•ˆ ์—ฐ๊ฒฐ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.

์ œ์–ด ํ‰๋ฉด์—์„œ 'kubectl get nodes'๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ์ด ๋…ธ๋“œ๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ์— ์ฐธ์—ฌํ•˜๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

OP์˜ ๋กœ๊ทธ๋ฅผ ๋‹ค์‹œ ๋ณด๋ฉด ์ด๊ฒƒ์€ ์‹คํ–‰ ์ „์˜ "์ค‘๋‹จ"์ด ์•„๋‹ˆ๋ผ ํด๋Ÿฌ์Šคํ„ฐ ์ •๋ณด ๊ตฌ์„ฑ ๋งต์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. "์ดˆ๊ธฐํ™”"์˜ "๋ถ€์ŠคํŠธ๋žฉ ํ† ํฐ" ๋‹จ๊ณ„์—์„œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์ผํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๊ฑด๋„ˆ๋œ๋‹ˆ๋‹ค.

์ดํ›„ ๋ณด๊ณ ์„œ๋ฅผ ๋ณด๋ฉด ๋ฒ„๊ทธ๊ฐ€ ์•„๋‹Œ "์ง€์›" ํ•ญ๋ชฉ์— ํ•ด๋‹นํ•˜๋Š” ๋„คํŠธ์›Œํ‚น ๋ฐ ๋งŒ๋ฃŒ๋œ ํ† ํฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

/์„ ๋ณ„ ๋ถ„๋ฅ˜ ์ง€์›
์งˆ๋ฌธ์ด ์žˆ๋Š” ๊ฒฝ์šฐ k8s slack์—์„œ stackoverflow, reddit ๋˜๋Š” #kubeadm์„ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”.

์‹ค์ œ ๋ฒ„๊ทธ๋ฅผ ์ฐพ์œผ๋ฉด ์ƒˆ ๋ฌธ์ œ๋ฅผ ์—ด์–ด์ฃผ์„ธ์š”.

์ œ ๊ฒฝ์šฐ์—๋Š” ๋งˆ์Šคํ„ฐ ๋…ธ๋“œ์—์„œ ๋ฐฉํ™”๋ฒฝ์„ ์ค‘์ง€ํ•˜์—ฌ ๋…ธ๋“œ์— ์„ฑ๊ณต์ ์œผ๋กœ ํ•ฉ๋ฅ˜ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

systemctl stop firewall

systemctl ๋ฐฉํ™”๋ฒฝ ์ค‘์ง€

๋งˆ์Šคํ„ฐ ๋…ธ๋“œ์— ์—ฐ๊ฒฐํ•  ํŠธ๋ž˜ํ”ฝ์ด ํ—ˆ์šฉ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

sg์— ๊ทœ์น™์„ ์ถ”๊ฐ€ํ•˜๋ฉด ๋‚ด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

'kubeadm join ...' ๋ช…๋ น์„ ์‹คํ–‰ํ•œ ํ›„์—๋„ ๋™์ผํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์‹คํ–‰ ์ „ ๊ฒ€์‚ฌ๊ฐ€ ์ค‘๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜๋ฆฌํ•  ์ƒ๊ฐ์ด ์—†์Šต๋‹ˆ๋‹ค.

ํ•ด๊ฒฐ์ฑ…์„ ์ฐพ์œผ์…จ์Šต๋‹ˆ๊นŒ?

๋งˆ์Šคํ„ฐ ๋…ธ๋“œ์— ์—ฐ๊ฒฐํ•  ํŠธ๋ž˜ํ”ฝ์ด ํ—ˆ์šฉ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

sg์— ๊ทœ์น™์„ ์ถ”๊ฐ€ํ•˜๋ฉด ๋‚ด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์–ด๋–ค ์ธ๋ฐ”์šด๋“œ ํฌํŠธ๋ฅผ ํ—ˆ์šฉ ํ–ˆ์Šต๋‹ˆ๊นŒ?

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