【发布时间】:2019-02-07 09:59:23
【问题描述】:
我正在尝试在带有 Ingress 的 GKE 上设置不允许使用 HTTP 的 HTTPS-LB。
现在,如官方网站所述,我在私有集群上部署了一个简单的应用程序。该应用程序可以使用浏览器访问。 ※http-connection和https-connection均可
然后我通过在 LB 的设置中关闭(删除)前端的协议“http”来禁止对应用程序的 http 访问。 实际上,起初,通过浏览器的 http 连接出错,而不是连接错误。 5-10 分钟后,http-protocol 设置会自动恢复。
这是一个 yaml 文件。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress-name
annotations:
# kubernetes.io/ingress.allow-http: "false"
kubernetes.io/ingress.global-static-ip-name: "ip-name"
spec:
#tls:
#This assumes tls-secret exists.
#- hosts:
# - XXXXXXXX.XXX.XXX
# secretName: ip-secret ← no use because of google-managed-ssl
rules:
- http:
paths:
# to app
- path: /*
backend:
serviceName: XXXXX-backend
servicePort: 80
# to DS Export
- path: /backend/*
backend:
serviceName: XXXXX-be-backend
servicePort: 80
这个问题是由浏览器引起的吗?还是 gce 实例上的 http-health-checker 等内部设置?
【问题讨论】:
标签: https google-cloud-platform load-balancing kubernetes-ingress google-kubernetes-engine