RMT 升级运行状况检查脚本

从版本 2025.3.6 开始,RMT 安装程序包括升级前和升级后运行状况检查脚本,用于在升级前后验证您的 Tableau Resource Monitoring Tool (RMT) 环境。这些脚本可识别环境中预先存在的问题,例如配置错误、权限漂移、磁盘空间不足、证书过期或之前存在并可能导致任何升级失败的服务故障。

升级前和升级后运行状况检查脚本可以识别以下问题:

  • 数据库和磁盘就绪性:检测大型数据库或过多的 WAL 文件是否会导致迁移挂起或耗尽磁盘空间。

  • 权限和安全完整性:识别转移的文件所有权或过期的 SSL 证书,否则这些问题会阻止服务重新启动或代理重新连接。

  • 依赖项验证:确保在安装 PostgreSQL 15 之前存在所需的 Windows 组件,如 Visual C++ 2022 Redistributable 和 OpenSSL 3.x。

  • 版本逻辑安全:防止由版本元数据回归导致的“错误降级”错误。

升级前脚本

当您开始升级时,升级前脚本会自动运行。它会在现有安装仍然完好无损时检查您的 RMT Server 或代理主机,并生成 PASS / FAIL / WARN 报告。

对于 Linux,升级前检查会作为以下过程的一部分自动运行:

sudo bash upgrade-rmt-master ...
sudo bash upgrade-rmt-agent ...

跳过自动检查(不推荐):

sudo bash upgrade-rmt-master --skip-pre-upgrade-check ...

对于 Windows,安装程序会自动运行升级前检查。在安装过程中,系统还会提示您选择跳过升级。但是,不建议这样做。

手动升级前检查

您可以手动运行脚本来预览任何潜在问题。若要手动运行脚本,请根据您的操作系统使用以下步骤:

对于 Linux:

以 root 用户身份运行命令。若要包括数据库检查,请使用 export 命令安全地传递您的密码。

sudo bash /opt/tableau/tabrmt/master/install-scripts/rmt-pre-upgrade-check.sh

若要在启用 PostgreSQL 检查的情况下运行,请使用以下命令:

export RMT_DB_PASSWORD="<tabrmtdb-password>"
sudo -E bash /opt/tableau/tabrmt/master/install-scripts/rmt-pre-upgrade-check.sh

若要使用特定组件和输出路径运行,请使用以下命令:

sudo bash rmt-pre-upgrade-check.sh --component master --output /tmp/rmt-report.txt

对于 Windows:

默认情况下,RMT Server 的升级前文件安装在以下位置:

C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\scripts\pre-upgrade\rmt-pre-upgrade-check.ps1

默认情况下,代理的升级前文件安装在以下位置:

C:\Program Files\Tableau\Tableau Resource Monitoring Tool\agent\scripts\pre-upgrade\rmt-pre-upgrade-check.ps1

若要手动运行脚本,请以管理员身份启动 PowerShell,然后运行:

cd "C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\scripts\pre-upgrade"

.\rmt-pre-upgrade-check.ps1

若要在启用 PostgreSQL 检查的情况下运行,请使用以下命令:

$env:RMT_DB_PASSWORD = "<tabrmtdb-password>"
.\rmt-pre-upgrade-check.ps1

若要使用特定组件和输出路径运行,请使用以下命令:

.\rmt-pre-upgrade-check.ps1 -Component master -OutputPath C:\temp\rmt-report.txt

其他选项

使用以下选项自定义升级前检查:

-Component

指定 RMT Server 或代理。如果省略,脚本会自动检测此项

--db-password / -DbPassword

内部 RMT 数据库管理员密码。PostgreSQL 检查所必需。

--output / -OutputPath

指定报告的保存位置。默认情况下,报告会保存到 /tmp/ (Linux) or C:\temp\ (Windows).

--target-version / -TargetVersion

您计划安装的 RMT 版本;启用特定于版本的检查。

--quiet / -Quiet

筛选输出以仅显示 FAIL 和 WARN 结果。

--verbose / -Verbose

输出显示所执行的每次检查的详细技术数据。

脚本结果和所需操作

下表说明了脚本结果和操作:

结果状态操作
PASS退出代码 0未发现问题。升级将继续进行。
WARN退出代码 1升级将继续进行,但您必须查看报告中的非关键风险。
FAIL退出代码 2升级已中止。您必须在重新运行升级之前解决这些问题。

升级后脚本

升级后运行状况检查脚本会在每次 RMT 安装和升级结束时自动运行。它验证所有服务是否正确启动、基础设施是否健康以及配置是否完好无损。升级后检查不会阻止安装程序。所有已识别的故障都记录在最终报告中。

手动升级后检查

若要手动运行脚本,请根据您的操作系统使用以下步骤:

对于 Linux:

以 root 用户身份或使用 sudo 权限运行以下命令:

  • 对于 RMT Server:

sudo bash /opt/tableau/tabrmt/master/install-scripts/rmt-post-upgrade-check --component master --mode upgrade
  • 对于代理:

sudo bash /opt/tableau/tabrmt/agent/install-scripts/rmt-post-upgrade-check --component agent --mode upgrade

对于 Windows:

默认情况下,RMT Server 的升级后文件安装在以下位置:

C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\scripts\post-upgrade\rmt-post-upgrade-check.ps1

默认情况下,代理的升级后文件安装在以下位置:

C:\Program Files\Tableau\Tableau Resource Monitoring Tool\agent\scripts\post-upgrade\rmt-post-upgrade-check.ps1

若要手动运行脚本,请以管理员身份打开 PowerShell,并在运行命令之前导航到 RMT 安装目录:

  • 对于 RMT Server:

.\rmt-post-upgrade-check.ps1 -Component master -Mode upgrade
  • 对于代理:

.\rmt-post-upgrade-check.ps1 -Component agent -Mode upgrade

其他选项

您可以使用以下选项自定义脚本:

--component / -Component

指定 RMT Server 或代理。如果省略,脚本将尝试自动检测此项。

--db-password / -DbPassword

内部 RMT 数据库管理员的密码。这是启用 PostgreSQL 检查所必需的。

--output / -OutputPath

将保存报告文件的路径。默认为 /tmp/ (Linux) C:\temp\ (Windows)

--target-version / -TargetVersion

要升级到的特定 RMT 版本,用于特定于版本的检查。

--quiet / -Quiet

减少输出以仅显示 FAILWARN 结果。

--verbose / -VerboseOutput

为执行的每项检查提供详细的技术输出。

注意:我们建议将 RMT_DB_PASSWORD 设置为环境变量,而不是在命令行上传递它,因为命令行参数可在进程列表中查看。

脚本结果和所需操作

下表说明了脚本结果和操作:

结果状态操作
PASS退出代码 0系统运行状况良好。无需操作。
WARN退出代码 1查看警告;大多数问题可自行解决(例如,暂时性 RabbitMQ 启动滞后)。
FAIL退出代码 2一个或多个关键检查失败 - 调查并重新修正。

报告

您可以在此处找到升级前报告:

  • Linux:/tmp/rmt-precheck-<timestamp>.txt

  • Windows(手动):C:\temp\rmt-precheck-<component>-<timestamp>.txt

您可以在此处找到升级后报告:

  • Linux:<log-dir>/rmt-postcheck-report.txt

  • Windows(手动):C:\temp\rmt-postcheck-<component>-<timestamp>.txt

  • Windows(通过安装程序):当安装程序运行检查时,它将使用固定文件名:

    • C:\temp\rmt-postcheck-master-report.txt

    • C:\temp\rmt-postcheck-agent-report.txt

    有关报告中的升级前和升级后检查的信息,请参见升级参考部分。

示例报告

以下是升级前运行状况检查报告示例:

==================================================================
RMT Pre-Upgrade Health Check Report
Script Version : 1.0.0
Generated : 2026-04-08 14:30:00
Component : master
Hostname : rmt-master-01.example.com
RMT Version : 2025.1.9
==================================================================
OVERALL STATUS : UPGRADE WITH CAUTION (2 warning(s) -- review before proceeding)
PASS: 44 FAIL: 0 WARN: 2 INFO: 10 SKIP: 3
==================================================================
WARNINGS -- Review Before Upgrading
==================================================================
[WARN] #21d Hangfire schema is 1.2 GB
Check 21g for delete_hash() volatility bug
[WARN] #24 1 queue(s) with >10000 messages (max: 15234)
Resolve backlogs before upgrading

 

 

 

 

感谢您的反馈!您的反馈已成功提交。谢谢!