SAP 解決方案的 Workload Manager 會使用 Google Cloud的 SAP 代理程式,偵測及收集用於評估 SAP 系統設定的中繼資料。在執行 SAP 系統的所有 VM 執行個體上,必須安裝 Agent for SAP 和 SAP Host Agent,才能支援及監控在 Google Cloud上執行的 SAP 系統,包括 SAP NetWeaver、SAP HANA、SAP ASE 和 SAP MaxDB。
下列檢查清單列出您需要執行的任務,以確保已正確設定 SAP 代理程式:
必要的 IAM 角色
Google Cloud的 SAP 代理需要具備身分與存取權管理 (IAM) 服務帳戶,才能驗證 Google Cloud 並取得存取 Google Cloud 資源的權限。如要收集 Workload Manager 評估指標,無論您使用的是新、現有或預設服務帳戶,服務帳戶都必須包含下列 IAM 角色:
- Compute Viewer (
roles/compute.viewer
) - Workload Manager 深入分析資訊寫入者 (
roles/workloadmanager.insightWriter
) - Secret Manager 密鑰存取者 (
roles/secretmanager.secretAccessor
):如果您使用 Secret Manager 儲存 SAP HANA 資料庫密碼。
安裝代理程式
如果尚未完成,請在代管 SAP 系統的 VM 上安裝 Google Cloud的 SAP 代理程式:
如要在 Compute Engine 執行個體上安裝代理程式,請按照下列步驟操作:
- 建立與運算執行個體之間的 SSH 連線。
- 在終端機中,執行適用於您作業系統的指令來安裝代理程式:
- (建議) 如要安裝代理程式的 3.8 版 (最新版),請按照下列步驟操作:
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
。如要瞭解可安裝的代理程式版本,請參閱「列出所有可用的代理程式版本」。如要瞭解如何將代理程式降級至特定版本,請參閱「 為 SAP 降級 Google Cloud代理程式」。
- (建議) 如要安裝代理程式的 3.8 版 (最新版),請按照下列步驟操作:
安裝完成後,請繼續設定代理程式,收集 Workload Manager 評估指標。
驗證代理程式版本
Google Cloud 建議您安裝最新版的 Agent for SAP,以便準確評估 SAP 工作負載,因為 Agent for SAP 的定期版本可能會新增或變更用於評估的指標。
為確保您擁有 Google Cloud的最新版 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.8 版 (最新版):
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.8 版 (最新版):
SLES
- 建立與執行個體的 SSH 連線。
- 更新代理程式執行個體:
- (建議) 如要更新至代理程式的 3.8 版 (最新版):
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.8 版 (最新版):
設定 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 安全性最佳做法」指標收集功能,請在代理程式設定檔的
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的 SAP 服務代理,在Compute Engine 執行個體上執行,並啟用 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 密鑰進行 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 } }
重新啟動代理程式,讓新設定生效:
sudo systemctl restart google-cloud-sap-agent
代理程式重新啟動成功後,就會開始將 Workload Manager 評估指標傳送至 Workload Manager。
驗證 Workload Manager 評估指標收集設定
您可以執行代理程式的 status
指令,驗證是否已正確 Google Cloud 設定 Workload Manager 評估指標的收集方式。這個指令自 3.7 版代理程式起開始支援。
如要驗證 Google Cloud 設定,請完成下列步驟:
- 建立與 Compute Engine 執行個體的 SSH 連線。
- 執行下列指令:
sudo /usr/bin/google_cloud_sap_agent status
如果您 Google Cloud 設定 Workload Manager 評估指標收集作業的設定正確,輸出內容就會包含下列內容。您的設定可能會包含
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
指令,重新驗證設定。
後續步驟
- 進一步瞭解工作負載評估