Service de file d’attente de messages externe (RabbitMQ) pour Tableau Resource Monitoring Tool

Le Tableau Resource Monitoring Tool utilise RabbitMQ comme service de file d’attente de messages pour collecter les données des Agents et les transférer au Serveur RMT. Ces informations de file d’attente sont traitées et éventuellement stockées dans le référentiel RMT (base de données PostgreSQL).

Avant la version 2022.3, le service de file d’attente de messages RabbitMQ était automatiquement installé avec le Serveur RMT et c’était la seule configuration disponible. Depuis la version 2022.3 de RMT, vous pouvez reconfigurer RMT Server de manière à utiliser un service RabbitMQ hébergé en externe. Lorsque RMT Server est configuré pour utiliser un service de file d’attente de messages hébergé en externe, nous l’appelons Service de file d’attente de messages externe.

Avec cette nouvelle option ajoutée dans la version 2022.3, RMT Server peut être configuré des manières suivantes :

  • Continuer à utiliser le service de file d’attente des message externe installé localement : dans ce cas de figure, la base de données RabbitMQ qui est automatiquement installée avec le Serveur RMT sur la même machine sera utilisée comme référentiel pour le Serveur RMT, et aucune autre modification ne sera apportée à cette configuration.
  • Configurer le Serveur RMT de manière à utiliser un service de file d’attente de messages externe : cela signifie que RabbitMQ utilisé par RMT est hébergé en externe. Actuellement, seul AWS AMQ est pris en charge en tant que plate-forme d’hébergement pour RabbitMQ. Étant donné que tous les messages des Agents passent par RabbitMQ, l’hébergement en externe libère des ressources de la machine sur laquelle le Serveur RMT est installé.

Pour configurer et gérer le service de file d’attente de messages externe, vous devez avoir une bonne compréhension de la plate-forme AWS AMQ. Nous vous recommandons de consulter la Documentation sur le site AWS. Vous devrez également savoir comment configurer et gérer le service de file d’attente de messages externe pour RMT. Cette rubrique vous fournira ces informations dans les sections ci-dessous.

Nouvelle installation de Resource Monitoring Tool

Les instructions fournies dans cette section s’appliquent à une nouvelle installation de Resource Monitoring Tool . Si vous avez une installation existante et que vous souhaitez déplacer votre RabbitMQ local vers une configuration hébergée en externe, consultez la section Installations existantes de Tableau Resource Monitoring Tool dans cette rubrique.

Utilisez les étapes suivantes pour installer Tableau Resource Monitoring Tool et reconfigurer le Serveur RMT de manière à utiliser un service de file d’attente de messages externe :

  1. Créez Amazon AMQ pour RabbitMQ pour héberger le service de file d’attente de messages externe avec les recommandations suivantes :

    • Utilisez le moteur RabbitMQ comme type de moteur. Pour connaître la version de RabbitMQ, consultez la section Compatibilité des produits.

    • Utilisez la même version par défaut que celle utilisée lorsque RabbitMQ est installé localement. Pour plus d’informations, consultez le tableau de compatibilité des produits.

    • Utilisez un broker à instance unique.

    • Spécification de l’instance : mq.m5.large, 2 processeurs virtuels/8 GiB de RAM.

    • Créez un nom d’utilisateur/mot de passe RabbitMQ.

    Pour en savoir plus, consultez Utilisation d’Amazon MQ pour RabbitMQ sur le site de documentation d’AWS.

  2. Testez la connexion du Serveur RMT au broker de messages en copiant l’URL de la console Web RabbitMQ depuis la page AWS MQ et collez-la dans un navigateur Web sur le Serveur RMT. Connectez-vous via le nom d’utilisateur et le mot de passe que vous avez créés lors de la configuration du broker.

  3. Suivez les instructions de cette rubrique pour installer le Serveur RMT, mais ignorez les étapes de création d’un environnement. Vous y viendrez plus tard après avoir configuré le Serveur RMT de manière à ce qu’il utilise le référentiel externe.

  4. Exécutez la commande rmtadmin setup comme suit pour configurer le service de file d’attente de messages externe RabbitMQ :

    rmtadmin master-setup --mq-config=external --mq-server=aws_amq_servername --mq-vhost='/' --mq-port=5671 --mq-username=aws_amq_username --mq-password='aws_amq_password' --mq-tls-certificate-host=aws_amq_servername

  5. Créez maintenant un environnement et téléchargez le fichier bootstrap.

    • Exécutez la commande suivante pour créer un environnement : rmtadmin create-env --name=<myenvironment> --api-username=<TableauServer API user name> --api-password=<password for the Tableau Server API user account>

    • Téléchargez le fichier bootstrap pour enregistrer les Agents : rmtadmin bootstrap-file --env=<myenvironment> --filename<The absolute or relative path including the file name>

      Les étapes sont décrites en détail dans la rubrique Installer le Serveur RMT à la ligne de commande.

  6. Réenregistrez les Agents sur les nœuds Tableau Server en suivant les instructions de la rubrique Installer l’Agent à la ligne de commande.

Installations existantes de Tableau Resource Monitoring Tool

Il existe deux chemins pour migrer une installation RMT existante qui utilise actuellement un service de file d’attente de messages local vers un service de file d’attente de messages externe :

  • Migration avec recréation d’environnement : cette méthode implique la création du service RabbitMQ externe, la configuration du Serveur RMT de manière à utiliser le service de file d’attente de messages externe, la recréation des environnements, la refonte de toutes les configurations personnalisées telles que les seuils d’incident et le réenregistrement des Agents.

    Si vous choisissez cette méthode, vous perdrez, au cours de la migration, toutes les informations de l’Agent, des métriques matérielles, des journaux TS, des charges de visualisation, des requêtes hyper dans la file d’attente mais pas encore traitées. Le procssus s’apparente largement à une nouvelle installation de RMT décrite dans la section ci-dessus, sauf que vous n’installerez pas RMT dans ce cas.

  • Migration manuelle avec perte de données minimale : cette méthode est spécifiquement destinée aux clients qui sont en mesure de mettre en œuvre les instructions de manière indépendante et qui ne souhaitent pas avoir à recréer les environnements et à recréer les seuils d’incidents. Elle empêchera la perte des données d’événement pendant la transition, mais les informations de compteur de processus capturées à partir du matériel du nœud Tableau Server pendant la transition ne seront pas conservées. Cette migration est manuelle et non une fonctionnalité de migration intégrée pour Resource Monitoring Tool.

    Les instructions de cette procédure sont décrites ci-dessous :

Migration vers une instance AWS AMQ externe

Étape 1 : Créez Amazon AMQ pour RabbitMQ pour héberger le service de file d’attente de messages externe avec les recommandations suivantes.

  • Utilisez le type de moteur RabbitMQ.
  • La version par défaut (3.9.13) est égale à la version groupée RMT 22.2.
  • Utilisez un broker à instance unique.
  • Utilisez la taille d’instance par défaut (mq.m5.large, 2 vCPU/8 GiB de RAM).
  • Définissez le nom d’utilisateur/mot de passe RabbitMQ.

Pour en savoir plus, consultez Utilisation d’Amazon MQ pour RabbitMQ sur le site de documentation d’AWS.

Étape 2 : Testez la connexion à partir du Serveur RMT

Copiez l’URL de la console Web RabbitMQ à partir de la page AWS MQ et collez-la dans un navigateur Web sur le Serveur RMT. Connectez-vous via le nom d’utilisateur et le mot de passe que vous avez créés lors de la configuration du broker.

Étape 3 : Arrêtez les services d’Agent RMT et désenregistrez les Agents

Exécutez les commandes suivantes sur chaque nœud sur lequel l’Agent est en cours d’exécution. N’arrêtez pas le Serveur RMT, il doit continuer à fonctionner. :

rmtadmin stop

rmtadmin deregister

Étape 4 : Vérifiez la file d’attente.

Sur le Serveur RMT, exécutez la commande rmtadmin status et vérifiez le résultat. Lorsque toutes les valeurs de la colonne Total pour chacune des files d’attente atteignent 0 (ou presque 0) et restent à cette valeur, passez à l’étape suivante.

Étape 5 : Configurez le Serveur RMT de manière à utiliser le nouveau service Amazon MQ

La valeur aws_amq_servername sera la même que le point de terminaison répertorié dans la page d’Amazon MQ, sauf que le préfixe de protocole et le port à la fin doivent être supprimés. Consultez l’exemple suivant :

Remplacez : "amqps://b-9512e888-a4a3-4b79-a9c0-07418c101941.mq.us-west-2.amazonaws.com:5671" par : "B-9512e888-a4a3-4b79-a9c0-07418c101941.mq.us-west-2.amazonaws.com"

Ensuite, exécutez rmtadmin master-setup en remplaçant le nom d’utilisateur et le mot de passe que vous avez créés pour Amazon MQ.

rmtadmin master-setup --mq-config=external --mq-server=aws_amq_servername --mq-vhost='/' --mq-port=5671 --mq-username=aws_amq_username --mq-password=<aws_amq_password> --mq-tls-certificate-host=<aws_amq_servername>

Notez les points suivants :

  • Remplacez le nom dans l’argument --mq-vhost ci-dessous uniquement si vous avez créé votre propre hôte virtuel (facultatif).
  • De même, modifiez le port si le service est configuré pour s’exécuter sur un port autre que celui par défaut.
  • La valeur de --mq-tls-certificate-host doit être le nom du serveur pour votre instance AWS MQ, tel qu’utilisé précédemment dans l’argument --mq-server, bien qu’il puisse s’agir d’un caractère générique pour plus de flexibilité.

Étape 6 : Démarrez le Serveur RMT

Accédez au dossier d’installation du Serveur RMT : cd 'c:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\'

Accédez au dossier d’installation du Serveur RMT : sudo /var/opt/tableau/tabrmt/master

Démarrez le Serveur RMT : rmtadmin start

Étape 7 : Réenregistrez les Agents

  • Téléchargez un nouveau fichier bootstrap à partir du Serveur RMT.
  • En accédant à l’interface Web de l’Agent via http://localhost:9002/setup/register, importez le fichier bootstrap.
  • Cliquez sur Tester la file d’attente des messages. Passez en revue les entrées précédentes si vous recevez une erreur.
  • Cliquez sur Se connecter à la file d’attente de messages
  • Sous la section Serveur, cliquez sur le menu déroulant avec « Nouveau serveur d’environnement » présélectionné, et plutôt que d’accepter la valeur par défaut, choisissez le serveur que vous essayez d’enregistrer dans la liste. Faites défiler vers le bas et cliquez sur le bouton « Enregistrer l’agent »

Étape 8 : Vérifiez que le Serveur RMT est en cours d’exécution

Connectez-vous à l’outil d’interface Web du Serveur RMT et vérifiez que de nouvelles données sont en cours de traitement.

Meilleures pratiques de mise à niveau

Voici les étapes générales que vous devez suivre si vous souhaitez effectuer une mise à niveau vers une version 2022.3 ou ultérieure et migrer vers l’utilisation d’un service de file d’attente de messages externe en même temps.

Migration avec recréation de l’environnement :

  1. Mettez à niveau le Serveur RMT et tous les Agents vers la version 2022.3 ou ultérieure
  2. Créez un service broker pour Amazon AMQ.
  3. Configurez le Serveur RMT pour qu’il utilise le service de file d’attente de messages externe
  4. Recréez des environnements et réenregistrez tous les Agents
  5. Recréez toutes les configurations personnalisées.

Remarque : vous allez perdre certaines données de traitement des événements et du matériel et vous devrez également reconfigurer les seuils d’incident.

Migration manuelle avec perte de données minimale :

  • Mettez à niveau le Serveur RMT et tous les Agents vers la version 2022.3 ou ultérieure
  • Suivez les étapes détaillées dans la section migration de cette rubrique. Cela implique principalement la création d’un service Broker pour Amazon AMQ et un Serveur RMT pointant vers le service de file d’attente de messages externe.
  • Réenregistrez les Agents.

Étapes de mise à niveau avec l’activation de TLS pour RabbitMQ

Étant donné que les agents des versions antérieures à 2022.3 communiquent à l’aide d’une connexion non chiffrée au service de file d’attente de messages RabbitMQ, lors de la mise à niveau vers la version 2022.3 ou ultérieure, ces agents doivent être mis à jour de manière à utiliser les nouveaux détails de connexion sécurisée. Voici les étapes à suivre :

  1. Après avoir terminé les étapes de mise à niveau décrites dans la section ci-dessus, arrêtez tous les agents en exécutant la commande suivante :

    rmtadmin stop --agent

  2. Téléchargez le fichier bootstrap de l’environnement en exécutant la commande suivante :

    rmtadmin bootstrap-file --env<myenvironment> --filename <The absolute or relative path including the file name>

  3. Exécutez la commande suivante sur chaque machine sur lequel l’Agent est installé :

    rmtadmin rotate-mq-certificate <BOOTSTRAP_FILE> --username=<RMT Server Username> --password-file=<RMT Server Password file name>

  4. Redémarrez chaque ordinateur d’Agent après avoir exécuté avec succès la commande rmtadmin rotate-mq-certificate.

Compatibilité produit

Ce tableau répertorie uniquement les versions 2022.3 et ultérieures de RMT, car la file d’attente de messages externe n’est disponible qu’à partir de la version 2022.3 et ultérieure.

Version RMTVersion RabbitMQ livrée avec RMTPrise en charge de la version RabbitMQ pour le service de file d’attente de messages externe
22.33.10.53.10.5

Qui dispose des autorisations nécessaires ?

Pour installer Resource Monitoring Tool, vous devez avoir tous les éléments suivants :

  • Autorisations d’administrateur sur la machine où vous installez Resource Monitoring Tool.
  • Rôle sur le site d’administrateur Tableau Server.
  • Compte administrateur Resource Monitoring Tool.
Merci de vos commentaires !Avis correctement envoyé. Merci