์๋ ํ์ธ์,
์ฌ๊ธฐ์ ์ธ๊ธ๋ ๋๋ก ์๋ชป๋ ์์๋ก ์ํํ์ฌ ์ฃ์กํฉ๋๋ค. 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 ์
ํด๋ผ์ด์ธํธ ์ธก ์๋ฃจ์
์ ๊ธฐ์ฌํ๊ณ ์ถ๋ค๋ฉด ๊ทธ๊ฒ์ด ์ฐ๋ฆฌ๊ฐ ์ผ๋์ ๋๊ณ ์๋ ์ฅ๊ธฐ์ ์ธ ๋ฐฉํฅ์ ์๋์ง๋ง(#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์ ๋ํ ๋กค๋ง ์ ๊ทธ๋ ์ด๋๊ฐ ํฌํจ๋ฉ๋๋ค.
์ ๋ฐ์ดํธํด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค! ๐
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
1.6์๋ DaemonSets์ ๋ํ ๋กค๋ง ์ ๊ทธ๋ ์ด๋๊ฐ ํฌํจ๋ฉ๋๋ค.