我正在Azure 环境 (AKS( 中尝试 Kubernetes。
我部署了一个 nginx 入口,并通过公共 IP 和 Azure 负载均衡器向互联网公开。它用于公开公共/前台服务。
我的问题是我想部署"后退"服务,而不是暴露在互联网上。我的第一个猜测是部署第二个入口并将其公开在内部负载均衡器上,对吗?
但是,如果我的前端服务需要使用后端服务,我是否可以在第二个入口(使用 nginx 配置、SSL 卸载等(使用它,但不往返内部负载均衡器。在这种情况下,DNS 配置是什么?
入口控制器是为外部流量制作的。对于集群内通信,最好使用 Kubernetes 服务,它将在集群内配置 DNS。使用服务,您将能够调用后端服务,而无需往返外部资源,负载平衡将在 k8s 集群内本机完成。没有什么能阻止你部署nginx pod或将其作为sidecar注入后端服务pod并将其用作反向代理,但是你真的是nginx配置和用于集群内通信的双向TLS吗?如果你真的需要双向 TLS,你最好看看像 Istio 这样的东西,但它对于你的用例来说可能是矫枉过正的。
您无需部署辅助入口服务。只需将服务终结点 [IP] 设为私有,它们应只能与入口服务通信。
那么如何创建私有 IP:https://learn.microsoft.com/en-us/azure/aks/ingress-internal-ip