We are configuring KEDA to auto-scale our deployment based on the RabbitMQ queue. Our setup makes TLS mandatory, and we have configured the RabbitMQ management plugin on HTTPS. We are trying to connect with the RabbitMQ host on https like:
"https://user:password@host:15671/"
, but the Rabbit MQ scaler is not able to connect to the Rabbit MQ host, and we are getting the following error: "context deadline exceeded (Client.Timeout exceeded while awaiting headers)"
.
We are able to connect with RabbitMQ host on http protocol like "http://user:password@host:15672/". Below is our trigger definition in scaled object:
triggers:
- type: rabbitmq
metadata:
host: https://user:password@host:15671/
mode: QueueLength
queueName: MyQueueName
value: "5"
excludeUnacknowledged: "true"
NOTE: We can't use the AMQP protocol in the host because we're using the "excludeUnacknowledged" property, which isn't applicable to the AMQP protocol.
We are facing this issue with KEDA version 2.8 and 2.9.
Keda does not support HTTPS yet: https://github.com/kedacore/keda/pull/1073