你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍 Azure Kubernetes 服务(AKS)的应用程序网络选项。 我们首先提出一个问题来帮助指导你的规划,然后提供选项、建议和最佳做法。
如何访问应用程序?
应用程序网络控制 Kubernetes Pod 中运行的应用程序如何从群集外部向客户端公开。
应用程序网络选项
设置应用程序网络时,可以在具有 第 4 层负载均衡的负载均衡器服务 或 具有第 7 层负载均衡的入口控制器之间进行选择:
| 应用程序网络选项 | 特性和功能 |
|---|---|
| 负载均衡器服务 | • 使用 Kubernetes LoadBalancer 服务直接公开公共或专用 IP 上的应用程序。 • 支持多个端口以及任何 TCP 或 UDP 流量。 • 每个应用程序 至少需要一个唯一 的 IP:端口对。 |
| 入口控制器 | • 在第 7 层反向代理后面公开应用程序。 • 仅适用于类似 HTTP 的流量(HTTP、HTTPS、gRPC)。 • 可以为同一入口控制器上的所有入口定义共享单个公共 IP 和端口。 • 托管入口选项包括:通过应用程序路由加载项的托管 ingress-nginx、建议使用的 用于容器的 Azure 应用程序网关,以及 Istio 入口网关。 |
Recommendations
对于 非 HTTP 流量,建议将 负载均衡器服务与第 4 层负载均衡配合使用。 此方法提供对应用程序的直接访问并支持各种协议。 对于 类似 HTTP 的流量,我们建议将 入口控制器与第 7 层负载均衡配合使用。 此方法允许你利用高级路由功能,并为多个应用程序共享单个公共 IP。