Updated on 2023-05-06 GMT+08:00

Configuring Queue Mirroring

In a RabbitMQ cluster, queues can be mirrored across multiple nodes. In the event of a node failure, services are still available because the mirrors will take over services.

To learn more about the RabbitMQ management UI, visit the RabbitMQ official website. The following procedure describes how to configure queue mirroring on the RabbitMQ management UI.

Procedure

  1. Log in to the management UI of a RabbitMQ instance.
  2. Click the Admin tab.

    Figure 1 Admin tab page

  3. (Optional) In the navigation tree on the right, choose Virtual Hosts, specify Name, and click Add virtual host to create a virtual host.

    Perform this step only if you need to specify a virtual host. Otherwise, go to 4.
    Figure 2 Creating a virtual host

  4. In the navigation tree on the right, choose Policies and set policies for the virtual host.

    To set policies for a specific virtual host, select the virtual host created in 3 from the Virtual host drop-down list box. If no virtual host has been created, the default value / is used.
    Figure 3 Setting policies for a virtual host

    Parameter description:

    • Name: customized name of the policy.
    • Pattern: regular expression that defines the pattern for matching queues.
    • Definition: definition of the mirror, which consists of ha-sync-mode, ha-mode, and ha-params.
      • ha-sync-mode: queue synchronization mode. Options: automatic and manually.
        • automatic: Data is automatically synchronized from the master.
        • manually: Data is manually synchronized from the master.
      • ha-mode: queue mirroring mode. Options: all, exactly, and nodes.
        • all: Mirror the queue across all nodes in the cluster.
        • exactly: Mirror the queue to a specific number (determined through ha-params) of nodes in the cluster.
        • nodes: Mirror the queue to specific nodes (determined through ha-params).
      • ha-params: This parameter is used for specifying the nodes in the ha-mode parameter.
    • (Optional) Priority: priority of the policy.

  5. Click Add policy.

    The following figure shows a successfully added policy.

    Figure 4 Virtual host policy