我有一个 Google 托管证书,我试图在入口中使用它,但它没有为负载均衡器生成 HTTPS。请注意,托管证书显示在“经典证书”部分下,这就是我使用
pre-shared-cert
的原因。我还使用了自我管理的证书,这些证书存储为 tls 秘密(我在 Ingress 的 Web UI 中看到负载均衡器资源下的一行 - TLS: my self managed cert
。这些按预期工作。当然,我可以在负载中创建 HTTPS平衡器,但这会导致不同的 IP 地址,最终导致一些我需要的 url 重写规则不起作用...
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
annotations:
kubernetes.io/ingress.class: gce
networking.gke.io/pre-shared-cert: MY-GOOGLE-MANAGED-CLASSIC-CERT
- apiVersion: networking.k8s.io/v1
name: MY-INGRESS
namespace: MY-NAMESPACE
spec:
rules:
- host: MY-HOST-THAT-MATCHES-CERT
http:
paths:
- backend:
service:
name: MY-SERVICE-NAME
port:
number: 9000
path: /*
pathType: ImplementationSpecific
TLDR - 如何获取经典 Google 托管证书才能为生成的负载均衡器看到 TLS。