設定機器類型建議


本頁說明如何查看及修改機器類型建議的設定。您可以修改建議的機器類型,讓產生的建議只包含偏好的機器系列。您也可以變更用於產生記憶體建議的指標,以提高建議的準確度。設定變更會在專案層級套用。

如要進一步瞭解機器類型建議,請參閱「對 VM 套用機器類型建議」。

事前準備

  • 如果尚未設定驗證,請先完成設定。 「驗證」是指驗證身分的程序,確認您有權存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,請選取下列其中一個選項,向 Compute Engine 進行驗證:
    1. After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    2. Set a default region and zone.

必要的角色

如要取得修改機器類型建議所需的權限,請要求管理員為您授予專案的 Compute Recommender 管理員 (roles/recommender.computeAdmin) 身分與存取權管理角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

這個預先定義的角色具備修改機器類型建議所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:

所需權限

如要修改機型建議,您必須具備下列權限:

  • 查看機器類型建議設定: recommender.computeInstanceMachineTypeRecommenderConfig.get 專案
  • 修改機器類型建議設定: recommender.computeInstanceMachineTypeRecommenderConfig.update 專案

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

設定建議

如要設定機型建議,請按照下列步驟操作:

  1. 取得目前的設定,以取得設定的 JSON 檔案。
  2. 編輯 JSON 格式的設定檔。
  3. 上傳新的設定檔,即可套用變更。

取得目前的設定

您可以使用 Google Cloud CLI,取得專案的機器類型建議目前設定。

gcloud

如要取得目前的設定參數,請使用 gcloud beta recommender recommender-config describe 指令,並將 google.compute.instance.MachineTypeRecommender 做為 Recommender ID:

gcloud beta recommender recommender-config describe google.compute.instance.MachineTypeRecommender \
  --project=PROJECT_ID \
  --location=ZONE

更改下列內容:

  • PROJECT_ID:您的專案 ID。
  • ZONE:要取得目前設定的區域。

指令會傳回建議事項設定,包括可修改的子欄位 preferred_machine_typesmemory_metrics

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.MachineTypeRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "preferred_machine_types": "STANDARD_AND_CUSTOM",
      "memory_metrics": "MONITORING_AGENT_ONLY"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2024-08-20T04:41:15.330351Z"
}

如要將設定儲存到本機檔案,以便稍後編輯及上傳,請執行下列指令:

gcloud beta recommender recommender-config describe \
  google.compute.instance.MachineTypeRecommender \
  --project=PROJECT_ID \
  --location=ZONE > LOCAL_FILE_PATH_AND_NAME

編輯建議設定

您可以在設定中自訂下列參數:

  • preferred_machine_types:您收到的機器類型建議。
  • memory_metrics:記憶體指標如何用於產生建議。

機器類型建議選項

您可以將 preferred_machine_types 設定變更為下列其中一個值,指定要取得的機器類型建議:

  • DEFAULT:預設值為 STANDARD_AND_CUSTOM
  • STANDARD_AND_CUSTOM:建議從標準和自訂機器類型中找出最佳比對結果。
  • STANDARD_ONLY:僅建議標準機器類型中最合適的選項。

記憶體建議選項

如要設定用於產生建議的記憶體指標,您可以設定下列值:

  • MEMORY_METRICS_DEFAULT:使用預設指標產生最佳化建議。
  • MEMORY_METRICS_ALL:使用所有可用指標產生建議。
  • MONITORING_AGENT_ONLY:僅使用 Cloud Monitoring Ops Agent 收集的指標。
  • 如果您未使用 Ops Agent,且不想收到記憶體最佳化建議,請使用 MEMORY_AGENT_ONLY 值停用建議。

如要取得更準確的記憶體用量建議,請使用 Ops 代理程式

更新專案的設定

如要更新機器類型建議的設定,請修改設定值,然後為專案上傳新設定。您可以在同一項要求中,變更偏好的機型、用於建議的記憶體指標,或同時變更這兩項值。

上傳新設定後,大約需要 48 小時才會生效。在此之前,系統會使用先前的設定生成建議。

gcloud

如要更新設定參數,請使用 gcloud beta recommender recommender-config update 指令,並將 google.compute.instance.MachineTypeRecommender 做為建議事項 ID:

gcloud beta recommender recommender-config update google.compute.instance.MachineTypeRecommender\
  --project=PROJECT_ID \
  --location=ZONE \
  --config-file=LOCAL_FILE_PATH_AND_NAME \
  --etag=ETAG

更改下列內容:

  • PROJECT_ID:您的專案 ID。
  • ZONE:要取得目前設定的區域。
  • LOCAL_FILE_PATH_AND_NAME:含有目前設定的 JSON 檔案路徑。
  • ETAG:目前設定的 etag 值。 您可以在上一個指令的輸出內容中找到這個值。

在設定檔中,只指定包含更新後設定參數的 recommenderGenerationConfig 物件。如果您將設定儲存到本機檔案,請務必複製 etag 值,然後移除 recommenderGenerationConfig 值以外的所有欄位。

舉例來說,如要只取得標準機器類型的建議,請使用下列設定檔:

{
  "params": {
    "preferred_machine_types": "STANDARD_ONLY"
  }
}

如果指令成功,會傳回類似以下的內容,顯示您剛修改參數的新設定。

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.MachineTypeRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "preferred_machine_types": "STANDARD_ONLY"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2024-08-20T05:00:05Z"
}

後續步驟