profile
Ken, ๐Ÿ”ฝ๐Ÿ”ฝ ๊ฑฐ๋…ธ๋ฐฅ ์œ ํŠœ๋ธŒ(house icon) ๐Ÿ”ฝ๐Ÿ”ฝ

[coreDNS] ํŒŒ๋“œ์—์„œ FQDN ํšจ์œจ์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๊ธฐ

๊ฐœ์š” ๊ณ ๊ฐ์‚ฌ์—์„œ coreDNS ์ชฝ ์งˆ์˜๊ฐ€ ์•ˆ ๋œ๋‹ค๋Š” ์š”์ฒญ์„ ๋ฐ›๋‹ค๋ณด๋‹ˆ ์•Œ๊ฒŒ ๋œ ์ •๋ณด๋“ค์„ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค..! ํŒŒ๋“œ์—์„œ FQDN ์š”์ฒญ ์‹œ, coreDNS๋Š” ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ• ๊นŒ? ํŒŒ๋“œ ๋‚ด์—์„œ {๋„๋ฉ”์ธ}์œผ๋กœ ์งˆ์˜๋ฅผ ํ•˜๊ฒŒ ๋˜๋ฉด ํŒŒ๋“œ ๋‚ด์˜ /etc/resolv.conf์˜ search ๋ฆฌ์ŠคํŠธ๋ฅผ ๋ถ™์—ฌ๊ฐ€๋ฉฐ coreDNS์— ์งˆ์˜๋ฅผ ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์งˆ์˜ ์ˆœ์„œ {๋„๋ฉ”์ธ}.ingress-nginx-system.svc.cluster.local {๋„๋ฉ”์ธ}.svc.cluster.local {๋„๋ฉ”์ธ}.cluster.local {๋„๋ฉ”์ธ}.tail3cceb.ts.net ![](https://velog.velcdn.com/images/numerok/post/cd095b84-46f3-4355-a8f2-72c87b23f5f0/

2023๋…„ 8์›” 31์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

Kubernetes request, limit

๊ฐœ์š” ์—…๋ฌด ์ค‘, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์งˆ๋ฌธ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค.. "ํ˜„์žฌ ํŒŒ๋“œ์˜ ์ž์›ํ• ๋‹น ์„ค์ • ๋‚ด์šฉ์„ ๋ณด๋ฉด ๋ฆฌ๋ฏธํŠธ๊ฐ’๊ณผ ๋ฆฌํ€˜์ŠคํŠธ ๊ฐ’์ด ์กด์žฌํ•˜๋Š”๋ฐ 8์ด๋ผ๋Š” cpu๊ฐ’์„ ์ฃผ๊ณ  ์‹ถ๊ณ , 7์ด๋ผ๋Š” cpu ๊ฐ’์— ๋„๋‹ฌํ–ˆ์„ ๋•Œ ํŒŒ๋“œ์˜ ์žฌ๊ธฐ๋™์„ ์ž๋™์œผ๋กœ ์œ ๋ฐœ์‹œํ‚ค๋ ค๋ฉด ์„ค์ •์„ ์•„๋ž˜์™€ ๊ฐ™์ด ํ•˜๋ฉด ๋ ๊นŒ์š”?" ์งˆ๋ฌธ์—์„œ ์‹œ์ž‘๋œ requests, limits์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ธฐ..โ— resources ํ•„๋“œ ์•„๋ž˜๋Š” explain์œผ๋กœ ํ™•์ธํ•œ resources ํ•„๋“œ์ž…๋‹ˆ๋‹ค. ์ปจํ…Œ์ด๋„ˆ์—์„œ ํ•„์š”ํ•œ ๋ฆฌ์†Œ์Šค๋ฅผ ์ •์˜ํ•˜๋Š” ํ•„๋“œ๋กœ ํ•˜์œ„ ํ•„๋“œ๋กœ๋Š” limits, requests๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฆฌ์†Œ์Šค๋Š” CPU, Memory๊ฐ€ ์ผ๋ฐ˜์ ์ด๋ฉฐ ๋‹ค๋ฅธ ๋ฆฌ์†Œ์Šค(hugepages-*)๋“ค๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ๋‹จ์œ„ CPU CPU ๋‹จ์œ„๋Š” ์ฝ”์–ด๋กœ ์ •์˜ ๋ฉ๋‹ˆ๋‹ค. ์˜ˆ์‹œ 1 = 1์ฝ”์–ด 0.5 = 0.5์ฝ”์–ด 500m = 0.5์ฝ”์–ด ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์—์„œ CPU ๋ฆฌ์†Œ์Šค๋ฅผ 1m๋ณด๋‹ค ๋” ์ •๋ฐ€ํ•œ ๋‹จ์œ„๋กœ ํ‘œ๊ธฐํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋•Œ๋ฌธ

2023๋…„ 7์›” 19์ผ
ยท
1๊ฐœ์˜ ๋Œ“๊ธ€
ยท

MetalLB in layer 2 mode

https://metallb.universe.tf/concepts/layer2/ metalLB ๊ณต์‹ ๋ฌธ์„œ๋ฅผ ์ฝ๊ณ  ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. Metal...LB..? layer 2๋ชจ๋“œ์—์„œ๋Š” ์„œ๋น„์Šค IP์— ๋Œ€ํ•œ ๋ชจ๋“œ๋Š” ํŠธ๋ž˜ํ”ฝ์ด ํ•˜๋‚˜์— ๋…ธ๋“œ๋กœ ๊ฐ€๊ฒŒ ๋œ๋‹ค. ๊ทธ ํ›„, kube-proxy์— ์˜ํ•ด ํŠธ๋ž˜ํ”ฝ๋“ค์ด ์„œ๋น„์Šค ํŒŒ๋“œ๋กœ ๋ถ„์‚ฐ๋˜๊ฒŒ ๋œ๋‹ค. ๋”ฐ๋ผ์„œ layer 2๋ชจ๋“œ์—์„œ๋Š” load balaner์ด๋ผ๊ณ  ๋ณด๊ธฐ๋Š” ์–ด๋ ต์ง€๋งŒ, failover ๊ธฐ๋Šฅ์ด ๊ตฌํ˜„๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฆฌ๋”์ธ ๋…ธ๋“œ์— ํŠน์ •ํ•œ ์ด์œ ๋กœ ์žฅ์• ๊ฐ€ ๋‚ ์ง€๋ผ๋„ ๋‹ค๋ฅธ ๋…ธ๋“œ๋กœ ์ž๋™์œผ๋กœ ๋ฆฌ๋” ์—ญํ• ์ด ๋„˜์–ด๊ฐ€๊ฒŒ ๋œ๋‹ค. memberlist์— ์˜ํ•ด ์žฅ์• ๋…ธ๋“œ๊ฐ€ ๊ฐ์ง€ ๋˜๊ณ , ์ƒˆ๋กœ์šด ๋…ธ๋“œ๋Š” ์žฅ์•  ๋…ธ๋“œ๋กœ๋ถ€ํ„ฐ IP๋ฅผ ๊ฐ€์ ธ์˜ค๊ฒŒ ๋œ๋‹ค. layer 2 mode์˜ ํ•œ๊ณ„ layer 2 ๋ชจ๋“œ์—์„œ๋Š” 2๊ฐ€์ง€์˜ ์ฃผ์š”ํ•œ ํ•œ๊ณ„๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. single-node bottlenecking potentially slow failover ์œ„์—์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ์ด layer 2 ๋ชจ๋“œ์˜ ๋‹จ์ผ ๋ฆฌ

2023๋…„ 7์›” 4์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

etcd ๋ณต๊ตฌ ( 3 master on cluster )

๊ฐœ์š” master ๋‹ค์ค‘ํ™”๊ฐ€ ๋˜์–ด ์žˆ๋Š” kubernetes cluster์˜ etcd cluster save ๋ฐ restore ๋ฐฉ๋ฒ• ์‚ฌ์ „์š”๊ตฌ์‚ฌํ•ญ etcd pod์— ์ง์ ‘ execํ•˜์—ฌ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, kubectl cp๊ฐ€ ๋ถˆ๊ฐ€๋Šฅ ํ•œ ๊ฒฝ์šฐ snapshot ํŒŒ์ผ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ etcdctl binary ํŒŒ์ผ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. etcdctl ์„ค์น˜๋ฐฉ๋ฒ• etcdctl ์„ค์ • etcdctl์€ etcd ์ธ์ฆ์„œ๋ฅผ ์ฐธ์กฐํ•˜์—ฌ etcd์™€ ํ†ต์‹ ํ•˜์—ฌ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์‹คํ–‰ํ•  ๋•Œ๋งˆ๋‹ค ์ž‘์„ฑํ•˜๋ฉด ๋ฒˆ๊ฑฐ๋กœ์šฐ๋‹ˆ alias๋กœ ๋“ฑ๋กํ•ด์ค์‹œ๋‹ค. ๋ฐฑ์—… ๋ฐ ๋ณต๊ตฌ snapshot ์ €์žฅ snapshot ์ƒํƒœํ™•์ธ snapshot ๋ณต๊ตฌ ๋งˆ์Šคํ„ฐ๋…ธ๋“œ์—์„œ ๊ฐ๊ฐ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ฐธ๊ณ ๋ฌธ์„œ etcdctl ์„ค์น˜ [https://etcd.io/docs/v3.4/op-guide/recov

2023๋…„ 2์›” 28์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

tekton - more than one PersistentVolumeClaim is bound

์—๋Ÿฌ์ƒํ™ฉ ํŒŒ์ดํ”„๋ผ์ธ์„ ์‹คํ–‰ํ•˜๋Š” ๊ณผ์ •์—์„œ podman-build ํƒœ์Šคํฌ๊ฐ€ ์‹คํ–‰์กฐ์ฐจ ๋˜์ง€ ์•Š์•„ ํ™•์ธํ•œ ๊ฒฐ๊ณผ,more than one PersistentVolumeClaim is bound ๋ผ๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์›์ธ ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์กฐ ํƒœ์Šคํฌ ์ฝ”๋“œ git-clone podman-build workspace ์ •์˜ ๋‘ ๊ฐœ ์ด์ƒ์˜ workspace์—์„œ ํ•˜๋‚˜์˜ pvc๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ•ด์„œ ์ƒ๊ธฐ๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. git-clone ํƒœ์Šคํฌ์—์„œ ์ด๋ฏธ s2i workspace ( cicd-pvc )๋ฅผ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ, podman-build ํƒœ์Šคํฌ์—์„œ ๋˜ ๋‹ค์‹œ s2i workspace ( cicd-pvc )๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ•˜์—ฌ ์—๋Ÿฌ๊ฐ€ ๋‚œ ์ƒํ™ฉ์ž…๋‹ˆ๋‹ค. ํ•ด๊ฒฐ๋ฐฉ๋ฒ•

2023๋…„ 2์›” 7์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

kubelet ๋กœ๊ทธ ํฌ๊ธฐ ์„ค์ •

๊ฐœ์š” kubelet์˜ ์ €์žฅ ๊ฐ€๋Šฅํ•œ ๋กœ๊ทธ ํŒŒ์ผ์˜ ํฌ๊ธฐ๋Š” default๋กœ 10Mi๋กœ ์„ค์ •๋˜์–ด ์žˆ์–ด, 10Mi๊ฐ€ ๋„˜๋Š” ๋กœ๊ทธ๋Š” ์ „์ฒด ๋กœ๊ทธ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์„ค์ • ๋ณ€๊ฒฝ vi /etc/kubernetes/kubelet-config.yaml ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ContainerLogMaxSize ํ•„๋“œ๋ฅผ ์›ํ•˜๋Š” ์šฉ๋Ÿ‰์œผ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค. systemctl restart kubelet kubelet ์„œ๋น„์Šค๋ฅผ ์žฌ๊ธฐ๋™ํ•ฉ๋‹ˆ๋‹ค.

2023๋…„ 2์›” 3์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

๋ฌธ์ œ ์žˆ๋Š” pod ๋ฐ node๋งŒ describe ํ•˜๊ธฐ.sh

๊ฐœ์š” ์ ๊ฒ€ ์‹œ, Running ์ƒํƒœ๊ฐ€ ์•„๋‹Œ ํŒŒ๋“œ ๋“ค์€ ๊ธฐ๋ณธ์ ์œผ๋กœ describe๋ฅผ ํ™•์ธํ•˜์—ฌ Event ํ™•์ธ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. 1, 2๊ฐœ์ผ ๊ฒฝ์šฐ ์ˆ˜์ž‘์—…์œผ๋กœ ํ™•์ธ์ด ์‰ฝ์ง€๋งŒ, pod๋‚˜ node๊ฐ€ ๋งŽ์€ ๊ฒฝ์šฐ ์–ด๋ ค์›€์ด ์žˆ์–ด pod๋Š” running, completed ์ƒํƒœ๊ฐ€ ์•„๋‹ˆ๋ฉด, node๋Š” Ready ์ƒํƒœ๊ฐ€ ์•„๋‹ˆ๋ฉด describe ํ•œ ๊ฒฐ๊ณผ๋ฅผ ํŒŒ์ผ๋กœ ์ €์žฅํ•˜๋„๋ก shell scripts ๋ฅผ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.

2023๋…„ 1์›” 31์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

kubernetes ์ธ์ฆ์„œ ๊ฐฑ์‹ 

0. ๊ฐœ์š” kubernetes ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ตœ์ดˆ ์„ค์น˜ ์‹œ, ์ƒ์„ฑ๋˜๋Š” ์ธ์ฆ์„œ์˜ ๊ธฐํ•œ์€ 1๋…„์ž…๋‹ˆ๋‹ค. ์ด ์ธ์ฆ์„œ ๊ธฐ๊ฐ„์ด ๋งŒ๋ฃŒ๋˜๋ฉด kubernetes ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์–ด, ์ธ์ฆ์„œ๋ฅผ ์ฃผ๊ธฐ์ ์œผ๋กœ ๊ฐฑ์‹ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. 0.1. ํ™˜๊ฒฝ Master Node 3๋Œ€, Worker Node 2๋Œ€ k8s ๋ฒ„์ „ 1.19.4 1. ์ž‘์—… ์ „ ๋ฐฑ์—… etcd ๋ฐฑ์—… >๋ฒ„์ „์— ๋”ฐ๋ผ ์ธ์ฆ์„œ์˜ ๊ฒฝ๋กœ๊ฐ€ ssl์ด ์•„๋‹Œ pki์ธ ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ธ์ฆ์„œ ๋ฐฑ์—… ์—”์ง€๋‹ˆ์–ด๋ผ๋ฉด ํ•ญ์ƒ ๋ฐฑ์—…์€ ํ•„์ˆ˜ โ—โ— > ๊ฐ Master Node์˜ ์ธ์ฆ์„œ๋Š” ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์—, ๋ชจ๋“  Master Node์—์„œ ๊ฐ๊ฐ ๋ฐฑ์—…ํ•˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. 2. ์ธ์ฆ์„œ ๊ฐฑ์‹  kubernetes version <= 1.19 ์ดํ›„ kubernetes verion ์ธ์ฆ์„œ ๋‚ ์งœ ๊ฐฑ์‹  ํ™•์ธ static pod ์žฌ๊ธฐ๋™ kube-scheduler, kube-apiserver, kube-controller-manager

2023๋…„ 1์›” 30์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

k8s ๋ฒ„์ „ ์—…๊ทธ๋ ˆ์ด๋“œ

0. ๊ฐœ์š” 0.1. ํ™˜๊ฒฝ 0.1.1. OS ๋ฒ„์ „ CentOS Linux 7.9 OS๋Š” rpm ํŒŒ์ผ ๋‹ค์šด ์‹œ ์˜ํ–ฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. 0.1.2. cluster ํ™˜๊ฒฝ maseter/woker 1๋Œ€, worker 2๋Œ€๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. CONTAINER-RUNTIME์€ cri-o๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. 0.2. ์ž‘์—… ๋ชฉํ‘œ kubernetes 1.19.x๋ฅผ 1.21.x๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ ํ•˜๊ธฐ 0.3. ํ•„์š”ํ•œ ๋‚ด์šฉ ๋ฐฑ์—… vi /etc/kubernetes/manifests/kube-apiserver.yaml๊ฐ€ ์ดˆ๊ธฐํ™” ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์„ค์ • 1. Setting 1.1. kubernetes repo ์ถ”๊ฐ€ kubernetes 1.20.1๊ณผ 1.21.14 ํŒจํ‚ค์ง€๋ฅผ ๋ฐ›๊ธฐ ์œ„ํ•œ repo๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ [install-kubectl-linux](https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#in

2023๋…„ 1์›” 25์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

k8s metallb invalid CIDR

๋ช…๋ น์–ด๋กœ ์กฐํšŒ ์‹œ, EXTERNAL-IP์— IP๊ฐ€ ํ• ๋‹น ๋˜์–ด์•ผ ํ•˜์ง€๋งŒ Pending ์ƒํƒœ์ธ ์„œ๋น„์Šค๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. metallb-controller ํŒŒ๋“œ์˜ ๋กœ๊ทธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ™•์ธ ๊ฒฐ๊ณผ data.config.address-pools.addresses ์ŠคํŽ™์—์„œ 192.168......-192.168.... ์ฒ˜๋Ÿผ ๋Œ€์—ญ์œผ๋กœ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ์—†์ง€๋งŒ - 192.168..... ์™€ ๊ฐ™์ด ํ•œ๊ฐœ์˜ ip๋งŒ ์ง€์ •ํ•œ๋‹ค๋ฉด prefix (/32) ๋ฅผ ์ง€์ •ํ•ด์ฃผ์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

2023๋…„ 1์›” 17์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

๋…ธ๋“œ ์žฌ๊ธฐ๋™ ํ›„, ํŒŒ๋“œ๊ฐ€ ์‚ฌ๋ผ์กŒ์„ ๊ฒฝ์šฐ

ํŒŒ๋“œ๊ฐ€ Terminating ์ƒํƒœ๊ฐ€ ๋˜์—ˆ์Œ. ๋…ธ๋“œ ์กฐํšŒ ํ•ด๋ณด๋‹ˆ ๋…ธ๋“œ NotReady์ƒํƒœ ํ•ด๋‹น ๋…ธ๋“œ VM์ด ๊บผ์ ธ ์žˆ์—ˆ์Œ --> os ๊ฐ€ ๊บผ์ง€๊ณ  VM์ด ๊บผ์ ธ์•ผํ•˜๋Š”๋ฐ, VM์„ ๋ฐ”๋กœ ๊บผ๋ฒ„๋ ค์„œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊น€ VM ์žฌ๊ธฐ๋™ ํ•˜๊ณ  kubelet, crio ์žฌ๊ธฐ๋™ ํŒŒ๋“œ๊ฐ€ ์‚ฌ๋ผ์ง€๊ณ  ์ปจํ…Œ์ด๋„ˆ๋„ ์‚ฌ๋ผ์ง deploy 0/1์ด๊ณ  rs๋Š” ์ƒ์„ฑ๋˜์–ด ์žˆ๋Š” ์ƒํƒœ deploy replicas 0์œผ๋กœ ๋‚ด๋ฆฌ๊ณ  rs ์‚ญ์ œ ํ›„, replicas 1๋กœ ๋‹ค์‹œ ์˜ฌ๋ฆฌ๋ฉด ์ •์ƒํ™” 6-7 ๊ณผ์ • ์‹คํŒจ ์‹œ, mutator ์ด์Šˆ ํ™•์ธ ํ•„์š”

2023๋…„ 1์›” 4์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

calico/node is not ready: BIRD is not ready: BGP not established with

Error ์ƒํ™ฉ Error ์›์ธ calico-node๊ฐ€ nic๊ฐ€ ๋‘ ๊ฐœ์ผ ๋•Œ ์–ด๋–ค ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ฐพ์•„๊ฐ€์•ผ ํ•  ์ง€ ๋ชฐ๋ผ์„œ ์ƒ๊ธฐ๋Š” ์—๋Ÿฌ ์ œ ํ™˜๊ฒฝ ๊ฐ™์€ ๊ฒฝ์šฐ์—์„œ๋Š” ens192 ์ธํ„ฐํŽ˜์ด์Šค์˜ ip๋กœ ์ง€์ •๋˜์–ด์•ผ ํ•˜๋Š”๋ฐ 10๋ฒˆ๋Œ€ ip๋ฅผ ๊ฐ€์ง„ cni0 ์ธํ„ฐํŽ˜์ด์Šค๋กœ calico-node๊ฐ€ ์„ ํƒ์„ ํ•ด 192๋ฒˆ๋Œ€ ip์™€ BGP๊ฐ€ ๋ถˆ๊ฐ€๋Šฅํ•˜์˜€๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• calico version์ด 3.13.* ๋ฒ„์ „์ด๋ผ cidr ์„ ํ†ตํ•œ ~ ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•˜์—ฌ cni ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ฐธ์กฐํ•˜์ง€ ์•Š๋„๋ก calico-node์˜ daemonset env ๋ฅผ ์ˆ˜์ •ํ•˜์—ฌ์„œ ํ•ด๊ฒฐํ•˜์˜€์Šต๋‹ˆ๋‹ค. Excluding matching interfaces ์•„๋ž˜์˜ Including matching interfaces์™€ ๊ฐ™์ด ์ธํ„ฐํŽ˜์ด์Šค๋ช…์„ ์ง์ ‘ ์ง€์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ๊ฐ€๋Šฅํ•˜์ง€๋งŒ ํ•œ ๋…ธ๋“œ์—์„œ master1์™€ ์ธํ„ฐํŽ˜์ด์Šค ์ด๋ฆ„์ด ๋‹ค๋ฅด๊ณ  ens๋กœ ์‹œ์ž‘ํ•˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ๋‘ ๊ฐœ๋ผ \*๊ณผ ๊ฐ™์€ ์ •๊ทœ์‹์œผ๋กœ ์ธํ„ฐํŽ˜์ด์Šค

2022๋…„ 12์›” 28์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

error adding seccomp rule for syscall socket: requested action matches default action of filter

์ƒํ™ฉ calico.yaml์„ ํ†ตํ•ด calico๋ฅผ ๋ฐฐํฌํ•˜๋Š” ๊ณผ์ •์—์„œ calico pod๊ฐ€ ํ•ด๋‹น ์—๋Ÿฌ๋ฅผ ์ถœ๋ ฅํ•˜๋ฉฐ pod ์ƒํƒœ๊ฐ€ ContainerCreating ์ƒํƒœ๋กœ ์œ ์ง€๋˜๋Š” ์ƒํ™ฉ ํ™˜๊ฒฝ |ํŒจํ‚ค์ง€|๋ฒ„์ „| |---|---| |CentOS|7.7 |cri-o|1.17.4 -> 1.19.2 ์›์ธ cri-o version 1.17.4์—์„œ cri-o 1.19.2๋กœ ์žฌ์„ค์น˜ ํ•˜์˜€์œผ๋‚˜ ์™ธ๋ถ€ ์—ฐ๊ฒฐ์ด ๋˜์ง€ ์•Š์€ ํ์‡„๋ง ํ™˜๊ฒฝ์ด๊ธฐ ๋•Œ๋ฌธ์— ์˜์กด์„ฑ ํŒจํ‚ค์ง€๋“ค์ด ์—…๋ฐ์ดํŠธ ๋˜์ง€ ์•Š์•„ ์ƒ๊ธด์—๋Ÿฌ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• 1.19.2์— ๋งž๋Š” containerd ๋ฒ„์ „์„ ์ƒˆ๋กœ ์„ค์น˜ํ•˜๋‹ˆ, ์ •์ƒ์ ์œผ๋กœ pod ์ž‘๋™ ์ ˆ์ฐจ cri-o ๋ฒ„์ „์— ๋งž๋Š” containerd rpm ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ํ•ฉ๋‹ˆ๋‹ค. https://download.docker.com/linux/centos/7/x86_64/stable/Packages/ rpm ํŒŒ์ผ์„ ์ด์šฉํ•˜์—ฌ containerd๋ฅผ ์ƒˆ ๋ฒ„์ „์œผ๋กœ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€ ์—…๊ทธ๋ ˆ์ด๋“œ

2022๋…„ 10์›” 21์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

kubeadm join์œผ๋กœ ํด๋Ÿฌ์Šคํ„ฐ์— ๋…ธ๋“œ ์ถ”๊ฐ€(worker)

kubeadm init ์œผ๋กœ ํด๋Ÿฌ์Šคํ„ฐ ์ƒ์„ฑ ์‹œ, join์— ํ•„์š”ํ•œ token, hash์™€ ํ•จ๊ป˜ join ์ปค๋งจ๋“œ๊ฐ€ ๋‚˜์˜ค์ง€๋งŒ, ์ด token์€ ์œ ํšจ๊ธฐ๊ฐ„์ด 24์‹œ๊ฐ„์ด๊ณ , ๊ฐ’์„ ๋”ฐ๋กœ ๋ณต์‚ฌํ•ด๋‘์ง€ ์•Š์œผ๋ฉด join์„ ํ•  ์ˆ˜ ์—†๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ž‘์—… Step 1. kubernetes api-server์˜ token, hash ํ™•์ธ ํด๋Ÿฌ์Šคํ„ฐ์˜ main master node๋กœ ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค. ํด๋Ÿฌ์Šคํ„ฐ์˜ ํ† ํฐ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ํ† ํฐ์ด ์—†๋‹ค๋ฉด ํ† ํฐ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. hash ๊ฐ’์„ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค. Step 2. node๋ฅผ ํด๋Ÿฌ์Šคํ„ฐ์— joinํ•˜์—ฌ ์ถ”๊ฐ€ joinํ•  node๋กœ ์ ‘์†ํ•ฉ๋‹ˆ๋‹ค. ์กฐํšŒํ•œ token๊ฐ’๊ณผ hash ๊ฐ’์„ ์‚ฌ์šฉํ•˜์—ฌ join ํ•ฉ๋‹ˆ๋‹ค. master node๋กœ ๋Œ์•„๊ฐ€ node๊ฐ€ ์ถ”๊ฐ€ ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. > ํ† ํฐ ์ƒ์„ฑ ์‹œ, --print-join-command ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด Step 1์˜ ๊ณผ์ •์„ ์ƒ๋žตํ•˜๊ณ  ๋ฐ”๋กœ join ์ปค๋งจ๋“œ๋ฅผ ํ™•์ธ

2022๋…„ 10์›” 21์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

kubernetes ๋…ธ๋“œ ์ œ๊ฑฐ(master/worker)

๋ชฉ์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํŒŒ๋“œ๋กœ ์‹คํ–‰์ธ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ master node / woker node๋ฅผ ์ œ๊ฑฐ ํ•˜๊ธฐ ์œ„ํ•จ ํ™˜๊ฒฝ ํ•ด๋‹น ๋ฌธ์„œ์—์„œ ์‚ฌ์šฉ๋œ ์ปจํ…Œ์ด๋„ˆ ๋Ÿฐํƒ€์ž„์€ cri-o์ž…๋‹ˆ๋‹ค. |ํŒจํ‚ค์ง€|๋ฒ„์ „| |---|---| |cri-o|1.17.4| |kubernetes|v1.17.6| ์ž‘์—… Step 1. ์ œ๊ฑฐํ•  node๋ฅผ ์Šค์ผ€์ค„ ๋ถˆ๊ฐ€๋กœ ํ‘œ์‹œ node ๋ชฉ๋ก์„ ์กฐํšŒํ•˜์—ฌ ์ œ๊ฑฐํ•  node๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. cordon์„ ์‹คํ–‰ํ•˜์—ฌ node๋ฅผ ์Šค์ผ€์ค„ ๋ถˆ๊ฐ€๋กœ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ๋…ธ๋“œ๋ฅผ ์Šค์ผ€์ค„ ๋ถˆ๊ฐ€๋กœ ํ‘œ์‹œํ•˜๋ฉด ์Šค์ผ€์ค„๋Ÿฌ๊ฐ€ ํ•ด๋‹น ๋…ธ๋“œ์— ์ƒˆ ํŒŒ๋“œ๋ฅผ ๋ฐฐ์น˜ํ•  ์ˆ˜ ์—†์ง€๋งŒ, ๋…ธ๋“œ์— ์žˆ๋Š” ๊ธฐ์กด ํŒŒ๋“œ์—๋Š” ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. node ๋ชฉ๋ก์„ ์กฐํšŒํ•˜์—ฌ ์ œ๊ฑฐํ•  node๊ฐ€ SchedulingDisabled ์ƒํƒœ์ธ์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. Step 2. drain ํ•˜์—ฌ pod๋ฅผ ์œ ์ง€ํ•  node๋กœ ์ด๋™ Node์— PDB๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. PDB๊ฐ€ ์žˆ๋‹ค๋ฉด, PDB ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฑ์—…

2022๋…„ 10์›” 20์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

Control plane์€ ์™œ ํ™€์ˆ˜ ๊ฐœ๋กœ ํ•ด์•ผํ•˜๋‚˜์š”โ“

Control plane์„ ์—ฌ๋Ÿฌ๊ฐœ๋กœ ํ•˜๋Š” ์ด์œ  Kubernetes์—์„œ Control plane(์ดํ•˜ CP)์€ ๋…ธ๋“œ๋“ค์„ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ์— ์žฅ์• ๊ฐ€ ์ƒ๊ธฐ๋ฉด ์•„๋ฌด๊ฒƒ๋„ ๊ด€๋ฆฌ ํ•  ์ˆ˜ ์—†๊ธฐ ๋•Œ๋ฌธ์— Sigle Point of Failure ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ณ ๊ฐ€์šฉ์„ฑ์„ ์œ„ํ•ด CP๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ๋‘๋Š”๋ฐ ์ด ๋•Œ ์ง์ˆ˜๊ฐœ๋กœ ์ƒ์„ฑํ•˜๋ฉด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Control plane์„ ํ™€์ˆ˜๊ฐœ๋กœ ๊ตฌ์„ฑํ•˜๋Š” ์ด์œ  Control plane์—๋Š” etcd๋ผ๋Š” ์Šคํ† ๋ฆฌ์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฉ€ํ‹ฐ ํด๋Ÿฌ์Šคํ„ฐ๋ง์„ ํ•˜๊ฒŒ ๋˜๋ฉด etcd๋Š” ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์ด๋•Œ etcd๋Š” RAFT ํ•ฉ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. RAFT ํ•ฉ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ž€ ์š”์ฒญ์„ ์ˆ˜ํ–‰ํ•  ๋•Œ Yes/No๋กœ ํˆฌํ‘œ๋ฅผ ํ•˜๊ฒŒ ๋˜๊ณ , ๊ณผ๋ฐ˜์ˆ˜ ์ด์ƒ์˜ ๋…ธ๋“œ๊ฐ€ ์žˆ๋Š” ์ชฝ์˜ ์š”์ฒญ์„ ์œ ํšจํ•œ ์š”์ฒญ์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๊ฒŒ ๋˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ž…๋‹ˆ๋‹ค. etcd๋Š” RAFT ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ†ตํ•ด ์–ด๋–ค ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ primary์ธ์ง€ ๊ฒฐ์ •ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.![](https

2022๋…„ 8์›” 4์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

71/120

TLS/SSL Termination with Ingress SSL ๋”์ด์ƒ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Œ TLS๋งŒ ์‚ฌ์šฉ ์ƒ์ง•์ ์ธ ์˜๋ฏธ๋กœ SSL ์šฉ์–ด๋ฅผ ์‚ฌ์šฉ end to end ์•”ํ˜ธํ™” client LB Server TLS Termination ํ”„๋ผ์ด๋น— ๋„คํŠธ์›Œํฌ๊ฐ€ ์žˆ๊ณ  ๊ทธ ์•ˆ์— ์•”ํ˜ธํ™”๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š๋Š” ํ‰๋ฌธ ํ†ต์‹ ๊ตฌ๊ฐ„์ด ์žˆ์Œ end to end ๋ฐฉ์‹๋ณด๋‹ค ์„ ํ˜ธ ๋จ ์žฅ์  ํ”„๋ก์‹œ์™€ ์„œ๋ฒ„๊ฐ„์˜ ์•”๋ณตํ˜ธํ™”๋ฅผ ํ•˜์ง€ ์•Š์•„์„œ ์„œ๋ฒ„์— ์•”๋ณตํ˜ธํ™” ๋ถ€๋‹ด์ด ์ ์Œ ์ธ์ฆ์„œ๋ฅผ ์„œ๋ฒ„๋ณ„๋กœ ๊ด€๋ฆฌํ•˜์ง€ ์•Š์•„๋„ ๋จ ๋ณด์•ˆ์žฅ๋น„๋ฅผ ํ”„๋ก์‹œ์—๋งŒ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Œ ์œ„

2022๋…„ 5์›” 25์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

70/120

๋™์  ํ”„๋กœ๋น„์ €๋‹ PVC๋งŒ๋“ค๋ฉด ๋ฐ”์šด๋”ฉ๋  PV๋ฅผ ์ž๋™์œผ๋กœ ๋งŒ๋“ฌ PV๊ฐ€ ์‹ค์ œ๋กœ ์—ฐ๊ฒฐ ์–ด๋–ค ๊ทผ๊ฑฐ๋กœ? ํ…œํ”Œ๋ฆฟ์ด ์žˆ์Œ -> ์Šคํ† ๋ฆฌ์ง€ ํด๋ž˜์Šค SC ๊ด€๋ฆฌ์ž๊ฐ€ SC๋งŒ๋“ค์–ด๋‘  ์‚ฌ์šฉ์ž๋Š” PVC๋ฅผ ๋งŒ๋“ค ๋•Œ ์Šคํ† ๋ฆฌ์ง€ ํด๋ž˜์Šค๋ฅผ ์ง€์ • https://rook.io/ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋ฅผ ์œ„ํ•œ ์Šคํ† ๋ฆฌ์ง€ ์ œ๊ณต ROOK ์˜คํ”ˆ์†Œ์Šค ์‚ฌ์ „์š”๊ตฌ์‚ฌํ•ญ์ด ์žˆ์Œ ์‹ค์ œ ์Šคํ† ๋ฆฌ์ง€ ๊ตฌํ˜„์ด๋ผ ์‚ฌ์šฉํ•  ๋””์Šคํฌ๊ฐ€ ์žˆ์–ด์•ผํ•จ Vagrantfile >up ํ•˜๊ธฐ์ „์— vagrant snapshot save before-rook ์Šค๋ƒ…์ƒท ๋งŒ๋“ค๊ธฐ ์Šค๋ƒ…์ƒท ๋ณต๊ตฌ vagrant restore save before-rook ceph ๋ณ„๋„์˜ ์˜คํ”ˆ์†Œ์Šค https://ceph.io/en/ ํŒŒ์ผ, ๋ธ”๋ก, ์˜ค๋ธŒ์ ํŠธ ์Šคํ† ๋ฆฌ์ง€ ์ œ๊ณต by ceph -> Intergrated storage ํ†ตํ•ฉ ์Šคํ† ๋ฆฌ์ง€ rook-ceph ๊ตฌ์„ฑ https://rook.io/docs/rook/latest/Getting-Started/quickstart/ ์˜คํ”ˆ์†Œ์Šค ์ฝ”๋“œ

2022๋…„ 5์›” 24์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

69/120

Ingress L7 LB = ALB ์ธ๊ทธ๋ ˆ์Šค ์ปจํŠธ๋กค๋Ÿฌ ์ธ๊ทธ๋ ˆ์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ์ปจํŠธ๋กค๋Ÿฌ ing.spec ing.spec.rules ing.spec.rules.http hostname์„ ํฌํ•จํ•˜๋Š” www.naver.com ๋„๋ฉ”์ธ wwwํ˜ธ์ŠคํŠธ naver.com ๋„๋ฉ”์ธ ์™€์ผ๋“œ ์นด๋“œ๋„ ๊ฐ€๋Šฅ *foo.bar.com ์•ž์— ๋ญ๊ฐ€ ๋ถ™๋˜ ๊ดœ์ฐฎ์Œ ๋„๋ฉ”์ธ์€ ์‹ค์ œ๋กœ ์กด์žฌํ•ด์•ผํ•จ ing.spec.rules.http.paths ing.spec.rules.http.paths.backend ing.spec.rules.http.paths.backend.resource

2022๋…„ 5์›” 23์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท

67/120

๋ฐ๋ชฌ์…‹ stop์„ ํ•˜๊ฑฐ๋‚˜ ์‹œ์Šคํ…œ์„ ๋„๊ธฐ์ „๊นŒ์ง€ ๊ณ„์†ํ•ด์„œ ์‹คํ–‰ํ•˜๋Š” ์•ฑ -> ์ด๊ฑธ ์ œ์–ดํ•˜๋Š”๊ฒŒ ์„œ๋น„์Šค๋ฐ๋ชฌ ๋…ธ๋“œ๋งˆ๋‹ค ํ•˜๋‚˜์”ฉ ํŒŒ๋“œ ๋ฐฐ์น˜ -> ๋ฐ๋ชฌ์…‹์€ ๋ชจ๋“ (์ผ๋ถ€) ๋…ธ๋“œ ํŒŒ๋“œ์˜ ์‚ฌ๋ณธ์„ ์‹คํ–‰ -> ํ…œํ”Œ๋ฆฟ ์‹คํ–‰ ๋ฐ๋ชฌ์…‹์€ DS -> ๋ณต์ œ๋ณธ์ด๋ผ๋Š” ๊ฐœ๋…์€ ์—†์Œ ๋ฐ˜๋“œ์‹œ ํ•˜๋‚˜์˜ ๋…ธ๋“œ์— ํ•˜๋‚˜์”ฉ ๋ฌด์กฐ๊ฑด์ ์œผ๋กœ ํ•˜๋‚˜์”ฉ ์žˆ์Œ -> ๋ถ„์‚ฐ์„ ๋ณด์žฅ ๋…ธ๋“œ์—์„œ ์ž‘์—…์„ ํ•ด์•ผํ•˜๋Š” ์•ฑ๋“ค์—์„œ ์‚ฌ์šฉ EX) ์Šคํ† ๋ฆฌ์ง€ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์›Œ์ปค๋…ธ๋“œ์— ์Šคํ† ๋ฆฌ์ง€(๋””์Šคํฌ) ํŒŒ๋“œ์—๊ฒŒ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด์„œ ๊ทธ๋ƒฅ ์ œ๊ณต ๊ฐ€๋Šฅ? --> ๊ทธ๊ฑด ์•„๋‹˜ kubernetes๊ฐ€ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ์ปจํ…Œ์ด๋„ˆ ์Šคํ† ๋ฆฌ์ง€ ์ธํ„ฐํŽ˜์ด์Šค๋ผ๋Š”๊ฒŒ ์žˆ์Œ CRI CNI CSI ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ์ ‘๊ทผํ•ด์•ผํ•จ -> Rook ceph ์‚ฌ์šฉ ์ด๋Ÿฐ์• ๋“ค์„ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด์„  ๋ฐ๋ชฌ์ด ํ•„์š”ํ•จ(์Šคํ† ๋ฆฌ์ง€๋ฅผ ๊ด€๋ฆฌํ• ) RS์™€์˜ ์ฐจ์ด ![](https://velog.velcdn.c

2022๋…„ 5์›” 19์ผ
ยท
0๊ฐœ์˜ ๋Œ“๊ธ€
ยท