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

为 Azure ExpressRoute 配置连接监视器

本文指导配置连接监视器扩展以监视 ExpressRoute。 连接监视器是一种基于云的网络监视解决方案,可以跟踪 Azure 云部署与本地位置(例如分支机构)之间的连接。 它是 Azure Monitor 日志的一部分,可用于监视专用连接和 Microsoft 对等互连连接的网络连接情况。 配置 ExpressRoute 连接监视器后,就可以识别和解决网络问题。

注意

本文最近已更新,从使用术语“Log Analytics”改为使用术语“Azure Monitor 日志”。 日志数据仍然存储在 Log Analytics 工作区中,并仍然由同一 Log Analytics 服务收集并分析。 我们正在更新术语,以便更好地反映 Azure Monitor 中的日志的角色。 有关详细信息,请参阅 Azure Monitor 术语更改

通过 ExpressRoute 连接监视器,你可以:

  • 跨多种 VNet 监视数据丢失和延迟情况并设置警报。
  • 监视所有网络路径,包括冗余路径。
  • 对难以重现且在特定时间点出现的暂时性网络问题进行故障排除。
  • 确定负责降级性能的特定网段。

Workflow

监视本地和 Azure 中的多个服务器上安装的代理。 这些代理通过发送 TCP 握手数据包进行通信,使 Azure 能够映射网络拓扑和流量路径。

  1. 创建 Log Analytics 工作区。
  2. 安装和配置软件代理(只有 Microsoft 对等互连不需要):
    • 在本地服务器和 Azure VM 上安装监视代理(用于专用对等互连)。
    • 配置监视代理服务器的设置以允许通信(例如打开防火墙端口)。
  3. 配置网络安全组 (NSG) 规则,允许 Azure VM 上的监视代理与本地代理之间进行通信。
  4. 在订阅上启用网络观察程序。
  5. 设置监控,通过创建测试组的连接监视器来监视网络中的源终结点和目标终结点。

如果已在使用网络性能监视器(已弃用)或连接监视器,并且在受支持的区域中拥有 Log Analytics 工作区,则可以跳过步骤 1 和 2,直接从步骤 3 开始。

创建工作区

在具有连接到 ExpressRoute 线路的 VNet 的订阅中创建一个工作区。

  1. 登录到 Azure 门户。 从连接到 ExpressRoute 线路的虚拟网络订阅中,选择“+ 创建资源”。 搜索“Log Analytics 工作区”,然后选择“创建”。

    注意

    可以创建新的工作区或使用现有的工作区。 如果使用现有工作区,请确保它已迁移到新的查询语言。 详细信息...

  2. 通过输入或选择以下信息来创建工作区:

    设置
    订阅 选择包含 ExpressRoute 线路的订阅。
    资源组 创建新的资源组或选择一个现有资源组。
    名称 输入名称来标识此工作区。
    区域 选择创建此工作区的区域。

    注意

    ExpressRoute 线路可以位于世界的任何位置。 它不一定要在工作区所在的同一区域。

  3. 选择“查看 + 创建”进行验证,然后选择“创建”来部署工作区 。 部署后,请继续下一部分来配置监视解决方案。

配置监视解决方案

完成 Azure PowerShell 脚本,方法是替换 $SubscriptionId、$location、$resourceGroup 和 $workspaceName 的值。 然后运行该脚本以配置监视解决方案。

$subscriptionId = "Subscription ID should come here"
Select-AzSubscription -SubscriptionId $subscriptionId

$location = "Workspace location should come here"
$resourceGroup = "Resource group name should come here"
$workspaceName = "Workspace name should come here"

$solution = @{
    Location          = $location
    Properties        = @{
        workspaceResourceId
        workspaceResourceId = "/subscriptions/$($subscriptionId)/resourcegroups/$($resourceGroup)/providers/Microsoft.OperationalInsights/workspaces/$($workspaceName)"
    }
    Plan              = @{
        Name          = "NetworkMonitoring($($workspaceName))" 
        Publisher     = "Microsoft"
        Product       = "OMSGallery/NetworkMonitoring"
        PromotionCode = ""
    }
    ResourceName      = "NetworkMonitoring($($workspaceName))" 
    ResourceType      = "Microsoft.OperationsManagement/solutions" 
    ResourceGroupName = $resourceGroup
}

New-AzResource @solution -Force

配置好监视解决方案后,继续在服务器上安装和配置监视代理。

在本地安装并配置代理

下载代理安装程序文件

  1. 导航到“Log Analytics 工作区”,并选择“设置”部分下的“代理管理” 。 下载与计算机的操作系统相对应的代理。

    工作区中“代理管理”页的屏幕截图。

  2. 将“工作区 ID”和“主密钥”复制到记事本

  3. 对于 Windows 计算机,请在具有管理员权限的 PowerShell 窗口中下载并运行此 PowerShell 脚本 EnableRules.ps1。 脚本将打开 TCP 事务的相关防火墙端口。

    对于 Linux 计算机,请手动更改端口号:

    • 导航到 /var/opt/microsoft/omsagent/npm_state。
    • 打开“npmdregistry”文件。
    • 更改端口号 PortNumber:<port of your choice> 的值。

在每个监视服务器上安装 Log Analytics 代理

至少在 ExpressRoute 连接两端的两台服务器上安装 Log Analytics 代理,以便实现冗余。 执行以下步骤:

  1. 选择相应的操作系统,获取在服务器上安装 Log Analytics 代理的步骤:

  2. 安装后,Microsoft Monitoring Agent 将显示在控制面板中。 查看配置并验证代理是否已连接到 Azure Monitor 日志。

  3. 对要监视的其他本地计算机重复步骤 1 和步骤 2。

在每台监视服务器上安装网络观察程序代理

新建 Azure 虚拟机

如果创建新的 Azure VM 以监视连接,则可以在创建 VM 期间安装网络观察程序代理。

现有 Azure 虚拟机

如果使用现有 VM,请分别为 LinuxWindows 安装网络代理。

在监视代理服务器上打开防火墙端口

确保防火墙规则允许源服务器和目标服务器之间的 TCP 或 ICMP 数据包以进行连接监视。

Windows

使用管理权限在 PowerShell 窗口中运行 EnableRules PowerShell 脚本(之前下载的)。 此脚本创建必要的注册表项和 Windows 防火墙规则。

注意

该脚本仅在其运行的服务器上配置 Windows 防火墙规则。 确保网络防火墙允许连接监视器使用的 TCP 端口的流量。

Linux

手动更改端口号:

  1. 导航到 /var/opt/microsoft/omsagent/npm_state。
  2. 打开“npmdregistry”文件。
  3. 更改端口号 PortNumber:<port of your choice> 的值。 确保工作区中的所有代理都使用相同的端口号。

配置网络安全组规则

若要监视 Azure 中的服务器,请配置 NSG 规则以允许来自连接监视器的 TCP 或 ICMP 流量。 默认端口为 8084

有关 NSG 的更多信息,请参阅关于筛选网络流量的教程。

注意

在继续之前,请确保已安装代理(本地和 Azure),并运行 PowerShell 脚本。

启用网络观察程序

确保订阅启用了网络观察程序。 有关详细信息,请参阅启用网络观察程序

创建连接监视器

有关创建连接监视器、测试和测试组的高级概述,请参阅《创建连接监视器》。 按照以下步骤为专用对等互连和 Microsoft 对等互连配置连接监视:

  1. 在 Azure 门户中,导航到“网络观察程序”资源,并在“监视”下选择“连接监视器” 。 单击“创建”,以创建新的连接监视器。

  2. 在“基本”选项卡中,为“区域”栏选择部署了 Log Analytics 工作区的区域。 在“工作区配置”中,选择之前创建的现有 Log Analytics 工作区。 然后,选择“下一步: 测试组 >>”。

  3. 在“添加测试组详细信息”页上,添加测试组的源终结点和目标终结点。 请为此测试组输入一个名称。

  4. 单击“添加源”并导航到“非 Azure 终结点”选项卡。选择要监视且部署了 Log Analytics 代理的本地资源,然后单击“添加终结点”

    添加源终结点的屏幕截图。

  5. 单击“添加目标”

    若要监视 ExpressRoute “专用对等互连”的连接,请导航到“Azure 终结点”选项卡。选择要监视且安装了网络观察程序代理的 Azure 资源。 在 IP 列中选择每个资源的专用 IP 地址。 选择“添加终结点”。

    添加 Azure 目标终结点的屏幕截图。

    若要监视 ExpressRoute “Microsoft 对等互连”的连接,请导航到“外部地址”选项卡。选择要监视的 Microsoft 服务终结点。 选择“添加终结点”。

    添加外部目标终结点的屏幕截图。

  6. 选择“添加测试配置”。 选择 TCP 协议,并输入服务器上打开的“目标端口”。 配置“测试频率”和“检查失败和往返时间阈值”。 选择“添加测试配置”。

    测试配置页的屏幕截图。

  7. 添加源、目标和测试配置后,选择“添加测试组”。

  8. 如果要创建警报,则选择“下一步:创建警报”>>。 完成后,依次选择“评审 + 创建”、“创建” 。

查看结果

  1. 转到“网络观察程序”资源,并在“监视”下选择“连接监视器” 。 应在 5 分钟后看到新的连接监视器。 若要查看连接监视器的网络拓扑和性能图表,请从测试组下拉列表中选择测试。

    连接监视器概述页的屏幕截图。

  2. 在“性能分析”面板中,查看检查失败百分比以及每个测试的往返时间结果。 使用面板顶部的下拉列表调整所显示数据的时间范围。

    性能分析面板的屏幕截图。

  3. 关闭“性能分析”面板将显示源终结点与目标终结点之间的连接监视器检测到的网络拓扑。 此视图显示到达 Microsoft 边缘网络之前的双向流量路径和逐跃点延迟。

    连接监视器中网络拓扑的屏幕截图。

    选择拓扑视图中的任何跃点将显示有关该跃点的其他信息。 连接监视器检测到的任何问题都在此处显示。

    网络跃点详细信息的屏幕截图。

后续步骤

了解有关如何监视 Azure ExpressRoute 的详细信息