Helm์ด๋?
Helm์ ์ฟ ๋ฒ๋คํฐ์ค ์คํ ์์ค ํจํค์ง ๋งค๋์ ์ด๋ค. k8s์ฉ์ผ๋ก ๊ตฌ์ถ๋ ์ํํธ์จ์ด๋ฅผ ์ ๊ณต, ๊ณต์ ๋ฐ ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ค.
Helm์ chart๋ผ๋ ํจํค์ง ํ์์ ์ฌ์ฉํ๋ค. ์ฌ๊ธฐ์ chart๋ k8s ๋ฆฌ์์ค ์งํฉ์ ์ค๋ช
ํ๋ ํ์ผ ๋ชจ์์ด๋ค.
๋จ์ผ ์ฐจํธ๋ฅผ ์ฌ์ฉํ์ฌ memcached ํ๋์ ๊ฐ์ ๋จ์ํ ๊ฒ ๋ถํฐ HTTP ์๋ฒ, ๋ฐ์ดํฐ๋ฒ ์ด์ค, ์บ์ ๋ฑ์ด ํฌํจ๋ ์ ์ฒด ์น ์ฑ ์คํ๊ณผ ๊ฐ์ ๋ณต์กํ ๊ฒ์ ๋ฐฐํฌํ ์ ์๋ค.
์ฐจํธ๋ ๋๋ ํ ๋ฆฌ ๋ด๋ถ์ ํ์ผ ๋ชจ์์ผ๋ก ๊ตฌ์ฑ๋๋ค. ๋๋ ํ ๋ฆฌ ์ด๋ฆ์ ์ฐจํธ์ ์ด๋ฆ์ด๋ค.
๋ฐ๋ผ์ wordpress๋ฅผ ์ค๋ช
ํ๋ ์ฐจํธ๋ wordpress ๋๋ ํ ๋ฆฌ์ ์ ์ฅ๋๋ค.
wordpress/
Chart.yaml
LICENSE
README.md
values.yaml
values.schema.json
charts/
crds/
templates/
templates/NOTES.txt
Plain Text
๋ณต์ฌ
โข
Chart.yaml : ์ฐจํธ ์์ฒด์ ์ด๋ฆ, ์ค๋ช
, ๋ฒ์ ์ ๋ณด
โข
values.yaml : ํ
ํ๋ฆฟ์์ ์ฌ์ฉํ ๊ธฐ๋ณธ ๊ฐ๋ค ์ ์๋์ด ์๋ค. ํ๊ฒฝ๋ณ๋ก ์ด ๊ฐ์ ๋ฎ์ด์์์ ์ฌ์ฌ์ฉ ํ ์ ์๋ค.
โข
templates/ : ์ค์ Kubernets ๋งค๋ํ์คํธ๊ฐ ์์ฑ๋๋ ํ
ํ๋ฆฟ๋ค์ด ๋ค์ด๊ฐ๋ค. deployment.yaml, service.yaml ๋ฑ ์ต์ํ ๋ฆฌ์์ค ํ
ํ๋ฆฟ์ด ๋ด๊ธด๋ค.
Helm์ Helm ์ฐจํธ๋ฅผ ์ ์ฅํ๊ณ ๊ณต์ ํ๋ ๋ฐ ์ฌ์ฉํ ์ ์๋ ์ฐจํธ ๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ์ง์ํ๋ค. ๋ถ์ฐํ ์ปค๋ฎค๋ํฐ Helm ์ฐจํธ ์ ์ฅ์๋
Artifact Hub์ ์๋ค.
Artifact Hub์ ์๋ค.Artifact Hub๋ ๊ณต๊ฐ์ ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅํ ๋ถ์ฐํ Helm ์ฐจํธ๋ฅผ ํฌํจํ์ฌ CNCFํ๋ก์ ํธ์ ๋ํ ํจํค์ง ๋ฐ ๊ตฌ์ฑ์ ์ฐพ๊ณ , ์ค์นํ๊ณ , ๊ฒ์ํ ์ ์๋ ์น ๊ธฐ๋ฐ ์์ฉ ํ๋ก๊ทธ๋จ์ด๋ค.
Helm Chart๋ฅผ ๊ตฌ์กฐ์ ์ผ๋ก ์ดํดํ๋ฉด, ์์ ๋ง์ ์ฐจํธ๋ฅผ ๋ง๋ค๊ฑฐ๋ ๊ธฐ์กด ์ฐจํธ๋ฅผ ์์ ํ ๋ ํจ์ฌ ์์ํด์ง๋ค.
Helm ์ค์น
Helm์ ์ค์นํ๊ธฐ ์ ์๋ ๋ค์๊ณผ ๊ฐ์ ์ ์ ์กฐ๊ฑด์ด ํ์ํ๋ค.
โข
Kubernetes ํด๋ฌ์คํฐ
โข
์ค์น์ ์ ์ฉํ ๋ณด์ ๊ตฌ์ฑ ๊ฒฐ์ (์๋ ๊ฒฝ์ฐ)
โข
Helm ์ค์น ๋ฐ ๊ตฌ์ฑ
Helm ์ฌ์ฉ๋ฒ
Helm์๋ 3๊ฐ์ง ์์๊ฐ ์๋ค.
โข
Chart๋ Helm Package ์ด๋ค. Kubernetes ํด๋ฌ์คํฐ ๋ด์์ application, tool, service๋ฅผ ์คํํ๋๋ฐ ํ์ํ ๋ชจ๋ ๋ฆฌ์์ค ์ ์๊ฐ ํฌํจ๋๋ค. apt์ dpkg, yum์ rpm๊ณผ ๊ฐ๋ค๊ณ ๋ณด๋ฉด ๋๋ค.
โข
Repository๋ Chart๋ฅผ ์์งํ๊ณ ๊ณต์ ํ ์ ์๋ ์ฅ์์ด๋ค. Perlโs CPAN archive์ Fedora Package Database์ ๋น์ทํ์ง๋ง, Chart๋ Kubernetes ํจํค์ง ์ฉ์ด์ด๋ค.
โข
Release๋ Kubernetes Cluster์์ ์คํ๋๋ ์ฐจํธ์ instance์ด๋ค. ํ๋์ Chart๋ ๋์ผํ ํด๋ฌ์คํฐ์ ์ฌ๋ฌ๋ฒ ์ค์นํ ์ ์๋ค. ๊ทธ๋ฆฌ๊ณ ์ค์น๋ ๋๋ง๋ค ์ Release๊ฐ ์์ฑ๋๋ค. Cluster์์ ๋ ๊ฐ์ Database๋ฅผ ์คํํ๋ ค๋ฉด ํด๋น Chart๋ฅผ ๋ ๋ฒ ์ค์นํ ์ ์๋ค.

