Service de mise en file d’attente de messages externes (RabbitMQ) pour Tableau Resource Monitoring Tool

Tableau Resource Monitoring Tool utilise RabbitMQ comme service de mise en file d’attente de messages pour collecter les données des agents et les transmettre au serveur RMT. Cette information dans la file d’attente est traitée et finalement stockée dans le référentiel RMT (base de données PostgreSQL).

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

Grâce à l’ajout de cette nouvelle option dans la version 2022.3, le serveur RMT peut être configuré comme suit :

  • Continuer à utiliser le service de mise en file d’attente de messages installé localement : cela signifie que le logiciel RabbitMQ installé automatiquement avec le serveur RMT sur le même ordinateur sera utilisé comme service de messages pour le serveur RMT, et aucune nouvelle configuration ne sera effectuée.
  • Configurer le serveur RMT pour utiliser un service de mise en file d’attente de messages externes : cela signifie que le logiciel RAbbitMQ que RMT utilise est hébergé hors du serveur RMT. AWS AMQ est la seule plateforme d’hébergement actuellement prise en charge pour RabbitMQ. Étant donné que tous les messages des agents passent par RabbitMQ, l’hébergement en externe libère les ressources de l’ordinateur où est installé le serveur RMT.

Pour configurer et gérer le service de mise en file d’attente des messages externes, il est important de bien connaître la plateforme AWS AMQ. Nous vous recommandons de consulter la documentation y relative sur le site AWS. Vous devrez également savoir comment configurer et gérer le service de mise en file d’attente des messages externes pour RMT. La procédure à suivre est décrite dans les sections suivantes de cette rubrique.

Nouvelle installation de Resource Monitoring Tool

Les instructions fournies dans cette section concernent une nouvelle installation de Resource Monitoring Tool. Si vous aviez déjà installé RabbitMQ et 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 de cette rubrique.

Suivez les étapes suivantes pour installer le Resource Monitoring Tool de Tableau et reconfigurer le serveur RMT pour utiliser un service de mise en file d’attente de messages externes :

  1. Créez Amazon AMQ pour Rabbit MQ pour héberger le service de mise en file d’attente de messages externes avec les recommandations suivantes :

    • Pour le type de moteur, utilisez un moteur RabbitMQ 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 lors d’une installation locale de RabbitMQ. Pour plus d’information, consultez le tableau de compatibilité des produits.

    • Utilisez un courtier à instance unique

    • Spécification de l’instance : mq.m5.large, 2 vCPU / 8 Go de RAM.

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

    Pour en savoir plus, consultez Utiliser Amazon MQ pour Rabbit MQ sur le site Documentation d’AWS.

  2. Testez la connexion entre le serveur RMT et le courtier de messages en copiant l’URL de la console Web RabbitMQ depuis la page AWS MQ et en la collant dans un navigateur Web sur le serveur RMT. Connectez-vous en utilisant le nom d’utilisateur et le mot de passe créés lors de la configuration du courtier

  3. Suivez les instructions de cette rubrique pour installer le serveur RMT, mais ignorez les étapes de création d’un environnement. Vous y reviendrez plus tard après avoir configuré le serveur RMT pour utiliser le référentiel externe.

  4. Exécutez le fichier de configuration rmtadmin comme suit pour configurer le service de mise en file d’attente de messages externes Rabbit 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

  5. Maintenant, créez 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 manière de migrer une installation RMT existante qui utilise actuellement un service de mise en file d’attente de messages local vers un service de mise en file d’attente de messages externes :

  • Migration avec recréation d’environnement : il s’agit de créer le service Rabbit MQ externe, de configurer le serveur RMT pour qu’il utilise le service de mise en file d’attente de messages externes, de recréer les environnements, de refaire toutes les configurations personnalisées comme les seuils d’incidents et de réenregistrer les agents.

    Avec cette méthode, toutes les opérations exécutées par l’agent, les métriques de matériel, les fichiers journaux TS, les charges de visualisation, les requêtes hyper en file d’attente mais pas encore traitées, seront perdus pendant la migration. Cela ressemble beaucoup au fait d’installer RMT pour la première fois comme décrit dans la section ci-dessus, sauf que RMT ne sera pas installé dans ce cas précis.

  • Migration manuelle avec perte minimale de données : cette option s’adresse spécifiquement aux clients capables d’appliquer les instructions de manière indépendante et ne souhaitant pas recréer les environnements et les seuils d’incidents. Cette méthode empêche la perte des données d’événements pendant la transition, mais les données du compteur de processus extraites à partir du matériel du nœud Tableau Server pendant la transition ne seront pas préservées. Cette migration est manuelle et n’est pas une fonctionnalité de migration intégrée pour Resource Monitoring Tool.

    Les instructions à cet égard sont décrites ci-dessous :

Migrer vers AWS AMQ externe

Étape 1 : créez Amazon AMQ pour Rabbit MQ pour héberger le service de mise en file d’attente de messages externes avec les recommandations suivantes.

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

Pour en savoir plus, consultez Utiliser Amazon MQ pour Rabbit MQ sur le site Documentation d’AWS.

Étape 2 : Tester la connexion du serveur RMT

Copiez l’URL de la console Web RabbitMQ depuis la page AWS MQ et collez-le dans un navigateur Web sur le serveur RMT. Connectez-vous en utilisant le nom d’utilisateur et le mot de passe créés lors de la configuration du courtier

Étape 3 : Arrêter les services de l’Agent RMT et désenregistrer les Agents

Exécutez les commandes suivantes sur chaque nœud où s’exécute l’Agent. N’arrêtez pas le serveur RMT, il doit continuer à fonctionner :

rmtadmin stop

rmtadmin deregister

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

Sur le serveur RMT, exécutez rmtadmin status et analysez la sortie. Lorsque toutes les valeurs de la colonne Total de chaque file d’attente atteignent 0 (ou presque 0) et demeurent stables, passez à l’étape suivante.

Étape 5 : Configurer le serveur RMT pour utiliser le nouveau service Amazon MQ

La valeur aws_amq_servername sera identique au point de terminaison indiqué sur la page d’Amazon MQ. Néanmoins, il faut supprimer le préfixe de protocole et le port à la fin. Observez l’exemple suivant :

Replacer : "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 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-après uniquement si vous avez créé votre propre hôte virtuel (cette opération est facultative).
  • Parallèlement, changez le port si le service est configuré pour fonctionner sur un port autre que le port par défaut.
  • La valeur de l’argument --mq-tls-certificate-host doit être le nom du serveur de votre instance AWS MQ, utilisé précédemment dans l’argument --mq-server, même s’il peut s’agir d’un caractère générique pour obtenir une plus grande marge de manœuvre.

Étape 6 : Démarrer 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éenregistrer les Agents

  • Téléchargez un nouveau fichier bootstrap depuis le serveur RMT.
  • Accédez à l’interface Web de l’Agent en naviguant vers http://localhost:9002/setup/register, puis importez le fichier bootstrap.
  • Cliquez sur Tester la file d’attente de messages. Passez en revue les entrées précédentes si une erreur se produit.
  • Cliquer sur Se connecter à la file d’attente de messages
  • Dans la section Serveur, cliquez sur la liste déroulante « Nouvel environnement serveur » présélectionné et choisissez le serveur que vous essayez d’enregistrer dans la liste au lieu d’accepter la valeur par défaut. Faites défiler le texte jusqu’au bout et cliquez sur le bouton « Enregistrer un agent ».

Étape 8 : Vérifier que le serveur RMT fonctionne

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

Meilleures pratiques en matière de mise à niveau

Vous devez suivre les étapes générales ci-après si vous souhaitez passer à la version 2022.3 ou une version ultérieure et migrer parallèlement vers l’utilisation d’un service de mise en file d’attente de messages externes.

Migration avec recréation d’environnement :

  1. Mettez à niveau le serveur RMT et tous les Agents vers la version 2022.3 ou des versions ultérieures.
  2. Créez un service de courtier Amazon AMQ.
  3. Configurez le serveur RMT pour qu’il utilise le service de mise en file d’attente de messages externes.
  4. Recréez les environnements et réenregistrez tous les Agents
  5. Recréez les configurations personnalisées.

Remarque : vous perdrez certaines données relatives au traitement des événements et de matériel et vous devrez également reconfigurer les seuils d’incidents.

Migration manuelle avec perte de données minimale :

  • Mettez à niveau le serveur RMT et tous les Agents vers la version 2022.3 ou des versions ultérieures
  • Suivez la procédure décrite dans la section Migration de cette rubrique. Il s’agit principalement de créer un service de courtier Amazon AMQ et de faire pointer le serveur RMT vers le service de mise en file d’attente de messages externes.
  • 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 pour utiliser les nouveaux détails de connexion sécurisée. Les étapes pour ce faire sont les suivantes :

  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 de démarrage 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 chacun des ordinateurs où 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 Agent après avoir exécuté avec succès la commande rmtadmin rotate-mq-certificate.

Compatibilité du produit

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

Version RMTVersion de RabbitMQ livrée avec RMTVersions de RabbitMQ prises en charge pour le service de mise en file d’attente de messages externes
22,33.10.53.10.5

Qui peut le faire?

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!Votre commentaire s été envoyé avec succès. Merci!