新着: プロジェクトの最新情報を入手:TwitterMastodon

cert-manager の再インストール

場合によっては、cert-manager の完全なアンインストールと再インストールが必要になることがあります。例としては、非常に古い cert-manager バージョンを最新の状態にする必要がある場合で、推奨されているデフォルトのアップグレード戦略であるマイナーバージョンを一度に1つずつアップグレードすることが現実的でない場合などが挙げられます。

cert-manager の CustomResourceDefinition もアンインストールする場合、Certificate のような関連する cert-manager カスタムリソースが失われることになります。これに関連する主な懸念事項は、アプリケーションのダウンタイムと、X.509証明書を含む Secret が削除された場合に発生する可能性のある不必要な証明書の再発行です。cert-managerコントローラーで --enable-certificate-owner-ref フラグを使用すると、Secret を削除するかどうかを設定できます。このフラグが true に設定されている場合、各 Secret は、それが作成された Certificate へのオーナー参照を持ち、Certificate が削除されると、Secret はガベージコレクションされます。このフラグのデフォルト値は false です。Certificate が削除されて再適用されても、Secret がクラスターに残っている場合、新しく適用された Certificate は同じ Secret を取得でき、不必要にX.509証明書を再発行しないはずです。

アップグレードのためにアンインストールと再インストールを行う場合は、スキップした各バージョンのリリースノートをよく読んでください。

cert-manager (CRDを含む) のアンインストールと再インストールを検討する際に注意すべき点をいくつか示します。

  • --enable-certificate-owner-ref フラグが現在 true に設定されているか、以前に true に設定されていた可能性はありますか?以前のバグにより、Secret に追加されるオーナー参照は、--enable-certificate-owner-ref の値が true から false に変更されても削除されません。 cert-manager#4788 を参照してください。
  • 現在、証明書の発行が進行中ですか?もしそうなら、カスタムリソースが削除されると、進行状況は失われます。これにより、重複した発行が発生する可能性があります。
  • cert-manager カスタムリソースマニフェストを v1 API に変換する必要がありますか?cmctl convert コマンドを使用して変換できます。