第 1 章 在升级过程中迁移数据
随着 Red Hat Trusted Profile Analyzer (RHTPA)版本 1.2 的发布,我们实现了一个新的模式,用于嵌套软件对材料清单(SBOM)和漏洞利用性交换(VEX)数据。在升级前,您必须配置 RHTPA 1.2 值文件,以为您的 SBOM 和 VEX 数据进行数据迁移。此数据迁移在升级过程中发生到 RHTPA 版本 1.2。
先决条件
- 在 Red Hat OpenShift 上安装 RHTPA 1.1.2。
- 新的 PostgreSQL 数据库。
-
安装了
oc
、和helm
二进制文件的工作站。
流程
在工作站中打开一个终端,并使用命令行界面登录到 OpenShift:
语法
oc login --token=TOKEN --server=SERVER_URL_AND_PORT
Example
$ oc login --token=sha256~ZvFDBvoIYAbVECixS4-WmkN4RfnNd8Neh3y1WuiFPXC --server=https://example.com:6443
注意您可以从 OpenShift Web 控制台查找登录令牌和 URL,以在命令行中使用。登录 OpenShift Web 控制台。点您的用户名,然后点 Copy login 命令。再次提供您的用户名和密码,然后单击 Display Token 查看命令。
导出 RHTPA 项目命名空间:
语法
export NAMESPACE=RHTPA_NAMESPACE
Example
$ export NAMESPACE=trusted_profile_analyzer
验证 RHTPA 1.1.2 安装是否在项目命名空间中:
Example
$ helm list -n $NAMESPACE
卸载 RHTPA 1.1.2:
Example
$ helm uninstall redhat-trusted-profile-analyzer -n $NAMESPACE
打开以编辑 RHTPA 1.2 值文件,并更改以下内容:
- 引用新的 PostgreSQL 数据库实例。
- 引用与 1.1.2 版本相同的简单存储服务(S3)存储。
- 引用用于 1.1.2 版本的同一消息传递队列。
将
modules.vexinationCollector.recollectVEX
和modules.bombasticCollector.recollectSBOM
选项设置为true
值。注意如需了解用于 OpenShift 上的 RHTPA 部署的值文件模板,请参阅 部署指南 附录。
使用更新的 RHTPA 1.2 Helm Chart for OpenShift 启动升级:
语法
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
Example
$ 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 Chart,以从值文件中应用当前配置的状态。
验证数据迁移是否成功。
查看 SBOM 和 VEX 索引器日志,查找
重新索引所有文档
和重新索引完成
的信息:Example
$ 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.'")
由于这种模式不匹配,bomb
astic-collector
和vexination-collector
pod 会启动 recollect 容器来收集所有现有 SBOM 和 VEX 数据。recollect-sbom
和recollect-vex
init-containers 应该成功完成并停止。迁移完成后,您可以在 RHTPA 控制台中查看所有现有 SBOM 和 VEX 数据。