Servicio de cola de mensajes externos (RabbitMQ) para Resource Monitoring Tool de Tableau
Resource Monitoring Tool de Tableau utiliza RabbitMQ como su servicio de cola de mensajes para recopilar datos de los agentes y llevarlos al servidor RMT. Esta información en la cola se procesa y finalmente se almacena en el repositorio RMT (base de datos PostgreSQL).
Antes de la versión 2022.3, el servicio de cola de mensajes de RabbitMQ se instalaba automáticamente con el servidor RMT y esta era la única configuración disponible. A partir de la versión 2022.3 de RMT, puede reconfigurar el servidor RMT para usar un servicio RabbitMQ alojado externamente. Cuando el servidor RMT está configurado para usar un servicio de cola de mensajes alojado externamente, nos referimos a él como el servicio de cola de mensajes externo.
Con esta nueva opción agregada en la versión 2022.3, RMT Server se puede configurar de las siguientes maneras:
- Seguir utilizando el servicio de cola de mensajes instalado localmente: esto significa que RabbitMQ, que se instala automáticamente con RMT Server en la misma máquina, se utilizará como servicio de mensajes para RMT Server, y no se realizarán más cambios en esta configuración.
- Configure el servidor RMT para usar un servicio de cola de mensajes externo: esto significa que RabbitMQ que usa RMT está alojado fuera del servidor RMT. Actualmente, solo se admite AWS AMQ como plataforma de alojamiento para RabbitMQ. Dado que todos los mensajes de los agentes pasan por RabbitMQ, al alojarlos de forma externa, se liberan recursos de la máquina donde está instalado el servidor RMT.
Para configurar y administrar el servicio de cola de mensajes externos, debe tener un buen conocimiento de la plataforma AWS AMQ. Recomendamos revisar la documentación en el sitio de AWS. También necesitará saber cómo configurar y administrar el servicio de cola de mensajes externos para RMT. Este tema le proporcionará esa información en las secciones a continuación.
Nueva instalación de Resource Monitoring Tool
Las instrucciones proporcionadas en esta sección se aplican a una nueva instalación de Resource Monitoring Tool. Si tiene una instalación existente y desea mover su RabbitMQ local a una configuración alojada externamente, consulte la sección Instalaciones existentes de Resource Monitoring Tool de Tableau de este tema.
Use los siguientes pasos para instalar la Tableau Resource Monitoring Tool y reconfigure RMT Server para usar un servicio de cola de mensajes externo:
Cree Amazon AMQ para Rabbit MQ para alojar el servicio de cola de mensajes externo con las siguientes recomendaciones:
Para el tipo de motor, utilice el motor RabbitMQ. Para la versión de Rabbit MQ, consulte la sección Compatibilidad del producto.
Utilice la misma versión predeterminada que la utilizada cuando RabbitMQ está instalado localmente. Para obtener más información, consulte la tabla de compatibilidad de productos.
Utilice un agente de una sola instancia.
Especificación de instancia: mq.m5.large, 2 vCPU/8 GiB RAM.
Cree un nombre de usuario/contraseña de RabbitMQ.
Para obtener más información, consulte Trabajar con Amazon MQ para Rabbit MQ en el sitio de documentación de AWS.
Pruebe la conexión del servidor RMT al agente de mensajes copiando la URL de la consola web de RabbitMQ desde la página de AWS MQ y péguela en un navegador web en el servidor RMT. Inicie sesión con el nombre de usuario y la contraseña que creó cuando configuró el agente.
Siga las instrucciones de este tema para instalar RMT Server, pero omita los pasos para crear un entorno. Lo hará más tarde después de configurar RMT Server para usar el repositorio externo.
Ejecute la configuración de rmtadmin de la siguiente manera para configurar el servicio de cola de mensajes de Rabbit MQ externo:
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
Ahora cree un entorno y descargue el archivo de arranque.
Ejecute el siguiente comando para crear un entorno:
rmtadmin create-env --name=<myenvironment> --api-username=<TableauServer API user name> --api-password=<password for the Tableau Server API user account>
Descargue el archivo de arranque para registrar agentes:
rmtadmin bootstrap-file --env=<myenvironment> --filename<The absolute or relative path including the file name>
Los pasos se describen con todo detalle en el tema Instalar el servidor de RMT mediante la línea de comandos..
Vuelva a registrar los agentes en los nodos de Tableau Server siguiendo las instrucciones del tema Instalar el agente usando la línea de comandos.
Instalaciones existentes de Resource Monitoring Tool de Tableau
Hay dos caminos para migrar una instalación de RMT existente que actualmente usa un servicio de cola de mensajes local a un servicio de cola de mensajes externo:
Migración con recreación del entorno: esto implica crear el servicio Rabbit MQ externo, configurar el servidor RMT para usar el servicio de cola de mensajes externo, recrear los entornos y rehacer todas las configuraciones personalizadas, como umbrales de incidentes, y volver a registrar los agentes.
Al usar este método, todo lo que provenga del Agente, las métricas de hardware, los registros de TS, las cargas de visualización, las consultas de hyper en la cola pero que aún no se hayan procesado se perderán durante la migración. Esto es muy similar a hacer una nueva instalación de RMT descrita en la sección anterior, excepto que no instalará RMT en este caso.
Migración manual con pérdida de datos mínima: esto es específicamente para clientes que pueden implementar las instrucciones de forma independiente y no quieren lidiar con la recreación de entornos y la recreación de umbrales de incidentes. Este método evitará que los datos de eventos se pierdan durante la transición, pero no se conservará la información del contador de procesos capturada del hardware del nodo de Tableau Server durante la transición. Esta migración es manual y no una funcionalidad de migración integrada para Resource Monitoring Tool.
Las instrucciones para hacerlo se describen a continuación:
Migración a AWS AMQ externo
Paso 1: Cree Amazon AMQ para Rabbit MQ para alojar el servicio de cola de mensajes externo con las siguientes recomendaciones.
- Utilice el tipo de motor RabbitMQ.
- La versión predeterminada (3.9.13) es igual a la versión incluida de RMT 22.2.
- Utilice un agente de instancia única.
- Use el tamaño de instancia predeterminado (mq.m5.large, 2 vCPU/8 GiB RAM).
- Establezca el nombre de usuario/contraseña de RabbitMQ.
Para obtener más información, consulte Trabajar con Amazon MQ para Rabbit MQ en el sitio de documentación de AWS.
Paso 2: Pruebe la conexión desde el servidor RMT
Copie la URL de la consola web de RabbitMQ desde la página de AWS MQ y péguela en un navegador web en el servidor RMT. Inicie sesión con el nombre de usuario y la contraseña que creó cuando configuró el agente.
Paso 3: Detenga los servicios del agente RMT y anule el registro de los agentes
Ejecute los siguientes comandos en cada nodo donde se ejecute el agente: No detenga el servidor RMT, debe seguir ejecutándose:
rmtadmin stop
rmtadmin deregister
Paso 4: Verificar la cola.
En el servidor RMT, ejecute rmtadmin status
y revise la salida. Cuando todos los valores en la columna Total para cada una de las colas lleguen a 0 (o casi a 0) y permanezcan en ese valor, continúe con el siguiente paso.
Paso 5: Configure el servidor RMT para usar el nuevo servicio Amazon MQ
El valor de aws_amq_servername será el mismo que el punto de enlace que aparece en la página de Amazon MQ, excepto que el prefijo de protocolo y el puerto al final deben eliminarse. Consulte el siguiente ejemplo:
Reemplace: "amqps://b-9512e888-a4a3-4b79-a9c0-07418c101941.mq.us-west-2.amazonaws.com:5671
" con: "B-9512e888-a4a3-4b79-a9c0-07418c101941.mq.us-west-2.amazonaws.com
"
Ahora, ejecute rmtadmin master-setup
, sustituyendo el nombre de usuario y la contraseña que creó para 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>
Tenga en cuenta lo siguiente:
- Reemplace el nombre en el argumento --mq-vhost a continuación solo si creó su propio host virtual (es opcional), .
- De manera similar, cambie el puerto si el servicio está configurado para ejecutarse en un puerto no predeterminado.
- El valor de --mq-tls-certificate-host debe ser el nombre del servidor para su instancia de AWS MQ, como se usó anteriormente en el argumento --mq-server, aunque puede ser un comodín para mayor flexibilidad.
Paso 6: Iniciar el servidor RMT
Vaya a la carpeta de instalación del servidor RMT: cd 'c:\Program Files\Tableau\Tableau Resource Monitoring Tool\master\'
Vaya a la carpeta de instalación del servidor RMT: sudo /var/opt/tableau/tabrmt/master
Inicie RMT Server: rmtadmin start
Paso 7: Vuelva a registrar agentes
- Descargue un nuevo archivo de arranque del servidor RMT.
- Accediendo a la interfaz web del agente navegando a http://localhost:9002/setup/register, importe el archivo de arranque.
- Haga clic en Probar cola de mensajes. Revise las entradas anteriores si recibe un error.
- Haga clic en Conectar a la cola de mensajes
- En la sección Servidor, haga clic en el menú desplegable con "Nuevo servidor de entorno" preseleccionado y, en lugar de aceptar el valor predeterminado, elija el servidor que está intentando registrar de la lista. Desplácese hasta la parte inferior y haga clic en el botón "Registrar agente"
Paso 8: Verifique que el servidor RMT se esté ejecutando
Inicie sesión en la herramienta de interfaz web del servidor RMT y verifique que se estén procesando nuevos datos.
Practicas recomendadas sobre la actualización
Estos son los pasos generales que debe seguir si desea actualizar a una versión 2022.3 o posterior y migrar para usar un servicio de cola de mensajes externo al mismo tiempo.
Migración con recreación ambiental:
- Actualice el servidor RMT y todos los agentes a 2022.3 o posterior
- Cree un servicio de agente de Amazon AMQ.
- Configurar el servidor RMT para usar el servicio de cola de mensajes externos
- Recrear entornos y volver a registrar a todos los Agentes
- Vuelva a crear cualquier configuración personalizada.
Nota: Perderá algunos datos de procesamiento de eventos y hardware y también deberá volver a configurar los umbrales de incidentes.
Migración manual con mínima pérdida de datos:
- Actualice el servidor RMT y todos los agentes a la versión 2022.3 o posterior
- Siga los pasos detallados en la sección de migración de este tema. Esto implica principalmente la creación de un servicio de agente de Amazon AMQ y un servidor RMT que apunte al servicio de cola de mensajes externo.
- Vuelva a registrar a los agentes.
Pasos de actualización con la habilitación de TLS para RabbitMQ
Dado que los agentes en versiones anteriores a 2022.3 se han estado comunicando mediante una conexión no cifrada con el servicio de cola de mensajes de RabbitMQ, al actualizar a la versión 2022.3 o posterior, esos agentes deben actualizarse para usar los nuevos detalles de conexión segura. Los pasos para hacerlo son los siguientes:
Después de completar los pasos de actualización descritos en la sección anterior, detenga todos los agentes ejecutando el siguiente comando:
rmtadmin stop --agent
Descargue el archivo de arranque para el entorno ejecutando el siguiente comando:
rmtadmin bootstrap-file --env<myenvironment> --filename <The absolute or relative path including the file name>
Ejecute el siguiente comando en cada equipo donde se haya instalado el agente:
rmtadmin rotate-mq-certificate <BOOTSTRAP_FILE> --username=<RMT Server Username> --password-file=<RMT Server Password file name>
- Reinicie cada equipo del agente después de ejecutar con éxito el comando
rmtadmin rotate-mq-certificate
.
Compatibilidad de productos
Esta tabla enumera la versión de RMT 2022.3 y posteriores únicamente, ya que la cola de mensajes externos solo está disponible a partir de la versión 2022.3 y posteriores.
Versión de RMT | Versión RabbitMQ enviada con RMT | Compatible con la versión RabbitMQ para el servicio de cola de mensajes externos |
22.3 | 3.10.5 | 3.10.5 |
¿Quién puede hacer esto?
Para instalar Resource Monitoring Tool, debe tener todo lo siguiente:
- Permisos de administrador en el equipo en el que está instalando Resource Monitoring Tool.
- Rol en el sitio Administrador de Tableau Server.
- Cuenta de administrador en Resource Monitoring Tool.