【へるむ】
Helm とは?
💡 KubernetesのYAMI地獄を救う「アプリのパッケージマネージャー」
📌 このページのポイント
- 複数のKubernetesマニフェストをチャートとしてパッケージ化する
- helm installコマンド一つで複雑なアプリをデプロイできる
- values.yamlで環境ごとの設定を切り替えられる
- Artifact Hubで公開チャートを探して使えるnpmのような存在
HelmってKubernetesがあれば不要じゃないの?
KubernetesはYAMLファイルで設定するんだけど、本番級のアプリだとDeployment・Service・ConfigMap・Ingress・HPA…と何十個ものYAMLファイルが必要になる。Helmはそれをまとめて1つのパッケージ(チャート)にして、インストールや更新を一括でできるようにするんだよ。
開発環境と本番環境で設定を変えたいときはどうするの?
公開されているHelmチャートってそのまま使っていいの?
Artifact Hubにはnginx・PostgreSQL・Prometheusなどの定番チャートが公開されていて、そのまま使えることが多い。ただし設定のデフォルト値がセキュリティ的に甘いことがあるから、values.yamlをカスタマイズするのが大事だよ。
Helmのフック(pre-install・post-upgradeなど)って、失敗したらどうなるの?ロールバックはされるの?
まとめ:ざっくりこれだけ覚えればOK!
「Helm」って出てきたら「Kubernetesアプリをパッケージでまとめてデプロイするツールのことだな」と思えればだいたいOK!
📖 おまけ:英語の意味
「Helm」 = 舵・操舵装置
💬 KubernetesがギリシャW語で「舵取り」の意味だから、その「舵(Helm)」を操るツール、というシャレた命名だよ