我正在尝试在 google kubernetes 引擎上部署 keycloak 并使用 ingress.class 类型的nginx使其工作,如下所示
kubernetes.io/ingress.class:nginx
完整清单可以在这里找到 https://github.com/vsomasvr/keycloak-gke/blob/master/keycloak-gke-ingress/ingress.yaml
但是,我的意图是使用 ingress.class 类型“gce ”。为此,我从以下更改了入口注释
annotations:
ingress.kubernetes.io/ssl-redirect: "true"
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
到以下
kubernetes.io/ingress.allow-http: "false"
annotations: kubernetes.io/ingress.class: gce
在上述更改之后,我一直收到一条消息,指出入口的后端不健康(0/3)。我想知道当“ nginx ”可以毫无问题地运行时“ gce ”需要哪些其他更改。
我确保它不是防火墙问题,因为所有应用程序使用的端口都允许使用,我还设置了livenessProbe和readinessProbe设置。
这个配置还有什么遗漏的吗?
我将所有清单文件放在这里 https://github.com/vsomasvr/keycloak-gke/tree/master/keycloak-gke-ingress
任何帮助表示赞赏
编辑
我已经添加了注释
kubernetes.io/ingress.allow-http: "false"
到nginx入口,经过测试并确保它不会引起任何冲突。该应用程序运行没有问题。
另一方面,即使我删除了上述注释, gce入口也具有相同的行为