Using an External Message Queue
If you plan to use an external message queue, instead of the RabbitMQ provided with the operator—you must configure the relevant parameters in the external-mq-patch.yaml
file.
This document describes how to change configuration on the existing Deploy installation. If you are doing initial installation, check the document Using an Existing Message Queue
Steps to Configure an External Message Queue after Installation
-
Prepare the external message queue configuration.
spec:
external:
mq:
enabled: true
url: "amqp://rabbitmq-test1.default.svc.cluster.local:5672"
queueName: ""
username: "user"
password: "password"
driverClassName: "com.rabbitmq.jms.admin.RMQConnectionFactory"
rabbitmq:
install: false -
Remove the configuration files from the central configuration pod so the configuration can be replaced
Note: This step is only necessary if you have
/opt/xebialabs/central-configuration-server/centralConfiguration
folder mounted as a persistent volume. Starting from version 24.1 and later, this is no longer the default option.
kubectl exec -it sts/dai-xld-digitalai-deploy-cc-server -n digitalai \
-- rm /opt/xebialabs/central-configuration-server/centralConfiguration/deploy-task.yaml
- Update the message queue configuration in Deploy.
kubectl patch -n digitalai digitalaideploys.xld.digital.ai dai-xld \
--type=merge --patch-file external-mq-patch.yaml
- Restart the Deploy pods.
kubectl delete sts dai-xld-digitalai-deploy-master -n digitalai
kubectl delete sts dai-xld-digitalai-deploy-worker -n digitalai
- The CR yaml file will now have a new
external.mq
section.
kubectl get Digitalaideploys dai-xld -o yaml -n digitalai
- The restarted pod process will now use the new configuration. central configuration pod
kubectl exec -it sts/dai-xld-digitalai-deploy-cc-server -n digitalai \
-- cat /opt/xebialabs/central-configuration-server/centralConfiguration/deploy-task.yaml