
HelmはKubernetes向けのパッケージマネージャで、2015年にDeis社(後にMicrosoftが買収)が公開、現在はCNCFが管理するOSSです。「複数のYAMLマニフェストをまとめた Chart 単位で管理・配布・インストールする」設計で、Kubernetesの複雑な構成管理を大幅に楽にする道具として、ほぼ必須のエコシステムになっています。現在はHelm 3が標準で、Tillerサーバ廃止によりクライアントだけで動く軽量さも特徴です。
この記事の目次
- Helmの中核概念
- Helmが解決する問題
- Helmの代表的な利用シーン
- Helmと類似ツール
- まとめ
Helmの中核概念

Helmが扱う「Chart」は、KubernetesのDeployment・Service・ConfigMapなどのマニフェストをテンプレート化したものです。values.yaml で環境別の値を上書きし、helm install 一発でクラスタへ展開できます。
Releaseは「クラスタ上にインストールされたChartの実体」で、helm upgrade/rollback で世代管理できます。Repository は Chart を配布する場所で、Bitnami や公式リポジトリには PostgreSQL、Redis、Nginx Ingress 等の Chart が揃っています。
Helmが解決する問題

Kubernetesで多少複雑なアプリを動かそうとすると、Deployment・Service・ConfigMap・Secret・Ingress・HPAなど大量のYAMLが必要になります。Helmはこれらをまとめて Chart として管理し、開発/ステージング/本番で --values=prod.yaml のように値だけ差し替えて使い回せます。
「同じアプリをマルチクラスタ・マルチ環境にデプロイする」というKubernetes運用の典型パターンを、Helm が現実的なものにしました。結果として、K8sアプリの配布形式としてもデファクトになっています。
Helmの代表的な利用シーン

Helmの定番ユースケースは外部OSSのインストール。Prometheus、Grafana、Cert-Manager、Ingress-Nginx等、ほとんどのK8s OSSは公式Chartを提供しており、helm install prometheus prometheus-community/kube-prometheus-stack 一発で構築が始まります。
自社アプリのデプロイにも使われ、CI/CDパイプライン(GitHub Actions、GitLab CI、Argoなど)と連動して Helm Chart→K8sクラスタへ自動デプロイする構成は多くの企業で採用されています。
Helmと類似ツール

Helmと並ぶ選択肢にはKustomize(Kubernetes本体に同梱、差分管理特化)があり、最近は Argo CD などのGitOpsツールと組み合わせる構成も増えています。「Helm Chart のテンプレートは強力だがGo Templateの記述が辛い」という意見もあり、Kustomize派・Helm派の好みが分かれます。
実務では「OSSの導入はHelm、自社アプリのデプロイはKustomize+Argo CD」というハイブリッド構成も多く、どちらか一方ではなく目的に応じて使い分けるのが現代的なアプローチです。
まとめ
HelmはKubernetes時代のパッケージマネージャとして欠かせない存在で、OSSの配布・自社アプリのデプロイ双方で広く使われています。Kubernetesで本番運用に関わるなら、Helmを使いこなすスキルは現代エンジニアの基礎教養になりました。
※本記事はIT用語辞典の手書きドラフトです。公開前に最新情報・出典を確認のうえ加筆修正してください。

コメント