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
减少输出以仅显示 FAIL 和 WARN 结果。
--verbose / -VerboseOutput
为执行的每项检查提供详细的技术输出。
注意:我们建议将 RMT_DB_PASSWORD 设置为环境变量,而不是在命令行上传递它,因为命令行参数可在进程列表中查看。
脚本结果和所需操作
下表说明了脚本结果和操作:
| 结果 | 状态 | 操作 |
| PASS | 退出代码 0 | 系统运行状况良好。无需操作。 |
| WARN | 退出代码 1 | 查看警告;大多数问题可自行解决(例如,暂时性 RabbitMQ 启动滞后)。 |
| FAIL | 退出代码 2 | 一个或多个关键检查失败 - 调查并重新修正。 |
报告
您可以在此处找到升级前报告:
Linux:
/tmp/rmt-precheck-<timestamp>.txtWindows(手动):
C:\temp\rmt-precheck-<component>-<timestamp>.txt
您可以在此处找到升级后报告:
Linux:
<log-dir>/rmt-postcheck-report.txtWindows(手动):
C:\temp\rmt-postcheck-<component>-<timestamp>.txtWindows(通过安装程序):当安装程序运行检查时,它将使用固定文件名:
C:\temp\rmt-postcheck-master-report.txtC:\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
