Kubernetes: ๋ฐ๋ชฌ ์„ธํŠธ์— ๋Œ€ํ•œ ๋กค๋ง ์—…๋ฐ์ดํŠธ ๊ตฌํ˜„

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

์•ˆ๋…•ํ•˜์„ธ์š”,

์—ฌ๊ธฐ์— ์–ธ๊ธ‰๋œ ๋Œ€๋กœ ์ž˜๋ชป๋œ ์ˆœ์„œ๋กœ ์ˆ˜ํ–‰ํ•˜์—ฌ ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md#contributing -a-patch

์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด #22439๋ฅผ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค(kubectl ์ธก์—์„œ).

๋‹จ์ผ ๋ช…๋ น์ค„์—์„œ ๋ฐ๋ชฌ ์„ธํŠธ๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
๊ธฐ๋ณธ์ ์œผ๋กœ ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ๊ณผ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.

kubectl delete  -f dsfile  --cascade=false
kubectl create   -f dsfile
for pod in pods
kubectl  delete pod
wait for delete

ํŽธ์ง‘ : @ bgrant0607 ์€

areapp-lifecycle areworkload-apdaemonset prioritbacklog siapps

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

1.6์—๋Š” DaemonSets์— ๋Œ€ํ•œ ๋กค๋ง ์—…๊ทธ๋ ˆ์ด๋“œ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

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

15310์€ ์„œ๋ฒ„ ์ธก ์—…๋ฐ์ดํŠธ ์กฐ์ •์„ ํฌํ•จํ•˜์—ฌ DaemonSet์ด ๋ฒ ํƒ€์—์„œ GA๋กœ ์ „ํ™˜ํ•˜๊ธฐ ์œ„ํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๋…ธ๋ ฅ์„ ๊ธฐ์šธ์ด๊ณ  ์‹ถ์ง€๋งŒ ๊นŒ๋‹ค๋กญ๊ณ  1.3์—์„œ ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ์ž‘์—…ํ•  ๊ณ„ํš์ด ์—†์Šต๋‹ˆ๋‹ค.

ํด๋ผ์ด์–ธํŠธ ์ธก ์†”๋ฃจ์…˜์— ๊ธฐ์—ฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๊ทธ๊ฒƒ์ด ์šฐ๋ฆฌ๊ฐ€ ์—ผ๋‘์— ๋‘๊ณ  ์žˆ๋Š” ์žฅ๊ธฐ์ ์ธ ๋ฐฉํ–ฅ์€ ์•„๋‹ˆ์ง€๋งŒ(#12143) ์ƒˆ ๋ช…๋ น์„ ๋„์ž…ํ•ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค. ๋Œ€์‹  DaemonSet(๊ทธ๋ฆฌ๊ณ  ReplicaSet๋„ ์›ํ•œ๋‹ค๋ฉด)์—์„œ kubectl rolling-update ์ž‘๋™ํ•˜๋„๋ก ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

https://github.com/kubernetes/kubernetes/blob/master/pkg/kubectl/cmd/rollingupdate.go

rolling-update ๋Š” ๋ฆฌ์†Œ์Šค ์œ ํ˜•( replicationcontroller )์„ ์ง€์ •ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๊ธฐ๋ณธ์ ์œผ๋กœ rc ๋ฅผ ๊ฐ€์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ ์™ธ์—๋Š” ์œ ํ˜•/์ด๋ฆ„ ๊ตฌ๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌ๋ฌธ์„ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋‹ค๋ฅธ ์ปจํŠธ๋กค๋Ÿฌ ์œ ํ˜•์œผ๋กœ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด:

kubectl rolling-update daemonset/mydaemon --image=image:v2

๋ช…๋ น ์ž์ฒด ์™ธ์—๋Š” ์—…๋ฐ์ดํŠธ ์ ˆ์ฐจ๊ฐ€ ์ฝ”๋“œ๋ฅผ ๊ณต์œ ํ•  ๊ฒƒ์œผ๋กœ ๊ธฐ๋Œ€ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ ๋กค๋ง ์—…๋ฐ์ดํŠธ ๋ช…๋ น์€ ์ƒˆ ReplicationController๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ด์ „ ๊ฒƒ์„ ์ถ•์†Œํ•˜๋ฉด์„œ ์ ์ง„์ ์œผ๋กœ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. --image ๊ฒฝ์šฐ ์ด๋ฆ„์„ ์›๋ž˜ RC๋กœ ๋‹ค์‹œ ๋ณ€๊ฒฝํ•˜๊ธฐ ์œ„ํ•ด ๋์— "์‚ญ์ œ ๋Œ„์Šค"๋ฅผ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์›๋ณธ์„ ์‚ญ์ œํ•˜๊ณ  ๋™์ผํ•œ ์ด๋ฆ„์˜ ๋‹ค๋ฅธ RC๋ฅผ ๋งŒ๋“  ๋‹ค์Œ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ ์ด๋ฏธ์ง€๋ฅผ ๋กค์•„์›ƒํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์ž„์‹œ RC์ž…๋‹ˆ๋‹ค.

DaemonSet์˜ ๊ฒฝ์šฐ kubectl์€ ๋ฐ˜๋Œ€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์›๋ž˜ DaemonSet์„ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ํฌ๋“œ๋ฅผ ํ•˜๋‚˜์”ฉ ์‚ญ์ œํ•˜์—ฌ ๊ต์ฒด๋˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. --image ๊ฐ€ ์ง€์ •๋˜๋ฉด ๋งˆ์ง€๋ง‰์— ์™„๋ฃŒ๋ฉ๋‹ˆ๋‹ค. ์ƒˆ DaemonSet ์ด๋ฆ„์ด ์ง€์ •๋œ ๊ฒฝ์šฐ(์˜ˆ: kubectl rolling-update daemonset/mydaemon-v1 -f mydaemon-v2.yaml ) ์—…๋ฐ์ดํŠธ ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋๋‚  ๋•Œ ์ƒˆ DaemonSet์ด ์ƒ์„ฑ๋˜๊ณ  ์›๋ณธ์ด ์‚ญ์ œ๋ฉ๋‹ˆ๋‹ค. DaemonSet์ด ์ด๋ฅผ ์ •์ƒ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ–ˆ๋Š”์ง€ ํ™•์ธํ•˜๊ฑฐ๋‚˜ ์ƒˆ DaemonSet์„ ๋งŒ๋“ค๊ธฐ ์ „์— ์›๋ณธ DaemonSet๋ฅผ ์‚ญ์ œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(#7402์˜ ์ œ ์ œ์•ˆ๊ณผ ์œ ์‚ฌ).

cc @mikedanese @davidopp @madhusudancs @janetkuo @kargakis @pwittrock @gmarek

1.6์—๋Š” DaemonSets์— ๋Œ€ํ•œ ๋กค๋ง ์—…๊ทธ๋ ˆ์ด๋“œ๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

์—…๋ฐ์ดํŠธํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ๐Ÿ‘

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