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

将 Operations Manager 连接到 Azure Monitor

若要保持 System Center Operations Manager 中的现有投资并将扩展功能用于 Azure Monitor,可将 Operations Manager 与 Log Analytics 工作区集成。 这样,既可以继续使用 Operations Manager,又可以使用 Azure Monitor 中的日志,并实现以下操作:

  • 使用 Operations Manager 监视 IT 服务的运行状况。
  • 保持与提供事件和问题管理支持的 ITSM 解决方案的集成。
  • 管理部署到本地和公有云基础结构即服务 (IaaS) 虚拟机(使用 Operations Manager 监视)的代理的生命周期。

与 System Center Operations Manager 集成时,可以利用 Azure Monitor 在收集、存储和分析 Operations Manager 日志数据方面的速度和效率优势,提高服务操作策略的价值。 Azure Monitor 日志查询可以帮助你确定问题的相关因素和根本原因,并重现其发生过程,为现有问题管理过程提供支持。 查询引擎在检查性能、事件和警报数据方面非常灵活,丰富的仪表板和报告功能可以有意义的方式公开此数据,这均展示了 Azure Monitor 为使 Operations Manager 锦上添花所引入的强大优势。

向 Operations Manager 管理组报告的代理基于在工作区中启用的 Log Analytics 数据源和解决方案收集来自服务器的数据。 根据启用的解决方案:

注意

Operations Manager 管理服务器与 Log Analytics 之间现有集成的更新集成和重新配置将不再有效,因为此连接即将停用。

  • 将数据直接从 Operations Manager 管理服务器发送到服务,或
  • 由于代理托管系统上收集的数据量大,数据直接从代理发送到 Log Analytics 工作区。

管理服务器将数据直接转发到服务。 数据从不写入操作数据库或数据仓库数据库。 当管理服务器与 Azure Monitor 断开连接时,会将数据缓存在本地直到重新建立通信。 如果管理服务器由于计划内维护或计划外停机而处于脱机状态,管理组中的另一台管理服务器将恢复与 Azure Monitor 的连接。

下图显示了 System Center Operations Manager 管理组中的管理服务器及代理与 Azure Monitor 之间的连接,包括方向和端口。

示意图显示 System Center Operations Manager 与 Azure Monitor 的集成。

如果 IT 安全策略不允许网络上的计算机连接到 Internet,可将管理服务器配置为连接到 Log Analytics 网关,以根据启用的解决方案接收配置信息并发送收集的数据。 有关如何将 Operations Manager 管理组配置为通过 Log Analytics 网关与 Azure Monitor 通信的详细信息和步骤,请参阅使用 Log Analytics 网关将计算机连接到 Azure Monitor

先决条件

在开始之前,请查看以下要求。

注意

从 2023 年 6 月 30 日开始,低于 2019 UR3 的 System Center Operations Manager 版本将停止将数据发送到 Log Analytics 工作区。 确保代理位于 System Center Operations Manager 代理版本 10.19.10177.0(2019 UR3 或更高版本)或 10.22.22 10056.0 (2022 RTM) 上,且 System Center Operations Manager 管理组版本为 System Center Operations Manager 2022 和 2019 UR3 或更高版本。

  • Azure Monitor 支持:
    • System Center Operations Manager 2022
    • System Center Operations Manager 2019
    • System Center Operations Manager 2016
  • 将 System Center Operations Manager 与美国政府云集成需要:
    • System Center Operations Manager 2022
    • System Center Operations Manager 2019
  • 所有 Operations Manager 代理必须满足最低支持要求。 确保代理中安装了最起码的更新。 否则 Windows 代理通信可能失败,并在 Operations Manager 事件日志中生成错误。
  • Log Analytics 工作区。 有关详细信息,请参阅 Log Analytics 工作区概述
  • 使用 Log Analytics 参与者角色成员帐户在 Azure 中进行身份验证。
  • 支持的区域:System Center Operations Manager 支持将以下 Azure 区域连接到 Log Analytics 工作区:
    • 美国中西部
    • 澳大利亚东南部
    • 西欧
    • 美国东部
    • 东南亚
    • 日本东部
    • 英国南部
    • 印度中部
    • 加拿大中部
    • 美国西部 2

注意

最近对 Azure API 所做的更改会阻止客户在其管理组与 Azure Monitor 之间成功配置首次集成。 对于已将其管理组与该服务进行集成的客户,除非需要重新配置现有连接,否则他们不受影响。 已为以下版本的 Operations Manager 发布了新的管理包:

  • 对于 System Center Operations Manager 2019 和更高版本,此管理包包含在源媒体中,并在新管理组安装或升级过程中安装。
  • 对于 System Center Operations Manager 1801/1807,请从下载中心下载管理包。
  • 对于 System Center Operations Manager 2016,请从下载中心下载管理包。
  • 对于 System Center Operations Manager 2012 R2,请从下载中心下载管理包。

网络

下表列出了 Operations Manager 代理、管理服务器和操作控制台与 Azure Monitor 通信时必需的代理和防火墙配置信息。 来自每个组件的流量将从网络传出到 Azure Monitor。

资源 端口号 绕过 HTTP 检查
代理
*.ods.opinsights.azure.com 443
*.oms.opinsights.azure.com 443
\* .blob.core.windows.net 443
\* .azure-automation.net 443
管理服务器
*.service.opinsights.azure.com 443
\* .blob.core.windows.net 443
*.ods.opinsights.azure.com 443
\* .azure-automation.net 443
Operations Manager 控制台到 Azure Monitor
service.systemcenteradvisor.com 443
*.service.opinsights.azure.com 443
*.live.com 80 和 443
*.microsoft.com 80 和 443
*.microsoftonline.com 80 和 443
*.mms.microsoft.com 80 和 443
login.windows.net 80 和 443
portal.loganalytics.io 80 和 443
api.loganalytics.io 80 和 443
docs.loganalytics.io 80 和 443

TLS 协议

为了确保传输到 Azure Monitor 的数据的安全性,请将代理和管理组配置为至少使用传输层安全性 (TLS) 1.2。 较早版本的 TLS/安全套接字层 (SSL) 易受攻击。 尽管它们目前仍支持向后兼容,但不建议这样做。 有关详细信息,请参阅使用 TLS 1.2 安全地发送数据

将 Operations Manager 连接到 Azure Monitor

执行以下一系列步骤,将 Operations Manager 管理组配置为连接到你的一个 Log Analytics 工作区。

注意

  • 如果从某个特定代理或管理服务器传入 Log Analytics 数据的过程停止了,请使用 netsh winsock reset 重置 Winsock 目录。 然后重新启动服务器。 重置 Winsock 目录允许重新建立已断开的网络连接。
  • Operations Manager 管理服务器与 Log Analytics 之间现有集成的更新集成和重新配置将不再有效,因为此连接即将停用。 但是,仍可以根据情况使用以下方法将受监视的 System Center Operations Manager 代理连接到 Log Analytics。
    1. 使用 Log Analytics 网关并将代理指向该服务器。 详细了解在 Azure Monitor 中使用 Log Analytics 网关连接无法访问 Internet 的计算机
    2. 并行使用 AMA(Azure Monitoring 代理)代理将代理连接到 Log Analytics。 详细了解从 Log Analytics 代理迁移到 Azure Monitor 代理。 
    3. 在 Microsoft Monitoring 代理中配置与 Log Analytics 的直接连接。 (System Center Operations Manager 的双主页)。

首次向 Log Analytics 工作区注册 Operations Manager 管理组期间,为管理组指定代理配置的选项在操作控制台中不可用。 必须成功向服务注册管理组后,此选项才可用。 若要解决此问题,请使用 netsh,对运行操作控制台以配置集成的系统,以及管理组中的所有管理服务器进行系统代理配置的更新。

  1. 打开权限提升的命令提示符:

    1. 转到“启动”并输入 cmd。
    2. 右键单击“命令提示符”并选择“以管理员身份运行”。
  2. 输入以下命令并按 Enter:

    netsh winhttp set proxy <proxy>:<port>

完成以下步骤与 Azure Monitor 集成后,可以运行 netsh winhttp reset proxy 来删除配置。 然后在操作控制台中,使用“配置代理服务器”选项来指定代理或 Log Analytics 网关服务器。

  1. 在 Operations Manager 控制台中,选择“管理”工作区。

  2. 展开 Operations Management Suite 节点,并选择“连接”。

  3. 选择“向 Operations Management Suite 注册”链接。

  4. 在“Operations Management Suite 载入向导: 身份验证”页面上,输入电子邮件地址或电话号码以及与 Operations Management Suite 订阅关联的管理员帐户的密码。 选择“登录”。

    注意

    Operations Management Suite 名称已弃用。

  5. 成功进行身份验证后,在“选择工作区”页面上,系统会提示选择 Azure 租户、订阅和 Log Analytics 工作区。 如果有多个工作区,从下拉列表中选择想要在 Operations Manager 管理组中注册的工作区。 选择“下一步”。

    注意

    Operations Manager 一次仅支持一个 Log Analytics 工作区。 连接以及通过上一个工作区注册到 Azure Monitor 的计算机将从 Azure Monitor 中删除。

  6. 在“摘要”页上,确认设置。 如果更改正确,请选择“创建”。

  7. 在“完成”页面上,选择“关闭”。

添加代理管理的计算机

配置完与 Log Analytics 工作区的集成后,只会建立一个与服务的连接。 不会从向管理组报告的代理收集任何数据。 在配置针对 Azure Monitor 收集日志数据的具体代理管理计算机之前不会收集数据。

可以单独选择计算机对象,也可以选择一个包含 Windows 计算机对象的组。 不能选择包含其他类的实例的组,如逻辑磁盘或 SQL 数据库。

  1. 打开 Operations Manager 控制台并选择“管理”工作区。
  2. 展开 Operations Management Suite 节点,并选择“连接”。
  3. 选择窗格右侧的“操作”标题下的“添加计算机/组”链接。
  4. 在“计算机搜索”对话框中,搜索 Operations Manager 监视的计算机或组。 选择包括 Operations Manager 管理服务器的计算机或组以载入到 Azure Monitor。 选择“添加”>“确定”。

可以在 Operations 控制台“管理”工作区中的 Operations Management Suite 下,查看配置为从“托管计算机”节点收集数据的计算机和组。 在此处,可根据需要添加或移除计算机和组。

在操作控制台中配置代理设置

如果内部代理服务器位于管理组和 Azure Monitor 之间,请执行以下步骤。 这些设置可通过管理组集中进行管理并分发到代理托管系统,这些代理托管系统包含在收集 Azure Monitor 日志数据的范围之中。 当某些解决方案绕过管理服务器并将数据直接发送到服务时,这很有用。

  1. 打开 Operations Manager 控制台并选择“管理”工作区。
  2. 展开 Operations Management Suite 节点,并选择“连接”。
  3. 在“OMS 连接”视图中,选择“配置代理服务器”。
  4. 在“Operations Management Suite 向导: 代理服务器”页上,选择“使用代理服务器访问 Operations Management Suite”。 输入包含端口号的 URL,例如 http://corpproxy:80,并单击“完成”。

如果代理服务器要求身份验证,请执行以下步骤,配置需要向管理组中 Azure Monitor 报告的受管理计算机传播的凭据和设置。

  1. 打开 Operations Manager 控制台并选择“管理”工作区。
  2. 在“RunAs 配置”下,选择“配置文件”
  3. 打开 System Center Advisor Run As Profile Proxy 配置文件。
  4. 在“运行方式配置文件向导”中,选择“添加”以使用运行方式帐户。 可以创建一个运行方式帐户或使用现有帐户。 此帐户需要有足够的权限以通过代理服务器。
  5. 若要设置管理的帐户,请选择“选定的类、组或对象”,然后选择“选择”。 选择“组”以打开“组搜索”框。
  6. 搜索然后选择 Microsoft System Center Advisor Monitoring Server Group。 选择组后选择“确定”以关闭“组搜索”框。
  7. 选择“确定”以关闭“添加运行方式帐户”框。
  8. 选择“保存”即完成向导并保存了更改。

在创建连接并配置将收集数据并将日志数据报告给 Azure Monitor 的代理后,会在管理组中应用以下配置(不一定按顺序):

  • 随即便创建了运行方式帐户“Microsoft.SystemCenter.Advisor.RunAsAccount.Certificate”。 它与运行方式配置文件“Microsoft System Center Advisor Run As Profile Blob”相关联。 它面向两个类:“Collection Server”和“Operations Manager Management Group”。
  • 两个连接器已创建。 第一个连接器命名为 Microsoft.SystemCenter.Advisor.DataConnector。可以为其自动配置一个订阅,以便将管理组中所有类的实例生成的所有警报转发到 Azure Monitor。 第二个连接器是 Advisor Connector。 该连接器负责与 Azure Monitor 通信以及共享数据。
  • 选择的要在管理组中收集数据的代理和组将添加到“Microsoft System Center Advisor Monitoring Server Group”。

管理包更新

配置完成后,Operations Manager 管理组会与 Azure Monitor 建立连接。 管理服务器将与 Web 服务同步,针对与 Operations Manager 集成的已启用解决方案,以管理包的形式接收更新的配置信息。 Operations Manager 会自动检查这些管理包的更新,并在更新可用时下载和导入。 有两个专门控制此行为的规则:

  • Microsoft.SystemCenter.Advisor.MPUpdate:更新 Azure Monitor 基础管理包。 默认情况下,每 12 小时运行一次。
  • Microsoft.SystemCenter.Advisor.Core.GetIntelligencePacksRule:更新在工作区中启用的解决方案管理包。 默认每 5 分钟运行一次。

可以通过重写这两个规则来防止自动下载,方法是禁用规则或修改管理服务器与 Azure Monitor 同步(以确定是否有可用的新管理包且是否应下载该包)的频率。 请按照“重写规则或监视器”的步骤,使用以秒为单位的值修改“频率”参数来更改同步计划。 也可修改“已启用”参数来禁用规则。 锁定 Operations Manager 管理组类所有对象的替代项。

若要继续按照现有更改控制过程控制生产管理组中的管理包版本,请禁用规则并在允许更新的特定时间段内将其启用。 如果环境中有开发或 QA 管理组,并且该组已连接到 Internet,则通过 Log Analytics 工作区配置该管理组,使之支持此方案。 这样,在将 Azure Monitor 管理包发布到生产管理组之前,就可以查看和评估其迭代版本。

将 Operations Manager 组转换到新的 Log Analytics 工作区

  1. 登录 Azure 门户

  2. 在 Azure 门户左下角选择“更多服务”。 在资源列表中,输入 Log Analytics。 开始键入时,会根据输入筛选该列表。 选择“Log Analytics”,并创建一个工作区。

  3. 使用属于 Operations Manager 管理员角色成员的帐户打开 Operations Manager 控制台,并选择“管理”工作区。

  4. 展开 Log Analytics,然后选择“连接”。

  5. 选择窗格中间的“重新配置 Operation Management Suite”链接。

  6. 按照“Log Analytics 载入向导”操作。 输入与新 Log Analytics 工作区关联的管理员帐户的电子邮件地址(或电话号码)和密码。

    注意

    “Operations Management Suite 载入向导:选择工作区”页面会显示使用中的现有工作区。

验证 Operations Manager 与 Azure Monitor 的集成

使用以下查询获取 Operations Manager 的连接实例:

union *
| where isnotempty(MG)
| where not(ObjectName == 'Advisor Metrics' or ObjectName == 'ManagedSpace')
| summarize LastData = max(TimeGenerated) by lowerCasedComputerName=tolower(Computer), MG, ManagementGroupName
| sort by lowerCasedComputerName asc

删除与 Azure Monitor 的集成

当不再需要 Operations Manager 管理组和 Log Analytics 工作区之间的集成时,需要通过几个步骤来正确移除管理组中的连接和配置。 通过下面的步骤可更新 Log Analytics 工作区:删除管理组的引用,然后删除 Azure Monitor 连接器,再删除支持与服务集成的管理包。

  1. 使用属于 Operations Manager 管理员角色成员的帐户打开 Operations Manager 命令行界面。

    警告

    在继续操作之前,请确认所有自定义管理包的名称中都没有“Advisor”或“IntelligencePack”字样。 如果有,请执行后续步骤,并从管理组中将其删除。

  2. 在命令行界面提示下,输入:
    Get-SCOMManagementPack -name "*Advisor*" | Remove-SCOMManagementPack -ErrorAction SilentlyContinue

  3. 然后输入:
    Get-SCOMManagementPack -name "*IntelligencePack*" | Remove-SCOMManagementPack -ErrorAction SilentlyContinue

  4. 若要删除与其他 System Center Advisor 管理包具有依赖关系的剩余管理包,请使用之前从 TechNet 脚本中心下载的脚本 RecursiveRemove.ps1

    注意

    使用 PowerShell 删除 Advisor 管理包的步骤不会自动删除 Microsoft System Center Advisor 或 Microsoft System Center Advisor Internal 管理包。 不要尝试将其删除。

  5. 使用属于 Operations Manager 管理员角色成员的帐户打开 Operations Manager Operations 控制台。

  6. 在“管理”下,选择“管理包”节点。 在“查找:”框中输入“Advisor”并确认以下管理包仍会导入到管理组中:

    • Microsoft System Center Advisor
    • Microsoft System Center Advisor Internal
  7. 在 Azure 门户中,选择“设置”磁贴。

  8. 选择“相连的源”。

  9. 在 System Center Operations Manager 部分下的表中,应该可看到想要从工作区移除的管理组的名称。 在“最后的数据”列下,选择“移除”。

    注意

    如果没有从连接的管理组中检测到活动,“移除”链接在 14 天后才可用。

  10. 选择“是”以确认要继续执行移除操作。

若要删除两个连接器 Microsoft.SystemCenter.Advisor.DataConnectorAdvisor Connector,请将以下 PowerShell 脚本保存到计算机,并按以下示例执行:

    .\OM2012_DeleteConnectors.ps1 "Advisor Connector" <ManagementServerName>
    .\OM2012_DeleteConnectors.ps1 "Microsoft.SystemCenter.Advisor.DataConnector" <ManagementServerName>

注意

运行此脚本的计算机如果不是管理服务器,应根据管理组的版本安装 Operations Manager 命令行界面。

    param(
    [String] $connectorName,
    [String] $msName="localhost"
    )
    $mg = new-object Microsoft.EnterpriseManagement.ManagementGroup $msName
    $admin = $mg.GetConnectorFrameworkAdministration()
    ##########################################################################################
    # Configures a connector with the specified name.
    ##########################################################################################
    function New-Connector([String] $name)
    {
         $connectorForTest = $null;
         foreach($connector in $admin.GetMonitoringConnectors())
    {
    if($connectorName.Name -eq ${name})
    {
         $connectorForTest = Get-SCOMConnector -id $connector.id
    }
    }
    if ($connectorForTest -eq $null)
    {
         $testConnector = New-Object Microsoft.EnterpriseManagement.ConnectorFramework.ConnectorInfo
         $testConnector.Name = $name
         $testConnector.Description = "${name} Description"
         $testConnector.DiscoveryDataIsManaged = $false
         $connectorForTest = $admin.Setup($testConnector)
         $connectorForTest.Initialize();
    }
    return $connectorForTest
    }
    ##########################################################################################
    # Removes a connector with the specified name.
    ##########################################################################################
    function Remove-Connector([String] $name)
    {
        $testConnector = $null
        foreach($connector in $admin.GetMonitoringConnectors())
       {
        if($connector.Name -eq ${name})
       {
         $testConnector = Get-SCOMConnector -id $connector.id
       }
      }
     if ($testConnector -ne $null)
     {
        if($testConnector.Initialized)
     {
     foreach($alert in $testConnector.GetMonitoringAlerts())
     {
       $alert.ConnectorId = $null;
       $alert.Update("Delete Connector");
     }
     $testConnector.Uninitialize()
     }
     $connectorIdForTest = $admin.Cleanup($testConnector)
     }
    }
    ##########################################################################################
    # Delete a connector's Subscription
    ##########################################################################################
    function Delete-Subscription([String] $name)
    {
      foreach($testconnector in $admin.GetMonitoringConnectors())
      {
      if($testconnector.Name -eq $name)
      {
        $connector = Get-SCOMConnector -id $testconnector.id
      }
    }
    $subs = $admin.GetConnectorSubscriptions()
    foreach($sub in $subs)
    {
      if($sub.MonitoringConnectorId -eq $connector.id)
      {
        $admin.DeleteConnectorSubscription($admin.GetConnectorSubscription($sub.Id))
      }
     }
    }
    #New-Connector $connectorName
    write-host "Delete-Subscription"
    Delete-Subscription $connectorName
    write-host "Remove-Connector"
    Remove-Connector $connectorName

以后如果打算将管理组重新连接到 Log Analytics 工作区,需重新导入 Microsoft.SystemCenter.Advisor.Resources.\<Language>\.mpb 管理包文件。 可在以下位置找到此文件,具体取决于部署在环境中的 System Center Operations Manager 的版本:

  • System Center 2016 的 \ManagementPacks 文件夹下的源媒体:Operations Manager 及更高版本。
  • 适用于管理组的最新更新汇总。 Operations Manager 2012 的源文件夹为 %ProgramFiles%\Microsoft System Center 2012\Operations Manager\Server\Management Packs for Update Rollups。 2012 R2 的源文件夹位于 System Center 2012 R2\Operations Manager\Server\Management Packs for Update Rollups 中。

后续步骤

若要添加功能并收集数据,请参阅从解决方案库中添加 Azure Monitor 解决方案