第1章 アップグレード前にデータを移行する
Red Hat Trusted Profile Analyzer (RHTPA) バージョン 1.2 のリリースでは、取り込まれた Software Bill of Materials (SBOM) および Vulnerability Exploitability eXchange (VEX) データ用の新しいスキーマが実装されました。アップグレードする前に、SBOM および VEX データのこの新しいスキーマへのデータ移行を実行するように、RHTPA 1.2 値ファイルを設定する必要があります。このデータ移行は、RHTPA バージョン 1.2 へのアップグレードプロセス中に行われます。
前提条件
- Red Hat OpenShift への RHTPA 1.1.2 のインストール。
- 新しい PostgreSQL データベース。
-
ocおよびhelmバイナリーがインストールされたワークステーション。
手順
ワークステーションでターミナルを開き、コマンドラインインターフェイスを使用して OpenShift にログインします。
構文
oc login --token=TOKEN --server=SERVER_URL_AND_PORT例
$ oc login --token=sha256~ZvFDBvoIYAbVECixS4-WmkN4RfnNd8Neh3y1WuiFPXC --server=https://example.com:6443注記OpenShift Web コンソールからコマンドラインで使用するログイントークンと URL を確認できます。OpenShift Web コンソールにログインします。ユーザー名をクリックし、Copy login command をクリックします。ユーザー名とパスワードをもう一度入力し、Display Token をクリックしてコマンドを表示します。
RHTPA プロジェクト namespace をエクスポートします。
構文
export NAMESPACE=RHTPA_NAMESPACE例
$ export NAMESPACE=trusted_profile_analyzerRHTPA 1.1.2 のインストールがプロジェクト namespace にあることを確認します。
例
$ helm list -n $NAMESPACERHTPA 1.1.2 をアンインストールします。
例
$ helm uninstall redhat-trusted-profile-analyzer -n $NAMESPACERHTPA 1.2 値ファイルを編集用に開き、次の内容を変更します。
- 新しい PostgreSQL データベースインスタンスを参照します。
- バージョン 1.1.2 で使用されたものと同じ Simple Storage Service (S3) ストレージを参照します。
- バージョン 1.1.2 で使用されたものと同じメッセージングキューを参照します。
modules.vexinationCollector.recollectVEXおよびmodules.bombasticCollector.recollectSBOMオプションの値をtrueに設定します。注記OpenShift 上の RHTPA デプロイメントで使用される値ファイルテンプレートは、デプロイメントガイド の付録を参照してください。
OpenShift 用の更新された RHTPA 1.2 Helm チャートを使用してアップグレードを開始します。
構文
helm install redhat-trusted-profile-analyzer openshift-helm-charts/redhat-trusted-profile-analyzer -n $NAMESPACE --values PATH_TO_VALUES_FILE --set-string appDomain=$APP_DOMAIN_URL例
$ helm install redhat-trusted-profile-analyzer openshift-helm-charts/redhat-trusted-profile-analyzer -n $NAMESPACE --values values-rhtpa.yaml --set-string appDomain=$APP_DOMAIN_URL注記この Helm チャートを何度も実行して、値ファイルから現在設定されている状態を適用できます。
データ移行が成功したことを確認します。
SBOM および VEX インデクサーログを表示し、
Reindexing all documentsおよびReindexing finishedというメッセージを探します。例
$ oc logs bombastic-indexer -n $NAMESPACE $ oc logs vexination-indexer -n $NAMESPACE次のエラーメッセージも表示されます。
Error syncing index: Open("Schema error: 'An index exists but the schema does not match.'"), keeping old Error loading initial index: Open("Schema error: 'An index exists but the schema does not match.'")このスキーマの不一致のため、
bombastic-collectorおよびvexination-collectorPod は recollect コンテナーを起動して、既存の SBOM および VEX データをすべて収集します。recollect-sbomとrecollect-vexの両方の init-containers が正常に完了して停止するはずです。移行が完了すると、既存の SBOM および VEX データがすべて RHTPA コンソールに表示されます。