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

将专用终结点用于托管 Prometheus 和 Azure Monitor 工作区

专用终结点用于托管 Prometheus 和 Azure Monitor 工作区,以允许虚拟网络 (VNet) 上的客户端通过专用链接安全地查询数据。 专用终结点在 Azure Monitor 工作区资源的 VNet 地址空间内使用独立的 IP 地址。 VNet 上的客户端与工作区资源之间的网络流量通过 VNet 和 Microsoft 主干网络上的专用链接传输,从而避免暴露在公共 Internet 上。

注释

如果使用 Azure 托管 Grafana 查询数据,请配置一个托管专用终结点,以确保从托管 Grafana 到 Azure Monitor 工作区的查询使用 Microsoft 主干网络,而无需通过 Internet。

通过为工作区使用专用终结点,你可以:

  • 通过配置网络设置以阻止公共查询终结点上的所有连接,来保护工作区的公共访问。
  • 通过阻止数据从 VNet 渗出,来提高 VNet 的安全性。
  • 使用 VPNExpressRoutes 通过专用对等互连从连接到 VNet 的本地网络安全地连接到工作区。

概念概述

显示 Azure Monitor 工作区专用终结点概览的示意图。

专用终结点是用于虚拟网络 (VNet) 中的 Azure 服务的特殊网络接口。 为工作区创建专用终结点时,它将在 VNet 上的客户端和工作区之间提供安全连接。 从 VNet 的 IP 地址范围为专用终结点分配 IP 地址。 专用终结点与工作区之间的连接使用安全的专用链接。

VNet 中的应用程序可以使用通过其他方式连接时所用的相同连接字符串和授权机制,通过专用终结点无缝地连接到工作区。

可以在使用服务终结点的子网中创建专用终结点。 然后,子网中的客户端可以使用专用终结点连接到工作区,同时使用服务终结点访问其他服务。

在 VNet 中创建用于工作区的专用终结点时,会将一个申请批准的许可请求发送到工作区帐户所有者。 如果请求创建专用终结点的用户也是工作区的所有者,则此许可请求会自动获得批准。

Azure Monitor 工作区所有者可以通过 Azure 门户中工作区“网络”页面上的“专用访问”选项卡来管理许可请求和专用终结点。

小窍门

如果想限制为仅通过专用终结点访问工作区,请在 Azure 门户工作区的“网络”页上的“公共访问”选项卡上选择“禁用公共访问并使用专用访问”。

创建专用终结点

若要使用 Azure 门户、PowerShell 或 Azure CLI 创建专用终结点,请参阅以下文章。 这些文章均使用 Azure Web 应用作为目标服务,但对于 Azure Monitor 工作区,创建专用链接的步骤相同。

创建专用终结点时,请从“基本信息”选项卡上的下拉列表中选择以下选项:

  • 资源类型 - 选择 Microsoft.Monitor/accounts。 指定它连接到的 Azure Monitor 工作区。
  • 目标子资源 - 选择prometheusMetrics

使用以下文章创建专用终结点:

连接到专用终结点

VNet 上使用专用终结点的客户端应使用与连接到公共终结点的客户端相同的 Azure Monitor 工作区查询终结点。 我们依赖于 DNS 解析,通过专用链接自动将连接从 VNet 路由到工作区。

默认情况下,我们会创建一个附属于 VNet 的 专用 DNS 区域,并为专用终结点进行必要的更新。 但是,如果使用自己的 DNS 服务器,则可能需要对 DNS 配置进行其他更改。 下面关于 DNS 更改的部分描述了专用终结点所需的更新。

专用终结点的 DNS 更改

注释

有关如何为专用终结点配置 DNS 设置的详细信息,请参阅 Azure 专用终结点 DNS 配置

创建专用终结点时,工作区的 DNS CNAME 资源记录将更新为子域中具有前缀 privatelink 的别名。 默认情况下,我们还会创建一个与 子域对应的privatelink,其中包含专用终结点的 DNS A 资源记录。

当您使用专用终结点从 VNet 外部解析查询端点的 URL 时,解析结果将指向工作区的公共端点。 在从托管专用终结点的 VNet 进行解析时,查询终结点的 URL 将被解析为该专用终结点的 IP 地址。

对于以下示例,我们使用位于美国东部区域的 k8s02-workspace。 不保证资源名称是唯一的,需要我们在名称后面加几个字符,使 URL 路径是唯一的;例如,k8s02-workspace-<key>。 此唯一查询终结点显示在 Azure Monitor 工作区的“概述”页上。

显示 Azure Monitor 工作区概述页面的屏幕截图。

从托管专用终结点的 VNet 外部进行解析时,Azure Monitor 工作区的 DNS 资源记录将为:

名字 类型 价值
k8s02-workspace-<key>.<region>.prometheus.monitor.azure.com CNAME k8s02-workspace-<key>.privatelink.<region>.prometheus.monitor.azure.com
k8s02-workspace-<key>.privatelink.<region>.prometheus.monitor.azure.com CNAME <AMW 区域服务公共终结点>
<AMW 区域服务公共终结点> A <AMW 区域服务公共 IP 地址>

如前文所述,可以使用工作区“网络”页面上的“公共访问”选项卡,通过公共终结点拒绝或控制对 VNet 外部的客户端的访问。

当“k8s02-workspace”的 DNS 资源记录被托管私有终结点的 VNet 网络内的客户端解析时,结果为:

名字 类型 价值
k8s02-workspace-<key>.<region>.prometheus.monitor.azure.com CNAME k8s02-workspace-<key>.privatelink.<region>.prometheus.monitor.azure.com
k8s02-workspace-<key>.privatelink.<region>.prometheus.monitor.azure.com A <专用终结点 IP 地址>

对于托管专用终结点的 VNet 上的客户端和 VNet 外部的客户端,此方法允许使用相同的查询终结点访问工作区。

如果在网络上使用自定义 DNS 服务器,则客户端必须能够将工作区查询终结点的 FQDN 解析为专用终结点 IP 地址。 应配置 DNS 服务器以将专用链接子域委托到 VNet 的专用 DNS 区域,或者使用专用终结点 IP 地址为 k8s02-workspace 配置 A 记录。

小窍门

使用自定义或本地 DNS 服务器时,应将 DNS 服务器配置为将 privatelink 子域中的工作区查询终结点名称解析为专用终结点 IP 地址。 为此,可以将 privatelink 子域委托给 VNet 的专用 DNS 区域,或在 DNS 服务器上配置 DNS 区域并添加 DNS A 记录。

Azure Monitor 工作区专用终结点的建议 DNS 区域名称为:

资源 目标子资源 区域名称
Azure Monitor 工作区 prometheusMetrics privatelink.<region>.prometheus.monitor.azure.com

有关配置自己的 DNS 服务器以支持专用终结点的详细信息,请参阅以下文章:

定价

有关定价详细信息,请参阅 Azure 专用链接定价

已知问题

请记住以下关于 Azure Monitor 工作区专用终结点的已知问题。

针对专用终结点所在 VNet 中的客户端的工作区查询访问约束

具有现有专用终结点的客户端在 VNet 中访问具有专用终结点的其他 Azure Monitor 工作区时面临约束。 例如,假设 VNet N1 有一个用于工作区 A1 的专用终结点。 如果工作区 A2 在 VNet N2 中有一个专用终结点,则 VNet N1 中的客户端也需要使用专用终结点查询帐户 A2 中的工作区数据。 如果工作区 A2 未配置任何专用终结点,则 VNet N1 中的客户端可以在没有专用终结点的情况下从该工作区查询数据。

此约束是工作区 A2 创建专用终结点时 DNS 发生更改的结果。

后续步骤