設定機器類型建議


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

如要進一步瞭解機器類型建議,請參閱「為 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 Admin (roles/recommender.computeAdmin) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

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

所需權限

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

  • 查看機器類型建議設定: 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 做為推薦者 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,且不想收到記憶體最佳化建議,請使用 MEMORY_AGENT_ONLY 值停用這些最佳化建議。

如要取得更精確的記憶體用量建議,請使用 Ops Agent

更新專案的設定

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

上傳新設定後,新設定大約需要 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"
}

後續步驟