Scripts de contrôle d’intégrité de la mise à niveau de RMT

Depuis la version 2025.3.6, le programme d’installation de RMT contient un script de contrôle d’intégrité post et pré-mise à niveau pour valider votre environnement Tableau Resource Monitoring Tool (RMT) avant et après la mise à niveau. Ces scripts identifient les problèmes préexistants dans votre environnement, comme une mauvaise configuration, une déviation des autorisations, un manque d’espace disque, des certificats expirés ou des pannes de service présents avant la mise à niveau et susceptibles de la faire échouer.

Les scripts de contrôle d’intégrité pré et post-mise à niveau peuvent identifier les problèmes suivants :

  • Préparation de la base de données et du disque : détecte si une base de données volumineuse ou un nombre excessif de fichiers WAL entraînera le blocage de la migration ou l’épuisement de l’espace disque.

  • Intégrité des autorisations et de la sécurité : identifie si le propriétaire des fichiers a changé ou si des certificats SSL ont expiré, empêchant ainsi le redémarrage des services ou la reconnexion des agents.

  • Validation des dépendances : vérifie que les composants Windows requis, tels que Visual C++ 2022 Redistributable et OpenSSL 3.x, sont présents avant l’installation de PostgreSQL 15.

  • Sécurité de la logique de version : empêche les erreurs de « rétrogradation factice » causées par des régressions vers les métadonnées de version.

Script de pré-mise à niveau

Le script de pré-mise à niveau s’exécute automatiquement lorsque vous démarrez une mise à niveau. Il examine l’hôte de votre serveur RMT ou agent lorsque l’installation actuelle est toujours intacte et génère un rapport avec les mentions PASS / FAIL / WARN.

Pour Linux, le contrôle pré-mise à niveau s’exécute automatiquement dans le cadre de :

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

Pour ignorer le contrôle automatique (non recommandé) :

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

Pour Windows, le programme d’installation exécute automatiquement le contrôle pré-mise à niveau. Pendant l’installation, vous serez également invité à ignorer la mise à niveau ou non. Toutefois, cette option n’est pas recommandée.

Contrôle pré-mise à niveau manuel

Vous pouvez exécuter le script manuellement pour prévisualiser les problèmes potentiels. Pour l’exécuter manuellement, suivez les étapes ci-dessous selon votre système d’exploitation :

Pour Linux :

Exécutez les commandes en tant qu’utilisateur racine. Pour inclure les contrôles de base de données, utilisez la commande export pour transmettre votre mot de passe en toute sécurité.

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

Pour exécuter le script avec les contrôles PostgreSQL activés, utilisez la commande suivante :

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

Pour exécuter le script avec un composant et un chemin de sortie spécifiques, utilisez la commande suivante :

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

Pour Windows :

Les fichiers de pré-mise à niveau pour RMT Server sont installés par défaut à l’emplacement suivant :

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

Les fichiers de pré-mise à niveau de l’agent sont installés par défaut à l’emplacement suivant :

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

Pour exécuter le script manuellement, lancez PowerShell en tant qu’administrateur et exécutez :

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

.\rmt-pre-upgrade-check.ps1

Pour exécuter le script avec les contrôles PostgreSQL activés, utilisez la commande suivante :

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

Pour exécuter le script avec un composant et un chemin de sortie spécifiques, utilisez la commande suivante :

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

Options supplémentaires

Utilisez les options suivantes pour personnaliser le contrôle pré-mise à niveau :

-Component

Spécifiez un RMT Server ou un agent. Le script le détectera automatiquement s’il est omis

--db-password / -DbPassword

Mot de passe administrateur de la base de données RMT interne. Requis pour les contrôles PostgreSQL.

--output / -OutputPath

Indiquez où enregistrer le rapport. Par défaut, le rapport est enregistré dans /tmp/ (Linux) or C:\temp\ (Windows).

--target-version / -TargetVersion

La version du RMT que vous prévoyez d’installer; elle active des contrôles spécifiques à cette version.

--quiet / -Quiet

Filtre la sortie pour n’afficher que les résultats FAIL et WARN.

--verbose / -Verbose

La sortie affiche des données techniques détaillées pour chaque contrôle effectué.

Résultats du script et actions requises

Le tableau suivant décrit le résultat du script et l’action :

RésultatÉtatAction
PASSCODE DE SORTIE 0Aucun problème n’a été détecté. La mise à niveau se poursuit.
WARNCODE DE SORTIE 1La mise à niveau se poursuit, mais vous devez examiner le rapport à la recherche de risques non critiques.
FAILCODE DE SORTIE 2Mise à niveau annulée. Vous devez résoudre ces problèmes avant de réexécuter la mise à niveau.

Scripts de post-mise à niveau

Les scripts de contrôle d’intégrité après la mise à niveau s’exécutent automatiquement à la fin de chaque installation et mise à niveau du RMT. Ils vérifient que tous les services ont démarré correctement, que l’infrastructure est intègre et que la configuration est intacte. Le contrôle post-mise à niveau ne bloque pas le programme d’installation. Toutes les défaillances identifiées sont consignées dans le rapport final.

Contrôle post-mise à niveau manuel

Pour l’exécuter manuellement, suivez les étapes ci-dessous selon votre système d’exploitation :

Pour Linux :

Exécutez les commandes suivantes en tant qu’utilisateur racine ou avec des privilèges sudo :

  • Pour RMT Server :

sudo bash /opt/tableau/tabrmt/master/install-scripts/rmt-post-upgrade-check --component master --mode upgrade
  • Pour l’agent :

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

Pour Windows :

Les fichiers de post-mise à niveau pour RMT Server sont installés par défaut à l’emplacement suivant :

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

Les fichiers de post-mise à niveau de l’agent sont installés par défaut à l’emplacement suivant :

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

Pour exécuter les scripts manuellement, ouvrez PowerShell en tant qu’administrateur et accédez au répertoire d’installation de RMT avant d’exécuter les commandes :

  • Pour RMT Server :

.\rmt-post-upgrade-check.ps1 -Component master -Mode upgrade
  • Pour l’agent :

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

Options supplémentaires

Vous pouvez utiliser les options suivantes pour personnaliser le script :

--component / -Component

Spécifiez un RMT Server ou un agent. Le script tentera de le détecter automatiquement, s’il est omis.

--db-password / -DbPassword

Mot de passe de l’administrateur de la base de données RMT interne. Ceci est requis pour activer les contrôles PostgreSQL.

--output / -OutputPath

Chemin d’accès où le fichier de rapport sera enregistré. Par défaut : /tmp/ (Linux) ou C:\temp\ (Windows).

--target-version / -TargetVersion

La version spécifique de RMT vers laquelle vous effectuez la mise à niveau, utilisée pour les contrôles propres à cette version.

--quiet / -Quiet

Limite la sortie pour n’afficher que les résultats FAIL et WARN.

--verbose / -VerboseOutput

Fournit des résultats techniques détaillés pour chaque contrôle effectué.

Remarque : Nous vous recommandons de définir RMT_DB_PASSWORD comme variable d’environnement au lieu de la transmettre sur la ligne de commande, car les arguments de ligne de commande sont visibles dans la liste des processus.

Résultats du script et actions requises

Le tableau suivant décrit le résultat du script et l’action :

RésultatÉtatAction
PASSCODE DE SORTIE 0Le système est intègre. Aucune action n’est requise.
WARNCODE DE SORTIE 1Passez en revue les avertissements; la plupart se résolvent d’eux-mêmes (comme un petit retard au démarrage de RabbitMQ).
FAILCODE DE SORTIE 2Un ou plusieurs contrôles critiques ont échoué : veuillez enquêter et corriger le problème.

Rapports

Vous trouverez les rapports de pré-mise à niveau ici :

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

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

Vous trouverez les rapports de post-mise à niveau ici :

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

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

  • Windows (via le programme d’installation) : lorsque le programme d’installation exécute le contrôle, il utilise des noms de fichiers fixes :

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

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

    Pour plus d’informations sur les contrôles pré et post-mise à niveau dans le rapport, consultez la section Référence de la mise à niveau.

Exemple de rapport

Voici un exemple de rapport de contrôle d’intégrité pré-mise à niveau :

==================================================================
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

 

 

 

 

Merci de vos commentaires!Votre commentaire s été envoyé avec succès. Merci!