本指南介绍了如何配置 Google Cloud 的 Agent for SAP 以从 SAP 系统收集 Workload Manager 评估指标。
如需详细了解此功能,请参阅使用 Google Cloud 的 Agent for SAP 进行 Workload Manager 评估。
准备工作
- 验证 Google Cloud 的 Agent for SAP 的安装。如需查看相关说明,请参阅适合您的场景的安装指南。
- 如果您已在裸金属解决方案服务器上安装代理,请确保已满足所需的前提条件并设置服务账号。如需查看相关说明,请参阅在 Linux 上配置 Google Cloud 的 Agent for SAP。
确保已为您的 Google Cloud 项目启用 Workload Manager API。
设置 IAM 角色
如需允许 Google Cloud 的 Agent for SAP 收集 Workload Manager 评估指标,您必须确保 Compute Engine 虚拟机实例或裸金属解决方案服务器使用的服务账号具有以下角色:
- Compute Viewer (
roles/compute.viewer
) - Workload Manager Insights Writer (
roles/workloadmanager.insightWriter
) - Secret Manager Secret Accessor (
roles/secretmanager.secretAccessor
)(如果您使用 Secret Manager 存储 SAP HANA 数据库密码)。
如需向您的服务账号添加这些必需的角色,请按照以下步骤操作:
在 Google Cloud 控制台中,转到 IAM 页面。
选择您的 Google Cloud 项目。
确定要向其添加角色的服务账号。
- 如果该服务账号不在主账号列表中,则表明还没有为它分配任何角色。点击添加,然后输入该服务账号的电子邮件地址。
- 如果该服务账号已经在主账号列表中,则表明它已具有角色。点击要修改的服务账号对应的修改按钮。
从可用角色列表中选择所需角色:
- Compute Viewer
- Workload Manager > Workload Manager Insights Writer
- Secret Manager > Secret Manager Secret Accessor
点击添加或保存,将相应角色应用于该服务账号。
验证代理版本
Google Cloud 建议您安装最新版本的 Agent for SAP,以便准确评估 SAP 工作负载,因为定期发布的 Agent for SAP 版本可能会添加或更改用于评估的指标。
为了确保您使用的是最新版本的 Google Cloud 的 Agent for SAP,您需要定期检查更新并更新该代理。
安装更新
选择您的操作系统,然后按照以下步骤操作:
RHEL
- 与您的实例建立 SSH 连接。
- 更新您的代理实例:
- (推荐)如需更新到代理 3.5 版(最新版),请运行以下命令:
sudo yum --nogpgcheck update google-cloud-sap-agent
- 要更新到代理的特定版本,请运行以下命令:
sudo yum install google-cloud-sap-agent-VERSION_NUMBER.x86_64
将
VERSION_NUMBER
替换为您要安装的代理的版本号,例如3.1-606637668
。如需了解您可以安装的代理版本,请参阅列出代理的所有可用版本。
- (推荐)如需更新到代理 3.5 版(最新版),请运行以下命令:
SLES
- 与您的实例建立 SSH 连接。
- 更新您的代理实例:
- (推荐)如需更新到代理 3.5 版(最新版),请运行以下命令:
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
。如需了解您可以安装的代理版本,请参阅列出代理的所有可用版本。
- (推荐)如需更新到代理 3.5 版(最新版),请运行以下命令:
启用 Workload Manager 评估指标收集功能
从 3.2 版开始,系统会默认启用新安装的 Google Cloud 的 Agent for SAP,以收集 Workload Manager 评估指标。如果您从先前版本更新到 3.2 版,也可以明确启用该功能。为此,请完成以下步骤:
与 Compute Engine 虚拟机实例或裸金属解决方案服务器建立 SSH 连接。
如需让代理收集 Workload Manager 评估指标,请运行以下命令:
sudo /usr/bin/google_cloud_sap_agent configure -feature=workload_evaluation -enable
如需启用“SAP HANA 数据分析”和“SAP HANA 安全最佳实践”指标收集功能,请执行以下操作:
打开代理的配置文件:
/etc/google-cloud-sap-agent/configuration.json
或者,您也可以通过运行命令来执行此配置。如需了解详情,请参阅 Google Cloud 的 Agent for SAP 的配置命令。
在
collect_workload_validation_metrics
后面添加workload_validation_db_metrics_config
部分,然后指定以下参数:hana_db_user
:指定用于查询 SAP HANA 实例的 SAP HANA 数据库用户账号。hostname
:指定托管 SAP HANA 实例的机器(本地或远程)的标识符。port
:指定 SAP HANA 实例接收查询的端口。sid
:指定 SAP HANA 实例的 SID。hana_db_password_secret_name
:指定 Secret Manager 中用来存储用户账号密码的 Secret 的名称。作为 Secret 的替代方案,您可以使用
hdbuserstore_key
配置参数。hdbuserstore_key
:指定hdbuserstore
密钥,它用于对您为hana_db_user
指定的用户进行身份验证如果您指定
hdbuserstore_key
,则跳过指定hostname
和port
参数。
如需了解这些参数,请参阅配置参数。
(可选)在
cloud_properties
部分下,您可以更新自动设置的参数值。为此,请将cloud_properties
部分添加到您的配置文件中,然后指定必需的参数及其值。保存配置文件。
重启代理以使新设置生效:
sudo systemctl restart google-cloud-sap-agent
配置文件示例
Compute Engine 虚拟机实例
以下示例是一个在Compute Engine 虚拟机实例上运行的 Google Cloud 的 Agent for SAP 的已完成配置文件,其中启用了 Workload Manager 评估指标收集功能:{ "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",
"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 } }
裸金属解决方案服务器
以下示例是一个在裸金属解决方案服务器上运行的 Google Cloud 的 Agent for SAP 的已完成配置文件,其中启用了 Workload Manager 评估指标收集功能:{ "provide_sap_host_agent_metrics": true, "bare_metal": true, "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",
"hana_db_password_secret_name": "instance-id-hana-db-password-secret", "hostname": "localhost", "port": "30015" }, "collect_process_metrics": false }, "cloud_properties": { "project_id": "my-project", "instance_name": "bms-machine-1", "region": "us-central1" "image": "rhel-8" },
"discovery_configuration": { "enable_discovery": true, "enable_workload_discovery": true }, "hana_monitoring_configuration": { "enabled": false } }
配置参数
下表说明了 Google Cloud 的 Agent for SAP 特定于 Workload Manager 评估指标收集的配置参数。
参数 | |
---|---|
provide_sap_host_agent_metrics |
如需启用 SAP Host Agent 所需的指标收集功能,请指定 |
bare_metal |
在裸金属解决方案服务器上安装代理后时,请指定 |
log_level |
如需设置代理的日志记录级别,请设置所需的值。可用的日志级别如下:
默认为 |
log_to_cloud |
如需将代理的日志重定向到 Cloud Logging,请指定 |
cloud_properties.project_id |
如果您的 SAP 系统在裸金属解决方案服务器上运行,请指定您用于裸金属解决方案的 Google Cloud 项目的 ID。 |
cloud_properties.instance_name
|
如果您的 SAP 系统在 Compute Engine 虚拟机实例上运行,请指定该虚拟机实例的名称。代理会在安装时自动检测虚拟机实例名称。 如果您的 SAP 系统在裸金属解决方案服务器上运行,请指定该服务器的名称。 |
cloud_properties.region |
如果您的 SAP 系统在裸金属解决方案服务器上运行,请指定裸金属解决方案服务器的区域。 |
cloud_properties.zone |
当代理在虚拟机实例上运行时,默认情况下,代理会使用安装了该代理的虚拟机实例的可用区。 |
cloud_properties.image |
指定实例的操作系统映像名称。 |
cloud_properties.numeric_project_id |
SAP 系统在其中运行的 Google Cloud 项目的数字 ID。 |
discovery_configuration.enable_workload_discovery |
如需让代理收集主机上运行的 SAP 产品的名称和版本,请指定 如需了解详情,请在 |
discovery_configuration.enable_discovery |
如需将代理收集的有关主机上运行的 SAP 产品的信息发送到 Cloud Logging,请指定 如果您指定值 |
collection_configuration.collect_workload_validation_metrics |
如需启用 Workload Manager 评估指标收集功能,请指定 |
collection_configuration.workload_validation_metrics_frequency |
Workload Manager 评估指标的收集频率(以秒为单位)。默认值为 如果您需要修改 Workload Manager 指标的收集频率,请在 |
collection_configuration.workload_validation_collection_definition.fetch_latest_config |
可选。默认值为 |
collection_configuration.workload_validation_db_metrics_config.hana_db_user |
指定用于查询 SAP HANA 实例的用户账号。 用户账号必须具有 SAP HANA 数据库的读取权限。 |
collection_configuration.workload_validation_db_metrics_config.hana_db_password_secret_name |
指定存储用户账号密码的 Secret Manager 中的密文的名称。 或者,您可以指定 |
collection_configuration.workload_validation_db_metrics_config.hdbuserstore_key
|
如需安全地连接到 SAP HANA 系统,请指定您为该系统创建的安全用户存储区 ( 如需使用
此配置参数从代理版本 3.3 开始受支持。 如果您指定 |
collection_configuration.workload_validation_db_metrics_config.sid |
指定 SAP HANA 实例的 SID。 |
collection_configuration.workload_validation_db_metrics_config.hostname |
指定托管 SAP HANA 实例的机器(本地或远程)的标识符。支持的值如下:
|
collection_configuration.workload_validation_db_metrics_config.port |
指定 SAP HANA 实例接收查询的端口。对于第一个或唯一租户数据库实例,该端口为 |
collection_configuration.workload_validation_db_metrics_frequency |
用于进行 Workload Manager 评估的 SAP HANA 数据库指标的收集频率(以秒为单位)。
默认值为 |
查看收集的指标
如需查看代理收集的 Workload Manager 评估指标,您可以执行以下操作:
查看代理的日志文件:
将代理的日志级别设置为
DEBUG
:sudo /usr/bin/google_cloud_sap_agent configure -loglevel=debug
在代理重启以达到新的日志级别后,请查看代理的日志文件:
/var/log/google-cloud-sap-agent.log
在日志文件中,查找包含以下内容的条目:
workload.googleapis.com/sap/validation/
以下示例显示了代理日志文件中的 Workload Manager 评估指标:
{"level":"debug","timestamp":"2024-05-31T20:13:39.439Z",..."context":"WorkloadManagerMetrics",
"metric":"workload.googleapis.com/sap/validation/system","value":1} {"level":"debug","timestamp":"2024-05-31T20:13:39.439Z",..."context":"WorkloadManagerMetrics",
"key":"instance_name","value":"n1-hana-sles15"} {"level":"debug","timestamp":"2024-05-31T20:13:39.439Z",..."context":"WorkloadManagerMetrics",
"key":"os","value":"sles-15-SP4"} ... {"level":"debug","timestamp":"2024-05-31T20:13:39.439Z",..."context":"WorkloadManagerMetrics",
"metric":"workload.googleapis.com/sap/validation/corosync","value":0} ...
如果您的代理实例已配置为将日志发送到 Cloud Logging,则您可以在 Cloud Logging 中查看该代理的日志。
在 Workload Manager 中为 SAP 工作负载创建和运行评估。如需了解详情,请参阅创建和运行评估。
如需了解 Workload Manager 支持用于评估 Google Cloud 上运行的 SAP 工作负载的最佳实践,请参阅适用于 SAP 的 Workload Manager 最佳实践。