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

启用 VM 见解概述

本文概述了可用于启用 VM 见解以监视以下各项的运行状况和性能的选项:

  • Azure 虚拟机
  • Azure 虚拟机规模集
  • 与 Azure Arc 连接的混合虚拟机
  • 本地虚拟机
  • 托管在其他云环境中的虚拟机。

安装选项和支持的计算机

下表显示了可用于在受支持的计算机上启用 VM 见解的安装方法。

方法 范围
Azure 门户 使用 Azure 门户启用单个计算机。
Azure Policy 创建策略,以便在创建受支持的计算机时自动启用。
资源管理器模板 使用受支持的任意方法启用多台计算机,以部署资源管理器模板(例如 CLI 和 PowerShell)。
PowerShell 使用 PowerShell 脚本启用多台计算机。 仅限 Log Analytics 代理。
手动安装 虚拟机或物理计算机本地其他云环境。 仅限 Log Analytics 代理

支持的 Azure Arc 计算机

VM insights 见解可在提供 Arc 扩展服务的区域中用于启用了 Azure Arc 的服务器。 必须运行 0.9 版或更高版本的 Arc 代理。

支持的操作系统

VM 见解支持任何支持依赖项代理以及 Azure Monitor 代理(预览版)或 Log Analytics 代理的操作系统。 有关完整列表,请参阅 Azure Monitor 代理概述

重要

如果虚拟机的以太网设备拥有 9 个以上字符,则不会被 VM insights 识别,也不会将数据发送到 InsightsMetrics 表。 代理将从其他源收集数据。

Linux 注意事项

请参阅下列支持 VM 见解的 Dependency Agent 的相关 Linux 支持注意事项:

  • 仅默认版本和 SMP Linux 内核版本受支持。
  • 任何 Linux 发行版都不支持非标准内核版本(例如物理地址扩展 [PAE] 和 Xen)。 例如,不支持版本字符串为 2.6.16.21-0.8-xen 的系统。
  • 不支持自定义内核(包括标准内核的重新编译)。
  • 除版本 9.4 以外的 Debian 发行版不支持地图功能,并且只能通过 Azure Monitor 菜单来使用性能功能。 无法直接在 Azure VM 的左窗格中使用此功能。
  • 支持 CentOSPlus 内核。

必须为 Spectre 和 Meltdown 漏洞修补 Linux 内核。 有关更多详细信息,请咨询 Linux 发行版供应商。 运行以下命令,检查 Spectre/Meltdown 是否已缓解:

$ grep . /sys/devices/system/cpu/vulnerabilities/*

此命令的输出如下所示,并指定计算机是否容易出现任一问题。 如果缺少这些文件,则表明未修补计算机。

/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Vulnerable
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Vulnerable: Minimal generic ASM retpoline

Log Analytics 工作区

VM 见解需要 Log Analytics 工作区。 有关此工作区的详细信息和要求,请参阅为 VM 见解配置 Log Analytics 工作区

注意

VM 见解不支持将数据发送到多个 Log Analytics 工作区(多宿主)。

网络要求

  • 有关 Log Analytics 代理的网络要求,请参阅网络要求
  • Dependency Agent 需要从虚拟机连接到地址 169.254.169.254。 这是 Azure 元数据服务终结点。 确保防火墙设置允许连接到此终结点。

代理

为计算机启用 VM 见解时,将安装以下代理。 有关这些代理的网络要求,请参阅网络要求

重要

对 Azure Monitor 代理的 VM 见解支持目前处于公共预览阶段。 Azure Monitor 代理与 Log Analytics 代理相比具有多项优势,是虚拟机和虚拟机规模集的首选代理。 有关代理的比较以及有关迁移的信息,请参阅从 Log Analytics 代理迁移到 Azure Monitor 代理

  • Azure Monitor 代理Log Analytics 代理。 从虚拟机或虚拟机规模集中收集数据,并将其传递到 Log Analytics 工作区。
  • Dependency Agent。 收集有关在虚拟机上运行的进程和外部进程依赖关系的已发现数据,VM 见解中的地图功能会使用这些数据。 Dependency Agent 依赖于 Azure Monitor 代理或 Log Analytics 代理将其数据传递到 Azure Monitor。

Azure Monitor 代理的更改

使用 Azure Monitor 代理时,在启用 VM 见解的过程中有几处更改。

工作区配置。 不再需要 在 Log Analytics 工作区上启用 VM 见解,因为 Azure Monitor 代理不使用 VMinsights 管理包。

数据收集规则。 Azure Monitor 代理使用数据收集规则来配置数据收集。 如果使用 Azure 门户启用计算机,VM 见解会创建自动部署的数据收集规则。 如果使用其他方法载入计算机,则可能需要先安装数据收集规则。

代理部署。 将虚拟机和虚拟机规模集载入 Azure 门户中的 VM 见解的过程发生了细微的更改。 现在,必须选择要使用的代理,并且必须为 Azure Monitor 代理选择数据收集规则。 有关详细信息,请参阅 Azure 门户中的“启用 VM 见解”

数据收集规则(Azure Monitor 代理)

使用 Azure Monitor 代理在计算机上启用 VM 见解时,必须指定要使用的数据收集规则 (DCR)。 DCR 指定要收集的数据以及要使用的工作区。 如果 DCR 尚不存在,VM 见解会创建默认 DCR。 有关创建和编辑 VM 见解数据收集规则的详细信息,请参阅为 Azure Monitor 代理启用 VM 见解

重要

不建议创建自己的 DCR 来支持 VM 见解。 VM 见解创建的 DCR 包括其操作所需的特殊数据流。 虽然可以编辑此 DCR 来收集其他数据(例如 Windows 和 Syslog 事件),但应创建其他 DCR 并将其与计算机关联。

DCR 由下表中的选项定义。

选项 说明
来宾性能 指定是否要收集来自来宾操作系统的性能数据。 对于所有计算机而言这都是必须的。
进程和依赖项 收集的有关虚拟机上运行的进程以及计算机之间的依赖关系的详细信息。 这会在 VM 见解中启用映射功能。 这是可选的,可为计算机启用 VM 见解映射功能
Log Analytics 工作区 用于存储数据的工作区。 仅列出具有 VM 见解的工作区。

管理包(Log Analytics 代理)

为 VM 见解配置 Log Analytics 工作区后,系统会将两个管理包转发给连接到该工作区的所有 Windows 计算机。 这两个管理包分别名为 Microsoft.IntelligencePacks.ApplicationDependencyMonitor 和 Microsoft.IntelligencePacks.VMInsights,并写入 %Programfiles%\Microsoft Monitoring Agent\Agent\Health Service State\Management Packs 。

管理包 ApplicationDependencyMonitor 使用的数据源是 *%Program files%\Microsoft Monitoring Agent\Agent\Health Service State\Resources<AutoGeneratedID>\Microsoft.EnterpriseManagement.Advisor.ApplicationDependencyMonitorDataSource.dll。 管理包 VMInsights 使用的数据源是 %Program files%\Microsoft Monitoring Agent\Agent\Health Service State\Resources<AutoGeneratedID>\ Microsoft.VirtualMachineMonitoringModule.dll。

从 Log Analytics 代理进行迁移

迁移期间,可以在同一台计算机上安装 Azure Monitor 代理和 Log Analytics 代理。 运行这两个代理时应谨慎,因为可能会导致重复数据并增加成本。 如果计算机同时安装了这两个代理,Azure 门户中会显示一条警告,指出可能会收集重复数据。

警告

使用 Azure Monitor 代理和 Log Analytics 代理从单台计算机收集重复数据可能会导致以下后果:

  • 将重复数据发送到 Log Analytics 工作区会造成额外的引入费用。
  • VM 见解的映射功能可能不准确,因为它不会检查重复数据。

安装了两种代理的情况

必须从使用 Log Analytics 代理的任何计算机中删除该代理。 执行此操作之前,请确保计算机不依赖任何其他需要 Log Analytics 代理的解决方案。 有关详细信息,请参阅从 Log Analytics 代理迁移到 Azure Monitor 代理

验证没有 Log Analytics 代理仍连接到 Log Analytics 工作区后,可以从不再需要的工作区中删除 VMInsights 解决方案

注意

若要检查计算机上是否有两个代理向 Log Analytics 工作区发送数据,请在 Log Analytics 中运行以下日志查询。 这会显示每台计算机的最后一个检测信号。 如果计算机具有两个代理,则它将返回两条记录,每条记录具有不同的 category。 Azure Monitor 代理将具有 Azure Monitor 代理的 category。 Log Analytics 代理将具有直接代理的 category

Heartbeat
| summarize max(TimeGenerated) by Computer, Category
| sort by Computer

诊断和使用情况数据

Microsoft 使用 Azure Monitor 服务自动收集使用情况和性能数据。 Microsoft 使用此数据来改进服务的质量、安全性和完整性。

为了提供准确高效的故障排除功能,映射功能包含有关软件配置的信息。 这些数据提供操作系统和版本、IP 地址、DNS 名称及工作站名称等信息。 Microsoft 不收集姓名、地址或其他联系信息。

有关数据收集和使用的详细信息,请参阅 Microsoft Online Services 隐私声明

注意

有关查看或删除个人数据的信息,请参阅 GDPR 的 Azure 数据使用者请求。 有关 GDPR 的详细信息,请参阅 Microsoft 信任中心的 GDPR 部分服务信任门户的 GDPR 部分

后续步骤

要了解如何使用性能监视功能,请参阅查看VM 见解性能。 要查看已发现的应用程序依赖关系,请参阅查看 VM 见解地图