你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure 容器应用的网络 - 登陆区域加速器

容器应用负责处理容器应用环境中的 OS 更新、缩放、故障转移过程和资源分配。 环境通过虚拟网络(VNet)创建安全边界来封装一个或多个容器应用或作业。

默认情况下,会自动为容器应用环境创建 VNet。 但是,如果需要对网络进行更详细的控制,可以在创建容器应用环境时使用预先存在的 VNet。

环境可以接受 外部 请求,或者只能锁定到 内部 请求。

外部环境使用可通过公共 Internet 访问的虚拟 IP 地址公开容器应用。 或者,内部环境在虚拟网络内的 IP 地址上公开其容器应用。 可以在容器应用环境中或通过虚拟网络限制流量。 有关详细信息,请参阅 Azure 容器应用登陆区域加速器的安全注意事项。

注意事项

  • 子网要求

    • 虚拟网络上的环境需要专用子网。 子网的 CIDR 对于仅消耗环境/27或工作负荷配置文件环境而言应/23更大或更大。
  • IP 地址管理

    • VNet 中保留 60 个 IP 的基数。 随着每个应用修订从子网获取 IP 地址,容器环境的规模可能会增加。 出站 IP 可能会随时间而变化。

    • 仅支持 IPv4 地址(不支持 IPv6)。

    • 托管公共 IP 资源处理出站请求和管理流量,不管你有外部环境还是内部环境。

  • 网络安全

    • 可以使用比控制环境的所有入站和出站流量的默认 NSG 规则更严格的规则通过网络安全组(NSG)锁定网络。
  • 代理和加密

    • 容器应用使用 Envoy 代理作为边缘 HTTP 代理。 所有 HTTP 请求都会自动重定向到 HTTP。 Envoy 在越过其边界后终止传输层安全性(TLS)。 仅当使用 Dapr 时,才能使用相互传输层安全性(mTLS)。 但是,由于 Envoy 终止 mTLS,因此不会加密从 Envoy 到已启用 Dapr 的容器应用的入站调用。
  • DNS 注意事项

    • 部署环境时,容器应用会执行许多 DNS 查找。 其中一些查找是指内部 Azure 域。 如果通过自定义 DNS 解决方案强制 DNS 流量,请将 DNS 服务器配置为将未解析的 DNS 查询转发到 Azure DNS。

    • 对于在容器应用内部运行的应用程序,系统依赖于 Azure 私人 DNS 区域将 DNS 名称解析为内部 IP 地址。 在私人 DNS区域中,可以将一条野生卡(*A记录指向内部负载均衡器 IP 地址。

  • 出站流量管理

    • 出站网络流量(出口)应通过Azure 防火墙或网络虚拟设备群集进行路由。
  • 跨环境负载均衡:

    • 若要在多个容器应用环境中运行应用程序,出于复原或邻近性原因,请考虑使用Azure 流量管理器或 Azure Front Door 等全局负载均衡服务。
  • 网络安全

    • 使用网络安全组(NSG)来保护网络,并阻止不必要的入站和出站流量。

    • 将 Azure DDoS 防护用于 Azure 容器应用环境。

    • 使用专用链接来保护网络连接,并使用专用 IP 连接到其他托管 Azure 服务。

    • 确保解决方案的所有终结点(内部和外部)仅接受 TLS 加密连接(HTTPS)。

    • 将 Web 应用程序防火墙与 HTTPS/TCP 入口配合使用,实现面向 Internet 的安全关键型、面向内部的 Web 应用程序。

    • 在某些情况下,你可能希望直接向 Internet 公开容器应用 Web 应用程序,并使用第三方 CDN/WAF 服务对其进行保护。

建议

  • 网络配置:在自定义虚拟网络中部署容器应用,以便更好地控制网络配置。

  • 保护入站连接:发布面向 Internet 的服务时,请使用Azure 应用程序网关(WAF_v2 SKU)或 Azure Front Door(使用 Web 应用程序防火墙)来保护入站连接。

  • 内部流量管理:对Azure 应用程序网关或 Azure Front Door 等服务使用内部网络配置,确保从负载均衡器到 Azure 容器应用环境的流量使用内部连接。

  • 公开应用程序:启用入口以通过 HTTP 或 TCP 端口公开应用程序。

参考