helm upgrade --install
์ ๋ฆด๋ฆฌ์ค๊ฐ ์๋์ง ์ฌ๋ถ์ ๋ฐ๋ผ ์ค์น ๋๋ ์
๊ทธ๋ ์ด๋ํ๋ ์ข์ ๋ฐฉ๋ฒ์
๋๋ค. ํ์ง๋ง ๋
ผ๋ฆฌ์ ๋ฒ๊ทธ๊ฐ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์คํจํ ์ค์น๋ฅผ ์ฒ๋ฆฌํ์ง ์์ต๋๋ค. ์ ๊ฒฝ์ฐ์๋ ์ฒซ ๋ฒ์งธ ์ค์น๊ฐ ์คํจํ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ์ฆ์ ์ถฉ๋์ด ๋ฐ์ํ์ฌ ํ์ ์๋๋ ์ด๋ฃจ์ด์ง์ง ์์์ต๋๋ค.
๋ง์ง๋ง ๋ฆด๋ฆฌ์ค๊ฐ ์คํจํ๋ฉด helm upgrade --install
์ญ์ ํ๊ณ ๋ค์ ์ค์นํด์ผํ ๊น์?
$ helm list
NAME REVISION UPDATED STATUS CHART NAMESPACE
foo 2 Wed Jan 17 11:48:08 2018 FAILED something-0.0.1 default
$ helm upgrade "foo" . --install
Error: UPGRADE FAILED: "foo" has no deployed releases
์ด๊ฒ์ https://github.com/kubernetes/helm/pull/3097์ ๋์์ธ์ ์ํด ์๋ ๋ ๊ฒ์ ๋๋ค
์ด๊ธฐ ๋ฆด๋ฆฌ์ค๊ฐ ์คํจํ ์ํ๊ฐ๋๋ฉด helm delete --purge foo
๋ฅผ ํตํด ๋ฆด๋ฆฌ์ค๋ฅผ ์ ๊ฑฐํ๊ณ ๋ค์ ์๋ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ฑ๊ณต์ ์ธ ์ด๊ธฐ ๋ฆด๋ฆฌ์ค ํ์๋ ์ดํ์ ์คํจํ ๋ฆด๋ฆฌ์ค๋ ๋ฌด์๋๊ณ helm์ ๋ง์ง๋ง์ผ๋ก ์๋ ค์ง ์ฑ๊ณตํ ๋ฆด๋ฆฌ์ค์ ๋น๊ต๋ฅผ ์ํํฉ๋๋ค.
์ด์ ์ฑ๊ณต์ ์ธ ๋ฆด๋ฆฌ์ค๊ฐ ๋ฐฐํฌ๋์ง ์์ ๊ฒฝ์ฐ diff๋ฅผ ์ํ ํ์ง ์๋ ๊ฒ์ด ์ค์ ํ ์ ์์ต๋๋ค. ์ฌ์ฉ์๊ฐ helm install
๋ฅผ ์ฒ์ ์คํํ์ ๋์ ๋น๊ตํ ์์๋ "ํ์ฌ"๋ฆด๋ฆฌ์ค๊ฐ ์๋ค๋ ์ ์์ ๊ฒฝํ์ ๋์ผํฉ๋๋ค. ๊ทธ๋๋ ํน์ ์ฃ์ง ์ผ์ด์ค์ ๋ํด ์ฝ๊ฐ ๊ฑฑ์ ํ ๊ฒ์
๋๋ค. @adamreese ์ด๊ฒ์ ๋ํ ์๊ฒฌ์ด ์์ต๋๊น?
์ ์ ๋ ์์ ์ฌํญ์ ์๋ํ ๋ ์์คํ
์์ ์์ ํ ์ ์งํ ์์๋ ๊ฒ ๊ฐ์ต๋๋ค. helm์ ํธ์ถํ๋ ๋ชจ๋ ๊ฒ์ด "์ฒซ ๋ฒ์งธ ๋ฆด๋ฆฌ์ค๊ฐ ์คํจํ๋ฉด ์ญ์ ํ๊ณ ๋ค์ ์๋"์ ๋ํด ์์์ผํ๋ ๊ฒ์ ์๋๋๋ค. ์ฒซ์งธ, ๋ด ๋๊ตฌ์ ๋๋ถ๋ถ์ ์ค์น์ธ์ง ์
๊ทธ๋ ์ด๋์ธ์ง ์ธ์ํ์ง ๋ชปํ๊ฑฐ๋ ์ฒ์์ธ์ง 100 ๋ฒ์ธ์ง ๊ฑฐ์ ํญ์ helm upgrade --install
์
๋๋ค.
๋๋ ๋ํ์ด ์ฌ๊ฑด์ ๋ํด ๊ตฌ์ฒด์ ์ผ๋ก ๋ฌป๋ ์๋ณธ PR https://github.com/kubernetes/helm/pull/3097#discussion_r151808599 ์ ๋ํด ์ธ๊ธํ๋ค๊ณ ๋งํ๊ณ ์ถ์ต๋๋ค.
์ด ๊ฒฝ์ฐ์๋ ์ด์ ๋์์ด ๋ ๋ซ์ต๋๋ค.
@chancez์ ๋์ํฉ๋๋ค. ์ด๊ฒ์ ์ผ๋ฐ์ ์ธ ๊ฒฝ์ฐ์ upgrade --install
๋น๋ฉฑ ๋ฑ์ฑ์ ๋ง๋ญ๋๋ค.
๋ฟก ๋นต๋จ
๋ฆด๋ฆฌ์ค๊ฐ ์คํจํ๊ณ ์คํจํ ํํฌ๋ก ์ธํด ํํธ์ ๋จ๊ธฐ๋ ๊ฒ์ด ๊ฑฑ์ ๋๋ค๋ฉด ์ฐจํธ์ ๋์์ธ ๋ฌธ์ ๋ผ๊ณ ๋งํ๊ณ ์ถ์ต๋๋ค. (ํํฌ๋ ๋ฉฑ๋ฑ์ ์ผ ๋ ๋ ์ ์๋ํฉ๋๋ค.)
์ฌ์ฉ์๋ helm์ ์ค์ฌ์ผ๋ก ์ค๋ฅ ์ฒ๋ฆฌ ๋ฐ ๋น๋ฉฑ ๋ฑ์ฑ ๋์์ ์์ ๋กญ๊ฒ ๊ตฌ์ถ ํ ์ ์์ต๋๋ค.
์ฐ๋ฆฌ๊ฐ ์ผ๋ คํ๋ ๋ค๋ฅธ ์ฃ์ง ์ผ์ด์ค๋ ๋ฌด์์
๋๊น?
# 3097์ด ๋ง์ ๊ฒ์ ์ฒ๋ฆฌํ๋ ๊ฒ ๊ฐ์ต๋๋ค ๐
์ ์ด๋ ๋ช ๊ฐ์ง ์ธ์ ์กฐํฉ์ ๋ํด ์คํจํ ๋ฆด๋ฆฌ์ค์ ๋ํด์๋ helm upgrade -i
๋ฉฑ ๋ฑ์ฑ์ ๋ง๋ค ์ ์๋ค๋ฉด ๋ด ๋ก์ปฌ ๊ฐ๋ฐ์ด ํจ์ฌ ๋ ์ํํด์ง ๊ฒ์
๋๋ค. ๋ด ์ฌ์ฉ ์ฌ๋ก๋ ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ์ ์์ํ๊ธฐ ์ํด ์์ํ๋ ค๋ ๋ง์ ๋ฆด๋ฆฌ์ค์ ์คํฌ๋ฆฝํธ๊ฐ์๋ ๊ฒฝ์ฐ์
๋๋ค.
์ด๋ helm install
์ ๋ํ --replace
ํ๋๊ทธ์ ์ ์ฌ ํ ์ ์์ต๋๋ค. --replace
๋ helm upgrade
์์ ๋๋ฝ ๋ helm install
๋ ํ๋๊ทธ ์ค ํ๋์ด๊ณ ๋ค๋ฅธ ํ๋๋ --name-template
์
๋๋ค.
๋ช ํํ๊ฒ ๋งํ์๋ฉด, ์ด๊ฒ์ ๊ณ ์น๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ฐ๋ฆฌ ์์ด ๋ค๋ฅธ ์ผ๋ก ๊ฐ๋ ์ฐจ์๋ ๋์ ๋๊ตฐ๊ฐ ๊ทธ๊ฒ์ ๊ท ์ด์ ๊ฐ๊ณ ์ถ์ด?
์๋
ํ์ธ์,
์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ผํ๋ PR https://github.com/kubernetes/helm/pull/3437 ์ ๋ง๋ค์์ต๋๋ค.
์ฐ๋ฆฌ๊ฐ ํ์๋กํ๋ ์ด์ ๋ ํ์คํ์ง ์๋ค install
๋ฐ upgrade
๋ช
๋ น์, ๋ ๋จ์ง ์ด์ ๊น์ง ์ฌ์ฉ upgrade --install
๋ช
๋ น์ํ๊ณ ์์ต๋๋ค ๋ง์ ์ฌ๋๋ค์ด ๊ฐ์์ฒ๋ผ ๋ณด์ธ๋ค. upgrade --install
๋ฅผ ์ํํ๊ณ ์คํจํ ์คํ์ผ๋ก ๋์ด ๊ฐ์ง ์๋ ๋ช
๋ น ํ๋๋ง ํ์ํฉ๋๋ค. ์ฐ๋ฆฌ๊ฐ ์ด๋ฆ์ ๋ฐ๊ฟ ์ ์์ต๋๋ค upgrade --install
์ deploy
, ๊ทธ๊ฒ์ ์ง์ ๋๋ฌด ๋ฑ ํ์ธํ๊ณ ๋ค๋ฅธ ๋ ๋๋?
(์ ๋ 2.8.0์์์ด ๋ฌธ์ ๋์์ ์๋ก์ด ๋ณ์ข
์ผ๋ก ๊ณ ์ฌํ๊ณ ์์ต๋๋ค. 2.7.2์์ ์
๊ทธ๋ ์ด๋ ํ ์ดํ ์ค์น๊ฐ ์คํจํ๋ฉด delete --purge
, ๊ทธ๋ฆฌ๊ณ upgrade --install
it , ์ฌ์ ํ Error: UPGRADE FAILED: "xyz" has no deployed releases
์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. --purge
์ (๋) 2.8.0์์ ์์ ํ ํจ๊ณผ์ ์ด์ง ์๊ณ ํธ๋ฌ์๋ list --all
ํ์๋์ง ์๋ ์ผ๋ถ ๋ฉ์ถค ์ํ๊ฐ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ install
๋ก ๋์๊ฐ์ ๊ฒฝ์ด๊ธฐ๋ฅผ ๋ค์ ํ์์ upgrade --install
ํ ์์๋ ์ฃผ๋ก ๋๋๋ฆฝ๋๋ค.)
@whereisaaron์ ๋์ํฉ๋๋ค. kubectl apply
์ฒ๋ผ ์๋ํ๋ deploy
๋ช
๋ น์ ์ฌ์ฉํ๋ฉด ์ข์ ๊ฒ์
๋๋ค. ์ผ๋ถ ์ ์คํฌ๋ฆฝํธ ๊ด๊ธฐ์ ์กด์ฌํ๋ ๋ฆด๋ฆฌ์ค๋ฅผ ํ์ธํ ํ์๊ฐ ์๊ธฐ ๋๋ฌธ์ Helm์ ์๋ํ๋ ํจ์ฌ ์ฌ์์ง๋๋ค. :)
์๋ง๋ ํด๊ฒฐ์ฑ
์ helm์ด ์๋์ผ๋ก helm delete --purge
์คํํ๋๋กํ๋ ๊ฒ์
๋๋ค.
๋ค์๊ณผ ๊ฐ์ ๊ฒ :
1) ์ฌ์ฉ์๊ฐ helm upgrade --install
2) ์ฒซ ๋ฒ์งธ ๋ฆด๋ฆฌ์ค ์คํจ
3) ์ฌ์ฉ์๊ฐ ์ฐจํธ๋ฅผ ๋ณ๊ฒฝํ๊ณ ๋ค์ ์คํ helm upgrade --install
4) Helm์ด ๋ช
๋ น ์คํ์ ์๋ํฉ๋๋ค.
5) ์คํจํ๊ณ ์คํจํ ์ํ์ ์ด์ ๋ฆด๋ฆฌ์ค๊ฐ ์ ํํ ํ๋ ์์ต๋๋ค.
6) Helm์ด ์๋์ผ๋ก helm delete --purge
6) ์ ๊ฑฐ ํ Helm์ helm upgrade --install
์๋์ผ๋ก ์ฌ ์๋ํ๊ณ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ํ์ํฉ๋๋ค.
์๋ง๋์ด ๋์์ ๋ค๋ฅธ ์๋๋ฆฌ์ค์ ๋ํด ์ด๋ฏธ ์ ์ฌํ ๋์์ด์๋ --force
ํ๋๊ทธ๋ฅผ ํตํด ํธ๋ฆฌ๊ฑฐ ๋ ์ ์์ต๋๋ค.
์ข์ ์๊ฐ,ํ์ง๋ง ๋ ์ฐ๋ฆฌ๊ฐ ์ด์ ๊น์ง ์ฌ์ฉ์๊ฐ ๋ช ์ ์ ์ผ๋ก ํด๋น ๋ฐ์ดํฐ๋ฅผ ์ ๊ฑฐ ์์ฒญํ์ง ์๊ณ ๋ฆด๋ฆฌ์ค ์์ฅ์ ์ญ์ ํด์ผํฉ๋๋ค ์๊ฐํ์ง ์์ต๋๋ค. Helm ์ด์์๋ ์ด์ ์ ์คํจํ ๋ฆด๋ฆฌ์ค์์ ์๋น์ค๋ฅผ ์ ๊ทธ๋ ์ด๋ํ์ง ๋ชปํ ์ด์ ๋ฅผ ์์ ๋ณด๊ฑฐ๋ ์์ฅ์์ ํด๋น ๋ฐ์ดํฐ๋ฅผ ์์งํ์ฌ ์คํจ๋ฅผ ์ถ๋ก ํ๋ ค๊ณ ํฉ๋๋ค.
์ค๋ ๋์ ์๋ถ๋ถ์์ ๋ฌธ์ ์ ๋ํ ํด๊ฒฐ์ฑ ์ ์ค๋ช ํ๋
@rchernobelskiy๋ ๋์๊ฒ ๋ฐ์ํฉ๋๋ค. ๋น์ ์ด ์ค๋ช ํ๋ ๊ทธ๋๋ก.
์ ์ฑ์ ๋ฐฐํฌ ํ ๋ ํ๋ฃจ์ ํ ๋ฒ์ด ๋ฌธ์ ๊ฐ ๋ฐ์ํฉ๋๋ค.
๊ณ ํต์
๋๋ค!
@gmanolache ์ด๋ฐ ์ด์ ๋ก ์ฐ๋ฆฌ๋ ์ฌ์ ํ 2.7.0์ ์ง๋ฐฐํ๊ณ ์์ต๋๋ค.
--force
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ์
๊ทธ๋ ์ด๋ํ๋ ๊ฒ์ด ์์ ํ์ง ํ์คํ์ง ์์ต๋๋ค .
๋ค์ด ๊ทธ๋ ์ด๋ํด์ผํ๋ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ ์ข์ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. 2.7.0์ผ๋ก ๋ค์ด ๊ทธ๋ ์ด๋
์ด ์ ์ฉํ๊ฒ ๋ค๋ฆฌ๋ '์กฐ์ ์ฅ๋ถ'์ง๋จ ์ ๋ณด๋ ๋ฌด์์ด๋ฉฐ ์ด๋ป๊ฒ ์ป์ ์ ์์ต๋๊น? :๋ฏธ์:
์๋ ๋ด์ฉ์ด ๋ณ๋์ค๋ฌ์ ๋ณด์ผ๊น ๊ฑฑ์ ๋ฉ๋๋ค. ๋ฐฐํฌ์ ์คํจํ์ ๋ ์ง๋จ ์ ๋ณด๋ฅผ ์ป์ ์์๋ ๋ฐฉ๋ฒ์ ๋ํ ์๋ด์ ๋ํ ์๋ด์ ๋๋ค. ๋ญ๊ฐ ๋์น ๊ฒ ๊ฐ์์์. ์คํจํ ์ํ๊ฐ ์ด์์์๊ฒ ์ ์ฉํ๋ค๊ณ ์๊ฐ๋๋ ๊ฒ ๊ฐ์ต๋๊น? ๋๋ ๋ค์ ์กฐํ ๋งค๋ด์ผ ์ฌ์ดํธ๋ฅผ ํ์ํ๋ค. ์ ์ฉํ ์ง๋จ ์ ๋ณด๋ฅผ ์ถ์ถํ๊ธฐ ์ํด ์คํจํ ์ํ์์ 'helm get manifest'์ ๊ฐ์ ๊ฒ์ด ์๋ํฉ๋๊น?
๋ฐฐํฌ๊ฐ ์คํจํ์ ๋ ๋ด ์ฌ์ฉ์ ๊ฒฝํ์ ์ ์ฉํ ์ ๋ณด๊ฐ ์๋ค๋ ๊ฒ์ ๋๋ค. Helm์ 'helm status'๊ฐ ์๋ฌด๊ฒ๋ ํ์ํ์ง ์๋๋ก ๋ถ๋ถ์ ์ผ๋ก ์์ฑ / ๋จ์ ๋ฆฌ์์ค๋ฅผ ๋ชจ๋ ์์ ํ์ง ์์ต๋๋ค. ํ ์์๋ ์ผ์ '๋กค๋ฐฑ'๋๋ '์ญ์ --purge'์ ๋๋ค ( '์ญ์ '๋ง ํ ์ ์๊ฑฐ๋ CI '์ ๊ทธ๋ ์ด๋-์ค์น'๊ฐ ๊ณ์ ์คํจํฉ๋๋ค). ์คํจํ ์ํ๋ ์ฐ๋ฆฌ ๋ชจ๋๊ฐ CI ๋ฐฐํฌ์ ์ด๋งํ๋ '์ ๊ทธ๋ ์ด๋-์ค์น'์ ๋ฉฑ ๋ฑ์ฑ์ ๊นจ๋ ์ญํ ์ํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
CI ์ํฉ์ ๋ํด '--auto-rollback'์ต์ ์ ๊ฐ๋ ๊ฒ์ด ํฉ๋ฆฌ์ ์ผ๊น์ (์ : 'upgrade --install --auto-rollback'). ๋๋ ๋ณดํต ์คํจํ ์ํ๋ฅผ ๋ค๋ฃจ๊ธฐ ์ํด ์นจ๋์์ ์ผ์ด๋์ผํ๋ ๋กค๋ฐฑ์ ์ ํธํ๋ค ๐ ๐ด ๐ค
์ด ์ ์ฉํ๊ฒ ๋ค๋ฆฌ๋ '์กฐ์ ์ฅ๋ถ'์ง๋จ ์ ๋ณด๋ ๋ฌด์์ด๋ฉฐ ์ด๋ป๊ฒ ์ป์ ์ ์์ต๋๊น? ๐
helm help history
๊ฐ์ฌํฉ๋๋ค @bacongobbler. ์ข์, ๋๋ ๋ชฉ๋ก์ด ์์ฅ์ ์๋ฏธ์์ ์ดํดํฉ๋๋ค. ์์ฅ์ด ์์ง ์๋ค๋ฉด helm get manifest --revision 123
๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐฐํฌ ๋ ๊ฒ์ด ์คํจํ ๊ฒ์ ๋ณผ ์ ์์ต๋๊น? ๊ทธ๊ฒ์ ํ์คํ ๋ณด์กดํ๋๋ฐ ์ ์ฉํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๊ฐ rollback
์ด๋ผ๋ฉด ๊ทธ ์ ๋ณด๋ฅผ ์์ง ์์ต๋๋ค.
History prints historical revisions for a given release.
A default maximum of 256 revisions will be returned. Setting '--max'
configures the maximum length of the revision list returned.
The historical release set is printed as a formatted table, e.g:
$ helm history angry-bird --max=4
REVISION UPDATED STATUS CHART DESCRIPTION
1 Mon Oct 3 10:15:13 2016 SUPERSEDED alpine-0.1.0 Initial install
2 Mon Oct 3 10:15:13 2016 SUPERSEDED alpine-0.1.0 Upgraded successfully
3 Mon Oct 3 10:15:13 2016 SUPERSEDED alpine-0.1.0 Rolled back to 2
4 Mon Oct 3 10:15:13 2016 DEPLOYED alpine-0.1.0 Upgraded successfully
helm upgrade --install --auto-rollback
์๋ ๊ฒฝ์ฐ ์คํจํ ๋ฐฐํฌ ๋ชจ๋ ๋กค๋ฐฑ์ด ์์ฅ์ ๊ธฐ๋ก๋๊ณ ์ด์์๊ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ CI ๋ฐฐํฌ๊ฐ 'helm upgrade --install'์ด ์๋์ ์ค์งํ๋ ๋ค๋ฃจ๊ธฐ ํ๋ '์คํจ'์ํ๊ฐ๋๋ ๊ฒ์ ๋ฐฉ์งํ๋ ๋ฐ ํฐ ๋์์ด๋ฉ๋๋ค. ์คํจํ CI ๋ฐฐํฌ๋ ์ผ๋ฐ์ ์ผ๋ก ๊ฐ๋ฐ์๊ฐ ๋ฐฐํฌ ์์คํ
์ ์คํ / ์ค์๋ฅผ ์ฃผ์
ํ๋ ๊ฒ์
๋๋ค. '--auto-rollback'์ ์ฌ์ฉํ๋ฉด ๋ฐฐํฌ ์๋ฒ ๋ก๊ทธ์ ๋ณด๊ด ๋ helm
๋ช
๋ น ์ค๋ฅ ๋ฉ์์ง๋ฅผ ๊ฒ์ฌํ๊ณ ์์ ๋ ๊ฐ์ ์์ ํ๊ณ ๋ฐฐํฌ ํ ์ ์์ต๋๋ค.
'--auto-rollback'์ต์
์ด ์์ด๋ wrapper automate๋ฅผ ์ฌ์ฉํ์ฌ helm update --install
๊ฐ 'FAILED'์ค๋ฅ๋ฅผ ๋ฐํ ํ ๋๋ง๋ค helm rollback
๋ฅผ ์คํํ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๊ธฐ ์ค์น ์์น๋ฅผ ๊ฐ์งํ๊ณ ๊ทธ ๊ฒฝ์ฐ์๋ helm delete --purge
๋์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ฆ, CI 'helm upgrade --install'์ ๊ฒฐ๊ณผ๊ฐ ํญ์ ๋ค์ CI 'helm upgrade --install'์ด ํญ์ ๊ฐ๋ฅํ ์ํ๊ฐ๋๋๋ก ๋ํผ ์คํฌ๋ฆฝํธ๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค. ์คํจํ ์๋์ ๋ํ ์์ฅ ์ ๋ณด๋ฅผ ์ ์งํ๋ ๋์ (์ ์ด๋ ์ด๊ธฐ ์ค์น๊ฐ ์๋ ํ ๋ฆด๋ฆฌ์ค์ ๊ฒฝ์ฐ).
helm deploy
=
helm upgrade --install
helm delete --purge
helm rollback
@whereisaaron ์ฐ์ ํ ๊ฒ์ ๋๋ค ๐
๊ฐ์ ์ด์ธ์ ์ต์ ์์
๋ฒ์ ์ป์ ์์๋ ์ฌ์ด ๋ฐฉ๋ฒ์ด helm history ${name} | tail -2 | head -1 | awk '{print $1}'
์ ์ํด ์ฌ์ฉ๋๋, helm rollback
?
์๋ ํ์ญ๋๊น,
Helm 2.12.2๋ฅผ ์ฌ์ฉํ๊ณ ์์ผ๋ฉฐ ์ฒซ ๋ฒ์งธ ๋ฐฐํฌ๊ฐ ์คํจํ๋ฉด helm์ด ์คํจํ๋ค๋ ๋ฌธ์ ๊ฐ ์ฌ์ ํ ์์ต๋๋ค. ์ด๊ฒ์ ์๋ง๋ ํ๊ท์ ๋๊น?
ํ๊ท์ธ์ง ํ์คํ์ง ์์ง๋ง ์ค์ ๋ก "๊ณ ์ "๋์ง๋ ์์์ต๋๋ค.
@ RickS-C137 ์คํจํ ๋ฆด๋ฆฌ์ค๋ฅผ '์ญ์ 'ํ ๋ค์ '์ค์น-๊ต์ฒด'ํ๋ helm upgrade --install --force
๋ฅผ ์ฌ์ฉํ์ฌ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ผํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
์ฌ์ ํ ์ฌ์ฉํ๋ ค๋ Jenkins Pipeline์์์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๊ณ ํฉ๋๋ค.
๋ด ์ ํ๋ฆฌ์ผ์ด์
์ ์ ์ด๋ฏธ์ง๋ฅผ ๋ฐฐํฌํ๋ ค๊ณ ํ๋๋ฐ ๋ฐฐํฌ๊ฐ ์ด๋ฏธ ์กด์ฌํ๋์ง ์ฌ๋ถ์ ์๊ด์์ด ์ ๊ฒฝ ์ธ ์ ์์ต๋๋ค.
ํ์ฌ ๋ฐฐํฌ๋ฅผ ๋์ฒดํ๊ฑฐ๋ ์กด์ฌํ์ง ์๋ ๊ฒฝ์ฐ ์ค์นํ๋ ๋ช
๋ น ํ๋๋ฅผ ์คํํ๊ณ ์ถ์ต๋๋ค.
๋๋ helm install --replace
์๋ํ๋ค. ๋๋ ์ข
์ข
Error: a released named xyz is in use, cannot re-use a name that is still in use
์ป๋๋ค. ์ด๊ฒ์ ๋ถ๋ช
ํ ๋ด ํ์ดํ ๋ผ์ธ์ ์ฃฝ์ด๊ณ ๋น๋๊ฐ ์คํจํ๋ค.
@bacongobbler https://github.com/helm/helm/issues/3353#issuecomment -385222233์ ๋ํด ์ด๋ป๊ฒ ์๊ฐํ์ญ๋๊น?
์ด๊ธฐ ๋ฆด๋ฆฌ์ค๊ฐ ์คํจ ํ ๊ฒฝ์ฐ ์ด๊ธฐ ๋ฆด๋ฆฌ์ค๋ฅผ ํ๊ดดํ๊ณ ๋ค์ ์์ฑํ๋ฉด ๋ค์ด ํ์์ด๋ ๋ฐ์ดํฐ ์์ค์ด ์ด๋ป๊ฒ ๋ฐ์ํ๋์ง ์ ์ ์์ต๋๋ค.
์ฐ๋ฆฌ ๋น๋์์ ์ด๊ฒ์ ๊ตฌํํ์ต๋๋ค.
if helm history --max 1 "$name" 2>/dev/null | grep FAILED | cut -f1 | grep -q 1; then
helm delete --purge "$name"
fi
helm upgrade --install --wait "$release" chart/
ํ์ฌ helm์ ์ฌ์ฉํ๋ฉด ํ์ฌ ์ํ๋ฅผ ๊ฒ์ฌํ์ง ์๊ณ ์ฌ์ฉํ helm ๋ช ๋ น + ์ต์ ์กฐํฉ์ ์ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฃผ์ด์ง helm ๋ช ๋ น์ ๊ฒฝ์ฐ ํ์ฌ ์ํ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๊ธฐ ๋๋ฌธ์ ๋ฌด์์ ์ป์์ง ์ ์ ์์ต๋๋ค. ๊ทธ๊ฒ์ ์ ์ธ์ ํฌ๋ง ์ํ์ ๊ฟ์ด ์๋๋๋ค โ๏ธ ๐ค ๐
helm 3์์๋ ์ ์ฌ์ ์ผ๋ก install
/ upgrade
/ --replace
/ --upgrade
/ --force
๋ฉฑ ๋ฑ์ฑ helm deploy
๋์ฒด ํ ์ ์์ต๋๋ค helm deploy
. ์์ ์ ์ฌํ ์๊ณ ๋ฆฌ์ฆ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. helm deploy
๊ฐ ์คํจํ๋ฉด ๋กค๋ฐฑ (revision> 1)ํ๊ฑฐ๋ deletes + purges (revision = 1)ํ์ฌ ์ํ๋ฅผ ์ด์ ์ํ๋ก ์ ์งํฉ๋๋ค. ์คํจํ ๋งค๋ํ์คํธ๋ helm history/get
๋ฅผ ํตํด ๊ณ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์กฐ์ฌ๋ฅผ ์ํด ๋ฐฐํฌ๋ฅผ ์คํจํ ์ํ๋ก ๋ณด์กดํ๋ ค๋ ์ฌ๋๋ค์์ํ '-๋กค๋ฐฑ ์์'์ต์
๋์์ ์ ์์ต๋๋ค.
helm upgrade --install --force
์ ์ต์
์ด ์ ์ ๊ฐ๊น์์ง๊ณ ์์ต๋๋ค. ๋จ, ๋กค๋ฐฑ ๋ฐ ์
๊ทธ๋ ์ด๋๊ฐ ์๋๋ผ ์คํจํ ๋ฆด๋ฆฌ์ค (์์ ๋ฒ์ > 1์ ๊ฒฝ์ฐ์๋)๋ฅผ
์ง๊ธ ๋น์ฅ์ ๊ธฐ๋ฅ ๋ชฉ๋ก ์ด ๋ถ๋ถ์ ์ผ๋ก helm
ํ์ง๋ง์ด ๋ฌธ์ ๋ฅผ ์ํํ๋ helmsman
์ ๊ฐ์ ๋ํผ ์คํฌ๋ฆฝํธ ๋๋ ๋ฉํ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ํ๋ ์ํ๋ฅผ ๋ฌ์ฑํ๊ฑฐ๋ ์ํ๋ฅผ ๋ณ๊ฒฝํ์ง ์์ ์ํ๋ก ๋๋ ๋ฉฑ ๋ฑ์ฑ helm ๋ฐฐํฌ๋ก ๋ชจ๋ ๊ต์ฒดํฉ๋๋ค.
๋์ด์ผ ๋ณด๋ฉด ์ด๊ฒ์ ๋๋๋๋ก ๋ถ๋ช ํ ๋์์ธ ๋ชฉํ์ ๋๋ค.
์๋
ํ์ธ์,
์ฐ๋ฆฌ์ ๊ฒฝ์ฐ ์ด๊ธฐ ๋ฆด๋ฆฌ์ค๋ ์ค์ ๋ก ์คํจํ์ง ์์์ต๋๋ค. ์ค์น ์๊ฐ ์ด๊ณผ๊ฐ ๊ฒฝ๊ณผํ์ ๋ ์์ฉ ํ๋ก๊ทธ๋จ์ด ์์ ํ ์๋ํ์ง ์์๊ฑฐ๋ ์์ ๋ ๋ค๋ฅธ ์ด์ํ ๋ฌธ์ ๋๋ฌธ์
๋๋ค. ์ด์จ๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ์๋ฒฝํ๊ฒ ์คํ๋๊ณ ์์ผ๋ฏ๋ก ์ญ์ ํด์ผํ๋ ๊ฒ์ ์ฐ๋ฆฌ์๊ฒ ๋ฌธ์ ๊ฐ ๋ ๊ฒ์
๋๋ค (๋ํ ์ ๊ฑฐ ๋ ์ผ๋ถ ์๊ตฌ ์ ์ฅ์๊ฐ ์ฐ๊ฒฐ๋์ด ์์ต๋๋ค !!).
์ด๊ธฐ ๋ฆด๋ฆฌ์ค๊ฐ '๋ช ๋ฐฑํ๊ฒ ์คํจ'ํ์ง๋ง ์ค์ ๋ก๋ ๊ด์ฐฎ์ ๊ฒฝ์ฐ ์ฐจํธ๋ฅผ ๋ฐฐํฌํ๋ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ์์ต๋๊น?
๊ทธ๋ ๋ค๋ฉด upgrade --force
์ด ๋๋ฌด ๊ฐ๋ ฅํ๋ค๋ ๊ฒฐ๋ก ์ด ๋์ต๋๋ค. ์ฆ, delete + replace + retry_upgrade๊ฐ ์
๊ทธ๋ ์ด๋ ์คํจ์ ๋ํ ์ฌ๋ฐ๋ฅธ ํด๊ฒฐ์ฑ
์ด ์๋ ๋๊ฐ ์์ต๋๋ค.
install
& upgrade
๋ฅผ deploy
๋ช
๋ น์ผ๋ก ๋ณํฉํ๋ ์์ด๋์ด๋ฅผ ์ถ์ ํ๋ ๋ณ๋์ ๋ฌธ์ ๊ฐ ์์ต๋๊น?
๋ด๊ฐ @dcow์ ๋ํด ์๋ ๊ฒ์ ์๋๋๋ค. helm upgrade --install
๋ช
๋ น์ ๋ํ ์ฌ์ฉ ์ฌ๋ก๋ ๋ฌด์์
๋๊น?
https://github.com/helm/helm/issues/3353#issuecomment -362497951
์ค์น ๋ฐ ์ ๊ทธ๋ ์ด๋ ๋ช ๋ น์ด ํ์ํ ์ด์ ๋ฅผ ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค. ์ ๋ upgrade --install ๋ช ๋ น ๋ง ์ฌ์ฉํ๋ฉฐ ๋ง์ ์ฌ๋๋ค์ด ๋์ผํ ์์ ์ ์ํํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ์ ๊ทธ๋ ์ด๋ --install์ ์ํํ๊ณ ์คํจํ ์คํ์ผ๋ก ๋์ด ๊ฐ์ง ์๋ ๋ช ๋ น ํ๋๋ง ํ์ํฉ๋๋ค. upgrade --install์ ์ด๋ฆ์ ๋ณ๊ฒฝํ์ฌ ๋ฐฐํฌํ๊ณ ์ง์ ์ผ๋ก ๋ฉฑ ๋ฑ์ฑ์ ์ ์งํ๊ณ ๋๋จธ์ง ๋ ๊ฐ๋ ๋ฒ๋ฆด ์ ์์ต๋๊น?
...
๊ณผ
https://github.com/helm/helm/issues/3353#issuecomment -469109854
ํ์ฌ helm์ ์ฌ์ฉํ๋ฉด ํ์ฌ ์ํ๋ฅผ ๊ฒ์ฌํ์ง ์๊ณ ์ฌ์ฉํ helm ๋ช ๋ น + ์ต์ ์กฐํฉ์ ์ ์ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฃผ์ด์ง helm ๋ช ๋ น์ ๊ฒฝ์ฐ ํ์ฌ ์ํ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๊ธฐ ๋๋ฌธ์ ๋ฌด์์ ์ป์์ง ์ ์ ์์ต๋๋ค. ๊ทธ๊ฑด ์ ๋ง ์ ์ธ์ ํฌ๋ง ์ํ๊ฐ ์๋์ผ ๊ฟ ๊ตฌ๋ฆ zzz smile
helm 3์์๋ ์ ์ฌ์ ์ผ๋ก ์ค์น / ์ ๊ทธ๋ ์ด๋ / --replace / --upgrade / --force๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ์ํ๋ ์ํ๋ฅผ ๋ฌ์ฑํ๊ฑฐ๋ ์ํ๋ฅผ ๋ณ๊ฒฝํ์ง ์๋ ๋ฉฑ ๋ฑ์ฑ helm ๋ฐฐํฌ๋ก ๋ชจ๋ ๋์ฒด ํ ์ ์์ต๋๋ค.
...
๋๋ ์ผ๋ฐ์ ์ผ๋ก helm์ด kubectl apply
์ฒ๋ผ ์๋ํด์ผํ๋ค๋ ๋ฐ ๋์ํ๊ณ ํด๋ฌ์คํฐ ์ํ์ ๋ฐ๋ผ ๋ค๋ฅธ ์ ํ์ ๋ช
๋ น์ ์คํํ๋ ๋์ ์ํ๋ ํ์ค์ ๋ฌ์ฑํ๋ ค๊ณ ํฉ๋๋ค. ์กด์ฌํ๋ ๊ฒฝ์ฐ ์ ์ฉ ๋ฌธ์ ์ ๋ํ ์ง์์ ์ถ๊ฐํ๊ฑฐ๋ ์ ์ด๋ deploy
์ด ํ์ฌ ๊ตฌํ๋์ง ์์๊ณ ์ฐ๋ฆฌ๋ 3.2๋ฅผ ์ด์ํ๊ณ ์๊ธฐ ๋๋ฌธ์ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ๋ฌด์์ธ์ง ํ์
ํ๋ ค๊ณ ํ์ต๋๋ค.
@dcow ์ข์, ๋น์ ์ ๋น์ ์ ์ ์์ ๋ฌธ์ ๋ฅผ ๋ง๋ค๊ณ ์ถ์ต๋๊น?
@hickeyma ์๋ฃ https://github.com/helm/helm/issues/8415!
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
์ ์ ๋ ์์ ์ฌํญ์ ์๋ํ ๋ ์์คํ ์์ ์์ ํ ์ ์งํ ์์๋ ๊ฒ ๊ฐ์ต๋๋ค. helm์ ํธ์ถํ๋ ๋ชจ๋ ๊ฒ์ด "์ฒซ ๋ฒ์งธ ๋ฆด๋ฆฌ์ค๊ฐ ์คํจํ๋ฉด ์ญ์ ํ๊ณ ๋ค์ ์๋"์ ๋ํด ์์์ผํ๋ ๊ฒ์ ์๋๋๋ค. ์ฒซ์งธ, ๋ด ๋๊ตฌ์ ๋๋ถ๋ถ์ ์ค์น์ธ์ง ์ ๊ทธ๋ ์ด๋์ธ์ง ์ธ์ํ์ง ๋ชปํ๊ฑฐ๋ ์ฒ์์ธ์ง 100 ๋ฒ์ธ์ง ๊ฑฐ์ ํญ์
helm upgrade --install
์ ๋๋ค.