Manual Upgrade RabbitMQ
This guide explains how to manually upgrade RabbitMQ.
During an operator-to-operator or Helm-to-operator upgrade to Operator version 23.3, RabbitMQ will not automatically upgrade to the latest server version. Instead, it will upgrade at most to RabbitMQ server version 3.10.25. For reference, Operator version 23.1 uses RabbitMQ version 3.9.8-debian-10-r6, while the version bundled with Operator 23.3 is 3.12.3-debian-11-r1.
To use the latest RabbitMQ features introduced in version 3.12.3, you must manually upgrade RabbitMQ after completing the Operator upgrade. For details on how to enable these features in each version, see the following links:
Steps to Upgrade from RabbitMQ Server 3.10.25 to 3.12.3
If the current version is 3.10.x, upgrading to 3.11.23 follow these steps:
-
Scale down the Release pods
kubectl patch digitalaireleases.xlr.digital.ai dai-xlr -n digitalai \
--type=merge \
--patch '{"spec": {"replicaCount": 0}}' -
Enable all available feature flags
kubectl exec -n digitalai dai-xlr-rabbitmq-0 -c rabbitmq -- \
rabbitmqctl list_feature_flags
kubectl exec -n digitalai dai-xlr-rabbitmq-0 -c rabbitmq -- \
rabbitmqctl enable_feature_flag all -
Patch the RabbitMQ image version (explicit or default)
Option 1: Set a specific version
Explicitly set the RabbitMQ image tag to a known version.kubectl patch -n digitalai Digitalaireleases dai-xlr \
--type=merge --patch '{"spec": {"rabbitmq": {"image": {"tag": "3.11.23"}}}}'If the current version is 3.11.x, upgrade to 3.12.3.
Option 2: Remove the image tag to use the operator’s default (latest supported version)
To move to the default version provided by the current operator, clear the image tag field:kubectl patch -n digitalai Digitalaireleases dai-xlr \
--type=merge --patch '{"spec": {"rabbitmq": {"image": null}}}' -
Restore the Release pods to the replica count used before the upgrade (e.g., 1)
kubectl patch digitalaireleases.xlr.digital.ai dai-xlr -n digitalai \
--type=merge \
--patch '{"spec": {"replicaCount": 1}}'Adjust the value 1 to match the original replica count used in your environment.