我正在尝试在Google容器引擎上设置RabbitMQ群集,到目前为止它正常运行。 为了使其更安全,我尝试为UI管理启用SSL。
不幸的是,它无法使其发挥作用,我确定我做错了什么,但我无法弄清楚是什么。
我按照此处分享的信息:https://github.com/docker-library/rabbitmq/pull/49(用于SSL支持)
我为测试目的生成了一个自签名证书:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /tmp/rq.key -out /tmp/rq.crt
为所有这些变量创建了秘密:
kubectl create secret generic rabbitmq-key --from-file=/tmp/rq.key
kubectl create secret generic rabbitmq-cert --from-file=/tmp/rq.crt
这是我在rabbitmq.yaml文件中添加的内容:
- name: RABBITMQ_SSL_CERT_FILE
valueFrom:
secretKeyRef:
name: rabbitmq-crt
key: rq.crt
- name: RABBITMQ_SSL_KEY_FILE
valueFrom:
secretKeyRef:
name: rabbitmq-key
key: rq.key
编辑: 我解决了凭证的部分,显然用户名的秘密和相关的密码没有被正确考虑。
答案 0 :(得分:0)
我使用ingress ressource将流量重定向到我的UI管理端口,成功地将其设为https。
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: basic-ingress
spec:
tls:
- secretName: tls-secret
backend:
serviceName: rabbitmq-management
servicePort: 15672
rules:
- http:
paths:
- path: /
backend:
serviceName: rabbitmq-management
servicePort: 15672