1.2. Web コンソールを使用した Operator アップグレードのロールバック

OpenShift Container Platform Web コンソールを使用して Operator バージョンをロールバックできます。

前提条件

  • cluster-admin パーミッションを持つアカウントを使用して OpenShift Container Platform クラスター Web コンソールにアクセスできる。

手順

  1. OperatorsInstalled Operators ページに移動します。
  2. RHACS Operator を検索およびクリックします。
  3. Operator Details ページで、Actions リストから Uninstall Operator を選択します。このアクションの後には、Operator は実行を停止し、更新を受信しなくなります。
  4. 次のオプションのいずれかを選択して、ロールバックする前のバージョンを決定します。

    • 現在の Central インスタンスが実行中の場合は、ターミナルウィンドウから次のコマンドを実行して、RHACS API をクエリーしてロールバックバージョンを取得できます。

      $ curl -k -s -u <user>:<password> https://<central hostname>/v1/centralhealth/upgradestatus | jq -r .upgradeStatus.forceRollbackTo
    • 次の手順を実行して、Pod を作成し、以前のバージョンを解凍できます。

      注記

      この手順は、rocksdb データベースがインストールされている RHACS リリース 3.74 以前でのみ使用できます。

      1. WorkloadsDeploymentscentral に移動します。
      2. Deployment details で、Pod 数の横にある下矢印をクリックして Pod をスケールダウンします。
      3. WorkloadsPodsCreate Pod に移動し、次の例に示すように Pod 仕様の内容をエディターに貼り付けます。

        apiVersion: v1
        kind: Pod
        metadata:
          name: get-previous-db-version
        spec:
          containers:
          - name: get-previous-db-version
            image: registry.redhat.io/advanced-cluster-security/rhacs-main-rhel8:<rollback version>
            command:
            - sh
            args:
            - '-c'
            - "cat /var/lib/stackrox/.previous/migration_version.yaml | grep '^image:' | cut -f 2 -d : | tr -d ' '"
            volumeMounts:
            - name: stackrox-db
              mountPath: /var/lib/stackrox
          volumes:
          - name: stackrox-db
            persistentVolumeClaim:
              claimName: stackrox-db
      4. Create をクリックします。
      5. Pod が作成されたら、Logs タブをクリックしてバージョン文字列を取得します。
  5. 次の手順を実行して、ロールバック設定を更新します。

    1. WorkloadsConfigMapscentral-config に移動し、Actions リストから Edit ConfigMap を選択します。
    2. central-config.yaml キーの値で、forceRollbackVersion 行を見つけます。
    3. none3.73.3 に置き換えて、ファイルを保存します。
  6. 次の手順を実行して、Central を以前のバージョンに更新します。

    1. WorkloadsDeploymentscentral に移動し、Actions リストから Edit Deployment を選択します。
    2. イメージ名を更新し、変更を保存します。

検証

  1. Central Pod が起動し、ready ステータスになっていることを確認します。Pod がクラッシュした場合は、ログをチェックして、バックアップが復元されたかどうかを確認します。成功した場合のログメッセージは、次の例のように表示されます。

    Clone to Migrate ".previous", ""
  2. ロールバックされたチャネルに Operator を再インストールします。たとえば、3.71.3rhacs-3.71 チャネルにインストールされます。