【发布时间】:2019-10-16 07:50:55
【问题描述】:
我为不同的环境创建了两个不同的命名空间。一个是 devops-qa,另一个是 devops-dev。我在不同的命名空间中创建了两个入口。因此,在 devops-qa 命名空间中创建 qa env 的入口时,编写在 qa 入口内的规则运行良好。意味着我可以访问 qa env 的网页。我将在 devops-dev 命名空间中创建 dev env 的入口的那一刻,我将能够访问 dev env 的网页,但无法访问 qa 的网页。当我再次删除开发入口时,我将能够访问 qa env 网站
下面是 dev 和 qa env 的 ingree。
开发入口
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: "nginx"
name: cafe-ingress-dev
namespace: devops-dev
spec:
tls:
- hosts:
- cafe-dev.example.com
secretName: default-token-drk6n
rules:
- host: cafe-dev.example.com
http:
paths:
- path: /
backend:
serviceName: miqpdev-svc
servicePort: 80
质量检查入口
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: "nginx"
name: cafe-ingress-qa
namespace: devops-qa
spec:
tls:
- hosts:
- cafe-qa.example.com
secretName: default-token-jdnqf
rules:
- host: cafe-qa.example.com
http:
paths:
- path: /greentea
backend:
serviceName: greentea-svc
servicePort: 80
- path: /blackcoffee
backend:
serviceName: blackcoffee-svc
servicePort: 80
入口文件中提到的令牌是每个命名空间的。并且 nginx 入口控制器在 QA 命名空间中运行 我怎样才能同时运行 ingress 并能够在 dev 和 qa 环境中部署所有网站?
【问题讨论】:
-
你用的是什么入口控制器?
-
我正在使用 nginx-plus
-
每个令牌
default-token-jdnqf或default-token-drk6n是您自己创建并自签名的 TLS 证书吗?
标签: namespaces kubernetes