Scripts de vérification de l’intégrité en cas de mise à niveau de RMT

Depuis la version 2025.3.6, le programme d’installation de RMT inclut un script de vérification de l’intégrité avant et après la 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, tels qu’une mauvaise configuration, une dérive d’autorisation, un manque d’espace disque, des certificats expirés ou des défaillances de service qui étaient présents auparavant et peuvent entraîner l’échec de la mise à niveau.

Les scripts de vérification de l’intégrité avant et après la 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 la saturation de l’espace disque.

  • Intégrité de l’autorisation et de la sécurité : identifie les propriétaires de fichiers transférés ou les certificats SSL expirés qui empêcheraient sinon les services de redémarrer ou les agents de se reconnecter.

  • Validation des dépendances : permet de s’assurer 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 « fausse rétrogradation » causées par des régressions de 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 inspecte votre serveur RMT ou l’hôte de l’Agent alors que l’installation existante est encore intacte et génère un rapport PASS / FAIL / WARN.

Pour Linux, la vérification préalable à la mise à niveau s’exécute automatiquement dans le cadre de :

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

Pour ignorer la vérification automatique (non recommandé) :

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

Pour Windows, le programme d’installation exécute automatiquement la vérification de pré-mise à niveau. Pendant l’installation, vous êtes également invité à choisir d’ignorer la mise à niveau. Toutefois, cette option n’est pas recommandée.

Vérification manuelle avant la mise à niveau

Vous pouvez exécuter le script manuellement pour prévisualiser les problèmes potentiels. Pour l’exécuter manuellement, suivez les étapes suivantes en fonction de votre système d’exploitation :

Pour Linux :

Exécutez les commandes en tant qu’utilisateur racine. Pour inclure des vérifications 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 avec les vérifications PostgreSQL activées, 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 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 le Serveur RMT 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 avec les vérifications PostgreSQL activées, utilisez la commande suivante :

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

Pour exécuter 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 la vérification préalable à la mise à niveau :

-Component

Spécifiez un Agent ou un Serveur RMT. Le script le détecte automatiquement s’il est omis

--db-password / -DbPassword

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

--output / -OutputPath

Indiquez où enregistrer le rapport. Par défaut, l’emplacement est défini sur /tmp/ (Linux) or C:\temp\ (Windows).

--target-version / -TargetVersion

La version RMT que vous prévoyez d’installer ; permet d’effectuer des vérifications spécifiques à la 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
PASSEXIT CODE 0Aucun problème n’a été détecté. La mise à niveau se poursuit.
WARNEXIT CODE 1La mise à niveau se poursuit, mais vous devez examiner le rapport pour les risques non critiques.
FAILEXIT CODE 2Mise à niveau abandonnée. Vous devez résoudre ces problèmes avant de réexécuter la mise à niveau.

Script de post-mise à niveau

Le script de vérification de l’intégrité après la mise à niveau s’exécute automatiquement à la fin de chaque installation et mise à niveau RMT. Il vérifie que tous les services ont correctement démarré, que l’infrastructure est saine et la configuration intacte. La vérification après la mise à niveau ne bloque pas le programme d’installation. Toutes les défaillances identifiées sont consignées dans le rapport final.

Vérification manuelle après la mise à niveau

Pour l’exécuter manuellement, suivez les étapes suivantes en fonction de votre système d’exploitation :

Pour Linux :

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

  • Pour le Serveur RMT :

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 post-mise à niveau pour le Serveur RMT 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 RMT avant d’exécuter les commandes :

  • Pour le Serveur RMT :

.\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 Agent ou un Serveur RMT. 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. Nécessaire pour activer les vérifications PostgreSQL.

--output / -OutputPath

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

--target-version / -TargetVersion

Version RMT spécifique vers laquelle vous effectuez la mise à niveau, utilisée pour les vérifications spécifiques à la version.

--quiet / -Quiet

Réduit la sortie de manière à n’afficher que les résultats FAIL et WARN.

--verbose / -VerboseOutput

Fournit des résultats techniques détaillés pour chaque vérification effectuée.

Remarque : nous vous recommandons de définir RMT_DB_PASSWORD comme variable d’environnement plutôt que 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
PASSEXIT CODE 0Le système est sain. Aucune action requise.
WARNEXIT CODE 1Passez en revue les avertissements. La plupart se résolvent d’eux-mêmes (p. ex., décalage temporaire du démarrage de RabbitMQ).
FAILEXIT CODE 2Une ou plusieurs vérifications critiques ont échoué. Enquêtez et corrigez.

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) : lorsqu’il exécute la vérification, le programme d’installation 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 vérifications avant et après la mise à niveau dans le rapport, consultez la section Référence de mise à niveau.

Exemple de rapport

Voici un exemple de rapport de vérification de l’état avant la 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 !Avis correctement envoyé. Merci