Compartilhar via

Azure 容器应用环境中的虚拟网络的专用终结点和 DNS

使用 Azure 专用终结点,位于专用网络中的客户端可以通过 Azure 专用链接安全连接到 Azure 容器应用环境。 专用链接连接不会将信息公开到公共 Internet。 专用终结点在 Azure 虚拟网络地址空间中使用专用 IP 地址,通常使用专用 DNS 区域进行配置。

工作负载配置文件环境中的消耗计划和专用计划都支持专用终结点。

账单管理

专用终结点会产生额外的费用。 在 Azure 容器应用中启用专用终结点时,将按以下方式计费:

  1. Azure 专用链接 - 对于Azure 专用链接资源本身的计费。
  2. Azure 容器应用 - Azure 容器应用的专用终结点基础结构计费,该基础结构显示为单独的 “专用计划管理” 费用,适用于消耗计划和专用计划。

Tutorials

注意事项

  • 若要使用专用终结点,必须禁用 公用网络访问。 公用网络访问默认已启用,这意味着专用终结点处于禁用状态。
  • 要将专用终结点与自定义域配合使用,并将 Apex 域用作主机名记录类型,必须配置与公共 DNS 同名的专用 DNS 区域。 在记录集中,配置专用终结点的专用 IP 地址,而不是容器应用环境的 IP 地址。 使用 CNAME 配置自定义域时,设置保持不变。 有关详细信息,请参阅使用现有证书设置自定义域
  • 专用终结点的 VNet 可以独立于与容器应用集成的 VNet。
  • 可以将专用终结点添加到新的和现有的工作负载配置文件环境。

要通过专用终结点连接到容器应用,必须配置专用 DNS 区域。

服务 子资源 专用 DNS 区域名称
Azure 容器应用 (Microsoft.App/ManagedEnvironments) managedEnvironment privatelink.{regionName}.azurecontainerapps.dev

还可以使用与 Azure Front Door 建立专用连接的专用终结点来代替应用程序网关。

DNS

在 Azure 容器应用环境的虚拟网络中配置 DNS 非常重要,原因如下:

  • DNS 允许容器应用将域名解析为 IP 地址。 这样,他们就可以发现虚拟网络内外的服务并与之通信。 这包括 Azure 应用程序网关、网络安全组和专用终结点等服务。

  • 自定义 DNS 设置通过允许你控制和监视容器应用进行的 DNS 查询来增强安全性。 这有助于通过确保容器应用仅与受信任的域通信来识别和缓解潜在的安全威胁。

自定义 DNS

如果 VNet 使用自定义 DNS 服务器而非默认 Azure 提供的 DNS 服务器,请将 DNS 服务器配置为将未解析的 DNS 查询转发给 168.63.129.16Azure 递归解析程序使用此 IP 地址解析请求。 配置网络安全组(NSG)或防火墙时,请不要阻止 168.63.129.16 该地址,否则容器应用环境将无法正常运行。

VNet 范围入口

如果计划在内部环境中使用 VNet-scope ingress,请通过以下方式之一配置您的域:

  1. 非自定义域:如果不打算使用自定义域,请创建专用 DNS 区域,以将容器应用环境的默认域解析为容器应用环境的静态 IP 地址。 可以使用 Azure 专用 DNS 或自己的 DNS 服务器。 如果使用 Azure 私有 DNS,请创建一个专用 DNS 区域,并命名为容器应用程序环境的默认域(<UNIQUE_IDENTIFIER>.<REGION_NAME>.azurecontainerapps.dev),然后添加一个 A 记录。 A 记录包含容器应用环境的名称 *<DNS Suffix> 和静态 IP 地址。 有关详细信息,请参阅 创建和配置 Azure 专用 DNS 区域

  2. 自定义域:如果计划使用自定义域并使用外部容器应用环境,请使用可公开解析的域将自定义域和证书添加到容器应用。 如果使用内部容器应用环境,则 DNS 绑定没有验证,因为群集仅在虚拟网络中可用。 此外,创建将顶点域解析为容器应用环境静态 IP 地址的专用 DNS 区域。 可以使用 Azure 专用 DNS 或自己的 DNS 服务器。 如果使用 Azure 专用 DNS,请创建名为顶点域的专用 DNS 区域,其中包含指向容器应用环境静态 IP 地址的 A 记录。

可以在 Azure 门户中查找容器应用环境的静态 IP 地址(位于容器应用页的“自定义 DNS 后缀”中),也可以使用 Azure CLI az containerapp env list 命令来查找。

后续步骤