Hook の削除ポリシー
成功後に Hook リソースをクリーンアップします。
「Hook の削除ポリシー」はCoddyKit上の無料Helm Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはHelm Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Helm Academyコースには全4レッスンが含まれています。
フックは残り続ける
デフォルトでは、フックのリソースは実行後もクラスターに残ります。クリーンアップしないと、古いマイグレーション用JobやPodがリリースのたびに蓄積します。
削除ポリシー
helm.sh/hook-delete-policyアノテーションでクリーンアップを制御します。これは、Helmが作成したフックのリソースをいつ削除するかを正確に指定します。
annotations:
"helm.sh/hook-delete-policy": hook-succeeded成功時に削除する
最も一般的な選択肢はhook-succeededです。Helmはフックが正常に完了した直後にそのリソースを削除し、namespaceを整理された状態に保ちます。
"helm.sh/hook-delete-policy": hook-succeededデバッグのために失敗を残す
hook-succeededを指定すると、失敗したフックは意図的に残されます。手動でクリーンアップする前にログを読んで、マイグレーションが失敗した理由を確認できます。🔍
失敗時に削除する
反対のポリシーはhook-failedです。Helmはフックが失敗した場合にのみリソースを削除します。壊れた状態のフックを残したくない場合に適しています。
"helm.sh/hook-delete-policy": hook-failed次の実行前に削除する
3つ目の選択肢はbefore-hook-creationです。Helmは新しいフックを作成する直前に以前のインスタンスを削除し、変更できない名前による衝突を回避します。
"helm.sh/hook-delete-policy": before-hook-creationデフォルトの動作
ポリシーをまったく設定しない場合、Helmはデフォルトでbefore-hook-creationを使用します。次の実行で新しいフックを作成する直前に、古いフックが削除されます。
ポリシーを組み合わせる
ポリシーはカンマ区切りのリストで組み合わせられます。before-hook-creationとhook-succeededを組み合わせると、古い実行結果を消去し、成功するたびにクリーンアップできます。
"helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded変更できないJobを解決する
Jobのspecは作成後に変更できません。before-hook-creationは古いJobを先に削除することでこの問題を回避し、アップグレードごとに新しいJobを作成できるようにします。
目的に応じて選ぶ
目的に合ったポリシーを選んでください。成功時にクリーンアップするか、失敗の証拠を残すか、常に新しく開始するかを指定できます。各アノテーションは、削除するタイミングを示すものです。
クリーンアップはHelmに任せる
これらのポリシーが適用されるのは、Helmがフックとして作成したリソースだけです。Helmがリソースを追跡して削除するため、リリースのたびに手動でkubectl deleteを実行する必要がありません。
確認問題
マイグレーション用Jobを、正常に終了したら自動的に削除したいとします。
まとめ
hook-delete-policyは、Helmがフックを削除するタイミングを、成功時、失敗時、または次の作成前のいずれかから選択します。デフォルトはbefore-hook-creationです。🧹
よくある質問
「Hook の削除ポリシー」レッスンは無料ですか?
はい。「Hook の削除ポリシー」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Helm Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Helm Academyコースには全4レッスンが含まれています。
「Hook の削除ポリシー」で何を学びますか?
成功後に Hook リソースをクリーンアップします。 ブラウザで直接実行するハンズオンコードでHelm Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Helm Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのHelm Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「Hook の削除ポリシー」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このHelm Academyレッスンでコードを書いて実行できますか?
はい。すべてのHelm Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。