[k8s] Kustomization
Kustomize๋ k8s์ ๋ด์ฅ ๋๊ตฌ ์ค ํ๋๋ค.
์ฌ๋ฌ๊ฐ์ yaml ๋ฆฌ์์ค๋ค์ ๊ทธ๋ฃนํํด์ ๊ด๋ฆฌํ๋ ๋ฐ์ ์ ์ฉํ๋ค. ๊ทธ๋ฆฌ๊ณ ์ฝ๊ฐ์ ํ ํ๋ฆฟ ๊ธฐ๋ฅ๋ ์ ๊ณตํ๋ค. ์ผ๋ถ ๊ฐ์ ๊ฐ๊ฐ์ ๋ฆฌ์์ค์ ์ฃผ์ ํ ์ ์๋ค.
์๋๋ ์๋ํํฐ์์ง๋ง 1.14๋ถํฐ ๋ด์ฅ ๋๊ตฌ๋ก ๋ค์ด์๋ค.
๊ธฐ๋ณธ ๊ตฌ์กฐ
kustomize๋ ํด๋ ๊ธฐ๋ฐ์ผ๋ก ๋ฆฌ์์ค๋ฅผ ๋ฌถ์ด์ ๊ด๋ฆฌํ๋ค.
kustomize ๋ชจ๋ ํด๋์๋ ๋ฐ๋์ ํ๋์ kustomization.yaml ํ์ผ์ด ์์ด์ผ ํ๋ค. ์ด๊ฒ ๊ฐ๋ณ ๋๋ ํ ๋ฆฌ์ ๋ฆฌ์์ค ๋ผ์ฐํ ๋ฐ ๊ด๋ฆฌ๋ฅผ ์ฑ ์์ง๋ค.


๋ง์ฝ ์ด 2๊ฐ์ ๋ฆฌ์์ค๋ฅผ ํ๋์ ๋ชจ๋์ ๋ฌถ๊ณ ์ถ๋ค๋ฉด
๊ฐ์ ๊ฒฝ๋ก์ ์๋ kustomization.yaml ํ์ผ์ ์์ ๊ฐ์ด resources๋ก ๋ฌถ์ด์ฃผ๋ฉด ๋๋ค.
๊ทธ๋ฆฌ๊ณ commonLabels ๊ฐ์ ์ผ๋ถ ์ต์
์ ์ฌ์ฉํ๋ฉด ํฌํจ๋ ๋ฆฌ์์ค๋ค์ ์ถ๊ฐ์ ์ธ ๊ฐ์ ์ฝ์
ํ ์ ์๋ค.
kustomize ๊ตฌ์ฒดํ
kustomize๋ ์ฝ๊ฐ์ ํ
ํ๋ฆฟ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค๊ณ ์์๋ค.
์ด๊ฒ๋ ๊ฒฐ๊ตญ ์ต์ข
์ ์ผ๋ก๋ yaml๋ก ๋ฌถ์ด์ k8s์ ๋์ง๋ ๊ฑฐ๋ฆฌ์, ๋ณํ ๊ณผ์ ์ ๊ฑฐ์น๋ค.
๋ณํ ๊ณผ์ ์ ๊ฑฐ์น ์ต์ข ๊ฒฐ๊ณผ๋ฌผ์ ๋ณด์ฌ์ฃผ๋๊ฒ ์ด ๋ช ๋ น์ด๋ค.
kubectl kustomize ๋๋ ํ ๋ฆฌ
์ด๋ฐ ์์ผ๋ก ๋ฌ๋ค.
๋ ์ด๋ธ๋ ์ ๋ค์ด๊ฐ๊ฑธ ๋ณผ ์ ์๋ค.
kustomize ๋ฐฐํฌ
์ค์ ๋ก ์ ๊ฑธ ๋์ฐ๋ ค๋ฉด, apply์ -k ํ๋๊ทธ์ ํจ๊ป ๋๋ ํฐ๋ฆฌ ๊ฒฝ๋ก๋ฅผ ์ฃผ๋ฉด ๋๋ค.
kubectl apply -k ๋๋ ํ ๋ฆฌ

๊ทธ๋ผ ๊ทธ๋๋ก ๋ค ์ ๋ฐ ๊ฒ์ด๋ค.
ํ ํ๋ฆฟ ๊ธฐ๋ฅ
์๋ฒฝํ์ง ์์ง๋ง ์ฌ์ํ ๊ฒ๋ค์ ๋ํด์๋ ํ ํ๋ฆฟ ๊ตฌ๋ฌธ์ ์ ๊ณตํ๋ค.
๋ฐฉ๊ธ ์ฌ์ฉํ๋ commonLabels๋ฅผ ํฌํจํด์ ๋ชจ๋ ๋ฆฌ์์ค์ ๋ํด์ ๋ญ๊ฐ ์์ ํ๊ฑฐ๋ ์ถ๊ฐํ๋๊ฒ ์๋ค.
์ ์ฒด ๋ชฉ๋ก์ ๋งํฌ๋ฅผ ์ฐธ์กฐํ๋ค.
https://kubernetes.io/ko/docs/tasks/manage-kubernetes-objects/kustomization/#kustomize-%EA%B8%B0%EB%8A%A5-%EB%A6%AC%EC%8A%A4%ED%8A%B8
์ฐธ์กฐ
https://kubernetes.io/ko/docs/tasks/manage-kubernetes-objects/kustomization/