设置 Google Cloud 的 Agent for SAP

适用于 SAP 解决方案的 Workload Manager 使用 Google Cloud的 Agent for SAP 来检测和收集元数据,以评估 SAP 系统配置。在运行 SAP 系统的所有虚拟机实例中,都必须安装 Agent for SAP 和 SAP Host Agent,以便支持和监控在 Google Cloud上运行的 SAP 系统(包括 SAP NetWeaver、SAP HANA、SAP ASE 和 SAP MaxDB)。

以下核对清单总结了您需要执行的任务,以确保 Agent for SAP 设置正确无误:

  1. 为服务账号授予所需的角色
  2. 安装 Agent for SAP
  3. 验证代理版本并安装更新(如果有)
  4. 启用评估指标收集功能

所需 IAM 角色

Google Cloud的 Agent for SAP 需要使用 Identity and Access Management (IAM) 服务账号进行 Google Cloud 身份验证,并获得访问 Google Cloud 资源的权限。如需收集 Workload Manager 评估指标,无论您是使用新服务账号、现有服务账号还是默认服务账号,该服务账号都必须具有以下 IAM 角色:

安装代理

如果尚未完成,请在托管 SAP 系统的虚拟机上安装 Google Cloud的 Agent for SAP:

如需在 Compute Engine 实例上安装代理,请按照以下步骤操作:

  1. 与计算实例建立 SSH 连接。
  2. 在您的终端中,通过运行特定于您的操作系统的命令来安装此代理:
    • (推荐)如需安装代理 3.6 版(最新版),请运行以下命令:

      RHEL

      sudo tee /etc/yum.repos.d/google-cloud-sap-agent.repo << EOM
      [google-cloud-sap-agent]
      name=Google Cloud Agent for SAP
      baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-el$(cat /etc/redhat-release | cut -d . -f 1 | tr -d -c 0-9)-x86_64
      enabled=1
      gpgcheck=1
      repo_gpgcheck=0
      gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
      EOM
      sudo yum install google-cloud-sap-agent

      SLES15

      sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-sles15-x86_64 google-cloud-sap-agent
      sudo zypper install google-cloud-sap-agent

      SLES 12

      sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-sles12-x86_64 google-cloud-sap-agent
      sudo zypper install google-cloud-sap-agent
    • 如需安装代理的特定版本,请运行以下命令:

      RHEL

      sudo tee /etc/yum.repos.d/google-cloud-sap-agent.repo << EOM
      [google-cloud-sap-agent]
      name=Google Cloud Agent for SAP
      baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-el$(cat /etc/redhat-release | cut -d . -f 1 | tr -d -c 0-9)-x86_64
      enabled=1
      gpgcheck=1
      repo_gpgcheck=0
      gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
      EOM
      sudo yum install google-cloud-sap-agent-VERSION_NUMBER.x86_64

      SLES15

      sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-sles15-x86_64 google-cloud-sap-agent
      sudo zypper install google-cloud-sap-agent-VERSION_NUMBER.x86_64

      SLES 12

      sudo zypper addrepo --refresh https://packages.cloud.google.com/yum/repos/google-cloud-sap-agent-sles12-x86_64 google-cloud-sap-agent
      sudo zypper install google-cloud-sap-agent-VERSION_NUMBER.x86_64

      VERSION_NUMBER 替换为您要安装的代理的版本号,例如 3.1-606637668。如需了解您可以安装的代理版本,请参阅列出代理的所有可用版本

      如需了解如何将代理降级到特定版本,请参阅 降级 Google Cloud的 Agent for SAP

安装完成后,继续配置代理以收集 Workload Manager 评估指标。

验证代理版本

Google Cloud 建议您安装最新版本的 Agent for SAP,以便准确评估 SAP 工作负载,因为定期发布的 Agent for SAP 版本可能会添加或更改用于评估的指标。

为了确保您使用的是最新版本的 Google Cloud的 Agent for SAP,您需要定期检查更新并更新该代理。

检查更新

选择您的操作系统,然后按照以下步骤操作:

RHEL

  1. 与您的实例建立 SSH 连接。
  2. 运行以下命令:
    sudo yum check-update google-cloud-sap-agent

SLES

  1. 与您的实例建立 SSH 连接。
  2. 运行以下命令:
    sudo zypper list-updates -r google-cloud-sap-agent

安装更新

选择您的操作系统,然后按照以下步骤操作:

RHEL

  1. 与您的实例建立 SSH 连接。
  2. 更新您的代理实例:
    • (推荐)如需更新到代理 3.6 版(最新版),请运行以下命令:
      sudo yum --nogpgcheck update google-cloud-sap-agent
    • 要更新到代理的特定版本,请运行以下命令:
      sudo yum install google-cloud-sap-agent-VERSION_NUMBER.x86_64

      VERSION_NUMBER 替换为您要安装的代理的版本号,例如 3.1-606637668。如需了解您可以安装的代理版本,请参阅列出代理的所有可用版本

SLES

  1. 与您的实例建立 SSH 连接。
  2. 更新您的代理实例:
    • (推荐)如需更新到代理 3.6 版(最新版),请运行以下命令:
      sudo zypper --no-gpg-checks update google-cloud-sap-agent
    • 要更新到代理的特定版本,请运行以下命令:
      sudo zypper install google-cloud-sap-agent-VERSION_NUMBER.x86_64

      VERSION_NUMBER 替换为您要安装的代理的版本号,例如 3.1-606637668。如需了解您可以安装的代理版本,请参阅列出代理的所有可用版本

配置 Workload Manager 评估指标收集

如需配置 Google Cloud的 Agent for SAP,请完成以下步骤:

  1. 如需让代理收集 Workload Manager 评估指标,请运行以下命令:

    sudo /usr/bin/google_cloud_sap_agent configure -feature=workload_evaluation -enable

  2. 可选:如需在 Workload Manager 中启用“SAP HANA 数据分析”和“SAP HANA 安全最佳实践”指标收集功能,请在代理的配置文件中将 workload_validation_db_metrics_config 部分添加到 collect_workload_validation_metrics 后面,然后指定以下参数:

    • hana_db_user:指定用于查询 SAP HANA 实例的用户账号。
    • hostname:指定托管 SAP HANA 实例的机器(本地或远程)的标识符。
    • port:指定 SAP HANA 实例接收查询的端口。
    • hana_db_password_secret_name:指定 Secret Manager 中用来存储用户账号密码的 Secret 的名称。

      作为 Secret 的替代方案,您可以使用 hdbuserstore_key 配置参数。

    • hdbuserstore_key:指定 hdbuserstore 密钥,它用于对您为 hana_db_user 指定的用户进行身份验证

      如果您指定 hdbuserstore_key,则跳过指定 hostnameport 参数。

    如需了解这些参数,请参阅配置参数

    以下示例是运行在Compute Engine 实例上的Google CloudAgent for SAP 的已完成配置文件,其中启用了 Workload Manager 评估指标收集功能。

    对于 SAP HANA 身份验证,代理使用以下优先顺序:如果指定,hdbuserstore_key 配置参数优先于 hana_db_password 参数,而 hana_db_password 参数优先于 hana_db_password_secret_name 参数。我们建议您在配置文件中仅设置一个身份验证选项。

    • 以下示例使用安全用户存储区 (hdbuserstore) 密钥进行 SAP HANA 身份验证:
      {
        "provide_sap_host_agent_metrics": true,
        "bare_metal": false,
        "log_level": "INFO",
        "log_to_cloud": true,
        "collection_configuration": {
          "collect_workload_validation_metrics": true,
          "workload_validation_db_metrics_frequency": 3600,
          "workload_validation_db_metrics_config": {
            "hana_db_user": "system",
            "sid": "DEH",
            "hdbuserstore_key": "user_store_key"
          },
          "collect_process_metrics": false
        },
        "discovery_configuration": {
          "enable_discovery": true,
          "enable_workload_discovery": true
        },
        "hana_monitoring_configuration": {
          "enabled": false
        }
      }
    • 以下示例使用用户名和 Secret Manager Secret 进行 SAP HANA 身份验证:
      {
        "provide_sap_host_agent_metrics": true,
        "bare_metal": false,
        "log_level": "INFO",
        "log_to_cloud": true,
        "collection_configuration": {
          "collect_workload_validation_metrics": true,
          "workload_validation_db_metrics_frequency": 3600,
          "workload_validation_db_metrics_config": {
            "hana_db_user": "system",
            "sid": "DEH",
            "hana_db_password_secret_name": "instance-id-hana-db-password-secret",
            "hostname": "localhost",
            "port": "30015"
          },
          "collect_process_metrics": false
        },
        "discovery_configuration": {
          "enable_discovery": true,
          "enable_workload_discovery": true
        },
        "hana_monitoring_configuration": {
          "enabled": false
        }
      }
    • 以下示例使用用户名和密码进行 SAP HANA 身份验证。我们建议您改用 Secret Manager 密钥或安全用户存储区 (hdbuserstore) 密钥进行 SAP HANA 身份验证。
      {
        "provide_sap_host_agent_metrics": true,
        "bare_metal": false,
        "log_level": "INFO",
        "log_to_cloud": true,
        "collection_configuration": {
          "collect_workload_validation_metrics": true,
          "workload_validation_db_metrics_frequency": 3600,
          "workload_validation_db_metrics_config": {
            "hana_db_user": "system",
            "sid": "DEH",
            "hana_db_password": "TempPa55word",
            "hostname": "localhost",
            "port": "30015"
          },
          "collect_process_metrics": false
        },
        "discovery_configuration": {
          "enable_discovery": true,
          "enable_workload_discovery": true
        },
        "hana_monitoring_configuration": {
          "enabled": false
        }
      }

  3. 重启代理以使新设置生效:

    sudo systemctl restart google-cloud-sap-agent

    代理成功重启后,代理会开始向 Workload Manager 发送 Workload Manager 评估指标。

后续步骤