Replies: 2 comments 2 replies
-
Following this discussion, we tried commenting out these lines and reapply le RabbitmqCluster
But we still get the same errors. |
Beta Was this translation helpful? Give feedback.
0 replies
-
We actually solved it by removing the However, we still have a few questions regarding this topic:
|
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello,
We have a publicly exposed RabbitMQ using TLS and certificate as authentification.
To configure the Topology Operator, we added the RabbitMQ CA in the Topology Operator (following this) but we are getting "401 Unauthorized" errors
Logs (reconciliation & RabbitMQ)
And in the RabbitMQ logs :
[warning] <0.30900.2> HTTP access denied: user 'default_user_bNlYv-A_1rESCl5iBWB' - invalid credentials
Trying to fix the issuer, we found this and this in the README saying "It uses the generated default user secret from RabbitmqCluster (set in rabbitmqcluster.status.binding) to authenticate with RabbitMQ server."
Running
kubectl describe rmq
, we can see that we still have the binding onrabbitmq-default-user
. Runningkubectl get secret rabbitmq-default-user -o go-template='{{range $k,$v := .data}}{{printf "%s: " $k}}{{if not $v}}{{$v}}{{else}}{{$v | base64decode}}{{end}}{{"\n"}}{{end}}'
indeed gives ususername: default_user_bNlYv-A_1rESCl5iBWB
.So the Topology Operator is correctly retrieving the user but it somehow is unauthorized...
Besides, our Cluster is publicly exposed and we use X509 certificates to authenticate users. Could the problem be related to this?
If needed, we have the following in our RabbitmqCluster's spec.rabbitmq.additionalConfig
Looking at the code where the Topology Operator sets its user, I was wondering if we should create a custom user for us? Or we should create a user on RabbitMQ based on the Topology Operator certificate? But then, how do we specify to the Topology Operator to use the EXTERNAL auth mechanism (using the certificate instead of username/password credentials)?
NB : so far, we are using our own CA so we could set the SAN to rabbitmq.default.svc. However, based on these #233 #644 and #1185, we understand that the correct way to go is to rely on a single certificate on the URL and set our RabbitmqCluster's
metadata.annotations.rabbitmq.com/operator-connection-uri: "https://ourUrl.com:5671"
. Is that correct?Beta Was this translation helpful? Give feedback.
All reactions