Skip to main content

Helmチャートのアップグレード

Contrastエージェントオペレータは、セマンティックバージョニングに従います。

  • メジャーバージョンには、オペレーターAPIへの重大な変更が含まれる場合があります。メジャーバージョンのアップグレードでは、マニフェストが変更されていたり、既存のカスタムリソース定義(CRD)の更新が必要な場合があるため注意が必要です。

  • マイナーバージョンには新機能が含まれていますが、完全な後方互換性があり既存のクラスタに適用しても安全です。新しい機能を使用するために、オプションのマニフェストの変更が必要な場合があります。

  • パッチにはセキュリティおよびバグフィックスが含まれており、完全な後方互換性があるため既存のクラスタに安全に適用することができます。マニフェストの変更は必要ありません。

Contrastでは、以下の形式でイメージタグを公開しています。

:2
:2.1
:2.1.10
:latest

ここで:2は、2.X.Xセマンティックバージョンブランチの最新リリースを表します。アップグレードを簡素化するために、リスク許容度に基づいて接頭辞のバージョンを使用することもできます(imagePullPolicyAlwaysに設定されていることを確認してください)。

注記

Contrastエージェントオペレータは、複数のレプリカとリーダーリースを使用する可用性の高い構成をサポートしていますが、すべてのオペレータインスタンスが同じバージョンを長期間実行しているデプロイメントのみをサポートします。imagePullPolicyオプションを使用して、複数のインスタンスを同じバージョンに維持しないでください。自動アップグレードが必要な場合は、Keelなどのオペレータを使用して安全にアップグレードすることをお勧めします。

マイナーおよびパッチアップグレード

新しいバージョンへのアップグレードは、新しいクラスタへのインストールと同じ手順で行います。クラスタ管理者として実行し、helm upgradeを使用してhelmチャートを適用します。

helm repo update contrast
helm upgrade --namespace contrast-agent-operator -f contrast-agent-operator.yaml contrast-agent-operator contrast/contrast-agent-operator

メジャーアップグレード

メジャーアップグレードには、マニフェストの追加変更が含まれる場合があります。CRDをkubectlで置き換えると、既存の全てのCustomResources(さらには任意のクラスター構成も)は保持されます。

helm repo update contrast
kubectl replace -f https://github.com/Contrast-Security-OSS/agent-operator/releases/latest/download/crds.yaml
helm upgrade --namespace contrast-agent-operator -f contrast-agent-operator.yaml contrast-agent-operator contrast/contrast-agent-operator

ここでの一般的な手順はほとんどのメジャーアップグレードで有効ですが、メジャーアップグレードを確実に行うためにリリースノートに記載される移行手順がある場合には、その手順に従ってください。

注記

補足情報:

  • helm repo update contrastは、Helmチャートの新しいバージョンを取得します。

  • helm upgradeは、最新のHelmチャートをクラスタに適用します。

メジャーアップグレードの場合は、kubectl replace -f https://github.com/Contrast-Security-OSS/agent-operator/releases/latest/download/crds.yamlも実行する必要があります。この追加手順は、HelmがCRDを処理する方法に制限があるために必要です。詳細については、icon-external-link.svgHelmチャートのドキュメントを参照して下さい。

関連項目