> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tensor9.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Amazon MQ RabbitMQ Cluster

> AWS Amazon MQ RabbitMQ Cluster. A RabbitMQ cluster deployment with three broker nodes across availability zones. Replicated queues maintain availability during a node failure; replication depends on the queue type and broker version.

**On this page**

* [Coverage by target cloud](#coverage-by-target-cloud)
* [How the targets compare](#how-the-targets-compare)
  * [Infrastructure-only adaptation](#infrastructure-only-adaptation)
* [On Google Cloud, Azure, OCI, and Private Kubernetes](#on-google-cloud-azure-oci-and-private-kubernetes)

## Coverage by target cloud

| Target             | Available |
| ------------------ | --------- |
| Google Cloud       | ✓         |
| Azure              | ✓         |
| OCI                | ✓         |
| Private Kubernetes | ✓         |

## How the targets compare

Each row compares a capability of Amazon MQ RabbitMQ Cluster with its adaptation on each target.
A dash means this row is not stated for that target.

### Infrastructure-only adaptation

| Capability          | Amazon MQ RabbitMQ Cluster                | Google Cloud, Azure, OCI, and Private Kubernetes                               |
| ------------------- | ----------------------------------------- | ------------------------------------------------------------------------------ |
| AMQP protocol       | AMQP 0-9-1 (RabbitMQ)                     | native; same broker engine, client unchanged                                   |
| Broker topology     | three-node cluster (multi-AZ)             | 3-node cluster                                                                 |
| High availability   | AWS-managed three-node cluster (multi-AZ) | quorum queues replicated across 3 nodes                                        |
| Managed broker      | Yes                                       | No - you self-manage the broker on Kubernetes                                  |
| Management API + UI | Yes                                       | Yes - RabbitMQ management plugin (console URL differs)                         |
| TLS                 | Yes                                       | Yes - self-signed / cert-manager issuer (trust chain differs from AWS-managed) |
| API coverage        | full                                      | high                                                                           |

## On Google Cloud, Azure, OCI, and Private Kubernetes

| Operation                                                                          | Area              | Support      | Depth        | Notes                                                                                                                                                                                                                                                                                                     |
| ---------------------------------------------------------------------------------- | ----------------- | ------------ | ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| CloudWatch logs / KMS / maintenance window / VPC placement / minor-version upgrade | AWS control plane | Out of scope | Full surface | these AWS-managed settings are omitted. Configure logging, monitoring, encryption at rest and upgrades with the target cluster's tools                                                                                                                                                                    |
| Management API + UI                                                                | Admin             | Supported    | Most usage   | the RabbitMQ management plugin is enabled (the same HTTP API Amazon MQ exposes on 443/15671); the management console URL differs from Amazon MQ's                                                                                                                                                         |
| Plugins (Shovel / Federation / Consistent-Hash / Prometheus / OAuth2)              | Admin             | Supported    | Most usage   | because you operate the broker, you can enable any RabbitMQ plugin, a wider set than Amazon MQ's curated list (Management, dynamic Shovel, Federation, Consistent-Hash-Exchange, OAuth2, LDAP, Prometheus). Amazon MQ's private-broker Shovel/Federation restriction does not apply on the target cluster |
| Consumer acks / QoS prefetch                                                       | Delivery          | Supported    | Most usage   | RabbitMQ handles acknowledgements and prefetch directly; consumer\_timeout sets the delivery acknowledgement timeout                                                                                                                                                                                      |
| Dead-letter exchanges / TTL                                                        | Delivery          | Supported    | Most usage   | native RabbitMQ dead-letter exchanges and message/queue TTL                                                                                                                                                                                                                                               |
| Publisher confirms                                                                 | Delivery          | Supported    | Most usage   | native RabbitMQ publisher confirms                                                                                                                                                                                                                                                                        |
| Transactions (Tx.Select / Tx.Commit / Tx.Rollback)                                 | Delivery          | Supported    | Full surface | native AMQP 0-9-1 transactions on the same broker engine; publisher confirms are the recommended higher-throughput path                                                                                                                                                                                   |
| ActiveMQ engine                                                                    | Engine            | Out of scope | Full surface | Amazon MQ's ActiveMQ engine is a different protocol and is out of scope; only RabbitMQ is supported                                                                                                                                                                                                       |
| Bindings + routing keys                                                            | Messaging         | Supported    | Common       | native RabbitMQ routing, unchanged                                                                                                                                                                                                                                                                        |
| Exchanges (direct / fanout / topic / headers)                                      | Messaging         | Supported    | Common       | native RabbitMQ; every exchange type works unchanged                                                                                                                                                                                                                                                      |
| Queues (classic / quorum / lazy)                                                   | Messaging         | Supported    | Common       | RabbitMQ quorum queues replicate across the 3-node cluster for high availability                                                                                                                                                                                                                          |
| Streams (RabbitMQ 3.9+)                                                            | Messaging         | Supported    | Full surface | The target supports RabbitMQ Streams as an optional feature beyond the Amazon MQ queue mapping. Core streams can use AMQP; the dedicated Stream protocol needs its plugin, listener and compatible client. Configure and validate Streams separately.                                                     |
| Authentication (authentication\_strategy=SIMPLE)                                   | Security          | Supported    | Most usage   | SIMPLE is the default strategy. The broker's declared user block (username/password) is written into a Kubernetes secret, and RabbitMQ's internal user backend authenticates against it unchanged                                                                                                         |
| LDAP authentication                                                                | Security          | Partial      | Full surface | RabbitMQ's LDAP auth-backend plugin (rabbitmq\_auth\_backend\_ldap) is available on the self-operated broker; enable it and point it at your directory. Configure the LDAP server connection on RabbitMQ directly                                                                                         |
| TLS                                                                                | Security          | Supported    | Most usage   | TLS is on (Amazon MQ RabbitMQ is always-TLS); the certificate is self-signed or cert-manager-issued rather than AWS-managed, so the trust chain differs. Pin or trust the cluster's issuer                                                                                                                |
| Connect (AMQP 0-9-1)                                                               | Wire protocol     | Supported    | Common       | your AMQP client (pika, amqplib, the RabbitMQ Java client) connects without changes. Bitnami RabbitMQ runs the same broker engine as Amazon MQ, so the protocol is native; Tensor9 writes the target broker endpoint into the generated Amazon MQ resource outputs                                        |

#### How it works

Tensor9 deploys the Bitnami RabbitMQ Helm chart on the customer's Kubernetes cluster and sets the broker host and port in the generated Amazon MQ outputs. Your application connects directly to that broker over AMQP 0-9-1. It keeps its RabbitMQ client library; clients that pin the AWS certificate chain must trust the target issuer.

The deployment uses 3 broker pods, persistent storage and a Kubernetes Service. The customer platform team operates the broker, storage, upgrades and recovery. A disconnected deployment also needs its container images, chart, certificates and other dependencies available locally.

#### Queues and broker configuration

RabbitMQ handles exchanges, bindings, routing keys, publisher confirms, transactions, consumer acknowledgments, prefetch, dead-letter exchanges and TTL. Check queue types and enabled plugins against the selected broker version when importing definitions.

Configure quorum queues explicitly, or set the broker's default queue type. Upstream RabbitMQ defaults to classic queues unless that default is overridden; running RabbitMQ 4.x alone does not select quorum queues. The management HTTP API and console provide access to broker definitions and operational state.

Use the Helm chart's configuration values for broker settings, credentials, TLS and plugin enablement. This mapping does not require a RabbitmqCluster custom resource or the RabbitMQ Cluster Operator.

#### Three-node deployment and replication

The cluster uses three broker pods. A quorum queue replicates its messages using Raft, a protocol that requires agreement from a majority of the queue's members. With three members, it can continue after losing one, provided the remaining members can communicate and access their storage. Publisher confirms and durable queue configuration are part of this guarantee.

Place replicas on separate nodes and failure domains. Three pods sharing one node do not protect against that node failing. Classic queues do not gain replication merely by running on a three-node broker; declare the required queue type explicitly.

Size each persistent volume for the retained backlog and recovery requirements. Storage availability and backups remain separate from broker replication: a replicated queue is not a backup against deletion or an incorrect retention policy.

<div className="t9-diagram-scroll" role="region" aria-label="Scrollable diagram" tabIndex={0}>
  <img className="t9-diagram-light" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4MzYiIGhlaWdodD0iMjAyIiB2aWV3Qm94PSIwIDAgODM2IDIwMiIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsPSJUaGUgQml0bmFtaSBSYWJiaXRNUSBIZWxtIGNoYXJ0IGRlcGxveXMgMyBicm9rZXIgcG9kcywgZWFjaCB3aXRoIGEgcGVyc2lzdGVudCB2b2x1bWUuIFF1b3J1bSBxdWV1ZXMgcmVwbGljYXRlIGFjcm9zcyB0aGVpciBtZW1iZXJzLiI+PHN0eWxlPnRleHR7Zm9udC1mYW1pbHk6SW50ZXIsLWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsJ1NlZ29lIFVJJyxSb2JvdG8sJ0hlbHZldGljYSBOZXVlJyxBcmlhbCxzYW5zLXNlcmlmO2ZpbGw6IzMzNDE1NX08L3N0eWxlPgogICAgICAgICAgICAgICAgPGRlZnM+PG1hcmtlciBpZD0icm1xLWstaGVsbSIgdmlld0JveD0iMCAwIDEwIDEwIiByZWZYPSI4IiByZWZZPSI1IiBtYXJrZXJXaWR0aD0iNyIgbWFya2VySGVpZ2h0PSI3IiBvcmllbnQ9ImF1dG8tc3RhcnQtcmV2ZXJzZSI+PHBhdGggZD0iTTAsMCBMMTAsNSBMMCwxMCB6IiBmaWxsPSIjOTRhM2I4Ii8+PC9tYXJrZXI+PC9kZWZzPgogICAgICAgICAgICAgICAgPHRleHQgeD0iMjQiIHk9IjI0IiBzdHlsZT0iZm9udDogNzAwIDEwcHggSW50ZXIsIHNhbnMtc2VyaWY7IGxldHRlci1zcGFjaW5nOiAxLjNweDsgZmlsbDogIzk0YTNiOCI+SEVMTSBDT05GSUdVUkFUSU9OPC90ZXh0PgogICAgICAgICAgICAgICAgPHRleHQgeD0iMzIyIiB5PSIyNCIgc3R5bGU9ImZvbnQ6IDcwMCAxMHB4IEludGVyLCBzYW5zLXNlcmlmOyBsZXR0ZXItc3BhY2luZzogMS4zcHg7IGZpbGw6ICM5NGEzYjgiPktVQkVSTkVURVMgU1RBVEVGVUxTRVQ8L3RleHQ+CiAgICAgICAgICAgICAgICA8cmVjdCB4PSIyNCIgeT0iNDYiIHdpZHRoPSIyNTAiIGhlaWdodD0iMTI4IiByeD0iMTEiIGZpbGw9IiNmZmYiIHN0cm9rZT0iI2UyZThmMCIgc3Ryb2tlLXdpZHRoPSIxLjUiLz4KPHRleHQgeD0iMTQ5IiB5PSI5MSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDY1MCAxMy41cHggSW50ZXIsIHNhbnMtc2VyaWY7IGZpbGw6ICMwZjE3MmE7IGZvbnQtc2l6ZToxMnB4Ij5CaXRuYW1pIFJhYmJpdE1RPC90ZXh0Pgo8dGV4dCB4PSIxNDkiIHk9IjEwNyIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDExcHggSW50ZXIsIHNhbnMtc2VyaWY7IGZpbGw6ICM2NDc0OGIiPnJlcGxpY2FDb3VudDogMzwvdGV4dD4KPHRleHQgeD0iMTQ5IiB5PSIxMjMiIHRleHQtYW5jaG9yPSJtaWRkbGUiIHN0eWxlPSJmb250OiAxMXB4IEludGVyLCBzYW5zLXNlcmlmOyBmaWxsOiAjNjQ3NDhiIj5wZXJzaXN0ZW50IHN0b3JhZ2U8L3RleHQ+Cjx0ZXh0IHg9IjE0OSIgeT0iMTM5IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBzdHlsZT0iZm9udDogMTFweCBJbnRlciwgc2Fucy1zZXJpZjsgZmlsbDogIzY0NzQ4YiI+Y3JlZGVudGlhbHMgKyBUTFM8L3RleHQ+CiAgICAgICAgICAgICAgICA8bGluZSB4MT0iMjc4IiB5MT0iMTEwIiB4Mj0iMzA4IiB5Mj0iMTEwIiBzdHJva2U9IiM5NGEzYjgiIHN0cm9rZS13aWR0aD0iMiIgbWFya2VyLWVuZD0idXJsKCNybXEtay1oZWxtKSIvPgogICAgICAgICAgICAgICAgPHJlY3QgeD0iMzEyIiB5PSIzNiIgd2lkdGg9IjUwMCIgaGVpZ2h0PSIxNDIiIHJ4PSIxMiIgZmlsbD0iI2VjZmRmNSIgc3Ryb2tlPSIjMDU5NjY5IiBzdHJva2Utd2lkdGg9IjEuNiIvPgogICAgICAgICAgICAgICAgPHRleHQgeD0iNTYyIiB5PSI2NiIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDEwLjVweCBJbnRlciwgc2Fucy1zZXJpZjsgZmlsbDogIzA0Nzg1NyI+U2VydmljZTogQU1RUFMgNTY3MSDCtyBtYW5hZ2VtZW50IDE1NjcxPC90ZXh0PgogICAgICAgICAgICAgICAgPHJlY3QgeD0iMzMwIiB5PSI4OCIgd2lkdGg9IjE0NiIgaGVpZ2h0PSI1OCIgcng9IjExIiBmaWxsPSIjZmZmIiBzdHJva2U9IiNlMmU4ZjAiIHN0cm9rZS13aWR0aD0iMS41Ii8+Cjx0ZXh0IHg9IjQwMyIgeT0iMTE0IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBzdHlsZT0iZm9udDogNjUwIDEzLjVweCBJbnRlciwgc2Fucy1zZXJpZjsgZmlsbDogIzBmMTcyYTsgZm9udC1zaXplOjEycHgiPnJhYmJpdC0wPC90ZXh0Pgo8dGV4dCB4PSI0MDMiIHk9IjEzMCIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDExcHggSW50ZXIsIHNhbnMtc2VyaWY7IGZpbGw6ICM2NDc0OGIiPmJyb2tlciArIHZvbHVtZTwvdGV4dD4KPHJlY3QgeD0iNDg1IiB5PSI4OCIgd2lkdGg9IjE0NiIgaGVpZ2h0PSI1OCIgcng9IjExIiBmaWxsPSIjZmZmIiBzdHJva2U9IiNlMmU4ZjAiIHN0cm9rZS13aWR0aD0iMS41Ii8+Cjx0ZXh0IHg9IjU1OCIgeT0iMTE0IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBzdHlsZT0iZm9udDogNjUwIDEzLjVweCBJbnRlciwgc2Fucy1zZXJpZjsgZmlsbDogIzBmMTcyYTsgZm9udC1zaXplOjEycHgiPnJhYmJpdC0xPC90ZXh0Pgo8dGV4dCB4PSI1NTgiIHk9IjEzMCIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDExcHggSW50ZXIsIHNhbnMtc2VyaWY7IGZpbGw6ICM2NDc0OGIiPmJyb2tlciArIHZvbHVtZTwvdGV4dD4KPHJlY3QgeD0iNjQwIiB5PSI4OCIgd2lkdGg9IjE0NiIgaGVpZ2h0PSI1OCIgcng9IjExIiBmaWxsPSIjZmZmIiBzdHJva2U9IiNlMmU4ZjAiIHN0cm9rZS13aWR0aD0iMS41Ii8+Cjx0ZXh0IHg9IjcxMyIgeT0iMTE0IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBzdHlsZT0iZm9udDogNjUwIDEzLjVweCBJbnRlciwgc2Fucy1zZXJpZjsgZmlsbDogIzBmMTcyYTsgZm9udC1zaXplOjEycHgiPnJhYmJpdC0yPC90ZXh0Pgo8dGV4dCB4PSI3MTMiIHk9IjEzMCIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDExcHggSW50ZXIsIHNhbnMtc2VyaWY7IGZpbGw6ICM2NDc0OGIiPmJyb2tlciArIHZvbHVtZTwvdGV4dD4KICAgICAgICAgICAgICAgIDx0ZXh0IHg9IjU2MiIgeT0iMTY2IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBzdHlsZT0iZm9udDogMTAuNXB4IEludGVyLCBzYW5zLXNlcmlmOyBmaWxsOiAjMDQ3ODU3Ij5RdW9ydW0gcXVldWVzOiBtYWpvcml0eSByZXBsaWNhdGlvbjwvdGV4dD4KICAgICAgICAgICAgICAgIDwvc3ZnPg==" alt="The Bitnami RabbitMQ Helm chart deploys 3 broker pods, each with a persistent volume. Quorum queues replicate across their members." />

  <img className="t9-diagram-dark" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4MzYiIGhlaWdodD0iMjAyIiB2aWV3Qm94PSIwIDAgODM2IDIwMiIgcm9sZT0iaW1nIiBhcmlhLWxhYmVsPSJUaGUgQml0bmFtaSBSYWJiaXRNUSBIZWxtIGNoYXJ0IGRlcGxveXMgMyBicm9rZXIgcG9kcywgZWFjaCB3aXRoIGEgcGVyc2lzdGVudCB2b2x1bWUuIFF1b3J1bSBxdWV1ZXMgcmVwbGljYXRlIGFjcm9zcyB0aGVpciBtZW1iZXJzLiI+PHN0eWxlPnRleHR7Zm9udC1mYW1pbHk6SW50ZXIsLWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsJ1NlZ29lIFVJJyxSb2JvdG8sJ0hlbHZldGljYSBOZXVlJyxBcmlhbCxzYW5zLXNlcmlmO2ZpbGw6I2NiZDVlMX08L3N0eWxlPgogICAgICAgICAgICAgICAgPGRlZnM+PG1hcmtlciBpZD0icm1xLWstaGVsbSIgdmlld0JveD0iMCAwIDEwIDEwIiByZWZYPSI4IiByZWZZPSI1IiBtYXJrZXJXaWR0aD0iNyIgbWFya2VySGVpZ2h0PSI3IiBvcmllbnQ9ImF1dG8tc3RhcnQtcmV2ZXJzZSI+PHBhdGggZD0iTTAsMCBMMTAsNSBMMCwxMCB6IiBmaWxsPSIjOTRhM2I4Ii8+PC9tYXJrZXI+PC9kZWZzPgogICAgICAgICAgICAgICAgPHRleHQgeD0iMjQiIHk9IjI0IiBzdHlsZT0iZm9udDogNzAwIDEwcHggSW50ZXIsIHNhbnMtc2VyaWY7IGxldHRlci1zcGFjaW5nOiAxLjNweDsgZmlsbDogIzk0YTNiOCI+SEVMTSBDT05GSUdVUkFUSU9OPC90ZXh0PgogICAgICAgICAgICAgICAgPHRleHQgeD0iMzIyIiB5PSIyNCIgc3R5bGU9ImZvbnQ6IDcwMCAxMHB4IEludGVyLCBzYW5zLXNlcmlmOyBsZXR0ZXItc3BhY2luZzogMS4zcHg7IGZpbGw6ICM5NGEzYjgiPktVQkVSTkVURVMgU1RBVEVGVUxTRVQ8L3RleHQ+CiAgICAgICAgICAgICAgICA8cmVjdCB4PSIyNCIgeT0iNDYiIHdpZHRoPSIyNTAiIGhlaWdodD0iMTI4IiByeD0iMTEiIGZpbGw9IiMyNjI2MjYiIHN0cm9rZT0iIzNkNGU2NiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz4KPHRleHQgeD0iMTQ5IiB5PSI5MSIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDY1MCAxMy41cHggSW50ZXIsIHNhbnMtc2VyaWY7IGZpbGw6ICNjOWNlZDg7IGZvbnQtc2l6ZToxMnB4Ij5CaXRuYW1pIFJhYmJpdE1RPC90ZXh0Pgo8dGV4dCB4PSIxNDkiIHk9IjEwNyIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDExcHggSW50ZXIsIHNhbnMtc2VyaWY7IGZpbGw6ICNjOWNmZDgiPnJlcGxpY2FDb3VudDogMzwvdGV4dD4KPHRleHQgeD0iMTQ5IiB5PSIxMjMiIHRleHQtYW5jaG9yPSJtaWRkbGUiIHN0eWxlPSJmb250OiAxMXB4IEludGVyLCBzYW5zLXNlcmlmOyBmaWxsOiAjYzljZmQ4Ij5wZXJzaXN0ZW50IHN0b3JhZ2U8L3RleHQ+Cjx0ZXh0IHg9IjE0OSIgeT0iMTM5IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBzdHlsZT0iZm9udDogMTFweCBJbnRlciwgc2Fucy1zZXJpZjsgZmlsbDogI2M5Y2ZkOCI+Y3JlZGVudGlhbHMgKyBUTFM8L3RleHQ+CiAgICAgICAgICAgICAgICA8bGluZSB4MT0iMjc4IiB5MT0iMTEwIiB4Mj0iMzA4IiB5Mj0iMTEwIiBzdHJva2U9IiM0MTRlNjIiIHN0cm9rZS13aWR0aD0iMiIgbWFya2VyLWVuZD0idXJsKCNybXEtay1oZWxtKSIvPgogICAgICAgICAgICAgICAgPHJlY3QgeD0iMzEyIiB5PSIzNiIgd2lkdGg9IjUwMCIgaGVpZ2h0PSIxNDIiIHJ4PSIxMiIgZmlsbD0iIzFhMzEyNiIgc3Ryb2tlPSIjMDU5NjY5IiBzdHJva2Utd2lkdGg9IjEuNiIvPgogICAgICAgICAgICAgICAgPHRleHQgeD0iNTYyIiB5PSI2NiIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDEwLjVweCBJbnRlciwgc2Fucy1zZXJpZjsgZmlsbDogIzkwZGVjOCI+U2VydmljZTogQU1RUFMgNTY3MSDCtyBtYW5hZ2VtZW50IDE1NjcxPC90ZXh0PgogICAgICAgICAgICAgICAgPHJlY3QgeD0iMzMwIiB5PSI4OCIgd2lkdGg9IjE0NiIgaGVpZ2h0PSI1OCIgcng9IjExIiBmaWxsPSIjMjYyNjI2IiBzdHJva2U9IiMzZDRlNjYiIHN0cm9rZS13aWR0aD0iMS41Ii8+Cjx0ZXh0IHg9IjQwMyIgeT0iMTE0IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBzdHlsZT0iZm9udDogNjUwIDEzLjVweCBJbnRlciwgc2Fucy1zZXJpZjsgZmlsbDogI2M5Y2VkODsgZm9udC1zaXplOjEycHgiPnJhYmJpdC0wPC90ZXh0Pgo8dGV4dCB4PSI0MDMiIHk9IjEzMCIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDExcHggSW50ZXIsIHNhbnMtc2VyaWY7IGZpbGw6ICNjOWNmZDgiPmJyb2tlciArIHZvbHVtZTwvdGV4dD4KPHJlY3QgeD0iNDg1IiB5PSI4OCIgd2lkdGg9IjE0NiIgaGVpZ2h0PSI1OCIgcng9IjExIiBmaWxsPSIjMjYyNjI2IiBzdHJva2U9IiMzZDRlNjYiIHN0cm9rZS13aWR0aD0iMS41Ii8+Cjx0ZXh0IHg9IjU1OCIgeT0iMTE0IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBzdHlsZT0iZm9udDogNjUwIDEzLjVweCBJbnRlciwgc2Fucy1zZXJpZjsgZmlsbDogI2M5Y2VkODsgZm9udC1zaXplOjEycHgiPnJhYmJpdC0xPC90ZXh0Pgo8dGV4dCB4PSI1NTgiIHk9IjEzMCIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDExcHggSW50ZXIsIHNhbnMtc2VyaWY7IGZpbGw6ICNjOWNmZDgiPmJyb2tlciArIHZvbHVtZTwvdGV4dD4KPHJlY3QgeD0iNjQwIiB5PSI4OCIgd2lkdGg9IjE0NiIgaGVpZ2h0PSI1OCIgcng9IjExIiBmaWxsPSIjMjYyNjI2IiBzdHJva2U9IiMzZDRlNjYiIHN0cm9rZS13aWR0aD0iMS41Ii8+Cjx0ZXh0IHg9IjcxMyIgeT0iMTE0IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBzdHlsZT0iZm9udDogNjUwIDEzLjVweCBJbnRlciwgc2Fucy1zZXJpZjsgZmlsbDogI2M5Y2VkODsgZm9udC1zaXplOjEycHgiPnJhYmJpdC0yPC90ZXh0Pgo8dGV4dCB4PSI3MTMiIHk9IjEzMCIgdGV4dC1hbmNob3I9Im1pZGRsZSIgc3R5bGU9ImZvbnQ6IDExcHggSW50ZXIsIHNhbnMtc2VyaWY7IGZpbGw6ICNjOWNmZDgiPmJyb2tlciArIHZvbHVtZTwvdGV4dD4KICAgICAgICAgICAgICAgIDx0ZXh0IHg9IjU2MiIgeT0iMTY2IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBzdHlsZT0iZm9udDogMTAuNXB4IEludGVyLCBzYW5zLXNlcmlmOyBmaWxsOiAjOTBkZWM4Ij5RdW9ydW0gcXVldWVzOiBtYWpvcml0eSByZXBsaWNhdGlvbjwvdGV4dD4KICAgICAgICAgICAgICAgIDwvc3ZnPg==" alt="The Bitnami RabbitMQ Helm chart deploys 3 broker pods, each with a persistent volume. Quorum queues replicate across their members." />
</div>

#### Limitations

△ Operational differences

* **TLS trust changes.** The target uses a self-signed or cert-manager-issued certificate. Configure client trust and certificate renewal before switching endpoints.
* **AWS broker management does not move with the messages.** Use the target's monitoring, storage encryption and upgrade scheduling in place of CloudWatch, KMS and the Amazon MQ maintenance window. Broker credentials and TLS configuration are part of the Kubernetes deployment.
* **Streams are an optional target feature.** Self-operated RabbitMQ supports Streams, but they are not an Amazon MQ queue migration. Core stream queues can use AMQP; the dedicated RabbitMQ Stream protocol additionally needs its plugin, listener and compatible client. Configure and validate that path separately.
* **ActiveMQ is outside this mapping.** This adapter covers the RabbitMQ engine. Amazon MQ's ActiveMQ engine uses a different broker and protocols.

#### Cutover and ongoing operation

Export exchanges, queues, bindings, users, virtual hosts and policies through the source management API as definitions.json, then import the supported definitions into the target. Applications that declare their own topology can recreate those definitions when they connect.

Definitions do not contain the message backlog. Drain the old broker or use Shovel or Federation for the required continuity. Account for deliveries in flight at cutover and test consumer retry behavior; they are not transferred automatically.

The broker and its provisioned volumes run continuously. Plan capacity from backlog, message sizes, publish and consume rates, and recovery tests on the actual cluster. Monitor disk capacity, queue growth and consumer progress after cutover.

Provider references: [quorum queues](https://www.rabbitmq.com/docs/quorum-queues), [default queue type](https://www.rabbitmq.com/docs/vhosts), and [core Streams and the Stream plugin](https://www.rabbitmq.com/docs/stream-core-plugin-comparison).

[Service Catalog](/service-adapters/catalog).
