【发布时间】:2019-02-08 01:23:26
【问题描述】:
我正在通过 Google 的 Ingress 负载均衡器公开在 GCP 的 kubernetes 引擎上运行的微服务。根据Here,负载均衡器支持不同域名的多个 SSL 证书。
但是,仅返回第一个指定的 SSL 证书,因此我收到了针对域 b 的 Your connection is not private 警告。我很想为多个域创建一个入口控制器,每个域都有自己的证书。
以下方法失败:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: some-name
spec:
tls:
- hosts:
- www.domain-a.net
- domain-a
secretName: domain-a-net
- hosts:
- www.domain-b.org
- domain-b.org
secretName: domain-b-org
backend:
serviceName: some-name
servicePort: 443
知道如何正确受益于 Google 的 Ingress Multi SSL?
【问题讨论】:
-
希望这会对您有所帮助。它已经快一年了,但我认为它仍然是最新的:medium.com/google-cloud/…
-
您能否在这些主机名上运行
curl -k -v并查看哪个域返回哪个证书 - 并将其添加到问题中?该功能应该按文档说明工作。 -
嗨@AhmetAlpBalkan-Google 我刚刚为这两个域运行了
curl -k -v。我总是得到域-a 的秘密。经过一些测试,我觉得我总是在我的返回(域-a-net)中获得第一个指定的 secretName,即如果我在上面的 YAML 文件中切换两个主机,我会收到 domain-b-org 结果。感谢您的帮助! -
@RobertWeindl 请尝试一下,如果是这样,我会调查的。如果您有可靠的回购协议,也可以随时在github.com/kubernetes/ingress-gce/issues 上报告此问题。这很关键。
-
@AhmetAlpBalkan-Google 感谢您的反馈和帮助。我验证了这种行为并打开了github.com/kubernetes/ingress-gce/issues/466
标签: kubernetes google-cloud-platform gcloud google-kubernetes-engine kubernetes-ingress