Operations Manager 代理

重要

此版本的 Operations Manager 已终止支持。 建议 升级到 Operations Manager 2022

在 System Center Operations Manager 中,代理是安装在计算机上的一项服务,可查找配置数据并主动收集用于分析和报告的信息、测量受监视对象(如 SQL 数据库或逻辑磁盘)的运行状况,以及操作员按需执行任务或响应某个条件的任务。 它允许 Operations Manager 监视 Windows、Linux 和 UNIX 操作系统以及安装在这些操作系统上的 IT 服务的组件,例如网站或 Active Directory 域控制器。

Windows 代理

在被监视的 Windows 计算机上,Operations Manager 代理被列为 Microsoft Monitoring Agent (MMA) 服务。 Microsoft Monitoring Agent 服务收集事件和性能数据,并执行任务和在管理包中定义的其他工作流。 即使服务无法与它所报告到的管理服务器通信,它仍会在被监视计算机的磁盘上继续运行并将收集的数据和事件排队。 当连接恢复时,Microsoft Monitoring Agent 服务会将收集的数据和事件发送到管理服务器。

注意

  • Microsoft Monitoring Agent 服务有时也称为运行状况服务。

Microsoft Monitoring Agent 服务也在管理服务器上运行。 在管理服务器上,Microsoft Monitoring Agent 服务会运行监视工作流并管理凭据。 为了运行工作流,Microsoft Monitoring Agent 服务会使用指定的凭据启动 MonitoringHost.exe 进程。 这些进程监视和收集事件日志数据、性能计数器数据、Windows Management Instrumentation (WMI) 数据,并运行诸如脚本之类的操作。

代理和管理服务器之间的通信

Operations Manager 代理会将警报和发现数据发送给为其分配的主管理服务器,此服务器会将数据写入操作数据库。 此代理还会将事件、性能和状态数据发送给主管理服务器,此服务器会将数据同时写入操作数据库和数据仓库数据库。

代理会根据每个规则和监视器的计划参数发送数据。 对于优化的收集规则,只有当计数器样本与先前样本之差达到指定容差(如 10%)时,才会传输数据。 这将有助于减少网络流量以及操作数据库中存储的数据量。

此外,所有代理会按定期计划向管理服务器发送数据包,此数据包称为 检测信号;默认情况下,每 60 秒发送一次。 检测信号的用途是验证代理的可用性以及代理与管理服务器之间的通信。 有关检测信号的详细信息,请参阅 How Heartbeats Work in Operations Manager(检测信号在 Operations Manager 中的工作原理)

对于每个代理,Operations Manager 将运行 运行状况服务观察程序,此程序从管理服务器的角度监视远程运行状况服务的状态。 代理通过 TCP 端口 5723 与管理服务器通信。

代理到管理服务器通信的插图。

Linux/UNIX 代理

Unix 和 Linux 代理的体系结构明显不同于 Windows 代理。 Windows 代理具有负责评估被监视计算机的运行状况的运行状况服务。 UNIX 和 Linux 代理不运行运行状况服务;而是将信息传递给要评估的管理服务器上的运行状况服务。 管理服务器运行所有工作流以监视在实现 UNIX 和 Linux 管理包的过程中定义的操作系统运行状况:

  • 磁盘
  • 处理器
  • 内存
  • 网络适配器
  • 操作系统
  • 进程
  • 日志文件

用于 Operations Manager 的 UNIX 和 Linux 代理由 CIM 对象管理器(即 CIM 服务器)和一组 CIM 提供程序组成。 CIM 对象管理器是实现 WS-Management 通信、身份验证、授权和向提供程序发送请求 的服务器 组件。 提供程序是代理中 CIM 实现的关键,用于定义 CIM 类和属性、与内核 API 进行交互以检索原始数据、设置数据的格式(例如计算增量和平均值)以及为从 CIM 对象管理器调度的请求提供服务。 从 System Center Operations Manager 2007 R2 至 System Center 2012 SP1,Operations Manager UNIX 和 Linux 代理中所使用的 CIM 对象管理器均为 OpenPegasus 服务器。 用于收集和报告监视数据的提供程序是由 Microsoft 开发的,而且在 CodePlex.com 中是开源的。

Operations Manager UNIX/Linux 代理的软件体系结构插图。

这已在 System Center 2012 R2 Operations Manager 中进行了更改,其中 UNIX 和 Linux 代理现在基于完全一致的开放式管理基础结构 (OMI) 实现作为其 CIM 对象管理器。 就 Operations Manager UNIX/Linux 代理而言,OMI 将替换 OpenPegasus。 与 OpenPegasus 一样,OMI 是一种开源、轻量级和可移植的 CIM 对象管理器实现 ,尽管它比 OpenPegasus 更轻、更可移植。 此实现继续在 System Center 2016 - Operations Manager 及更高版本中应用。

Operations Manager UNIX/Linux 代理的更新软件体系结构示意图。

管理服务器与 UNIX 和 Linux 代理之间的通信分为两类:代理维护和运行状况监视。 管理服务器使用两种协议与 UNIX 或 Linux 计算机通信:

  • 安全外壳 (SSH) 和安全外壳文件传输协议 (SFTP)

    用于代理维护任务,例如安装、升级和删除代理。

  • 用于管理的 Web 服务(WS 管理)

    用于所有监视操作,并包括已安装代理的发现。

Operations Manager 管理服务器和 UNIX 和 Linux 代理之间的通信使用 HTTPS 上的 WS-Man 及 WinRM 接口。 所有代理维护任务均通过端口 22 上的 SSH 执行。 所有运行状况监视均通过端口 1270 上的 WS-MAN 执行。 在评估数据以提供运行状况状态之前,管理服务器通过 WS-MAN 请求性能和配置数据。 所有操作(如代理维护)、监视器、规则、任务和恢复均被配置为根据其要求将预定义的配置文件用于特权帐户或非特权帐户。

注意

本文中所引用的所有凭据都与在 UNIX 或 Linux 计算机上建立的帐户相关,与安装 Operations Manager 期间配置的 Operations Manager 帐户无关。 请与系统管理员联系,以获取凭据和身份验证信息。

为了支持大量 UNIX 和 Linux 系统的新可伸缩性改进,System Center 2016 - Operations Manager 及更高版本可以监视每个管理服务器,提供新的 Async Windows Management Infrastructure (MI) API 来替代默认使用的 WSMAN Sync API。 若要允许此更改,需要创建新注册表项 UseMIAPI 以使 Operations Manager 可以在监视 Linux/Unix 系统的管理服务器上使用新的 Async MI API。

  1. 从提升的“命令提示符”中,打开“注册表编辑器”。
  2. 下创建注册表项 UseMIAPI

如果需要使用 WSMAN Sync API 恢复原始配置,可删除 UseMIAPI 注册表项。

代理安全性

UNIX/Linux 计算机上的身份验证

在 Operations Manager 中,系统管理员不再需要向管理服务器提供 UNIX 或 Linux 计算机的根密码。 现在,通过进行提升,无特权帐户可以在 UNIX 或 Linux 计算机上采用特权帐户的标识。 提升过程由 UNIX su(超级用户)和 sudo 程序来执行,这两个程序使用管理服务器提供的凭据。 对于使用 SSH 的特权代理维护操作(如发现、部署、升级、卸载和代理恢复),提供了对 su 和 sudo 提升的支持,以及对 SSH 密钥身份验证(有或无密码)的支持。 对于特权 WS 管理操作(如查看安全的日志文件),添加了对 sudo 提升(无密码)的支持。

有关指定凭据和配置帐户的详细说明,请参阅如何设置用于访问 UNIX 和 Linux 计算机的凭据

向网关服务器进行的身份验证

网关服务器用于为不在管理组的 Kerberos 信任边界内的计算机启用代理管理。 由于网关服务器驻留在管理组所在的域不信任的域中,因此必须使用证书来建立每台计算机的标识、代理、网关服务器和管理服务器。 此安排可满足 Operations Manager 在相互身份验证方面的需求。

这将要求用户为每个要向网关服务器报告的代理请求证书,并使用位于安装介质 SupportTools\(amd64 或 x86)目录下的 MOMCertImport.exe 工具将这些证书导入到目标计算机。 你需要有权访问证书颁发机构 (CA) (可以是公共 CA,如 VeriSign),也可以使用 Microsoft 证书服务。

代理部署

可以使用以下三种方法之一安装 System Center 2016 Operations Manager 代理。 大多数安装采用这些方法的组合,根据实际情况安装不同的计算机组。

注意

  • 无法在安装了 Operations Manager 管理服务器、网关服务器、操作控制台、操作数据库、Web 控制台、System Center Essentials 或 System Center Service Manager 的计算机上安装 MMA,因为它们已安装其内置版本的 MMA。
  • 只能使用 MMA 或日志分析代理(VM 扩展版本)。
  • 操作控制台中一个或多个代理的发现和安装。 这是最常见的安装形式。 管理服务器必须能够通过 RPC 连接计算机,而且管理服务器操作帐户或其他提供的凭据必须具有对目标计算机的管理访问权限。
  • 包含在安装映像中。 这是对基本映像的手动安装,用于其他计算机的准备工作。 在这种情况下,Active Directory 集成可能在首次启动时用于自动将计算机分配到管理服务器。
  • 手动安装。 当其他方法之一无法安装代理时,使用此方法,例如,当远程过程调用 (RPC) 由于防火墙而不可用时。 安装程序在代理上手动运行或通过现有软件分发工具进行部署。

可以使用发现向导安装的代理从操作控制台进行管理,例如更新代理版本、应用修补程序以及配置代理报告的管理服务器。

使用手动方法安装代理时,也必须手动执行代理更新。 你将能够使用 Active Directory 集成将代理分配到管理组。 有关详细信息,请参阅将 Active Directory 和 Operations Manager 相集成

选择所需的选项卡,了解有关将代理部署到 Windows 以及 UNIX 和 LINUX 系统的详细信息:

Windows 系统的发现要求 TCP 135 (RPC)、RPC 范围和 TCP 445 (SMB) 端口保持打开,并且要求 SMB 服务已在代理计算机上启用。

  • 发现目标设备之后,可以将代理部署到此目标设备。 代理安装要求:
  • 从终点映射器 TCP 135 开始打开 RPC 端口和服务器消息块 (SMB) 端口 TCP/UDP 445。
  • 启用“Microsoft 网络的文件和打印机共享”和“Microsoft 网络的客户端”服务。 (这可确保 SMB 端口处于活动状态。)
  • 如果已启用,允许远程管理例外和允许文件和打印机共享例外的 Windows 防火墙组策略设置必须将“允许来自下列地址的未经请求的传入消息”设置为代理的主管理服务器和辅助管理服务器的 IP 地址和子网。
  • 对目标计算机有本地管理员权限的帐户。
  • Windows Installer 3.1。 若要安装,请参阅 Microsoft 知识库文章 893803 https://go.microsoft.com/fwlink/?LinkId=86322
  • 位于 \msxml 子目录中 Operations Manager 产品安装媒体上的 Microsoft Core XML Services (MSXML) 6。 推送代理安装会在目标设备上安装 MSXML 6(如果尚未安装)。

Active Directory 代理分配

System CenterOperations Manager 使你能够使用 Active Directory 域服务 (AD DS) 将代理托管计算机分配到管理组,从而使你能够利用你在 Active Directory 域服务方面的投资。 此功能通常用于在服务器部署生成过程中部署的代理。 计算机第一次联机时,Operations Manager 代理会查询 Active Directory 获取其主要和故障转移管理服务器分配并自动开始监视该计算机。

使用 AD DS 将计算机分配到管理组:

  • AD DS 域的功能级别必须为“Windows 2008 本机”或更高
  • 代理托管计算机和所有管理服务器必须在相同域或双向信任域中。

注意

确定它安装在域控制器上的代理不会查询 Active Directory 的配置信息。 这是出于安全考虑。 Active Directory 集成在域控制器上默认为禁用状态,因为代理会在本地系统帐户下运行。 域控制器上的本地系统帐户具有域管理员权限;因此,它将检测在 Active Directory 中注册的所有管理服务器服务连接点,而不考虑域控制器的安全组成员资格。 因此,代理将尝试连接到所有管理组中的所有管理服务器。 结果可能不可预测,因而存在安全风险。

代理分配通过使用某个服务连接点 (SCP) 完成,该服务连接点是一个 Active Directory 对象,用于发布客户端应用程序可用于绑定到服务的信息。 创建方法是:域管理员运行 MOMADAdmin.exe 命令行工具,在 Operations Manager 管理组管理的计算机域中为该管理组创建一个 AD DS 容器。 在运行 MOMADAdmin.exe 时指定的 AD DS 安全组被授予对容器的读取和删除子级权限。 SCP 包含到管理服务器的连接信息,包括服务器的 FQDN 和端口号。 Operations Manager 代理可以通过查询 SCP 自动发现管理服务器。 继承未禁用,并且由于代理可以读取在 AD 中注册的集成信息,因此,如果强制所有人组的继承在 Active Directory 中的根级别读取所有对象,这将严重影响并基本上中断 AD 集成功能。 如果通过授予 Everyone 组读取权限方式在整个目录中显式强制继承,必须在名为“OperationsManager”的顶级 AD 集成容器及所有子对象上阻止此继承。  如果无法执行此操作,AD 集成将无法按设计工作,并且不会为代理部署可靠且一致的主分配和故障转移分配。 此外,如果有两个管理组,那么这两个管理组中的所有代理都将有多个宿主。 

此功能非常适合控制分布式管理组部署中的代理分配,以防止代理向专用于资源池的管理服务器或辅助数据中心的热备用配置中的管理服务器报告,进而防止代理在正常操作中进行故障转移。

代理分配的配置由 Operations Manager 管理员管理,方法是使用代理分配和故障转移向导将计算机分配到主管理服务器和辅助管理服务器。

注意

对于从操作控制台安装的代理,禁用 Active Directory 集成。 默认情况下,对已安装代理启用 Active Directory 集成是使用 MOMAgent.msi 手动完成的。

后续步骤