我有一个位于负载均衡器后面的 k8s 集群。对 myapisite.com 的请求通过 LB 并由 k8s 路由到正确的部署,从 k8s 负载均衡器入口获取 SSL 证书,然后路由到服务入口,如下所示:
spec:
rules:
- host: myapisite.com
http:
paths:
- backend:
serviceName: ingress-605582265bdcdcee247c11ee5801957d
servicePort: 80
path: /
tls:
- hosts:
- myapisite.com
secretName: myapisitecert
status:
loadBalancer: {}
所以我的 myapisite.com 正确解析了 HTTPS。
我的问题是,在保持上述设置的同时(如果可能),我需要能够在 HTTPS 上访问同一命名空间内的本地服务端点,即从另一个 pod 我应该能够 curl 或 wget 没有以下内容证书错误:
https:\\myapisite.namespace.svc.cluster.local
即使我对在 pod 级别之前不终止 SSL 感兴趣,也不能在证书上为 .local 地址创建 SAN 条目,因此该解决方案不可行。
我是否缺少一些简单的方法来使所有本地 DNS 在 k8s 中受信任?或者这里有一些其他的解决方案,希望不是轮子的重新发明?我正在使用带有 CoreDNS 的 kubernetes 1.11 版。
谢谢,如果这是一个愚蠢的问题,请提前道歉。