适用于 SAP NetWeaver 的 Google Cloud 监控代理操作指南

本指南介绍在 Compute Engine 虚拟机和裸金属解决方案服务器上运行 SAP NetWeaver 监控代理的操作注意事项和过程。

了解监控代理生命周期

管理监控操作时,可帮助了解 SAP NetWeaver 的监控代理的工作。一般而言,其工作原理如下:

  • 您必须在托管 SAP 系统的每台 Compute Engine 虚拟机或裸金属解决方案服务器上安装 SAP NetWeaver 的监控代理。监控代理作为 Windows 服务或 Linux 服务运行。
  • 在 Compute Engine 虚拟机上,Cloud Monitoring 具有一个本地代理,可用于从 Google Cloud 收集指标、事件和元数据。Compute Engine 也提供具备监控功能的 API。
  • 在 Compute Engine 虚拟机上,SAP NetWeaver 的监控代理会整合来自 Monitoring 和 Compute Engine API 的监控数据。在裸金属解决方案服务器上,该代理则不会访问 Google Cloud API。
  • SAP Host Agent 通过 HTTP 轮询 SAP NetWeaver 的监控代理,以获取其缓存的数据。它会汇总这些指标并进行报告,并将这些指标存储在 SAP NetWeaver 数据库中。
  • SAP 的事务 ST06saposcol 命令行界面会显示已汇总的指标。
  • 您可以通过在终端窗口中运行命令从 SAP NetWeaver 监控代理查看数据。

适用于 SAP NetWeaver 监控代理的 Cloud API 访问权限

SAP NetWeaver 的监控代理在 Compute Engine 虚拟机上运行时,会从 Monitoring 读取数据。

可以通过向主机虚拟机服务账号授予 IAM 权限和/或授予虚拟机 Google Cloud API 访问权限范围来控制对 Monitoring API 的访问权限。

Compute Engine 建议使用虚拟机服务账号的 IAM 权限来控制对 Google Cloud 资源的访问,并设置虚拟机访问权限范围以授予对所有 Cloud API 的完整访问权限。如需了解详情,请参阅最佳做法

SAP NetWeaver 的监控代理使用其主机虚拟机的服务账号来检索 Cloud Monitoring 指标。因此,该监控代理要求主机虚拟机具有服务账号且该服务账号需包含 monitoring.timeSeries.list 权限,该权限包含在预定义的 Monitoring Viewer 角色中。

如果您确实限制对 Cloud API 的访问,则 SAP NetWeaver 的监控代理要求主机虚拟机实例上具有以下最低 Cloud API 访问权限范围:

  • Compute Engine:只读
  • Stackdriver Monitoring API:只读

如果您是在没有外部 IP 地址的虚拟机上运行 SAP NetWeaver,则需要为 SAP NetWeaver 的监控代理启用访问 Google Cloud API 和服务的权限。

如需在子网上通过 Compute Engine 虚拟机启用专用 Google 访问通道,请参阅配置专用 Google 访问通道

如果您是在裸金属解决方案区域扩展中的服务器上运行 SAP NetWeaver,则 SAP NetWeaver 的监控代理不需要访问 Google Cloud API。

验证 SAP NetWeaver 的监控代理是否正在运行

SAP NetWeaver 的监控代理是一个本地 HTTP 服务器。

如要检查监控代理是否正在运行,请按以下步骤操作:

Linux

  1. 与主机虚拟机实例建立 SSH 连接。

  2. 运行以下命令:

    sudo systemctl status google-sapnetweavermonitoring-agent

    如果 SAP NetWeaver 的监控代理正常运行,则输出包含 active (running)。例如:

    google-sapnetweavermonitoring-agent.service - Google Cloud monitoring agent for SAP NetWeaver
    Loaded: loaded (/usr/lib/systemd/system/google-sapnetweavermonitoring-agent.service; enabled; vendor preset: disabled)
    Active:  active (running)  since Thu 2021-09-02 07:21:42 UTC; 742ms ago
    Main PID: 10723 (java)
    Tasks: 26 (limit: 512)
    CGroup: /system.slice/google-sapnetweavermonitoring-agent.service
           └─10723 /usr/sap/google-sapnetweavermonitoring-agent/jre/bin/java -Xms32m -Xmx64m -cp /usr/sap/google-sapnetweavermonitoring-age...
    

Windows

  1. 使用 RDP 连接到要监控的虚拟机实例。

  2. 运行以下命令:

    Get-Service -Name google-sapnetweavermonitoring-agent

    如果 SAP NetWeaver 的监控代理正常运行,则 Status 列会显示 Running。例如:

        Status   Name               DisplayName
        ------   ----               -----------
        Running  google-sapnetwe... Google Cloud monitoring agent for S...
    

如需查看收集的指标,请参阅查看受监控的指标

如果 SAP NetWeaver 的监控代理未运行,请参阅重启 SAP NetWeaver 的监控代理

验证 SAP Host Agent 正在接收指标

如需验证基础架构指标是否由 Google Cloud's Agent for SAP 收集并正确发送到 SAP Host Agent,请按照以下步骤操作:

  1. 在您的 SAP 系统中,输入事务 ST06
  2. 在概览窗格中,检查以下字段的可用性和内容,以确保 SAP 与 Google 监控基础架构的端到端设置正确无误:

    • Cloud ProviderGoogle Cloud Platform
    • Enhanced Monitoring AccessTRUE
    • Enhanced Monitoring DetailsACTIVE

查看受监控的指标

您可以通过轮询服务器来查看受监控的指标。请按照以下步骤操作:

Linux

  1. 使用 SSH 连接到您需要监控的主机。
  2. 在命令提示符处,输入以下命令:

    curl http://localhost:18181

Windows

  1. 使用 RDP 连接到您需要监控的主机。
  2. 在网络浏览器中,访问以下网址:

    http://localhost:18181

以下示例显示了 SAP NetWeaver 监控代理的前几行 XML 输出。

Compute Engine 虚拟机

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<metrics>
<metric category="config" context="vm" type="string" unit="none"
  last-refresh="1614389614" refresh-interval="0"><name>Data
  Provider Version</name><value>1.1.1.0</value>
</metric>
<metric category="config" context="host" type="string" unit="none"
last-refresh="1614389614" refresh-interval="0">
  <name>Cloud Provider</name><value>Google Cloud
  Platform</value>
</metric>
<metric category="config" context="vm" type="string" unit="none"
last-refresh="1614389614" refresh-interval="0">
  <name>Instance Type</name><value>n2-standard-16</value>
</metric>
<metric category="config" context="host" type="string" unit="none"
last-refresh="1614389614" refresh-interval="0">
  <name>Virtualization Solution</name><value>KVM</value>
</metric>
...
</metrics>

裸金属解决方案服务器

如果 Instance Type 值显示 bms-nnHardware Model 值为 Google Cloud Bare Metal,则表示已针对 Bare Metal 解决方案的主机正确配置 SAP NetWeaver 的监控代理,如下例所示:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<metrics>
<metric category="config" context="vm" type="string" unit="none"
last-refresh="1614391024" refresh-interval="0"><name>Data
Provider Version</name><value>1.1.1.0</value>
</metric><metric category="config" context="host" type="string"
unit="none" last-refresh="1614391024" refresh-interval="0">
<name>Cloud Provider</name><value>Google Cloud
Platform</value></metric><metric category="config"
context="vm" type="string" unit="none" last-refresh="1614391024"
refresh-interval="0"><name>Instance Type</name>
<value>bms-16.0</value></metric><metric
category="config" context="host" type="string" unit="none"
last-refresh="1614391024" refresh-interval="0"><name>Virtualization
Solution</name><value>N/A</value></metric><metric
category="config" context="host" type="string" unit="none"
last-refresh="1614391024" refresh-interval="0"><name>Hardware Manufacturer</name><value>Google</value></metric>
<metric category="config" context="host" type="string" unit="none"
last-refresh="1614391024" refresh-interval="0"><name>Hardware
Model</name><value>Google Cloud Bare Metal</value>
</metric>
...
</metrics>

重启 SAP NetWeaver 的监控代理

如果 SAP NetWeaver 的监控代理停止工作,请重新启动监控代理。

选择操作系统:

Linux

  1. 与主机虚拟机建立 SSH 连接。

  2. 请发出以下命令:

    systemctl restart google-sapnetweavermonitoring-agent
    

Windows

  1. 与主机虚拟机建立 RDP 连接。

  2. 请发出以下命令:

    Restart-Service -Force google-sapnetweavermonitoring-agent
    

更新 SAP NetWeaver 的监控代理

为了确保您使用的是 SAP NetWeaver 的监控代理的最新版本,请定期检查更新。

检查更新

选择操作系统:

RHEL

如需使用软件包管理器检查监控代理更新,请执行以下操作:

  1. 与主机虚拟机建立 SSH 连接。

  2. 请发出以下命令:

    sudo yum check-update google-sapnetweavermonitoring-agent

SLES

如需使用软件包管理器检查监控代理更新,请执行以下操作:

  1. 与主机虚拟机建立 SSH 连接。

  2. 请发出以下命令:

    sudo zypper list-updates -r google-sapnetweavermonitoring-agent

Windows

如需检查监控代理更新,请执行以下操作:

  1. 与主机虚拟机建立 RDP 连接。

  2. 以管理员身份从 PowerShell 发出以下命令:

    C:\Program Files\Google\google-sapnetweavermonitoring-agent\bin\updatecheck.ps1

安装更新

选择操作系统:

RHEL

如需使用软件包管理器安装监控代理,请执行以下操作:

  1. 与主机虚拟机建立 SSH 连接。

  2. 请发出以下命令:

    sudo yum --nogpgcheck update google-sapnetweavermonitoring-agent

SLES

如需使用软件包管理器安装监控代理,请执行以下操作:

  1. 与主机虚拟机建立 SSH 连接。

  2. 请发出以下命令:

    sudo zypper --no-gpg-checks update google-sapnetweavermonitoring-agent

Windows

如需安装监控代理,请执行以下操作:

  1. 与主机虚拟机建立 RDP 连接。

  2. 以管理员身份从 PowerShell 发出以下命令:

    . { Invoke-WebRequest -useb https://storage.googleapis.com/cloudsapdeploy/netweaver-agent-windows/install.ps1 } | iex