SAP 解決方案適用的 Workload Manager 會使用 Google Cloud的 Agent for SAP 偵測及收集中繼資料,以評估 SAP 系統設定。如要支援及監控在 Google Cloud 上執行的 SAP 系統 (包括 SAP NetWeaver、SAP HANA、SAP ASE 和 SAP MaxDB),所有執行 SAP 系統的 VM 執行個體都必須安裝 Agent for SAP 和 SAP Host Agent。 Google Cloud
以下檢查清單列出您需要執行的工作,確保 SAP 代理程式設定正確無誤:
必要 IAM 角色
Google Cloud的 SAP 專用代理程式需要身分與存取權管理 (IAM) 服務帳戶,才能向 Google Cloud 進行驗證,並取得存取 Google Cloud 資源的權限。如要收集 Workload Manager 評估指標,無論您使用新的、現有的或預設服務帳戶,該服務帳戶都必須包含下列 IAM 角色:
- Compute Viewer (
roles/compute.viewer
) - Workload Manager Insights Writer (
roles/workloadmanager.insightWriter
) - Secret Manager 密鑰存取者 (
roles/secretmanager.secretAccessor
),如果您使用 Secret Manager 儲存 SAP HANA 資料庫密碼。
安裝代理程式
如果尚未安裝,請在代管 SAP 系統的 VM 上安裝適用於 SAP 的代理程式: Google Cloud
如要在 Compute Engine 執行個體上安裝代理程式,請按照下列步驟操作:
- 建立與運算執行個體的 SSH 連線。
- 在終端機中,執行適用於作業系統的指令,安裝代理程式:
- (建議) 如要安裝代理程式 3.9 版 (最新版):
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
。如要瞭解可安裝的代理程式版本,請參閱「列出所有可用的代理程式版本」。如要瞭解如何將代理程式降級至特定版本,請參閱「 降級 Agent for SAP Google Cloud」。
- (建議) 如要安裝代理程式 3.9 版 (最新版):
安裝完成後,請繼續設定代理程式,以收集 Workload Manager 評估指標。
確認代理程式版本
Google Cloud 建議您安裝最新版本的 Agent for SAP,以便準確評估 SAP 工作負載,因為 Agent for SAP 可能會定期發布新版本,並新增或變更用於評估的指標。
為確保您使用的是最新版 Google Cloud's Agent for SAP,請定期檢查更新並更新代理程式。
檢查更新
選取作業系統,然後按照下列步驟操作:
RHEL
- 建立與執行個體之間的 SSH 連線。
- 執行下列指令:
sudo yum check-update google-cloud-sap-agent
SLES
- 建立與執行個體之間的 SSH 連線。
- 執行下列指令:
sudo zypper list-updates -r google-cloud-sap-agent
安裝更新
選取作業系統,然後按照下列步驟操作:
RHEL
- 建立與執行個體之間的 SSH 連線。
- 更新代理程式執行個體:
- (建議) 如要將代理程式更新至 3.9 版 (最新版):
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.9 版 (最新版):
SLES
- 建立與執行個體之間的 SSH 連線。
- 更新代理程式執行個體:
- (建議) 如要將代理程式更新至 3.9 版 (最新版):
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.9 版 (最新版):
設定收集 Workload Manager 評估指標
如要設定 Google Cloud的 Agent for SAP,請完成下列步驟:
如要讓代理程式收集 Workload Manager 評估指標,請按照下列步驟操作:
sudo /usr/bin/google_cloud_sap_agent configure -feature=workload_evaluation -enable
選用:如要在 Workload Manager 中啟用「SAP HANA Insights」和「SAP HANA Security Best Practices」指標的收集作業,請在代理程式設定檔的
collect_workload_validation_metrics
後方加入workload_validation_db_metrics_config
區段,然後指定下列參數:hana_db_user
:指定用於查詢 SAP HANA 執行個體的使用者帳戶。hostname
:指定主機的 ID,可以是本機或遠端,用來代管 SAP HANA 執行個體。port
:指定 SAP HANA 執行個體接受查詢的通訊埠。hana_db_password_secret_name
:在Secret Manager 中指定儲存使用者帳戶密碼的密碼名稱除了密鑰,您也可以使用
hdbuserstore_key
設定參數。hdbuserstore_key
:指定用於驗證為hana_db_user
指定使用者的hdbuserstore
金鑰如果指定
hdbuserstore_key
,則可略過hostname
和port
參數。
如要瞭解這些參數,請參閱「設定參數」。
以下範例是Google Cloud's Agent for SAP 在Compute Engine 執行個體上執行的完整設定檔,其中已啟用 Workload Manager 評估指標的收集作業。
對於 SAP HANA 驗證,代理程式會依下列偏好順序使用參數:如果已指定
hdbuserstore_key
設定參數,則優先使用該參數,其次是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 密碼進行 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 密鑰或 Secure user store (
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 } }
重新啟動代理程式,讓新設定生效:
sudo systemctl restart google-cloud-sap-agent
代理程式成功重新啟動後,就會開始將 Workload Manager 評估指標傳送至 Workload Manager。
驗證 Workload Manager 評估指標收集設定
如要驗證您是否已正確設定,以便收集 Workload Manager 評估指標,請執行代理程式的 status
指令。 Google Cloud 這個指令適用於 3.7 以上版本的代理程式。
如要驗證 Google Cloud 設定,請完成下列步驟:
- 建立與 Compute Engine 執行個體的 SSH 連線。
- 執行下列指令:
sudo /usr/bin/google_cloud_sap_agent status
如果 Workload Manager 評估指標收集設定正確,輸出內容會包含下列項目。 Google Cloud 您的設定可能會有
default
以外的值。Agent Status: ... Systemd Service Enabled: True Systemd Service Running: True Cloud API Full Scopes: True Configuration File: /etc/google-cloud-sap-agent/configuration.json Configuration Valid: True ... ---------------------------------------------------------------------------- System Discovery: Enabled Status: Fully Functional IAM Permissions: All granted Configuration: enable_discovery: true (default) enable_workload_discovery: true (default) sap_instances_update_frequency: 60 (default) system_discovery_update_frequency: 14400 (default) ---------------------------------------------------------------------------- Workload Manager Evaluation: Enabled Status: Fully Functional IAM Permissions: All granted Configuration: collect_workload_validation_metrics: true (default) config_target_environment: PRODUCTION (default) fetch_latest_config: true (default) workload_validation_db_metrics_frequency: 3600 (default) workload_validation_metrics_frequency: 300 (default) ...
- 如果輸出內容顯示缺少部分設定,請查看前幾節提供的資訊,執行必要動作,然後重新執行
status
指令,重新驗證設定。
後續步驟
- 進一步瞭解工作負載評估