在我的 AKS 集群上,我有一个 Nginx 入口 Controller ,我用来反向代理我在 AKS 上运行的 kibana 服务。但是,我想通过入口,rabbitmq 管理控制台添加另一个 http 服务。
我无法同时使用以下配置:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress-aegis
namespace: dev
annotations:
kubernetes.io/ingress.class: nginx
certmanager.k8s.io/cluster-issuer: letsencrypt-prod
nginx.ingress.kubernetes.io/rewrite-target: /
spec:
tls:
- hosts:
- dev.endpoint.net
secretName: dev-secret
rules:
- host: dev.endpoint.net
http:
paths:
- path: /
backend:
serviceName: kibana-kibana
servicePort: 5601
- path: /rabbit
backend:
serviceName: rabbitmq
servicePort: 15672
Kibana 在 root 下运行良好,但 RabbitMQ 无法加载
503除了
/ 之外的任何路径.如果RabbitMQ的路径是
/然后它工作正常,但随后 Kibana 将无法运行。
我认为这是因为在内部它们位于根又名 localhost:15672 上,因此它重定向到 dev.endpoint.net 上的/。
如何从一个端点运行多个服务,例如 Kibana 和 RabbitmQ?
请您参考如下方法:
您需要做的是设置basePath kibana 到 /kibana
看下面的网址
https://www.elastic.co/guide/en/kibana/current/settings.html
您正在寻找配置 server.basePath至 /kibana .然后这将对反向代理问题进行排序,您可以将 MQ 直接保留在 root / 上。
您也可以设置 SERVER_BASEPATH您的 kibana 中的环境变量pod,它将自动从该变量中选择基本路径




