RabbitMQ Configuration
Production vs Demo Deployments
⚠️ Important: This document describes RabbitMQ setup for demo/development environments only.
For production deployments, use the RabbitMQ Cluster Operator instead of the Bitnami Helm chart. The operator provides:
-
Better lifecycle management and high availability
-
Production-grade monitoring and backup capabilities
-
Automatic scaling and rolling upgrades
-
Enhanced security and networking features
Demo/Development Installation
For development and demo environments, bitnami/rabbitmq can be used for quick setup.
Demo Installation
Add bitnami repo to helm:
1 | |
Install RabbitMQ release for demo/development:
1 | |
Note:
-
The default configuration in
rmq-values.yamlusesbitnamilegacyDocker images for compatibility -
This setup is not recommended for production use
Demo Configuration
You can change rabbitmq config with the following variables in rmq-values.yaml:
-
replicaCount- number RMQ instances -
persistence.enabled- enable/disable persistence -
persistence.size- size for singe PV -
persistence.storageClass- storage class for PV -
auth.username- username for RMQ user -
auth.password- password for RMQ user
For more config values, see this section
Important:
-
The RabbitMQ configuration uses legacy Bitnami images (
bitnamilegacy/rabbitmq) for demo/development compatibility -
This image is configured in the
rmq-values.yamlfile -
For production deployments, migrate to the RabbitMQ Cluster Operator
In values.yaml file, you need to setup the following vars (rabbitmq prefix):
-
auth.username- should be same asauth.usernamein thermq-values.yamlfile -
auth.password- should be same asauth.passwordin thermq-values.yamlfile -
host- rabbitmq service hostname(See this doc for details)
-
customManagementPort- custom port for rabbitmq management interface -
customAMQPPort- custom port for AMQP access
Additional Protocol Support
The chart supports additional messaging protocols beyond AMQP:
-
MQTT (port 1883) - for IoT device communication
-
STOMP (port 61613) - for simple text-based messaging
-
WebSocket variants (ports 15674, 15675) - for browser-based connections
These protocols are enabled through the extraPlugins configuration:
1 | |
Additional container and service ports are automatically configured for these protocols.