Kubernetes ingress-nginx 从非默认命名空间调用服务
Kubernetes ingress-nginx call service from non-default namespace
我的入口有 3 个服务,前 2 个使用 default
命名空间。第三个服务是 prometheus-server 服务,它有命名空间 ingress-nginx
。
现在,我想将我的 prometheus DNS 映射到该服务,但出现错误,因为入口无法在 default
命名空间中找到 prometheus 服务。
如何处理入口定义中的非默认命名空间?
您可能希望在命名空间 ingress-nginx
中创建一个新的 Ingress
,将您的 DNS 路由到该服务。例如:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: example
namespace: ingress-nginx
spec:
rules:
- host: your.domain.com
http:
paths:
- path: /
backend:
serviceName: prometheus-server
servicePort: 80
您需要在其他名称空间中引用您的服务及其完整路径,即 prometheus-server.ingress-nginx.svc.cluster.local
。
您不需要第二个 Ingress 来执行此操作。
我的入口有 3 个服务,前 2 个使用 default
命名空间。第三个服务是 prometheus-server 服务,它有命名空间 ingress-nginx
。
现在,我想将我的 prometheus DNS 映射到该服务,但出现错误,因为入口无法在 default
命名空间中找到 prometheus 服务。
如何处理入口定义中的非默认命名空间?
您可能希望在命名空间 ingress-nginx
中创建一个新的 Ingress
,将您的 DNS 路由到该服务。例如:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: example
namespace: ingress-nginx
spec:
rules:
- host: your.domain.com
http:
paths:
- path: /
backend:
serviceName: prometheus-server
servicePort: 80
您需要在其他名称空间中引用您的服务及其完整路径,即 prometheus-server.ingress-nginx.svc.cluster.local
。
您不需要第二个 Ingress 来执行此操作。