Helm์ Kubernetes์ฉ ํจํค์ง ๋งค๋์ ๋ก, ์ฐจํธ(chart) ๊ธฐ๋ฐ ๋ฐฐํฌยท์ ๊ทธ๋ ์ด๋ยท๋กค๋ฐฑ์ ์ผ๊ด์ฑ ์๊ฒ ๊ด๋ฆฌํ ์ ์๋๋ก ์ค๊ณ๋ ๋๊ตฌ์ ๋๋ค. ์ด Cheat Sheet๋ Helm์ ๊ฐ๋ , ์ค์น ๋ฐฉ๋ฒ, ํต์ฌ ๋ช ๋ น์ด๋ฅผ ๋น ๋ฅด๊ฒ ํ์ ํ ์ ์๋๋ก ๊ตฌ์ฑ๋์์ต๋๋ค.
Helm์ Kubernetes ํด๋ฌ์คํฐ์์ ์ ํ๋ฆฌ์ผ์ด์
์ ํจํค์งยท๋ฐฐํฌยท๊ด๋ฆฌํ๋ ๋๊ตฌ์
๋๋ค.
Chart(ํ
ํ๋ฆฟ ๊ทธ๋ฃน) โ Release(๋ฐฐํฌ ์ธ์คํด์ค) โ Repository(์ฐจํธ ์ ์ฅ์) ํ๋ฆ์ ๊ธฐ๋ฐ์ผ๋ก ์ค์นยท์
๊ทธ๋ ์ด๋ยท๊ด๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
์์ฝ
์ด ๊ธ์ Helm์ ์ฒ์ ์ฌ์ฉํ๊ฑฐ๋ ๋น ๋ฅด๊ฒ ๋ณต์ตํ๋ ค๋ ์์ง๋์ด๋ฅผ ์ํ ์ค๋ฌด ์ค์ฌ Cheat Sheet์ ๋๋ค. Helm์ **๊ธฐ๋ณธ ๊ฐ๋ (ChartยทReleaseยทRepository)**๋ถํฐ ์ค์น ๋ฐฉ๋ฒ, **๊ฐ์ฅ ์์ฃผ ์ฐ์ด๋ ํต์ฌ ๋ช ๋ น์ด(install, upgrade, rollback, repo ๊ด๋ฆฌ)**๊น์ง๋ฅผ ํ ๋ฒ์ ์ ๋ฆฌํด,
Kubernetes ์ ํ๋ฆฌ์ผ์ด์
์ ๋ฐ๋ณต ๊ฐ๋ฅํ๊ณ ์ผ๊ด๋๊ฒ ๋ฐฐํฌยท์ด์ํ๊ธฐ ์ํ ์ต์ ์ง์์ ๋น ๋ฅด๊ฒ ์ต๋ํ๋ ๋ฐ ๋ชฉ์ ์ด ์์ต๋๋ค.
๋์: Helm ์
๋ฌธ์ ๋ฐ ์ค๋ฌด ๋ณต์ต ํ์์
๋ฒ์: ๊ฐ๋
โ ์ค์น โ ํ์ ๋ช
๋ น์ด
๋ชฉํ: Helm์ โ์ ์ฐ๋์งโ๋ณด๋ค โ๋ฐ๋ก ์ฐ๊ธฐโ์ ์ด์
Helm Cheat Sheet ํต์ฌ ๋ด์ฉ
์๋๋ Helm Cheat Sheet: Everything You Need to Know to Start Using Helm์ ์ ์ฒด ํต์ฌ ๋ด์ฉ์ ๊ตฌ์กฐ์ ์ผ๋ก ์ ๋ฆฌํ ์์ฝ์ ๋๋ค.
1)
Helm์ ์ ์ ๋ฐ ํต์ฌ ๊ฐ๋
-
Helm์ด๋?
Kubernetes๋ฅผ ์ํ ํจํค์ง ๋งค๋์ ๋ก, ๋ณต์กํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ยทํจํค์งยท๋ฐฐํฌยท์ ๊ทธ๋ ์ด๋ยท๋กค๋ฐฑํ ์ ์๊ฒ ํ๋ ๋๊ตฌ. ์๋ฒ ์ฌ์ด๋ ๊ตฌ์ฑ์์๊ฐ ์์ด CLI๋ก ์๋ํจ. -
ํต์ฌ ๊ตฌ์ฑ ์์
- Chart: Kubernetes ๋ฆฌ์์ค ์ ์ ๋ฐ ํ ํ๋ฆฟ ๋ฌถ์.
- Release: ์ฐจํธ๊ฐ ํด๋ฌ์คํฐ์ ๋ฐฐํฌ๋ ์ธ์คํด์ค.
- Repository: ์ฐจํธ ์ ์ฅยท๊ณต์ ์ฅ์.
- Values: ์ค์น ์ ์ฌ์ฉ์ ์ค์ ๊ฐ ์ ์ฉ
-
๊ธฐ๋ฅ
- ์ค์นยท์ ๊ทธ๋ ์ด๋ยท๋กค๋ฐฑ
- ๋ฒ์ ๊ด๋ฆฌ ๋ฐ ์ผ๊ด๋ ํ๊ฒฝ ๊ตฌ์ฑ
- ์์กด์ฑ ์ ์ ๋ฐ ํ ํ๋ ์ดํ ์ ์ฉ
2)
์ค์น & ์ด๊ธฐ ์ค์
-
Helm ์ค์น ๋ฐฉ๋ฒ
- ๋ฐ์ด๋๋ฆฌ ์ง์ ๋ค์ด๋ก๋
- ํ๋ซํผ ํจํค์ง ๋งค๋์ (macOS Homebrew, Windows Chocolatey ๋ฑ)
- ์คํฌ๋ฆฝํธ ์ค์น
- ์์ค ๋น๋ ์ค์น ๊ฐ๋ฅ
-
์ค์น ํ์ธ
helm version
3)
Chart, Release & Repository ๊ฐ๋
์์ธ
- Chart ๊ตฌ์กฐ
- ๋ฉํ๋ฐ์ดํฐ(
Chart.yaml), ๊ธฐ๋ณธ๊ฐ(values.yaml), ํ ํ๋ฆฟ ๋๋ ํ ๋ฆฌ ๋ฑ์ผ๋ก ๊ตฌ์ฑ๋จ.
- ๋ฉํ๋ฐ์ดํฐ(
- Release
- ํ๋์ ์ค์น ์ธ์คํด์ค์ด๋ฉฐ ๋์ผ ์ฐจํธ๋ฅผ ์ฌ๋ฌ Release๋ก ๋ฐฐํฌ ๊ฐ๋ฅ.
- Repository
- ์ธ๋ถ ๋๋ ๋ด๋ถ ์ ์ฅ์์์ ์ฐจํธ๋ฅผ ๊ฐ์ ธ์ค๊ณ ๊ด๋ฆฌํจ.
4)
ํ์ Helm ๋ช
๋ น์ด Cheat Sheet
๋ฐฐํฌ/์
๊ทธ๋ ์ด๋/๋กค๋ฐฑ
| ๋ช ๋ น์ด | ์ค๋ช |
|---|---|
helm install <name> <chart> |
์๋ก์ด ๋ฆด๋ฆฌ์ฆ ์ค์น |
helm upgrade <name> <chart> |
๋ฆด๋ฆฌ์ฆ ์ ๊ทธ๋ ์ด๋ |
helm upgrade --install <name> <chart> |
๋ฆด๋ฆฌ์ฆ ์์ผ๋ฉด ์ค์น, ์์ผ๋ฉด ์ ๊ทธ๋ ์ด๋ |
helm rollback <name> <revision> |
์ง์ revision์ผ๋ก ๋กค๋ฐฑ |
๋ฆด๋ฆฌ์ฆ & ์ ์ฅ์ ๊ด๋ฆฌ
| ๋ช ๋ น์ด | ์ค๋ช |
|---|---|
helm list |
๋ฆด๋ฆฌ์ฆ ๋ชฉ๋ก |
helm uninstall <name> |
๋ฆด๋ฆฌ์ฆ ์ ๊ฑฐ |
helm repo add <name> <url> |
์ ์ฅ์ ์ถ๊ฐ |
helm repo update |
์ ์ฅ์ ์ ๋ฐ์ดํธ |
helm repo list |
์ ์ฅ์ ๋ชฉ๋ก |
helm search repo <term> |
์ ์ฅ์ ๋ด ์ฐจํธ ๊ฒ์ |
helm search hub <term> |
Artifact Hub ์ ์ฒด ๊ฒ์ |
์กฐํ ๋ฐ ์ค์
| ๋ช ๋ น์ด | ์ค๋ช |
|---|---|
helm show values <chart> |
๊ฐ ํ ํ๋ฆฟ ๋ณด๊ธฐ |
helm pull <chart> --untar |
์ฐจํธ ์์นด์ด๋ธ ๋ค์ด๋ก๋ ๋ฐ ์์ถ ํด์ |
helm env |
Helm ํ๊ฒฝ ๋ณ์ ํ์ธ |
5)
๊ณ ๊ธ ์ต์
๋ฐ ํ์ฉ
- Custom Values ์ ์ฉ
helm install <name> <chart> --values custom-values.yaml
๋๋
helm install <name> <chart> --set key=value
- ํฌ๋ฆ ํ๋ฌ๊ทธ์ธ
- Helm ๊ธฐ๋ฅ ํ์ฅ์ฉ ํ๋ฌ๊ทธ์ธ ์ค์น/๊ด๋ฆฌ ๊ฐ๋ฅ.
- ์: diff, secrets ๋ฑ. Faun
[์ถ์ฒ] Helm Cheat Sheet: Everything You Need to Know to Start Using Helm