RMT アップグレード: 技術レファレンス
このセクションは、アップグレード時に確認する運用上のしきい値、システム パス、ネットワーク ポートについての技術リファレンスです。これらの表を参照すると、検証エラーの原因を迅速に診断し、RMT の必須ベースラインに環境を適合させることができます。
注: 当社の平等の理念に基づき、「RMT マスター」を「RMT サーバー」へ名称変更しました。RMT サーバーのインストール パスやコマンドでは、互換性のために「サーバー」ではなく「マスター」という表記が残っている場合があります。そのため、CLI コマンドとオプション、インストール フォルダー、構成ファイル、その他のインスタンスで、この用語が引き続き表示される場合があります。詳細については、「Tableau ヘルプについて」(新しいウィンドウでリンクが開く)を参照してください。
アップグレード前のヘルス チェック
アップグレード前のヘルス チェックは、既存のインストール環境を維持したまま (サービスを実行したまま、データベースへのアクセスが可能なままなど)、RMT サーバーまたはエージェントのホストを検査し、PASS (成功) / FAIL (失敗) / WARN (警告) のレポートを生成します。システム リソース、アカウント、ファイル パーミッション、PostgreSQL、RabbitMQ、ネットワーク、構成ファイル、RMT サービスなど、80 項目以上の個別のチェックを実行します。以下の表は、アップグレード前に実行されるチェックの一覧です。いずれかの項目で「FAIL (失敗)」ステータス (終了コード 2) が返された場合、アップグレードは中止されます。
システムとハードウェア
| チェック ID | 名前 | プラットフォーム | 失敗 (FAIL) / 警告 (WARN) 条件 |
| #1 | オペレーティング システム | Linux, Windows | WARN OS のバージョンが事前チェックの許可リストに含まれていません。対応OSは、RHEL 8.x/9.x、Ubuntu 20.04/22.04/24.04、CentOS Stream 8/9、Oracle Linux 8.x/9.x、AlmaLinux 8.x/9.x、Rocky Linux 8.x/9.x、Amazon Linux 2023、Windows Server 2019/2022 です。 |
| #2 | ディスク容量 | Linux, Windows | FAIL RMT サーバーは 20 GB 未満、エージェントは 5 GB 未満の空きWARN RMT サーバーは 50 GB 未満、エージェントは 10 GB 未満の空き |
| #2a | ディスク タイプ | Linux, Windows | INFO ドライブが SSD と HDD のどちらであるかを表示します |
| #3 |
RAM |
Linux, Windows | WARN RMT サーバーは 8 GB (最少要件) 未満、エージェントは 4 GB (最少要件) 未満 |
| #4 | CPU コア | Linux, Windows | WARN RMT サーバーは 8 GB (最少要件) 未満、エージェントは 4 GB (最少要件) 未満 |
| #4a | CPU 命令セット | Linux, Windows | FAIL (Linux): SSE4_2 または popcnt が見つかりません。WARN (Windows): 古い CPU が検出されました。 |
| #4b | VC++ Redist | Windows | FAIL Visual Studio 2022 C++ Redistributable が見つかりません。 |
| #4c | OpenSSL DLLs | Windows | INFO libcrypto-3-x64.dll および libssl-3-x64.dll の確認 |
| #5 | システム稼働時間 | Linux, Windows | INFO: 10 分未満の場合 (ごく最近にリブート) または 90 日を超える場合 (適用待ちのバッチがある) の注意事項 |
| #6 | Systemd の稼動 | Linux | FAIL systemd が稼動していません、PASS : 稼動中または動作が不安定です |
| #7 | FIPS モード | Linux, Windows | FAIL (Windows): レジストリで有効化されています, PASS FIPS が無効になっています。WARN (Linux) config.json と一致しません。PASS OS と設定が一致しています |
| #7a | PowerShell バージョン | Windows | INFOPowerShell バージョン |
| #7b | システム ロケール | Windows | INFOシステム ロケール情報 |
| #7c | WMI ヘルス | Windows | WARN WMI リポジトリに不整合があります |
アカウントとパーミッション
| チェック ID | 名前 | プラットフォーム | 失敗 (FAIL) / 警告 (WARN) 条件 |
| #8 | サービス アカウント | Linux, Windows | FAIL RMT サービス アカウントまたは Windows サービスが見つかりません |
| #9 | グループ メンバーシップ | Linux | FAIL 必須のサービス グループ (rmtmasterapp、rmtmasterconfig など) が見つかりません |
| #10 | ユーザー Systemd | Linux | FAIL ユーザー systemd daemon/リンガーがアクティブでありません |
| #44 | pamtester がインストールされました | Linux | WARN インストールされていません。これを修復するには、yum install pamtester または apt install libpam-runtime をインストールします |
Linux におけるディレクトリの所有権とパーミッション
| チェック ID | ディレクトリ | Expected Owner:Group | 期待されるモード |
| #11 | 構成ディレクトリ | tabrmt-master:rmtmasterconfig | 2775 |
| #12 | ログ ディレクトリ | tabrmt-master:rmtmasterlogs | 2775 |
| #13 | データ ディレクトリ (+ PG/RMQ サブディレクトリ) | Component-appropriate | 2775 |
| #14 | 前提条件ディレクトリ | root またはコンポーネント ユーザー |
755 |
| #14a | rabbitmq-defaults ファイル |
Group-writable が必要 | g+w |
| #15 | SSL 証明書ディレクトリ | tabrmt-master:rmtopenssl | 2775 |
| #15a | ホーム ディレクトリ | コンポーネント ユーザー | 770 |
| #15b | /etc/profile.d/tabrmt-*.sh
|
root | 既定 |
| #15c | 構成ディレクトリの setgid ビット | -- | 2xxx が必要 |
| #16 | environment.bash
|
コンポーネント ユーザー | group-writable |
重大度: FAIL データ ディレクトリの設定 (#13 および #15) の所有権のみに関して。その他のすべての Linux ディレクトリ チェック (#11、#12、#14、#14a、#15a–c、#16) は、所有権やモードの不一致に対して WARN を出力します。これは、アップグレード中にインストーラーの事後インストール処理が所有権を再適用するためです。WARN 所有権は正しいですが、パーミッション モードが間違っています。
Windows におけるディレクトリの所有権とパーミッション
| チェック | 名前 | 重大度 |
| #11 | 構成ディレクトリの ACL | FAIL サービス ユーザーに FullControl 権限がありません |
| #12 | ログ ディレクトリの ACL | FAIL サービス ユーザーに Modify 権限がありません |
| #13 | データ ディレクトリの ACL (RMT サーバー) | FAIL サービス ユーザーに PG/RMQ データ ディレクトリへの FullControl 権限がありません |
| #14 | 前提条件ディレクトリの ACL (RMT サーバー) | WARN ReadAndExecute 権限がありません (注: アップグレードのたびに前提条件となる MSI が再インストールされ、インストール後の処理で ACL が再適用されます) |
| #15 | SSL 証明書ディレクトリの ACL (RMT Server) | FAIL サービス ユーザーに FullControl 権限がありません |
| #16a | サービス ユーザー ID | PASS (参考情報: サービスがどのユーザーとして実行されるかを表示します) |
| #16b | SeServiceLogonRight 権限 | INFO 見つかりません、 WARN 見つからないか、secedit が失敗しました |
| #16c | RMT ディレクトリに対するサービス ユーザーの ACL | FAIL サービス ユーザーに必要な権限がありません |
データベース (PostgreSQL)
すべての PostgreSQL チェックは、RMT サーバー上でのみ実行されます。
| チェック ID | 名前 | --db-password オプションが必要
|
失敗 (FAIL) / 警告 (WARN) 条件 |
| #17 | PG サービス | いいえ | FAIL ローカル サービスが停止され、かつ無効化されています |
| #18 | ポート 5555 のリッスン | いいえ | WARN (セキュリティ グループ / VPC / RDS のヒント) リッスンしていません |
| #19 | DB Connection | はい | WARN 内部 DB に接続できません (SSL、パスワード、またはネットワークの問題) |
メッセージング (RabbitMQ)
メッセージング (RabbitMQ) チェックは、RMT サーバー上でのみ実行されます。
| チェック ID | 名前 | 失敗 (FAIL) / 警告 (WARN) 条件 |
| #22 | RMQ サービス | FAIL ローカル サービスが停止され、かつ無効化されています |
| #24 | キューのバックログ | WARN いずれかのキューに 10,000 を超えるメッセージがあります |
| #25 | RabbitMQ ユーザー | WARN 既定の guest ユーザーがまだ存在しています |
| #26 | アクティブな接続 | INFO 情報提供のみ。アクティブな接続の数を通知します |
| #27 | Erlang クッキーにアクセス可能 | WARN クッキー ファイルが見つからないか、パーミッションが間違っています (モード 400 または 600 である必要があります) |
| #27a | ERLANG_HOME 設定 | WARN (Windows のみ) 「ERLANG_HOME」が設定されていないか、パスが存在しません。 |
| #27b | SSL 有効期限 | FAIL 証明書の有効期限が切れています |
| #27c | ディスク アラーム | FAIL RMQ パーティションの空き容量が 10 GB 未満 (アップグレードが停止します) |
| #45 | 証明書ディレクトリへの登録 | WARN 証明書ディレクトリは存在しますが、空であるか、期待される証明書ファイルが見つかりません (サーバー証明書、鍵、CA 証明書) |
ネットワークと構成
| チェック ID | 名前 | 失敗 (FAIL) / 警告 (WARN) 条件 |
| #28a/b | エージェントとマスター間の通信 | WARN エージェントがポート 5671、5672、80、または 443 でマスターに接続できません |
| #33 ~ 35 | JSON/Bash Config | FAIL config.json、setup.json、または environment.bash が見つからないか有効でありません |
| #36a | 既知の不具合バージョン | FAIL 現在のバージョンが 2025.3.0 (回帰 (リグレッション) によりアップグレードできません) |
サービスとバックアップ
| チェック ID | 名前 | 失敗 (FAIL) / 警告 (WARN) 条件 |
| #38 | すべての RMT サービスが稼働中 | WARN 停止した各サービスについての警告 |
| #38a | 標準プロセス | FAIL サービスの停止後も、tabrmt-* プロセスが残っています |
| #39 | バックグラウンド プロセッサー が稼動中 | WARN ホスト プロセスが稼動していません |
| #40 | アップグレード前のバックアップに関する注意喚起 | WARN アップグレード前に構成をバックアップするよう注意を喚起します |
| #41 | トポロジ | INFO 情報提供のみ。マスター / エージェントのノード タイプおよびアクティブなエージェント数 (DB 使用時) を通知 |
| #42 | コンポーネントのバージョン一覧 | INFO 情報提供のみ。RMT、PostgreSQL、RabbitMQ、OpenSSL のバージョンを通知 |
| #43 | マシン仕様の概要 | INFO 情報提供のみ。OS、CPU コア、RAM、空きディスク容量を通知 |
アップグレード後のヘルス チェック
これらのチェックはアップグレード後に実行されます。これらはアップグレードを妨げるものではなく、障害が発生してもアップグレードは中断されません。ただし、インストール後に対処が必要な問題を示します。
| チェック ID | 名前 | コンポーネント | 失敗 (FAIL) / 警告 (WARN) 条件 |
| #1a-d | サービスとプロセス | RMT Server, Agent | FAIL Main、PG、または RMQ サービスが稼働していません |
| #2 | ホスト プロセス スーパーバイザー | RMT Server, Agent | WARN ホスト スーパーバイザーのプロセスが見つかりません (自動復旧は行われません) |
| #3a-b | 構成ファイルの整合性 | RMT Server, Agent | FAIL 見つからないか、不正な JSON です |
| #4a-b | ファイル パーミッション | RMT Server, Agent | FAIL 構成/ログ ディレクトリがサービス アカウントで読み込み可/書き込み可でありません |
| #5a-d | ポートのリッスン | RMT Server | FAIL Web (443)、AMQP (5672)、または DB (5555) をリッスンしていません |
| #6 | PostgreSQL 接続性 | RMT Server | FAIL PostgreSQL が接続を受け付けていません |
| #7 | RabbitMQ ステータス | RMT サーバー | SKIP 外部です。FAIL すべてのリトライを実施しても成功しませんでした。 |
| #8a | キューのコンシューマー | RMT Server | WARN バックログが存在しますが、アクティブなコンシューマーがいません (マスター ワーカーが切断されています) |
| #9 | RMQ アラーム | RMT Server | FAIL アクティブなメモリまたはディスクのリソース アラームが発生しています。 |
| #10 | RabbitMQ SSL 証明書 | RMT サーバー | FAIL 証明書の有効期限が切れています。WARN 証明書の有効期限が 30 日以内に切れます。 |
| #11 | FIPS 一致 | RMT Server, Agent | FAIL OS の FIPS 状態が isFIPSEnabled 構成と一致していません |
| #12 | Web サーバー HTTP レスポンス | RMT サーバー | https://localhost:<port>/authentication/login への HTTP GET を実行したときの応答です。PASS 200 または 302 が返されました。FAIL 接続が拒否されました、またはタイムアウトしました。WARN その他のエラーが返されました。 |
| #13 | HTTPS 証明書の有効期限 | RMT Server | FAIL Web サーバーの TLS 証明書の有効期限が切れています |
| #14a-d | ディスク容量 | RMT Server, Agent | FAIL 空きが 1 GB 未満です。WARN: 空きが 5 GB 未満です。 |
| #15 | 最近のログ エラー | RMT Server, Agent | FAIL ログに FATAL (致命的な) エラーがあります。WARN: CRITICAL (重大な) エラーがあります |
| #16 | RMT ステータス | RMT Server, Agent | FAIL rmtadmin ステータスが失敗パターンを返します |
| #17 | Agent ログ履歴 | Agent | エージェントのデータ ディレクトリにあるログ追跡ファイル (.history, .json) を確認します。WARN ファイルが読み込めないか、破損しています。 |
| #18a-f | インベントリ バージョン | RMT Server, Agent | INFO RMT バージョン、PostgreSQL バージョン、RabbitMQ バージョン、Erlang/OTP バージョン、.NET Runtime (Windows) / OS (Linux)、OS バージョン (Windows) / Kernel (Linux) についての情報です |
ヘルス チェックの終了コード
アップグレード前およびアップグレード後のヘルス チェック スクリプトの実行結果は、以下の終了コードに基づいて判定してください。
アップグレード前のスクリプト
| 終了コード | ステータス | アップグレード時の動作 |
| 0 | READY TO UPGRADE | アップグレードを続行します |
| 1 | UPGRADE WITH CAUTION | アップグレードを続行しますが、警告をレビューしてください |
| 2 | アップグレード不可 | アップグレードがキャンセルされました |
| 3 | スクリプト エラー | 実行環境を確認してください |
アップグレード後のスクリプト
| 終了コード | ステータス |
| 0 | ALL PASSED |
| 1 | WARNINGS PRESENT |
| 2 | CRITICAL FAILURES |
InstallerContext 重大度の変更
Windows MSI の自動アップグレードで -InstallerContext オプションを指定して実行した場合、以下のチェックは手動での既定の設定とは異なる動作になります。既定の (InstallerContext ではない) 動作では、「停止しているが無効化されていない」状態や「ポートがリッスンしていない」状態はすでに警告 (WARN) 扱いであり、失敗 (FAIL) は「停止し、かつ無効化されている」状態にのみ適用されます。「-InstallerContext」では、インストーラーによるアップグレードの処理が途中でも、インストーラーが修正する一時的な状態によって処理が妨げられないようにするため、「無効化されている」ケースも含めて警告 (WARN) として通知されます。
| チェック | 名前 | 既定 | InstallerContext |
| #17 | PG サービス | WARN 停止しています、FAIL 停止し、無効化されています、INFO すべて停止しています | WARN (警告) |
| #18 | PG ポート | WARN リッスンしていません、INFO すべてのサービスが停止しています | WARN (警告) |
| #22 | RabbitMQ サービス | WARN 停止しています、FAIL 停止し、かつ無効化されています、INFO すべて停止しています | WARN (警告) |
| #23 | Port 5672 (AMQP) | WARN リッスンしていません、INFO すべてのサービスが停止しています | WARN (警告) |
| #38a | 取り残された RMT プロセス | (確認項目の説明を参照してください) | SKIP (インストーラーがプロセスのライフサイクルを管理します) |
アップグレード前のしきい値
| しきい値 | RMT Server | Agent | 単位 |
| ディスク容量 FAIL | 20 | 5 | GB 空き |
| ディスク容量 WARN | 50 | 10 | GB 空き |
| 一時ディレクトリ FAIL | 5 | 5 | GB 空き |
| 一時ディレクトリ WARN | 10 | 10 | GB 空き |
| RAM FAIL | 8 | 4 | GB |
| RAM WARN | 16 | 8 | GB |
| CPU FAIL | 4 | 2 | コア |
| CPU WARN | 8 | 4 | コア |
| データベース サイズ FAIL | 500 | - | GB |
| データベース サイズ WARN | 200 | - | GB |
| Hangfire スキーマ FAIL | 10 | - | GB |
| Hangfire スキーマ WARN | 1 | - | GB |
| WAL ディレクトリ FAIL (Windows) | 10 | - | GB |
| WAL ディレクトリ FAIL (Windows) | 2 | - | GB |
| WAL ディレクトリ FAIL (Linux) | 10 | - | GB |
| Mnesia ディレクトリ WARN | 5 | - | GB |
| RabbitMQ ディスク アラーム FAIL | 10 | - | GB 空き |
| Queue バックログ WARN | 10,000 | - | メッセージ |
| 証明書の有効期限 WARN | 30 | 30 | 日 |
| クリーンアップの保持 WARN | 180 | - | 日 |
| 不要タプル率 WARN | 20 | - | パーセント |
| エージェントのハートビートが途絶 | 15 | - | 分 |
| ネットワーク ドライバーの経過年数 WARN | 3 | - | 年 |
| ログ ディレクトリ サイズ WARN | 5 | 5 | GB |
| ログ ディレクトリ サイズ WARN (深刻) | 20 | 20 | GB |
アップグレード後のしきい値
| しきい値 | 値 | 単位 |
| ディスク容量 FAIL | 1 | GB 空き |
| ディスク容量 WARN | 5 | GB 空き |
| 証明書の有効期限 WARN | 30 | 日 |
| Queue バックログ WARN | 10,000 | メッセージ |
| ログのスキャン対象期間 | 60 | 分 |
| RabbitMQ 起動の再試行 | 6 試行 x 5 秒 | 計 30 秒 |
サポート対象となるコンポーネントの最低バージョン
| コンポーネント | 最低バージョン |
| RabbitMQ | 3.10.10 以上 |
| エージェント バージョン | 2023.1.0 以上 |
自動化と CI/CD の統合
Linux の場合:
```base
# Linux
sudo bash rmt-pre-upgrade-check.sh --component master --db-password "$DB_PASSWORD"
EXIT_CODE=$?
if [ $EXIT_CODE -eq 2 ]; then
echo "BLOCKED: Fix critical issues before upgrading"
exit 1
fi
```
Windows の場合:
```powershell
# Windows
.\rmt-pre-upgrade-check.ps1 -Component master
if ($LASTEXITCODE -eq 2) {
Write-Error "BLOCKED: Fix critical issues before upgrading"
exit 1
}
```
インストール ディレクトリの参照
内部の診断ユーティリティを手動で実行したり、インストール構造を確認したりするには、プラットフォーム固有のディレクトリ パスを参照してください。
Linux ディレクトリ構成
```
/opt/tableau/tabrmt/ # Install root
+-- master/ # Master application binaries
+-- agent/ # Agent application binaries
+-- prerequisites/ # Bundled dependencies
/var/opt/tableau/tabrmt/ # Data root
+-- master/config/ # config.json, setup.json
+-- master/logs/ # Application logs
+-- data/postgresql15/ # PostgreSQL data files
+-- data/rabbitmq313/ # RabbitMQ data/mnesia
+-- data/ssl/ # TLS certificates
/etc/opt/tableau/tabrmt/
+-- master/environment.bash # Master environment variables
+-- agent/environment.bash # Agent environment variables
```
Windows ディレクトリ構造
```
C:\Program Files\Tableau\Tableau Resource Monitoring Tool\ # Install root
C:\ProgramData\Tableau\Tableau Resource Monitoring Tool\ # Data root
```
必須ネットワーク ポート
| ポート | サービス | Direction |
| 80 | RMT Web UI (HTTP) | インバウンド |
| 443 | RMT Web UI (HTTPS) | インバウンド |
| 5672 | RabbitMQ AMQP | RMT サーバーへのインバウンド |
| 5671 | TLS 上の RabbitMQ AMQP | RMT サーバーへのインバウンド |
| 15672 | RabbitMQ 管理 UI | ローカル |
| 25672 | RabbitMQ ノード間 | ローカル |
| 5555 | 内部 PostgreSQL | ローカル |
