Script di controllo dell’integrità dell’aggiornamento di RMT
A partire dalla versione 2025.3.6, il programma di installazione di RMT include uno script di controllo dell’integrità pre-aggiornamento e post-aggiornamento per convalidare l’ambiente Tableau Resource Monitoring Tool (RMT) prima e dopo l’aggiornamento. Questi script identificano problemi preesistenti nell’ambiente, come una configurazione errata, la deriva delle autorizzazioni, la carenza di spazio su disco, certificati scaduti o errori di servizi già presenti in precedenza e che possono causare un errore di aggiornamento.
Gli script di controllo di integrità pre-aggiornamento e post-aggiornamento possono identificare i seguenti problemi:
Preparazione di database e dischi: gli script rilevano se un database di grandi dimensioni o un numero eccessivo di file WAL causerebbe il blocco della migrazione o esaurirebbe lo spazio su disco.
Integrità delle autorizzazioni e della sicurezza: gli script identificano uno spostamento della proprietà dei file o certificati SSL scaduti che altrimenti impedirebbero il riavvio dei servizi o la riconnessione degli agenti.
Convalida delle dipendenze: gli script assicurano che i componenti di Windows necessari, come Visual C++ 2022 Redistributable e OpenSSL 3.x, siano presenti prima dell’installazione di PostgreSQL 15.
Sicurezza logica della versione: gli script prevengono gli errori di “falso downgrade” causati da regressioni dei metadati della versione.
Script pre-aggiornamento
Lo script pre-aggiornamento viene eseguito automaticamente quando avvii un aggiornamento. Ispeziona RMT Server o l’host agente mentre l’installazione esistente è ancora intatta e genera un report PASS/FAIL/WARN.
Per Linux, il controllo pre-aggiornamento viene eseguito automaticamente con l’esecuzione del seguente comando:
sudo bash upgrade-rmt-master ...
sudo bash upgrade-rmt-agent ...
Per saltare il controllo automatico (non consigliato):
sudo bash upgrade-rmt-master --skip-pre-upgrade-check ...
Per Windows, il programma di installazione esegue automaticamente il controllo pre-aggiornamento. Durante l’installazione, ti viene inoltre presentata l’opzione di saltare l’aggiornamento. Tuttavia, questo non è consigliato.
Controllo pre-aggiornamento manuale
Puoi eseguire lo script manualmente per visualizzare in anteprima eventuali problemi. Per eseguirlo manualmente, utilizza una delle procedure seguenti a seconda del tuo sistema operativo:
Per Linux:
Esegui i comandi come utente root. Per includere i controlli del database, utilizza il comando export per passare la password in modo sicuro.
sudo bash /opt/tableau/tabrmt/master/install-scripts/rmt-pre-upgrade-check.sh
Per l’esecuzione con i controlli PostgreSQL abilitati, utilizza il seguente comando:
export RMT_DB_PASSWORD="<tabrmtdb-password>"
sudo -E bash /opt/tableau/tabrmt/master/install-scripts/rmt-pre-upgrade-check.sh
Per l’esecuzione con un componente e un percorso di output specifici, utilizza il comando seguente:
sudo bash rmt-pre-upgrade-check.sh --component master --output /tmp/rmt-report.txt
Per Windows:
Per impostazione predefinita, i file di pre-aggiornamento per RMT Server vengono installati nel percorso seguente:
C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\scripts\pre-upgrade\rmt-pre-upgrade-check.ps1
Per impostazione predefinita, i file di pre-aggiornamento per l’agente vengono installati nel percorso seguente:
C:\Program Files\Tableau\Tableau Resource Monitoring Tool\agent\scripts\pre-upgrade\rmt-pre-upgrade-check.ps1
Per eseguire lo script manualmente, avvia PowerShell come amministratore ed esegui:
cd "C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\scripts\pre-upgrade"
.\rmt-pre-upgrade-check.ps1
Per l’esecuzione con i controlli PostgreSQL abilitati, utilizza il seguente comando:
$env:RMT_DB_PASSWORD = "<tabrmtdb-password>"
.\rmt-pre-upgrade-check.ps1
Per l’esecuzione con un componente e un percorso di output specifici, utilizza il comando seguente:
.\rmt-pre-upgrade-check.ps1 -Component master -OutputPath C:\temp\rmt-report.txt
Opzioni aggiuntive
Utilizza le seguenti opzioni per personalizzare il controllo pre-aggiornamento:
-Component
Specifica RMT Server o l’agente. Se omesso, lo script lo rileva automaticamente
--db-password / -DbPassword
Password dell’amministratore del database RMT interno. Necessaria per i controlli PostgreSQL.
--output / -OutputPath
Specifica dove salvare il report. Per impostazione predefinita viene salvato in /tmp/ (Linux) or C:\temp\ (Windows).
--target-version / -TargetVersion
La versione di RMT che intendi installare. Abilita i controlli specifici della versione.
--quiet / -Quiet
Filtra l’output per mostrare solo i risultati FAIL e WARN.
--verbose / -Verbose
L’output visualizza dati tecnici dettagliati per ogni controllo eseguito.
Risultati dello script e azioni richieste
Nella tabella seguente vengono illustrati il risultato e l’azione dello script:
| Risultato | Stato | Azione |
| PASS | EXIT CODE 0 | Nessun problema rilevato. L’aggiornamento procede. |
| WARN | EXIT CODE 1 | L’aggiornamento procede, ma devi esaminare il report perché sono presenti rischi non critici. |
| FAIL | EXIT CODE 2 | Aggiornamento interrotto. Devi risolvere questi problemi prima di eseguire nuovamente l’aggiornamento. |
Script post-aggiornamento
Gli script di controllo dello stato di integrità post-aggiornamento vengono eseguiti automaticamente al termine di ogni installazione e aggiornamento di RMT. Lo script verifica che tutti i servizi siano stati avviati correttamente, che l’infrastruttura sia integra e che la configurazione sia intatta. Il controllo post-aggiornamento non blocca il programma di installazione. Tutti gli errori identificati vengono registrati nel report finale.
Controllo manuale post-aggiornamento
Per eseguirlo manualmente, utilizza una delle procedure seguenti a seconda del tuo sistema operativo:
Per Linux:
Esegui i seguenti comandi come utente root o con privilegi sudo:
Per RMT Server:
sudo bash /opt/tableau/tabrmt/master/install-scripts/rmt-post-upgrade-check --component master --mode upgrade
Per l’agente:
sudo bash /opt/tableau/tabrmt/agent/install-scripts/rmt-post-upgrade-check --component agent --mode upgrade
Per Windows:
I file post-aggiornamento per RMT Server vengono installati per impostazione predefinita nel percorso seguente:
C:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\scripts\post-upgrade\rmt-post-upgrade-check.ps1
Per impostazione predefinita, i file post-aggiornamento per l’agente vengono installati nel percorso seguente:
C:\Program Files\Tableau\Tableau Resource Monitoring Tool\agent\scripts\post-upgrade\rmt-post-upgrade-check.ps1
Per eseguire gli script manualmente, apri PowerShell come amministratore e passa alla directory di installazione di RMT prima di eseguire i comandi:
Per RMT Server:
.\rmt-post-upgrade-check.ps1 -Component master -Mode upgrade
Per l’agente:
.\rmt-post-upgrade-check.ps1 -Component agent -Mode upgrade
Opzioni aggiuntive
Per personalizzare lo script puoi utilizzare l’opzione seguente:
--component / -Component
Specifica RMT Server o l’agente. Se omesso, lo script tenterà di rilevarlo automaticamente.
--db-password / -DbPassword
Password per l’amministratore del database RMT interno. Necessaria per abilitare i controlli PostgreSQL.
--output / -OutputPath
Percorso in cui verrà salvato il file di report. Per impostazione predefinita è /tmp/ (Linux) o C:\temp\ (Windows).
--target-version / -TargetVersion
La versione di RMT specifica a cui stai eseguendo l’aggiornamento, utilizzata per i controlli specifici della versione.
--quiet / -Quiet
Riduce l’output per mostrare solo i risultati FAIL e WARN.
--verbose / -VerboseOutput
Fornisce un output tecnico dettagliato per ogni controllo eseguito.
Nota: è consigliabile impostare RMT_DB_PASSWORD come variabile di ambiente anziché passarla dalla riga di comando, poiché gli argomenti della riga di comando sono visibili nell’elenco dei processi.
Risultati dello script e azioni richieste
Nella tabella seguente vengono illustrati il risultato e l’azione dello script:
| Risultato | Stato | Azione |
| PASS | EXIT CODE 0 | Il sistema è integro. Nessuna azione richiesta |
| WARN | EXIT CODE 1 | Esaminare gli avvisi. La maggior parte (ad esempio, un ritardo temporaneo dell’avvio di RabbitMQ). |
| FAIL | EXIT CODE 2 | Uno o più controlli critici non sono stati superati. Esaminali e correggi. |
Report
I report pre-aggiornamento sono disponibili qui:
Linux:
/tmp/rmt-precheck-<timestamp>.txtWindows (manuali):
C:\temp\rmt-precheck-<component>-<timestamp>.txt
I report post-aggiornamento sono disponibili qui:
Linux:
<log-dir>/rmt-postcheck-report.txtWindows (manuali):
C:\temp\rmt-postcheck-<component>-<timestamp>.txtWindows (tramite il programma di installazione): quando il programma di installazione esegue il controllo, utilizza nomi file fissi:
C:\temp\rmt-postcheck-master-report.txtC:\temp\rmt-postcheck-agent-report.txt
Per informazioni sui controlli pre-aggiornamento e post-aggiornamento nel report, consulta la sezione Aggiornamento di RMT: informazioni tecniche di riferimento.
Esempio di report
Di seguito è riportato un esempio di report del controllo di integrità pre-aggiornamento:
==================================================================
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
