规划 Azure Kubernetes 服务 (AKS) 的应用网络

本文介绍 Azure Kubernetes 服务(AKS)的应用程序网络选项。 我们首先提出一个问题来帮助指导你的规划,然后提供选项、建议和最佳做法。

如何访问应用程序?

应用程序网络控制 Kubernetes Pod 中运行的应用程序如何从群集外部向客户端公开。

应用程序网络选项

设置应用程序网络时,可以在具有 第 4 层负载均衡的负载均衡器服务具有第 7 层负载均衡的入口控制器之间进行选择:

应用程序网络选项 特性和功能
负载均衡器服务 • 使用 Kubernetes LoadBalancer 服务直接公开公共或专用 IP 上的应用程序。
• 支持多个端口以及任何 TCP 或 UDP 流量。
• 每个应用程序 至少需要一个唯一 的 IP:端口对。
入口控制器 • 在第 7 层反向代理后面公开应用程序。
• 仅适用于类似 HTTP 的流量(HTTP、HTTPS、gRPC)。
• 可以为同一入口控制器上的所有入口定义共享单个公共 IP 和端口。
• 托管入口选项包括:通过 应用程序路由加载项 的托管 ingress-nginx 和 Istio 入口网关

Recommendations

对于 非 HTTP 流量,建议将 负载均衡器服务与第 4 层负载均衡配合使用。 此方法提供对应用程序的直接访问并支持各种协议。 对于 类似 HTTP 的流量,我们建议将 入口控制器与第 7 层负载均衡配合使用。 此方法允许你利用高级路由功能,并为多个应用程序共享单个公共 IP。