Tableau Server Messaging Service

The Tableau Server messaging service uses Apache ActiveMQ beginning with version 2019.4. This is a publish/subscribe platform that enables secure, scalable, performant and highly available message-oriented communication for microservices. The Messaging Service is used to support communication between microservices in Tableau Server.

The server runs a single instance of the Messaging Service.

ProcessMessaging Service
StatusStatus of the Messaging Service is visible on the Status Page and from the command line using the tsm status -v command. For more information, see View Server Process Status
LoggingLogs generated by the gateway process are located in C:\ProgramData\Tableau\Tableau Server\data\tabsvc\logs\activemqserver. For more information, see Tableau Server Logs and Log File Locations

Impact if Messaging Service is not running properly

If the Messaging Service stops or fails to start the consequences are relatively mild. The actual impact depends on whether you have one, or two instances of the Messaging Service configured.

Multiple instances of Messaging Service (multi-node, version 2020.1 and later)

You can have two instances of the Messaging Service configured if you have version 2020.1 or later, and you have a multi-node installation of Tableau Server, you can install two instances of the Messaging Service. In this case, if one of the instances fails, the other instance handles all traffic, and you can remove the failed instance and reinstall an instance.

One instance of Messaging Service

If you have a single-node installation of Tableau Server, or are running version 2019.4.x, you are limited to a single instance of the Messaging Service. In this case, if the configured instance fails, Tableau Server will still work but status will show as "Degraded", and users mentioned in comments will not receive email notification of the mention. There is no loss of data.

If the Messaging Service stops, it is automatically restarted; as long as the computer itself is otherwise healthy, the Messaging Service should restart. If you cannot restart the service, you can disable it so that messaging uses the older mechanism.

Disabling a failed Messaging Service instance

If you have a single instance of the Messaging Service that will not automatically restart:

  1. Disable use of the service by using the TSM CLI to set these options to false and apply the pending changes:

    tsm configuration set -k features.MessageBusEnabled -v false
    tsm configuration set -k features.ActiveMQ -v false
    tsm pending-changes apply
  2. Restart Tableau Server (if you did not restart the server when you applied pending changes).

These steps configure Tableau Server to use the pre-2019.4 messaging mechanism.

Messaging Service in a multi-node cluster

How you configure the Messaging Service in a multi-node cluster depends on what version of Tableau Server you are running. In all cases, you must run one instance of the Messaging Service.

  • 2020.1 and later – starting with version 2020.1, you can run two instances of the service in a multi-node environment. We recommend you run two instances as this provides redundancy. You can add a second instance to any node that does not already have the Messaging Service configured. You cannot add more than a combined total of two instances in your multi-node cluster.
  • 2019.4.X – in version 2019.4.x, you are limited to a single instance of the service. In a multi-node installation, you can run that instance on any one of the nodes.
Thanks for your feedback!