設定 SAP 工作負載的代理程式

SAP 解決方案適用的 Workload Manager 會使用 Google Cloud的 SAP 專用代理程式,偵測及收集用於評估 SAP 系統設定的中繼資料。如要在 Google Cloud上執行 SAP 系統,所有 VM 執行個體都必須安裝 Agent for SAP 和 SAP Host Agent,才能取得支援服務並監控 SAP 系統,包括 SAP NetWeaver、SAP HANA、SAP ASE 和 SAP MaxDB。

事前準備

安裝及設定 Google Cloud的 Agent for SAP 前,請先確認符合下列必要條件:

代理程式所需的 IAM 角色

SAP 代理程式會使用附加至運算執行個體的服務帳戶進行驗證,並存取 Google Cloud 資源。

為提高安全性,建議您使用單一用途的服務帳戶,而非 Compute Engine 預設服務帳戶

為確保服務帳戶具備必要權限,可讓 Agent for SAP 透過Google Cloud 驗證身分並存取 Google Cloud 資源,請要求管理員在專案中將下列 IAM 角色授予服務帳戶:

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

管理員或許也能透過自訂角色或其他預先定義的角色,授予服務帳戶必要權限。

啟用 Cloud API 存取權

Compute Engine 建議您將執行個體設定為允許所有 Cloud API 的所有存取權範圍。如要控管資源的存取權,請只使用執行個體服務帳戶的 IAM 權限。 Google Cloud詳情請參閱「建立採使用者代管服務帳戶的 VM」。

如果限制 Cloud API 的存取權,則 Agent for SAP 至少需要在主機運算執行個體上具備下列 Cloud API 存取範圍:

https://www.googleapis.com/auth/cloud-platform

詳情請參閱「範圍最佳做法」。

如果您在沒有外部 IP 位址的運算執行個體上執行 SAP 應用程式,則需要在執行個體的子網路上啟用私人 Google 存取權,這樣 Agent for Compute Workloads 才能存取 Google API 和服務。如要瞭解如何啟用私人 Google 存取權,請參閱「設定私人 Google 存取權」。

使用套件管理員安裝及設定代理程式

本節說明如何使用套件管理工具,在運算執行個體上安裝 Agent for SAP,並設定該代理程式與 SAP 工作負載連線。

如要在多部 VM 上安裝及設定代理程式,請改用 VM 擴充功能管理工具政策。詳情請參閱「使用 VM 擴充功能管理工具,在一組 VM 上安裝及管理代理程式」。

安裝代理程式

如果尚未安裝,請在執行 SAP 工作負載的所有運算執行個體上,安裝 Google Cloud的 Agent for SAP:

如要在 Compute Engine 執行個體上安裝代理程式,請按照下列步驟操作:

  1. 建立與運算執行個體的 SSH 連線。
  2. 在終端機中,執行適用於作業系統的指令,安裝代理程式:
    • (建議) 如要安裝代理程式 3.14 版 (最新版):

      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」。

設定收集 Workload Manager 評估指標

安裝 Agent for SAP 後,您需要設定代理程式,才能收集 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 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,則可略過 hostnameport 參數。

    如要瞭解這些參數,請參閱「設定參數」。

    下列範例是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 密鑰或安全使用者存放區 (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。

使用 VM 擴充功能管理工具,在一組 VM 上安裝及管理代理程式

本節說明如何使用 VM 擴充功能管理工具,在 VM 機群上安裝及管理 Agent for SAP。

VM 擴充功能管理工具政策可讓您執行下列工作:

  • 全車隊安裝:在下列項目上安裝 Agent for SAP:
    • Google Cloud 專案中的所有 VM,或是以標籤識別的部分 VM。
    • 可用區中的所有 VM,或透過標籤識別的 VM 子集。
  • 設定管理:將自訂設定套用至政策管理的所有 VM 上的代理程式。

設定 VM 擴充功能管理工具

如要設定 VM 擴充功能管理工具,請完成下列步驟:

在一組 VM 中安裝及設定代理程式

如要使用 VM 擴充功能管理工具政策,在 VM 機群上安裝最新版 Agent for SAP,請參閱適當的章節:

在 Google Cloud 專案中的 VM 上安裝及設定代理程式

如要使用 VM 擴充功能管理工具政策,在 Google Cloud 專案中的所有 VM,或標籤所識別的部分 VM 上安裝代理程式,請完成下列步驟:

  • 在終端機或 Cloud Shell 中執行 gcloud beta compute global-vm-extension-policies create 指令:

    gcloud beta compute global-vm-extension-policies create POLICY_NAME \
        --project=PROJECT_ID \
        --extensions=google-cloud-sap-extension  \
        --rollout-predefined-plan=ROLLOUT_PLAN_OPTION \
        [--description="<var>DESCRIPTION</var>" \]
        [--inclusion-labels=KEY1=VALUE1,KEY2=VALUE2 \]
        [--config-from-file=google-cloud-sap-extension="CONFIG_FILE_PATH" \]
        [--priority=PRIORITY]
    

    更改下列內容:

    • POLICY_NAME:VM 擴充功能政策的專屬名稱。
    • PROJECT_ID:您要建立政策的Google Cloud 專案專案 ID
    • ROLLOUT_PLAN_OPTION:要套用至全域政策的推出選項。支援的值為 slow_rollout (建議) 和 fast_rollout

    • 或者,您也可以指定 --rollout-custom-plan 選項,使用自訂推出計畫。詳情請參閱「關於推出計畫」。

    • 您可以使用 --rollout-predefined-plan--rollout-custom-plan,但不能在同一個指令中同時使用兩者。

    • DESCRIPTION:政策的選填說明。

    • CONFIG_FILE_PATH:包含 SAP 代理程式設定的 JSON 檔案本機路徑。

    • 或者,如要以內嵌字串形式提供設定,請使用 --config 旗標,而非 --config-from-file。例如:--config=google-cloud-sap-extension="CONFIG"

    • 您可以選擇使用 --config-from-file--config,但不能在同一個指令中同時使用兩者。

    • 如要瞭解代理程式支援的設定參數,請參閱「設定參數」。

    • KEY_1=VALUE_1:以逗號分隔的清單,其中包含定義政策用來指定虛擬機的標籤的鍵/值組合。

    • 如要讓 VM 成為政策目標,VM 必須具備所有指定的標籤。

    • 如果您多次指定 --inclusion-labels,則政策會以符合任何所提供選取器的 VM 為目標 (邏輯 OR)。如果省略這個標記,政策會以專案中的所有 VM 為目標。

    • PRIORITY:介於 065535 的整數,用於定義政策的優先順序。數字越小,優先順序越高。預設值為 1000。詳情請參閱「政策優先順序和衝突解決方式」。

在特定可用區的一組 VM 中安裝及設定代理程式

如要使用 VM 擴充功能管理工具政策,在特定可用區的 VM 機群上安裝最新版本 Agent for SAP,請完成下列步驟:

控制台

  1. 前往 Google Cloud 控制台的「VM extension policies」(VM 擴充功能政策) 頁面

    前往 VM 擴充功能政策

  2. 按一下「建立擴充功能政策」

  3. 在「Name」(名稱) 欄位中,輸入政策名稱。

  4. 選用:在「Description」(說明) 欄位中輸入政策的說明。

  5. 在「優先順序」欄位中,指定優先順序編號,以解決政策之間的衝突。數字越小越優先。預設值為 1000

  6. 使用「Region」(區域) 和「Zone」(可用區) 清單,選取要套用這項政策的可用區。

  7. 在「擴充功能」部分,按一下「新增擴充功能」,然後執行下列操作:

    1. 在「擴充功能」清單中,選取「Google Cloud's Extension for Compute Workloads」
    2. 將「版本」欄位留空。

      這會指示政策安裝Google Cloud的最新版 Agent for SAP。

    3. 在「設定檔內容」欄位中,輸入要套用至代理程式的設定。

      如要瞭解代理程式支援的 SAP 工作負載設定參數,請參閱「設定參數」。

    4. 按一下 [完成]

  8. 選用:如要將政策推出範圍限制在必要 VM,請按照下列步驟操作:

    1. 按一下「新增標籤」,然後加入可識別必要 VM 的標籤。
    2. 按一下 [完成]
  9. 點選「建立」

gcloud

gcloud compute zone-vm-extension-policies create POLICY_NAME \
    --zone=ZONE \
    --extensions=google-cloud-sap-extension \
    --config-from-file=google-cloud-sap-extension=CONFIG_FILE_PATH \
    [--description="DESCRIPTION" \]
    [--inclusion-labels=KEY_1=VALUE_1 \]
    [--inclusion-labels=KEY_2=VALUE_2,KEY_3=VALUE_3 \]
    [--priority=PRIORITY]

更改下列內容:

  • POLICY_NAME:VM 擴充功能政策的名稱。

    如果區域中已有指定名稱的政策,這項指令就會失敗。

  • ZONE:要套用這項政策的可用區。

  • CONFIG_FILE_PATH:JSON 檔案的本機路徑,其中包含 Agent for SAP 的設定,可連線至 SAP 工作負載。

    • 或者,如要以內嵌字串形式提供設定,請使用 --config 旗標,而非 --config-from-file。舉例來說,--config=google-cloud-sap-extension="CONFIG"。Google Cloud 建議使用 --config-from-file
    • 您可以選擇使用 --config-from-file--config,但不能在同一個指令中同時使用兩者。
    • 如要瞭解代理程式支援的 SAP 工作負載設定參數,請參閱「設定參數」。
  • DESCRIPTION:政策的選填說明。

  • KEY_1=VALUE_1:以逗號分隔的清單,其中包含定義政策用來指定虛擬機的標籤的鍵/值組合。

    • 如要讓 VM 成為政策的目標,VM 必須具備所有指定的標籤。
    • 如果您多次指定 --inclusion-labels,政策會以符合任何所提供選取器的 VM 為目標 (邏輯 OR)。如果省略這個標記,政策會以指定可用區中的所有 VM 為目標。
  • PRIORITY:介於 065535 的整數,用於定義政策的優先順序。數字越小,優先順序越高。預設值為 1000

範例:

下列指令會在名為 test-project 的專案中建立名為 test-agent-policy 的政策,並在可用區 us-centrail-f 中部署的所有 VM 上安裝最新版運算工作負載代理。Google Cloud 系統會將 agent-config.json 中指定的設定套用至代理程式。

gcloud compute zone-vm-extension-policies create test-agent-policy  \
    --project=test-project \
    --zone=us-central1-f \
    --extensions=google-cloud-sap-extension \
    --config-from-file=google-cloud-sap-extension="/usr/agent-config.json"

管理 VM 機群中的代理程式

如要變更 VM 擴充功能管理工具政策管理 Agent for SAP 的方式,請更新政策。更新政策時,VM 擴充功能管理工具通常會在 1 分鐘內,將變更套用至所有適用的 VM。如果您修改納入標籤,系統可能會根據 VM 是否符合更新後的標籤,在新 VM 上安裝 Agent for SAP,或從現有 VM 解除安裝。

以下各節說明如何管理 Agent for SAP,以執行下列操作:

修改 VM 機群中的代理程式設定

如要修改您使用 VM 擴充功能管理工具政策,在 VM 機群上安裝的 Agent for SAP 執行個體設定,請編輯該政策。

如要在 VM 叢集上修改代理程式設定,請完成下列步驟:

控制台

如要更新區域政策,請完成下列步驟。如要更新全域政策,請參閱「gcloud」分頁。

  1. 前往 Google Cloud 控制台的「VM extension policies」(VM 擴充功能政策) 頁面

    前往 VM 擴充功能政策

  2. 按一下要修改的政策。

  3. 在「擴充功能政策詳細資料」頁面中,按一下「編輯」

  4. 在「管理擴充功能」部分,切換「Google Cloud 的 SAP 擴充功能」

  5. 在「設定檔內容」欄位中,輸入要套用至代理程式的設定。

    如要瞭解代理程式支援的設定參數,請參閱「設定參數」。

  6. 按一下 [完成]

  7. 按一下 [儲存]

gcloud

區域

如要修改特定可用區中 VM 的 Agent for SAP 設定,請執行 gcloud compute zone-vm-extension-policies update 指令。使用 gcloud 更新政策時,要求會做為完整替代項目。如果您省略任何選填欄位,系統會將這些欄位還原為預設值,而不是保留修改後政策的現有值。

如要修改代理程式設定:

gcloud compute zone-vm-extension-policies update POLICY_NAME \
  --zone=ZONE \
  --extensions=google-cloud-sap-extension \
  --config-from-file=google-cloud-sap-extension="CONFIG_FILE_PATH" \
  [--inclusion-labels=KEY_1=VALUE_1 \]
  [--inclusion-labels=KEY_2=VALUE_2,KEY_3=VALUE_3 \]
  [--priority=PRIORITY_NUMBER \]
  [--description="DESCRIPTION"]

更改下列內容:

  • POLICY_NAME:要修改的 VM 擴充功能政策名稱。
  • ZONE:政策適用的 Google Cloud 區域。
  • CONFIG_FILE_PATH:包含 SAP 代理程式設定的 JSON 檔案本機路徑。

    • 您也可以使用 --config 標記,以內嵌字串形式提供代理程式設定,而非 --config-from-file。例如:--config=google-cloud-sap-extension="CONFIG"。Google Cloud 建議您使用 --config-from-file
    • 您可以選擇使用 --config-from-file--config,但不能在同一個指令中同時使用兩者。
    • 如要瞭解代理程式支援的設定參數,請參閱「設定參數」。
  • KEY_1=VALUE_1:以半形逗號分隔的鍵/值組合清單,定義政策用來指定 VM 的標籤。

    • 如要讓 VM 成為政策目標,VM 必須具備所有指定的標籤。
    • 如果您多次指定 --inclusion-labels,政策會以符合任何所提供選取器的 VM 為目標 (邏輯 OR)。如果省略這個標記,政策會以指定可用區中的所有 VM 為目標。
  • PRIORITY_NUMBER:要為政策設定的優先順序。您可以指定介於 065535 之間的整數。

  • DESCRIPTION:VM 擴充功能政策的說明。

全球

如要修改Google Cloud 專案中 VM 上 Agent for SAP 的設定,請執行 gcloud beta compute global-vm-extension-policies update 指令。使用 gcloud 更新政策時,要求會做為完整替代項目。如果您省略任何選填欄位,系統會將這些欄位還原為預設值,而不是保留修改後政策的現有值。

如要修改代理程式設定:

gcloud beta compute global-vm-extension-policies update POLICY_NAME \
  --project=PROJECT_ID \
  --extensions=google-cloud-sap-extension \
  --rollout-predefined-plan=ROLLOUT_PLAN_OPTION \
  --config-from-file=google-cloud-sap-extension="CONFIG_FILE_PATH" \
  [--inclusion-labels=KEY_1=VALUE_1 \]
  [--inclusion-labels=KEY_2=VALUE_2,KEY_3=VALUE_3 \]
  [--priority=PRIORITY_NUMBER \]
  [--description="DESCRIPTION"]

更改下列內容:

  • POLICY_NAME:要修改的 VM 擴充功能政策名稱。
  • PROJECT_ID:政策所在的 Google Cloud 專案 ID。
  • ROLLOUT_PLAN_OPTION:要套用至全域政策的推出選項。支援的值為 slow_rollout (建議) 和 fast_rollout

    • 或者,您也可以指定 --rollout-custom-plan 選項,使用自訂推出計畫。詳情請參閱「關於推出計畫」。
    • 您可以使用 --rollout-predefined-plan--rollout-custom-plan,但不能在同一個指令中同時使用兩者。
  • CONFIG_FILE_PATH:包含 SAP 代理程式設定的 JSON 檔案本機路徑。

    • 您也可以使用 --config 標記,以內嵌字串形式提供代理程式設定,而非 --config-from-file。例如:--config=google-cloud-sap-extension="CONFIG"。Google Cloud 建議您使用 --config-from-file
    • 您可以選擇使用 --config-from-file--config,但不能在同一個指令中同時使用兩者。
    • 如要瞭解代理程式支援的設定參數,請參閱「設定參數」。
  • KEY_1=VALUE_1:以半形逗號分隔的鍵/值組合清單,定義政策用來指定 VM 的標籤。

    • 如要讓 VM 成為政策的目標,VM 必須具備所有指定的標籤。
    • 如果您多次指定 --inclusion-labels,則政策會以符合任何所提供選取器的 VM 為目標 (邏輯 OR)。如果省略這個標記,政策會以專案中的所有 VM 為目標。
  • PRIORITY_NUMBER:要為政策設定的優先順序。您可以指定介於 065535 之間的整數。

  • DESCRIPTION:VM 擴充功能政策的說明。

更新全域政策,加入新區域

建立及推出全域政策後,如果您在新的可用區中建立 VM,VM 擴充功能管理工具不會自動將政策套用至新可用區中的 VM。如要納入新可用區中的 VM,您必須重新啟動全域政策推出作業。

如要重新啟動全域政策推出程序,請完成下列步驟:

  • 在終端機或 Cloud Shell 中執行 gcloud beta compute global-vm-extension-policies update 指令,並提供 --rollout-entry-uuid 選項,如下所示:

    gcloud beta compute global-vm-extension-policies update POLICY_NAME \
        --project=PROJECT_ID \
        --extensions=google-cloud-sap-extension  \
        --rollout-predefined-plan=ROLLOUT_PLAN_OPTION \
        --config-from-file=google-cloud-sap-extension="CONFIG_FILE_PATH" \
        --rollout-retry-uuid=UUID
    

    更改下列內容:

    • UUID:通用專屬 ID (UUID),用於識別重試要求。您可以使用任何 UUID 產生器建立 UUID。詳情請參閱「重試推出作業」。
    • ROLLOUT_PLAN_OPTION:要套用至全域政策的推出選項。支援的值為 slow_rollout (建議) 和 fast_rollout

    • 或者,您也可以指定 --rollout-custom-plan 選項,使用自訂推出計畫。詳情請參閱「關於推出計畫」。

    • 您可以使用 --rollout-predefined-plan--rollout-custom-plan,但不能在同一個指令中同時使用兩者。

更新排除區域的全球政策

如要更新全域政策來排除區域,請完成下列步驟:

  • 在終端機或 Cloud Shell 中執行 gcloud beta compute global-vm-extension-policies update 指令,並提供自訂推出計畫,指定要套用政策的可用區:

    gcloud beta compute global-vm-extension-policies update POLICY_NAME \
        --project=PROJECT_ID \
        --extensions=google-cloud-sap-extension  \
        --rollout-custom-plan=projects/PROJECT_ID/locations/global/rolloutPlans/NEW_CUSTOM_PLAN_NAME \
        --rollout-retry-uuid=UUID
    

    更改下列內容:

    • NEW_CUSTOM_PLAN_NAME:新自訂推出計畫的名稱,用於識別要套用政策的區域。如要瞭解如何建立自訂推出計畫,請參閱「推出計畫簡介」。
    • UUID:通用專屬 ID (UUID),用於識別重試要求。您可以使用任何 UUID 產生器建立 UUID。詳情請參閱「重試推出作業」。

從 VM 機群解除安裝代理程式

如要從 VM 機群解除安裝 Agent for SAP,請刪除管理 VM 機群的 VM 擴充功能管理工具政策。

刪除政策時,如果另有一項優先順序較低的有效政策套用至 VM 並宣告 Agent for SAP,則系統會根據優先順序較低的政策,在該 VM 上保留代理程式。

刪除政策後,VM 擴充功能管理工具會在 1 分鐘內,從所有可存取的 VM 中移除代理程式。如果 VM 無法存取 (因為訪客代理程式已移除或 VM 已刪除),VM 擴充功能管理工具就會略過刪除 Agent for SAP。如果這類 VM 再次可用,VM 擴充功能管理工具就會移除 Agent for SAP。

如要從 VM 機群解除安裝 Agent for SAP,請完成下列步驟:

控制台

  1. 前往 Google Cloud 控制台的「VM extension policies」(VM 擴充功能政策) 頁面

    前往 VM 擴充功能政策

  2. 按一下管理 VM 叢集上 Agent for SAP 的政策。

  3. 在「擴充功能政策詳細資料」頁面中,按一下「刪除」並確認刪除。

gcloud

區域

如要刪除區域 VM 擴充功能管理工具政策,請使用 gcloud beta compute zone-vm-extension-policies delete 指令:

gcloud compute zone-vm-extension-policies delete POLICY_NAME \
  --project=PROJECT_ID \
  --zone=ZONE

更改下列內容:

  • POLICY_NAME:要刪除的區域政策名稱。
  • PROJECT_ID:政策所在的 Google Cloud 專案 ID。
  • ZONE:政策所在的 Google Cloud 區域。

全球

如要刪除全域 VM 擴充功能管理工具政策,請使用 gcloud beta compute global-vm-extension-policies delete 指令:

gcloud beta compute global-vm-extension-policies delete POLICY_NAME \
  --project=PROJECT_ID \
  --rollout-predefined-plan=ROLLOUT_PLAN_OPTION

更改下列內容:

  • POLICY_NAME:要刪除的區域政策名稱。
  • PROJECT_ID:政策所在的 Google Cloud 專案 ID。
  • ROLLOUT_PLAN_OPTION:要套用至全域政策的推出選項。支援的值為 slow_rollout (建議) 和 fast_rollout

    • 或者,您也可以指定 --rollout-custom-plan 選項,使用自訂推出計畫。詳情請參閱「關於推出計畫」。
    • 您可以使用 --rollout-predefined-plan--rollout-custom-plan,但不能在同一個指令中同時使用兩者。

確認代理程式版本

Google Cloud 建議您安裝最新版 Agent for SAP,以便準確評估 SAP 工作負載,因為 Agent for SAP 的定期發布版本可能會新增或變更用於評估的指標。

為確保您使用的是最新版 Google Cloud's 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.14 版 (最新版):
      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.14 版 (最新版):
      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 評估指標收集設定

您可以執行代理程式的 status 指令,驗證是否已正確設定,以便收集 Workload Manager 評估指標。 Google Cloud 代理程式 3.7 以上版本支援這項指令。

如要驗證 Google Cloud 設定,請完成下列步驟:

  1. 建立與 Compute Engine 執行個體的 SSH 連線。
  2. 執行下列指令:
    sudo /usr/bin/google_cloud_sap_agent status -f="workload_manager,sap_discovery"

    如果 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)
        ...
        
  3. 如果輸出內容顯示缺少部分設定,請查看前幾節提供的資訊,執行必要動作,然後重新執行 status 指令,重新驗證設定。

設定檔範例

下列範例是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 密鑰或安全使用者存放區 (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
      }
    }

如要瞭解 Agent for SAP 支援的設定參數,請參閱「設定參數」。

後續步驟