Externer Nachrichtenwarteschlangendienst (RabbitMQ) für Tableau Resource Monitoring Tool
Der Tableau Resource Monitoring Tool verwendet RabbitMQ als Nachrichtenwarteschlangendienst, um Daten von Agenten zu sammeln und an den RMT-Server zu übergeben. Die Informationen in der Warteschlange werden verarbeitet und zum Schluss im RMT-Repository (PostgreSQL-Datenbank) gespeichert.
Vor der Version 2022.3 wurde der RabbitMQ-Nachrichtenwarteschlangendienst automatisch mit dem RMT-Server installiert, was die einzige verfügbare Konfiguration war. Ab der RMT-Version 2022.3 können Sie RMT Server so umkonfigurieren, dass ein extern gehosteter RabbitMQ-Dienst verwendet wird. Wenn RMT Server für die Verwendung eines extern gehosteten Nachrichtenwarteschlangendienstes konfiguriert ist, bezeichnen wir diesen als den externen Nachrichtenwarteschlangendienst.
Mit dieser in Version 2022.3 neu hinzugefügten Option kann RMT Server auf die folgenden Weisen konfiguriert werden:
- Weiterhin den lokal installierten Nachrichtenwarteschlangendienst verwenden: Das bedeutet, dass RabbitMQ, welches automatisch mit RMT Server auf dem gleichen Computer installiert wird, als Nachrichtenwarteschlangendienst für RMT Server verwendet werden soll – weitere Änderungen werden an dieser Konfiguration nicht vorgenommen.
- RMT Server für die Verwendung eines externen Nachrichtenwarteschlangendienstes konfigurieren: Das bedeutet, dass das vom RMT verwendete RabbitMQ außerhalb von RMT Server gehostet wird. Zum gegenwärtigen Zeitpunkt wird als Hostingplattform für RabbitMQ nur AWS AMQ unterstützt. Da alle Nachrichten von den Agenten über RabbitMQ verlaufen, werden durch dieses externe Hosting auf dem Computer, auf dem RMT Server installiert ist, Ressourcen frei.
Zum Einrichten und Verwalten des externen Nachrichtenwarteschlangendienstes sollten Sie sich mit der AWS AMQ-Plattform gut auskennen. Wir empfehlen, dafür die Dokumentation auf der AWS-Website zu lesen. Außerdem müssen Sie auch wissen, wie der externe Nachrichtenwarteschlangendienst für RMT konfiguriert und verwaltet wird. In diesem Thema finden Sie diese Informationen in den folgenden Abschnitten.
Neuinstallation von Resource Monitoring Tool
Die Anweisungen in diesem Abschnitt gelten für eine neue Installation von Resource Monitoring Tool. Wenn Sie über eine bereits bestehende Installation verfügen und Ihren lokalen RabbitMQ in eine extern gehostete Konfiguration verschieben möchten, lesen Sie den Abschnitt Vorhandene Installationen von Tableau Resource Monitoring Tool dieses Themas.
Gehen Sie wie folgt vor, um das Tableau Resource Monitoring Tool (RMT) zu installieren und RMT Server für die Verwendung eines externen Nachrichtenwarteschlangendienstes umzukonfigurieren:
Erstellen Sie Amazon AMQ für RabbitMQ zum Hosten des externen Nachrichtenwarteschlangendienstes mit den folgenden Empfehlungen:
Verwenden Sie als Engine-Typ "RabbitMQ-Engine". Informationen zu der Version von RabbitMQ finden Sie im Abschnitt Produktkompatibilität.
Verwenden Sie die gleiche Standardversion wie bei lokal installiertem RabbitMQ verwendet. Weitere Informationen dazu finden Sie in der Tabelle zur Produktkompatibilität.
Verwenden Sie einen Single-Instance Broker.
Instance-Spezifikation: mq.m5.large, 2 vCPU/8 GB RAM.
Erstellen Sie RabbitMQ-Anmeldeinformationen (Benutzername/Kennwort).
Mehr darüber erfahren Sie auf der AWS-Dokumentations-Website unter Arbeiten mit Amazon MQ für RabbitMQ.
Testen Sie die Verbindung vom RMT Server zu dem Message Broker, indem Sie die RabbitMQ-Webkonsolen-URL auf der AWS MQ-Seite kopieren und in einen Browser auf RMT Server einfügen. Melden Sie sich mit dem Benutzernamen und dem Kennwort an, den bzw. das Sie beim Einrichten des Brokers erstellt haben.
Folgen Sie den Anweisungen in diesem Thema zum Installieren von RMT Server, aber überspringen Sie die Schritte zum Erstellen einer Umgebung. Das werden Sie später vornehmen, nachdem Sie RMT Server für die Verwendung des externen Repositorys konfiguriert haben.
Führen Sie "rmtadmin setup" wie folgt aus, um den externen RabbitMQ-Nachrichtenwarteschlangendienst zu konfigurieren:
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
Erstellen Sie nun eine Umgebung und laden Sie die Bootstrap-Datei herunter.
Führen Sie den folgenden Befehl aus, um eine Umgebung zu erstellen:
rmtadmin create-env --name=<myenvironment> --api-username=<TableauServer API user name> --api-password=<password for the Tableau Server API user account>
Laden Sie die Bootstrap-Datei zum Registrieren von Agenten herunter:
rmtadmin bootstrap-file --env=<myenvironment> --filename<The absolute or relative path including the file name>
Die Schritte werden detailliert im Thema Installieren des RMT-Servers über die Befehlszeile beschrieben.
Registrieren Sie Agenten erneut auf Tableau Server-Knoten gemäß den im Thema Installieren des Agenten mithilfe der Befehlszeile aufgeführten Anweisungen.
Vorhandene Installationen von Tableau Resource Monitoring Tool
Es gibt zwei Pfade, um eine vorhandene RMT-Installation, die einen lokalen Nachrichtenwarteschlangendienst nutzt, auf die Verwendung eines externen Nachrichtenwarteschlangendienstes umzustellen:
Migration mit Neuerstellung von Umgebungen: Dazu gehören das Erstellen des externen RabbitMQ-Dienstes, das Konfigurieren von RMT Server zur Verwendung des externen Nachrichtenwarteschlangendienstes, das Neuerstellen der Umgebungen und das Wiederholen sämtlicher benutzerdefinierter Konfigurationen (z. B. Schwellenwert für Vorfälle) sowie das erneute Registrieren der Agenten.
Bei Verwendung dieser Methode wird alles, was von Agenten kommt – Hardware-Metriken, TS-Protokolle, Visualisierungslasten, Hyper-Abfragen in der Warteschlange – während der Migration verloren gehen. Das ist fast so, als ob Sie eine Neuinstallation von RMT vornehmen (wie im Abschnitt oben beschrieben), bis auf die Installation von RMT selbst, in diesem Fall.
Manuelle Migration mit minimalen Datenverlusten: Diese Methode eignet sich besonders für Kunden, die in der Lage sind, die Anweisungen unabhängig zu implementieren, und sich dabei nicht mit dem Erstellen der Umgebungen und dem Neuerstellen von Schwellenwerten für Vorfälle befassen möchten. Bei dieser Methode bleiben Ereignisdaten während der Umstellung erhalten, allerdings gehen Prozessleistungsindikatoren, die während der Umstellung auf der Hardware von Tableau Server-Knoten erfasst wurden, verloren. Diese Migration erfolgt manuell und ist kein integriertes Migrations-Feature für Resource Monitoring Tool.
Die Vorgehensweise dafür sieht wie folgt aus:
Migrieren zu externem AWS AMQ
Schritt 1: Erstellen Sie Amazon AMQ für RabbitMQ zum Hosten des externen Nachrichtenwarteschlangendienstes mit den folgenden Empfehlungen.
- Verwenden Sie als Engine-Typ "RabbitMQ-Engine".
- Die Standardversion (3.9.13) ist gleich der mit RMT 22.2 gebündelten Version.
- Verwenden Sie "Single-Instance Broker".
- Verwenden Sie die standardmäßige Instanz-Größe (mq.m5.large, 2 vCPU/8 GB RAM).
- Legen Sie RabbitMQ-Benutzername/-Kennwort fest.
Mehr darüber erfahren Sie auf der AWS-Dokumentations-Website unter Arbeiten mit Amazon MQ für RabbitMQ.
Schritt 2: Testen Sie die Verbindung vom RMT Server.
Kopieren Sie die RabbitMQ-Webkonsolen-URL auf der AWS MQ-Seite und fügen Sie sie in einen Browser auf RMT Server ein. Melden Sie sich mit dem Benutzernamen und dem Kennwort an, den bzw. das Sie beim Einrichten des Brokers erstellt haben.
Schritt 3: Stoppen Sie RMT Agent-Dienste und heben Sie die Registrierung der Agenten auf.
Führen Sie auf jedem Knoten, auf dem ein Agent ausgeführt wird, die folgenden Befehle aus: Stoppen Sie RMT Server nicht, dieser sollte weiterhin ausgeführt werden.
rmtadmin stop
rmtadmin deregister
Schritt 4: Überprüfen Sie die Warteschlange.
Führen Sie auf dem RMT Server den Befehl rmtadmin status
aus und überprüfen Sie die Ausgabe. Wenn alle Werte in der Spalte "Total" (Gesamtwert) für jede der Warteschlangen 0 (oder fast 0) erreichen und auf diesem Niveau bleiben, fahren Sie mit dem nächsten Schritt weiter.
Schritt 5: Konfigurieren Sie RMT Server für die Verwendung des neuen Amazon MQ-Dienstes.
Der Wert von "aws_amq_servername" wird der gleiche wie der als Endpunkt in der Seite von Amazon MQ angegeben sein, außer dass das Protokollpräfix und der Port am Ende entfernt werden sollten. Siehe dazu das folgende Beispiel:
Ersetzen Sie: "amqps://b-9512e888-a4a3-4b79-a9c0-07418c101941.mq.us-west-2.amazonaws.com:5671
" durch: "B-9512e888-a4a3-4b79-a9c0-07418c101941.mq.us-west-2.amazonaws.com
"
Führen Sie nun rmtadmin master-setup
aus, und tauschen Sie den Benutzernamen und das Kennwort aus, das Sie für Amazon MQ erstellt haben.
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>
Hinweis:
- Ersetzen Sie nachfolgend den Namen in dem Argument "--mq-vhost" nur dann, wenn Sie Ihren eigenen virtuellen Host erstellt haben (was optional ist).
- Ebenso müssen Sie den Port ändern, wenn der Dienst zur Ausführung an einem Nichtstandardport eingerichtet ist.
- Der Wert für "--mq-tls-certificate-host" muss der Servername für Ihre AWS MQ-Instanz sein, wie zuvor in dem "--mq-server"-Argument verwendet (wenngleich hier auch ein Platzhalter möglich ist, was mehr Flexibilität bietet).
Schritt 6: Starten Sie den RMT-Server.
Navigieren Sie in den Installationsordner von RMT Server: cd 'c:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\'
Navigieren Sie in den Installationsordner von RMT Server: sudo /var/opt/tableau/tabrmt/master
Starten Sie RMT Server: rmtadmin start
Schritt 7: Registrieren Sie Agenten erneut.
- Laden Sie eine neue Bootstrap-Datei von RMT Server herunter.
- Navigieren Sie für den Zugriff auf die Agenten-Weboberfläche zu "http://localhost:9002/setup/register", und importieren Sie die Bootstrap-Datei.
- Klicken Sie auf "Nachrichtenwarteschlange testen". Wenn Sie eine Fehlermeldung erhalten, überprüfen Sie die Eingaben, die Sie zuvor getätigt haben.
- Klicken Sie auf "Verbindung zu Nachrichtenwarteschlange herstellen".
- Klicken Sie unter dem Abschnitt "Server" auf die Dropdown-Liste, in der "Neuer Umgebungsserver" bereits ausgewählt ist, aber anstatt den Standardwert zu akzeptieren, wählen Sie in der Liste den Server aus, den Sie registrieren möchten. Führen Sie einen Bildlauf nach unten durch und klicken Sie auf die Schaltfläche "Agent registrieren".
Schritt 8: Überprüfen Sie, dass RMT Server ausgeführt wird.
Melden Sie sich in dem Weboberflächentool von RMT Server an und vergewissern Sie sich, dass die neuen Daten verarbeitet werden.
Best Practices für Upgrades
Nachfolgend sind die allgemeinen Schritte aufgeführt, die Sie durchführen müssen, wenn Sie ein Upgrade auf Version 2022.3 (oder höher) vornehmen und dabei gleich auch auf die Verwendung eines externen Nachrichtenwarteschlangendienstes umstellen möchten.
Migration mit Neuerstellung der Umgebung:
- Führen Sie für RMT Server und alle Agenten ein Upgrade auf 2022.3 (oder höher) durch.
- Erstellen Sie einen Amazon AMQ-Broker-Dienst.
- Konfigurieren Sie RMT Server zur Verwendung des externen Nachrichtenwarteschlangendienstes.
- Erstellen Sie Umgebungen neu und registrieren Sie alle Agenten erneut.
- Erstellen Sie alle benutzerdefinierten Konfigurationen neu.
Hinweis: Sie werden einige Ereignis- und Hardware-Verarbeitungsdaten verlieren, und Sie werden auch die Schwellenwerte für Vorfälle neu konfigurieren müssen.
Manuelle Migration mit minimalen Datenverlusten:
- Führen Sie für RMT Server und alle Agenten ein Upgrade auf Version 2022.3 (oder höher) durch.
- Folgen Sie den Schritten, die im Migrationsabschnitt dieses Themas ausführlich beschrieben sind. Dazu gehört vor allem, einen Amazon AMQ-Broker-Dienst zu erstellen und RMT Server auf den externen Nachrichtenwarteschlangendienst umzustellen.
- Registrieren Sie die Agenten erneut.
Upgrade-Schritte mit Aktivierung von TLS für RabbitMQ
Da die Agenten in Versionen vor 2022.3 über eine unverschlüsselte Verbindung mit dem RabbitMQ-Nachrichtenwarteschlangendienst kommuniziert haben, müssen diese Agenten beim Upgrade auf Version 2022.3 oder höher aktualisiert werden, um die neuen sicheren Verbindungsdetails zu verwenden. Die Schritte dazu sind wie folgt:
Stoppen Sie nach Abschluss der im obigen Abschnitt beschriebenen Upgrade-Schritte alle Agenten, indem Sie den folgenden Befehl ausführen:
rmtadmin stop --agent
Laden Sie die Bootstrap-Datei für die Umgebung herunter, indem Sie den folgenden Befehl ausführen:
rmtadmin bootstrap-file --env<myenvironment> --filename <The absolute or relative path including the file name>
Führen Sie den folgenden Befehl auf allen Rechnern aus, auf denen der Agent installiert ist:
rmtadmin rotate-mq-certificate <BOOTSTRAP_FILE> --username=<RMT Server Username> --password-file=<RMT Server Password file name>
- Starten Sie jeden Agent-Computer neu, nachdem Sie erfolgreich den Befehl
rmtadmin rotate-mq-certificate
ausgeführt haben.
Produktkompatibilität
In dieser Tabelle ist nur die RMT-Version 2022.3 (und höher) aufgeführt, da der externe Nachrichtenwarteschlangendienst erst ab Version 2022.3 verfügbar ist.
RMT-Version | RabbitMQ-Version aus dem Lieferumfang von RMT | Unterstützte RabbitMQ-Version für externen Nachrichtenwarteschlangendienst |
22.3 | 3.10.5 | 3.10.5 |
Wer kann dies tun?
Zum Installieren des Resource Monitoring Tools müssen Sie über Folgendes verfügen:
- Administratorberechtigungen für den Computer, auf dem Sie Resource Monitoring Tool installieren.
- Tableau Server-Administrator-Site-spezifische Rolle
- Resource Monitoring Tool-Administratorkonto.