我想Ingress重定向到一个特定的子域后端和所有其他后端。基本上,我想定义一个规则,如下所示:
如果子域是foo.bar.com
,则转到s1
,对于所有其他子域,转到s2
当我在Ingress规范中定义如下所示的规则时,我在部署时得到了这个异常:
Error: UPGRADE FAILED: cannot re-use a name that is still in use
字符串
当我将*.bar.com
更改为demo.bar.com
时,它可以工作。
下面是我的Ingress资源规范:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: test
spec:
rules:
- host: foo.bar.com
http:
paths:
- backend:
serviceName: s1
servicePort: 80
- host: *.bar.com
http:
paths:
- backend:
serviceName: s2
servicePort: 80
型
有没有人知道这是可能的还是不可能的?
4条答案
按热度按时间ltqd579y1#
现在可以在Kubernetes中使用nginx:
字符串
ttp71kqs2#
我很确定在查看Issue 41881时这是不可能的,但我可能在最新版本的Kubernetes中遗漏了一些东西-我们正在谈论release 1.12。
w41d8nur3#
这里已经提出了一个PR,用于支持入口规则中的通配符域。参考下面的链接
https://github.com/containous/traefik/issues/3884
您可以尝试Traefik v1.7,看看是否启用了通配符支持。
du7egjpx4#
您可以使用默认后端-
字符串