- Newest
- Most votes
- Most comments
Unfortunately, it is not possible to change the ha-mode from "all" to "exactly 2" in Amazon MQ for RabbitMQ cluster deployments. Amazon MQ enforces specific high availability (HA) policies for cluster brokers to ensure proper mirroring and high availability.
For cluster deployments, Amazon MQ automatically applies the "ha-mode: all" and "ha-sync-mode: automatic" policy definitions. This is a requirement for classic mirroring and high availability in Amazon MQ managed RabbitMQ clusters.
Even if you attempt to create a custom policy with different ha-mode settings, Amazon MQ will automatically append the required "ha-mode: all" and "ha-sync-mode: automatic" to your policy definitions. This behavior is intentional to maintain the high availability guarantees that Amazon MQ provides for RabbitMQ clusters.
If you delete the default "AWS-DEFAULT-POLICY-CLUSTER-MULTI-AZ" policy, Amazon MQ will fall back to using the "ha-all-AWS-OWNED-DO-NOT-DELETE" policy with a priority value of 0. This ensures that the required HA policies remain in effect.
While it's understandable that you want to optimize your cluster based on RabbitMQ's general recommendations, Amazon MQ's managed service takes a more conservative approach to ensure maximum availability and data durability across all nodes in the cluster.
If you have specific performance concerns or requirements, you may want to consider other queue types or configurations within the constraints of Amazon MQ's managed service. Alternatively, you could explore using RabbitMQ's quorum queues, which are designed for better performance and scalability in distributed systems, if they meet your use case requirements.
Sources
Applying policies to Amazon MQ for RabbitMQ - Amazon MQ
Amazon MQ for RabbitMQ broker defaults - Amazon MQ
Relevant content
- asked a year ago
- asked 3 months ago
- AWS OFFICIALUpdated 5 months ago
