Azure Monitor 代理概述

虚拟机和其他计算资源需要代理收集所需的监视数据,以度量其来宾操作系统和工作负荷的性能和可用性。 本文介绍 Azure Monitor 使用的代理,并帮助你确定需要满足特定环境的哪些要求。

备注

Azure Monitor 最近推出了一个新代理,即 Azure Monitor 代理,该代理提供收集来宾操作系统监视数据所需的全部功能。 虽然 Azure Monitor 和 Log Analytics 合并导致存在许多旧版代理,这些代理都有独特的功能,但也存在一些重叠,因此我们建议使用新的代理,该新代理合并了现有全部代理的功能并具有额外的优势。 了解详细信息

代理摘要

下表对适用于 Windows 和 Linux 的 Azure Monitor 代理进行了快速比较。 以下部分提供了每个代理的更多详细信息。

Windows 代理

Azure Monitor 代理 诊断
扩展 (WAD)
Log Analytics
代理
依赖项
代理
支持的环境 Azure Azure Azure
其他云
本地
Azure
其他云
本地
代理要求 需要 Log Analytics 代理
收集的数据 事件日志
性能
事件日志
ETW 事件
性能
基于文件的日志
IIS 日志
.NET 应用日志
故障转储
代理诊断日志
事件日志
性能
基于文件的日志
IIS 日志
见解和解决方案
其他服务
过程依赖项
网络连接指标
数据发送目标 Azure Monitor 日志
Azure Monitor 指标
Azure 存储
Azure Monitor 指标
事件中心
Azure Monitor 日志 Azure Monitor 日志
(通过 Log Analytics 代理)
支持的
功能
支持
Log Analytics
指标资源管理器
指标资源管理器 VM 见解
Log Analytics
Azure 自动化
Azure 安全中心
VM 见解
服务映射

Linux 代理

Azure Monitor 代理 诊断
扩展 (LAD)
Telegraf
代理
Log Analytics
代理
依赖项
代理
支持的环境 Azure Azure Azure
其他云
本地
Azure
其他云
本地
Azure
其他云
本地
代理要求 需要 Log Analytics 代理
收集的数据 Syslog
性能
Syslog
性能
性能 Syslog
性能
过程依赖项
网络连接指标
数据发送目标 Azure Monitor 日志
Azure Monitor 指标
Azure 存储
事件中心
Azure Monitor 指标 Azure Monitor 日志 Azure Monitor 日志
(通过 Log Analytics 代理)
支持的
功能
支持
Log Analytics
指标资源管理器
指标资源管理器 VM 见解
Log Analytics
Azure 自动化
Azure 安全中心
Azure Sentinel
VM 见解
服务映射

Azure Monitor 代理

我们推出 Azure Monitor 代理的目的是让其取代 Windows 和 Linux 计算机上的 Log Analytics 代理、Azure 诊断扩展和 Telegraf 代理。 它可将数据发送到 Azure Monitor 日志和 Azure Monitor 指标,并使用数据收集规则 (DCR),这些规则提供了伸缩性更强的方法来为每个代理配置数据收集和目标。

如需执行以下操作,请使用 Azure Monitor 代理:

  • 从 Azure、其他云或本地的任何计算机中收集来宾日志和指标。
  • 使用数据收集规则集中管理数据收集配置,并使用 Azure 资源管理器 (ARM) 模板或策略进行整体管理
  • 将数据发送到 Azure Monitor 日志和 Azure Monitor 指标来供 Azure Monitor 分析。
  • 利用 Windows 事件筛选或多归属功能处理 Windows 或 Linux 上的日志

Azure Monitor 代理存在以下限制:

  • 无法在生产环境中使用 Log Analytics 解决方案(仅提供预览版,请参阅支持的内容)。
  • 尚不支持涉及专用链接的网络场景。
  • 尚不支持收集自定义日志(文件)或 IIS 日志文件。
  • 尚不支持将事件中心和存储帐户作为目标。
  • 不支持混合 Runbook 辅助角色。

Log Analytics 代理

Log Analytics 代理从 Azure 中的虚拟机、其他云提供商和本地计算机的来宾操作系统与工作负载收集监视数据。 它会将数据发送到 Log Analytics 工作区。 Log Analytics 代理是 System Center Operations Manager 使用的代理,你可以通过多宿主代理计算机同时与管理组和 Azure Monitor 通信。 Azure Monitor 和 Azure 中的其他服务中的某些见解也需要此代理。

备注

适用于 Windows 的 Log Analytics 代理通常称作 Microsoft Monitoring Agent (MMA)。 适用于 Linux 的 Log Analytics 代理通常称作 OMS 代理。

如果需要执行以下操作,请使用 Log Analytics 代理:

Log Analytics 代理的限制包括:

  • 无法将数据发送到 Azure Monitor 指标、Azure 存储或 Azure 事件中心。
  • 难以为单个代理配置唯一的监视定义。
  • 难以大规模管理,因为每个虚拟机都有唯一的配置。

Azure 诊断扩展

Azure 诊断扩展从 Azure 虚拟机和其他计算资源的来宾操作系统和工作负载收集监视数据。 它主要将数据收集到 Azure 存储中,但也允许你通过定义数据接收器将数据同时发送到其他目标(例如 Azure Monitor 指标和 Azure 事件中心)。

如果需要执行以下操作,请使用 Azure 诊断扩展:

Azure 诊断扩展的限制包括:

  • 只能与 Azure 资源配合使用。
  • 将数据发送到 Azure Monitor 日志的功能有限。

Telegraf 代理

InfluxData Telegraf 代理用于将性能数据从 Linux 计算机收集到 Azure Monitor 指标。

如果需要执行以下操作,请使用 Telegraf 代理:

虚拟机扩展

WindowsLinux 的 Log Analytics 扩展在 Azure 虚拟机上安装 Log Analytics 代理。 Windows 和 Linux 的 Azure Monitor 依赖项扩展在 Azure 虚拟机上安装 Dependency Agent。 它们是如上所述的代理,但你可以通过虚拟机扩展对它们进行管理。 应尽可能使用扩展来安装和管理代理。

支持的操作系统

下表列出了 Azure Monitor 代理支持的操作系统。 请参阅每个代理的文档,以了解独特的注意事项和安装过程。 请参阅 Telegraf 文档以了解其支持的操作系统。 所有操作系统都假定为 x64。 任何操作系统均不支持 x86。

Windows

操作系统 Azure Monitor 代理 Log Analytics 代理 依赖关系代理 诊断扩展
Windows Server 2019 X X X X
Windows Server 2019 Core X
Windows Server 2016 X X X X
Windows Server 2016 Core X X
Windows Server 2012 R2 X X X X
Windows Server 2012 X X X X
Windows Server 2008 R2 SP1 X X X X
Windows Server 2008 R2 X X
Windows Server 2008 SP2 X
Windows 10 企业版
(包括多会话)和专业版
(仅限服务器方案)
X X X X
Windows 8 企业版和专业版
(仅限服务器方案)
X X
Windows 7 SP1
(仅限服务器方案)
X X

Linux

操作系统 Azure Monitor 代理 1 Log Analytics 代理 1 依赖关系代理 诊断扩展 2
Amazon Linux 2017.09 X
CentOS Linux 8 X 3 X X
CentOS Linux 7 X X X X
CentOS Linux 6 X
CentOS Linux 6.5+ X X X
Debian 10 1 X
Debian 9 X X x X
Debian 8 X X
Debian 7 X
OpenSUSE 13.1+ X
Oracle Linux 8 X 3 X
Oracle Linux 7 X X X
Oracle Linux 6 X
Oracle Linux 6.4+ X X
Red Hat Enterprise Linux Server 8.2、8.3、8.4 X 3 X X
Red Hat Enterprise Linux Server 8 X 3 X X
Red Hat Enterprise Linux Server 7 X X X X
Red Hat Enterprise Linux Server 6 X X
Red Hat Enterprise Linux Server 6.7+ X X X
SUSE Linux Enterprise Server 15.2 X 3
SUSE Linux Enterprise Server 15.1 X 3 X
SUSE Linux Enterprise Server 15 SP1 X X X
SUSE Linux Enterprise Server 15 X X X
SUSE Linux Enterprise Server 12 SP5 X X X X
SUSE Linux Enterprise Server 12 X X X X
Ubuntu 20.04 LTS X X X
Ubuntu 18.04 LTS X X X X
Ubuntu 16.04 LTS X X X X
Ubuntu 14.04 LTS X X

1 需要在计算机安装 Python(2 或 3)。

3 有关在 1.9.0 之前的版本中收集 Syslog 事件的已知问题。

Dependency Agent Linux 内核支持

由于 Dependency Agent 在内核级别工作,因此支持也依赖于内核版本。 下表列出了 Dependency Agent 的主要和次要 Linux OS 版本以及支持的内核版本。

分发 OS 版本 内核版本
Red Hat Linux 8 8.2 4.18.0-193.*el8_2.x86_64
8.1 4.18.0-147.*el8_1.x86_64
8.0 4.18.0-80.*el8.x86_64
4.18.0-80.*el8_0.x86_64
Red Hat Linux 7 7.9 3.10.0-1160
7.8 3.10.0-1136
7.7 3.10.0-1062
7.6 3.10.0-957
7.5 3.10.0-862
7.4 3.10.0-693
Red Hat Linux 6 6.10 2.6.32-754
6.9 2.6.32-696
CentOS Linux 8 8.2 4.18.0-193.*el8_2.x86_64
8.1 4.18.0-147.*el8_1.x86_64
8.0 4.18.0-80.*el8.x86_64
4.18.0-80.*el8_0.x86_64
CentOS Linux 7 7.9 3.10.0-1160
7.8 3.10.0-1136
7.7 3.10.0-1062
CentOS Linux 6 6.10 2.6.32-754.3.5
2.6.32-696.30.1
6.9 2.6.32-696.30.1
2.6.32-696.18.7
Ubuntu Server 20.04 5.4*
18.04 5.3.0-1020
5.0(包括 Azure 优化内核)
4.18
4.15
16.04.3 4.15.*
16.04 4.13.*
4.11.*
4.10.*
4.8.*
4.4.*
SUSE Linux 12 Enterprise Server 15 4.12.14-150*
12 SP4 4.12.*(包括 Azure 优化内核)
12 SP3 4.4.*
12 SP2 4.4.*
Debian 9 4.9

后续步骤

在以下站点获取每个代理的更多详细信息: