Azure Monitor 代理概述
Azure Monitor 代理 (AMA) 从 Azure 和混合虚拟机的来宾操作系统收集监视数据,并将其传送到 Azure Monitor,供不同的功能、见解和其他服务(如 Microsoft Sentinel 和 Microsoft Defender for Cloud)使用。 Azure Monitor 代理取代了 Azure Monitor 的旧版监视代理 (MMA/OMS)。 本文概述 Azure Monitor 代理的功能和支持的用例。
优点
使用 Azure Monitor 代理可以立即获得以下好处:
- 通过使用数据收集规则节省成本:
- 与旧代理的“全部或全无”方法相比,支持对一台计算机或一部分计算机进行有针对性的精细数据收集。
- 允许筛选规则和数据转换,以减少上传的总数据量,从而显著降低引入和存储成本。
- 安全性和性能
- 通过托管标识和 Microsoft Entra 令牌(用于客户端)增强了安全性。
- 更高的事件吞吐量,比旧版 Log Analytics (MMA/OMS) 代理高 25%。
- 更简单的管理,包括高效的故障排除:
- 支持将数据上传到多个目标(多个 Log Analytics 工作区,即 Windows 和 Linux 上的多宿主),包括跨区域和跨租户数据收集(使用 Azure LightHouse)。
- 在整个数据收集生命周期(从载入到部署再到随时间推移而进行的更新和更改),针对企业规模“在云中”实现集中式代理配置。
- 配置中的任何更改都会自动推出到所有代理,而无需客户端部署。
- 提高对更多功能和服务的透明度和控制,例如 Microsoft Sentinel、Defender for Cloud 和 VM Insights。
- 单个代理,跨支持的服务器和客户端设备提供所有数据收集需求。 尽管 Azure Monitor 代理当前结合了 Log Analytics 代理,但单一代理才是目标。
整合旧版代理
Azure Monitor 代理取代了旧版代理程序,旧版代理程序将数据发送到 Log Analytics 工作区,并支持监视解决方案。
Log Analytics 代理“已弃用”,且在 2024 年 8 月 31 日之后将不再受支持。 2024 年 1 月 1 日之后联机的任何新数据中心都不支持 Log Analytics 代理。 如果使用 Log Analytics 代理将数据引入 Azure Monitor,请在此日期之前迁移到新的 Azure Monitor 代理。
安装代理并配置数据收集
Azure Monitor 代理使用数据收集规则,你通过这些规则来定义需要每个代理收集的数据。 数据收集规则允许大规模管理数据收集设置,并为计算机的子集定义有作用域的唯一配置。 可以定义一个规则,将数据从多个计算机发送到跨区域和租户的多个目标。
注意
若要跨租户发送数据,必须先启用 Azure Lighthouse。 不支持克隆安装了 Azure Monitor 代理的计算机。 适合这些情况的最佳做法是使用 Azure Policy 或基础结构即代码工具大规模部署 AMA。
使用 Azure Monitor 代理收集数据:
在资源上安装代理。
资源类型 安装方法 详细信息 Azure 虚拟机和 Azure 虚拟机规模集 虚拟机扩展 使用 Azure 扩展框架安装代理。 本地已启用 Arc 的服务器 虚拟机扩展(安装 Azure Arc 代理后) 使用 Azure 扩展框架(通过先安装 Azure Arc 代理为本地提供)来安装代理。 Windows 10、11 客户端操作系统 客户端安装程序 使用 Windows MSI 安装程序安装代理。 安装程序适用于笔记本电脑,但代理尚未针对电池、网络消耗进行优化。 定义数据收集规则并将资源与规则关联。
下表列出了当前可以使用 Azure Monitor 代理收集的数据类型,以及可以发送该数据的位置。
数据源 Destinations 说明 性能 - Azure Monitor 指标(公共预览版):
- 对于 Windows - 虚拟机来宾命名空间
- 对于 Linux1 - azure.vm.linux.guestmetrics 命名空间
- Log Analytics 工作区 - 性能表
度量操作系统和工作负荷的各方面性能的数值 Windows 事件日志(包括 sysmon 事件) Log Analytics 工作区 - 事件表 发送到 Windows 事件日志记录系统的信息 Syslog Log Analytics 工作区 - Syslog2 表 发送到 Linux 事件日志记录系统的信息。 使用 Azure Monitor 代理收集 Syslog 文本和 JSON 日志 Log Analytics 工作区 - 手动创建的自定义表 使用 Azure Monitor 代理收集文本日志 Windows IIS 日志 Windows 计算机的本地磁盘中的 Internet Information Services (IIS) 日志。 [使用 Azure Monitor 代理收集 IIS 日志]。(data-collection-iis.md) Windows 防火墙日志 Windows 计算机的本地磁盘中的防火墙日志 1 在 Linux 上,v1.10.9.0 或更高版本支持使用 Azure Monitor 指标作为唯一目标。
2 Azure Monitor Linux 代理版本 1.15.2 或更高版本现在支持 Syslog RFC 格式,包括 Cisco Meraki、Cisco ASA、Cisco FTD、Sophos XG、Juniper Networks、Corelight Zeek、CipherTrust、NXLog、McAfee 和通用事件格式 (CEF)。注意
在基于 rsyslog 的系统上,Azure Monitor Linux 代理将转发规则添加到 rsyslog 配置中定义的默认规则集。 如果使用了多个规则集,则绑定到非默认规则集的输入不会转发到 Azure Monitor 代理。 有关 rsyslog 中的多个规则集的详细信息,请参阅官方文档。
注意
Azure Monitor 代理还支持 Azure 服务 SQL 最佳做法评估,该评估目前已正式发布。 有关详细信息,请参阅使用 Azure Monitor 代理配置最佳做法评估。
- Azure Monitor 指标(公共预览版):
支持的服务和功能
Azure Monitor 代理通常可用于数据收集(正式版)。 使用了 Log Analytics 代理进行数据收集的大多数服务都已迁移到 Azure Monitor 代理。
以下功能和服务现在有可用的 Azure Monitor 代理版本:
服务或功能 | 当前状态 | 详细信息 |
---|---|---|
Microsoft Sentinel | 公共预览版 | 适用于 Microsoft Sentinel 的 AMA 迁移 |
网络观察程序 | GA | 使用连接监视器监视网络连接 |
Azure Stack HCI Insights | GA | 使用 Insights 监视 Azure Stack HCI |
Azure 虚拟桌面 (AVD) 见解 | GA | Azure Virtual Desktop Insights |
容器监视解决方案 | GA | 启用容器见解 |
DNS 收集器 | GA | 启用 DNS 连接器 |
支持的区域
Azure Monitor 代理的已正式发布功能在所有区域中可用。 有关详细信息,请参阅可用产品(按区域)。
成本
Azure Monitor 代理不收取任何费用,但引入和存储的数据可能产生费用。 若要了解 Log Analytics 数据收集和保留期以及客户指标相关信息,请参阅 Azure Monitor 定价。
与旧版代理程序比较
下表提供了 Azure Monitor 代理与适用于 Windows 和 Linux 的旧版 Azure Monitor 遥测代理的比较。
Windows 代理
类别 | 区域 | Azure Monitor 代理 | 旧版代理程序 |
---|---|---|---|
支持的环境 | |||
Azure | ✓ | ✓ | |
其他云 (Azure Arc) | ✓ | ✓ | |
本地 (Azure Arc) | ✓ | ✓ | |
Windows 客户端 OS | ✓ | ||
收集的数据 | |||
事件日志 | ✓ | ✓ | |
性能 | ✓ | ✓ | |
基于文件的日志 | ✓ | ✓ | |
IIS 日志 | ✓ | ✓ | |
数据发送目标 | |||
Azure Monitor 日志 | ✓ | ✓ | |
支持的服务和功能 | |||
Microsoft Sentinel | ✓(视图范围) | ✓ | |
Microsoft Defender for Cloud - 仅使用 MDE 代理 | |||
自动化更新管理 - 已移动到 Azure 更新管理器 | ✓ | ✓ | |
Azure Stack HCI | ✓ | ||
更新管理器 - 不再使用代理 | |||
SQL 最佳做法评估 | ✓ |
Linux 代理
类别 | 区域 | Azure Monitor 代理 | 旧版代理程序 |
---|---|---|---|
支持的环境 | |||
Azure | ✓ | ✓ | |
其他云 (Azure Arc) | ✓ | ✓ | |
本地 (Azure Arc) | ✓ | ✓ | |
收集的数据 | |||
Syslog | ✓ | ✓ | |
性能 | ✓ | ✓ | |
基于文件的日志 | ✓ | ||
数据发送目标 | |||
Azure Monitor 日志 | ✓ | ✓ | |
支持的服务和功能 | |||
Microsoft Sentinel | ✓(视图范围) | ✓ | |
Microsoft Defender for Cloud - 仅使用 MDE 代理 | |||
自动化更新管理 - 已移动到 Azure 更新管理器 | ✓ | ✓ | |
更新管理器 - 不再使用代理 |
受支持的操作系统
下表列出了 Azure Monitor 代理和旧版代理程序支持的操作系统。 所有操作系统都假定为 x64。 任何操作系统均不支持 x86。 查看 Azure Arc Connected Machine 代理支持的操作系统,这是在 Azure 外部(即本地)或其他云中托管的物理服务器和虚拟机上运行 Azure Monitor 代理的先决条件。
Windows
操作系统 | Azure Monitor 代理 | 旧版代理程序 |
---|---|---|
Windows Server 2022 | ✓ | ✓ |
Windows Server 2022 Core | ✓ | |
Windows Server 2019 | ✓ | ✓ |
Windows Server 2019 Core | ✓ | |
Windows Server 2016 | ✓ | ✓ |
Windows Server 2016 Core | ✓ | |
Windows Server 2012 R2 | ✓ | ✓ |
Windows Server 2012 | ✓ | ✓ |
Windows 11 Client 和 Pro | ✓1, 2 | |
Windows 11 企业版 (包括多会话) |
✓ | |
Windows 10 1803 (RS4) 及更高版本 | ✓1 | |
Windows 10 企业版 (包括多会话)和专业版 (仅限服务器方案) |
✓ | ✓ |
Azure Stack HCI | ✓ | ✓ |
Windows IoT 企业版 | ✓ |
1 使用 Azure Monitor 代理客户端安装程序。
2 在基于 Arm64 的计算机上也受支持。
Linux
注意
本文引用了 CentOS,这是一个处于生命周期结束 (EOL) 状态的 Linux 发行版。 请相应地考虑你的使用和规划。 有关详细信息,请参阅 CentOS 生命周期结束指南。
操作系统 | Azure Monitor 代理 1 | 旧版代理程序 1 |
---|---|---|
AlmaLinux 9 | ✓2 | ✓ |
AlmaLinux 8 | ✓2 | ✓ |
Amazon Linux 2017.09 | ✓ | |
Amazon Linux 2 | ✓ | ✓ |
CentOS Linux 8 | ✓ | ✓ |
CentOS Linux 7 | ✓2 | ✓ |
CBL-Mariner 2.0 | ✓2、3 | |
Debian 11 | ✓2 | ✓ |
Debian 10 | ✓ | ✓ |
Debian 9 | ✓ | ✓ |
Debian 8 | ✓ | |
OpenSUSE 15 | ✓ | ✓ |
Oracle Linux 9 | ✓ | |
Oracle Linux 8 | ✓ | ✓ |
Oracle Linux 7 | ✓ | ✓ |
Oracle Linux 6.4+ | ||
Red Hat Enterprise Linux Server 9+ | ✓ | ✓ |
Red Hat Enterprise Linux Server 8.6+ | ✓2 | ✓ |
Red Hat Enterprise Linux Server 8.0-8.5 | ✓ | ✓ |
Red Hat Enterprise Linux Server 7 | ✓ | ✓ |
Red Hat Enterprise Linux Server 6.7+ | ||
Rocky Linux 9 | ✓ | ✓ |
Rocky Linux 8 | ✓ | ✓ |
SUSE Linux Enterprise Server 15 SP4 | ✓2 | ✓ |
SUSE Linux Enterprise Server 15 SP3 | ✓ | ✓ |
SUSE Linux Enterprise Server 15 SP2 | ✓ | ✓ |
SUSE Linux Enterprise Server 15 SP1 | ✓ | ✓ |
SUSE Linux Enterprise Server 15 | ✓ | ✓ |
SUSE Linux Enterprise Server 12 | ✓ | ✓ |
Ubuntu 22.04 LTS | ✓ | ✓ |
Ubuntu 20.04 LTS | ✓2 | ✓ |
Ubuntu 18.04 LTS | ✓2 | ✓ |
Ubuntu 16.04 LTS | ✓ | ✓ |
Ubuntu 14.04 LTS | ✓ |
1 需要在计算机安装 Python(2 或 3)。
2 在基于 Arm64 的计算机上也受支持。
3 需要分配至少 4GB 的磁盘空间(默认情况下未提供)。
注意
运行上述发行版的高度自定义或精简版的计算机和设备,以及不允许用户自定义的托管解决方案不受支持。 Azure Monitor 和旧版代理依赖于经常会从此类系统中删除的各种包和其他基线功能,并且其安装可能需要进行一些环境修改,而设备供应商可能不允许这种修改。 例如,不支持 GitHub Enterprise Server,因为它是一个高度自定义的操作系统,并且有许可证级别的文档规定不允许修改它。
注意
CBL-Mariner 2.0 的磁盘大小默认为 1GB 左右以节省存储,而其他 Azure 虚拟机的则为 30GB 左右。 但是,Azure Monitor 代理至少需要 4GB 的磁盘大小,才能成功安装和运行。 有关在安装代理之前如何增加磁盘大小的详细信息和说明,请查看 CBL-Mariner 的文档。
强化标准
Azure 监视代理支持大部分行业标准强化标准,并且在每次发布时都会根据这些标准持续测试和认证。 所有 Azure Monitor 代理方案都是从头开始设计的,并充分考虑了安全性。
Linux 强化
现在,适用于 Linux 的 Azure 监视代理正式支持面向 Linux 操作系统和发行版的各种强化标准。 代理的每个版本已根据支持的强化标准进行测试和认证。 我们针对 Azure 市场上公开提供和由 CIS 发布的映像进行测试,并且仅支持适用于这些映像的设置和强化。 如果对自己的黄金映像应用其他自定义项,并且 CIS 映像未涵盖这些设置,则会将其视为不支持的方案。
只有适用于 Linux 的 Azure 监视代理才会支持这些强化标准。 Log Analytics 代理(旧版)或诊断扩展中不存在支持此功能的计划
目前支持的强化标准:
- SELinux
- CIS Lvl 1 和 21
- STIG
- FIPS
- FedRamp
Windows 强化
Azure 监视代理支持所有标准 Windows 强化标准,包括 STIG 和 FIP,并且符合 Azure Monitor 下的 FedRamp。
操作系统 | Azure Monitor 代理 1 | 旧版代理程序1 |
---|---|---|
CentOS Linux 7 | ✓ | |
Debian 10 | ✓ | |
Ubuntu 18 | ✓ | |
Ubuntu 20 | ✓ | |
Red Hat Enterprise Linux Server 7 | ✓ | |
Red Hat Enterprise Linux Server 8 | ✓ |
1 仅支持上述发行版和版本
常见问题解答
本部分提供常见问题的解答。
Azure Monitor 需要代理吗?
只在从虚拟机中的操作系统和工作负载收集数据时,才需要代理。 虚拟机可位于 Azure、其他云环境或本地。 请参阅 Azure Monitor 代理概述。
Azure Monitor 代理是否支持各种 Log Analytics 解决方案和 Azure 服务(如 Microsoft Defender for Cloud 和 Microsoft Sentinel)的数据收集?
是的,Azure Monitor 代理支持各种 Log Analytics 解决方案和 Azure 服务(如 Microsoft Defender for Cloud 和 Microsoft Sentinel)的数据收集。
某些服务可能会安装其他扩展来收集更多数据或者转换或处理数据,然后使用 Azure Monitor 代理将最终数据路由到 Azure Monitor。 有关详细信息,请参阅从 Log Analytics 代理迁移到 Azure Monitor 代理。
下图说明了新的扩展性体系结构。
Azure Monitor 代理是否支持非 Azure 环境(例如其他云或本地环境)?
现在,在安装 Azure Arc 代理后,服务器支持本地计算机和连接到其他云的计算机。 若要运行 Azure Monitor 代理和数据收集规则,无需额外付费或消耗额外的资源即可达到 Azure Arc 要求。 Azure Arc 代理仅用作安装机制。 如果你不想使用付费管理功能,则无需启用这些功能。
Azure Monitor 代理是否支持 Linux 或 AUOMS 上的审核日志?
是的,但你需要加入到 Defender for Cloud(以前称为 Azure 安全中心)。 它作为 Azure Monitor 代理扩展提供,可通过 AUOMS 收集 Linux 审核日志。
为什么需要安装 Azure Arc Connected Machine Agent 才能使用 Azure Monitor 代理?
Azure Monitor 代理通过托管标识向工作区进行身份验证,该标识是在安装 Connected Machine Agent 时创建的。 托管标识是 Azure 中更安全、更易管理的身份验证解决方案。 而旧版 Log Analytics 代理使用工作区 ID 和密钥进行身份验证,因此不需要 Azure Arc。
后续步骤
- 在 Windows 和 Linux 虚拟机上安装 Azure Monitor 代理。
- 创建数据收集规则,通过代理收集数据并将其发送给 Azure Monitor。