Google 容器引擎中的规则和默认后端入口
ingress with both rules and default backend in Google Container Engine
我 运行 在 Google 容器引擎平台上有一个入口,我想为我几乎所有的域提供默认后端服务(有很多,但是有另一个针对一个域的特定服务。根据我对 ingress user guide 的理解(在其中扫描 "Default Backends:"),下面的配置应该可以正常工作。
但是,它永远不会创建第二个后端。 运行 kubectl describe ingress
在入口处以及在 Google 控制台站点中查看 LB 时,仅列出第一个 "default" 后端服务。将默认的更改为规则一可以解决问题,但这意味着我必须明确列出我想要支持的所有域。
所以,我假设我在下面的配置中有一个错误。如果有,那是什么?
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: boringsites
spec:
backend:
serviceName: boringsites
servicePort: 80
tls:
- secretName: boringsites-tls
rules:
- host: subdomain.example.com
http:
paths:
- backend:
serviceName: other-svc
servicePort: 80
我刚刚在 kubernetes 1.3 上创建了 https://gist.github.com/bprashanth/9f4533b19fd864b723ba0720a3648fa3#file-default-basic-yaml-L94,它按预期工作。也许你可以向后调试?您 运行 kube 在哪里,您使用的是什么版本? 1.2 中有一个已知且固定的竞赛,您可能会 运行 进入,特别是如果您更新了入口。另请注意,您需要 type=nodeport 的服务,否则 gce 上的入口控制器将忽略您插入 reasource 的服务。
我 运行 在 Google 容器引擎平台上有一个入口,我想为我几乎所有的域提供默认后端服务(有很多,但是有另一个针对一个域的特定服务。根据我对 ingress user guide 的理解(在其中扫描 "Default Backends:"),下面的配置应该可以正常工作。
但是,它永远不会创建第二个后端。 运行 kubectl describe ingress
在入口处以及在 Google 控制台站点中查看 LB 时,仅列出第一个 "default" 后端服务。将默认的更改为规则一可以解决问题,但这意味着我必须明确列出我想要支持的所有域。
所以,我假设我在下面的配置中有一个错误。如果有,那是什么?
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: boringsites
spec:
backend:
serviceName: boringsites
servicePort: 80
tls:
- secretName: boringsites-tls
rules:
- host: subdomain.example.com
http:
paths:
- backend:
serviceName: other-svc
servicePort: 80
我刚刚在 kubernetes 1.3 上创建了 https://gist.github.com/bprashanth/9f4533b19fd864b723ba0720a3648fa3#file-default-basic-yaml-L94,它按预期工作。也许你可以向后调试?您 运行 kube 在哪里,您使用的是什么版本? 1.2 中有一个已知且固定的竞赛,您可能会 运行 进入,特别是如果您更新了入口。另请注意,您需要 type=nodeport 的服务,否则 gce 上的入口控制器将忽略您插入 reasource 的服务。