helm-release-management について
Helmリリースの日常的な運用手順をまとめたスキルです。Kubernetesへのデプロイを担当する開発者や運用者向けに、インストール、アップグレード、アンインストール、状態確認、履歴や一覧の確認を扱います。
主な機能
- 01Helmリリースのインストールと設定
- 02リリースのアップグレードと値の上書き管理
- 03履歴を保持したリリースのアンインストール
- 04名前空間ごとのリリース一覧
- 05状態、リソース、マニフェスト、値の確認
- 06リリースのリビジョン履歴を表示
活用シーン
- 01指定した名前空間にHelm chartをデプロイ
- 02chartのバージョン更新や設定値の変更
- 03リリース状態とデプロイ済みリソースの確認
- 04複数の名前空間にまたがるリリースと履歴の確認
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill helm-release-managementインストール後、Claude Code で/helm-release-managementを入力して読み込まれたか確認します。
同梱ファイルREFERENCE.md
詳細
Helm リリース管理
インストール、アップグレード、アンインストール、リリース追跡など、日常的な Helm リリース運用に関する包括的なガイダンスです。
このスキルを使用する場面
| このスキルを使用する場面... | 代わりに を使用する場面... |
|---|---|
helm install、helm upgrade、helm uninstall を実行する場合、またはリリースを一覧表示する場合 | アップグレードが失敗し、ロールバックや停止状態からの復旧が必要な場合は、helm-release-recovery を使用します |
| リリースのステータスや履歴を確認する場合、または新しいチャートバージョンをロールアウトする場合 | 環境間での値の設定が主な目的の場合は、helm-values-management を使用します |
| 既存のチャートをステージングから本番環境へ昇格させる場合 | インストールするチャートを作成する場合は、helm-chart-development を使用します |
使用する場面
次の場合、このスキルを自動的に使用します。
- ユーザーが Helm チャートのデプロイまたはインストールを依頼した場合
- ユーザーが Helm リリースのアップグレードまたは更新に言及した場合
- ユーザーが名前空間をまたいでリリースを一覧表示または管理したい場合
- ユーザーがリリースの履歴やステータスを確認する必要がある場合
- ユーザーがリリースのアンインストールまたは削除を依頼した場合
リリースの基本操作
新しいリリースをインストールする
# Basic install
helm install <release-name> <chart> --namespace <namespace> --create-namespace
# Install with custom values
helm install myapp bitnami/nginx \
--namespace production \
--create-namespace \
--values values.yaml \
--set replicaCount=3
# Install with atomic rollback on failure
helm install myapp ./mychart \
--namespace staging \
--atomic \
--timeout 5m \
--wait
# Install from repository with specific version
helm install mydb bitnami/postgresql \
--namespace database \
--version 12.1.9 \
--values db-values.yaml
# Dry-run before actual install
helm install myapp ./chart \
--namespace prod \
--dry-run \
--debug
主なフラグ:
--namespace- 対象の名前空間(必ず明示的に指定してください)--create-namespace- 名前空間が存在しない場合に作成します--values/-f- 値ファイルを指定します--set- 個別の値を上書きします--atomic- 失敗時に自動的にロールバックします(推奨)--wait- リソースの準備が整うまで待機します--timeout- 待機する最大時間(デフォルトは 5m)--dry-run --debug- インストールせずにプレビューします
既存のリリースをアップグレードする
# Basic upgrade with new values
helm upgrade myapp ./mychart \
--namespace production \
--values values.yaml
# Upgrade with value overrides
helm upgrade myapp bitnami/nginx \
--namespace prod \
--reuse-values \
--set image.tag=1.21.0
# Upgrade with new chart version
helm upgrade mydb bitnami/postgresql \
--namespace database \
--version 12.2.0 \
--atomic \
--wait
# Install if not exists, upgrade if exists
helm upgrade --install myapp ./chart \
--namespace staging \
--create-namespace \
--values values.yaml
# Force upgrade (recreate resources)
helm upgrade myapp ./chart \
--namespace prod \
--force \
--recreate-pods
主なフラグ:
--reuse-values- 既存の値を再利用し、新しい値とマージします--reset-values- 既存の値を無視し、チャートのデフォルト値に戻します--install- リリースが存在しない場合にインストールします--force- リソースの更新を強制します(慎重に使用してください)--recreate-pods- 変更がなくても Pod を再作成します--cleanup-on-fail- アップグレード失敗時に新しいリソースを削除します
値の上書きの優先順位(低い順から高い順):
- チャートのデフォルト値(チャート内の
values.yaml) - 以前のリリースの値(
--reuse-valuesを指定した場合) - 親チャートの値
- ユーザーが指定した値ファイル(
-f values.yaml) - 個別の値の上書き(
--set key=value)
リリースをアンインストールする
# Basic uninstall
helm uninstall myapp --namespace production
# Uninstall but keep history (allows rollback)
helm uninstall myapp \
--namespace staging \
--keep-history
# Uninstall with timeout
helm uninstall myapp \
--namespace prod \
--timeout 10m \
--wait
リリースを一覧表示する
# List releases in namespace
helm list --namespace production
# List all releases across all namespaces
helm list --all-namespaces
# List with additional details
helm list \
--all-namespaces \
--output yaml \
--max 50
# List including uninstalled releases
helm list --namespace staging --uninstalled
# Filter releases by name pattern
helm list --filter '^my.*' --namespace prod
主なフラグ:
--all-namespaces/-A- すべての名前空間のリリースを一覧表示します--all- 失敗したリリースも含め、すべてのリリースを表示します--uninstalled- アンインストール済みのリリースを表示します--failed- 失敗したリリースのみを表示します--pending- 保留中のリリースを表示します--filter- リリース名で絞り込みます(正規表現)
リリース情報と履歴
リリースのステータスを確認する
# Get release status
helm status myapp --namespace production
# Show deployed resources
helm status myapp \
--namespace prod \
--show-resources
リリース履歴を表示する
# View revision history
helm history myapp --namespace production
# View detailed history
helm history myapp \
--namespace prod \
--output yaml \
--max 10
リリースを調査する
# Get deployed manifest
helm get manifest myapp --namespace production
# Get deployed values
helm get values myapp --namespace production
# Get all values (including defaults)
helm get values myapp --namespace prod --all
# Get release metadata
helm get metadata myapp --namespace production
# Get release notes
helm get notes myapp --namespace production
# Get everything
helm get all myapp --namespace production
新しいアプリケーションのデプロイ、設定の更新、チャートバージョンのアップグレード、複数環境へのデプロイなどの一般的なワークフロー、ベストプラクティス、トラブルシューティング、他のツールとの連携については、REFERENCE.md を参照してください。
エージェント向けの最適化
| コンテキスト | コマンド |
|---|---|
| リリースの一覧(構造化形式) | helm list -n <ns> -o json |
| リリース履歴(構造化形式) | helm history <release> -n <ns> --output json |
| リリースのステータス(構造化形式) | helm status <release> -n <ns> -o json |
| 値(構造化形式) | helm get values <release> -n <ns> -o json |
| 失敗したリリース | helm list -n <ns> --failed -o json |
関連スキル
- Helm デバッグ - デプロイ失敗のトラブルシューティング
- Helm 値管理 - 高度な値の設定
- Helm リリース復旧 - ロールバックと復旧の戦略
- ArgoCD CLI ログイン - ArgoCD との GitOps 連携
- Kubernetes 運用 - デプロイ済みリソースの管理
参考資料
コメント
Markdown 対応