使用所有執行個體通用的設定,覆寫執行個體範本屬性

本頁面說明如何使用全執行個體設定,為代管執行個體群組 (MIG) 中的所有虛擬機器 (VM) 執行個體設定標籤和中繼資料屬性,而不必建立新的執行個體範本。

您仍可使用執行個體範本,在 MIG 中設定執行個體屬性。不過,在某些情況下,使用 MIG 的所有執行個體設定會更簡單,例如:

  • 您需要經常更新執行個體中繼資料或標籤,且不想每次都建立新範本。請注意,執行個體範本不可變動,也就是說,建立後即無法修改。

  • 您想根據一個執行個體範本建立多個 MIG,但需要為每個 MIG 設定不同的標籤或中繼資料。舉例來說,如果您有一個應用程式,但想支援不同的開發、測試和正式環境,您可以建立單一執行個體範本,並為每個環境設定不同的中繼資料和所有執行個體設定,以便在所有環境中重複使用該範本。

  • 一個團隊負責基礎架構和映像檔,另一個團隊則執行需要設定的應用程式。您可以讓一個團隊使用執行個體範本佈建基礎架構,同時讓應用程式團隊使用所有執行個體通用的設定管理應用程式設定。

  • 您在 VM 上執行代理程式,並想使用中繼資料設定代理程式。您想確保即使群組的執行個體範本變更,VM 代理程式設定仍會保留。使用執行個體範本控管應用程式版本,並透過所有執行個體設定來設定 VM 代理程式。

如果同時使用 MIG 的執行個體範本和所有執行個體設定來設定相同屬性,MIG 會優先採用所有執行個體設定中的值。舉例來說,如果 enable-guest-attributes 的中繼資料在 MIG 的執行個體範本中設為 FALSE,在 MIG 的所有執行個體設定中設為 TRUE,則 Compute Engine 會將 TRUE 套用至群組中的所有執行個體。這樣一來,您就能使用所有執行個體設定,覆寫執行個體範本中定義的屬性。

事前準備

  • 建立代管執行個體群組
  • 如果尚未設定驗證,請先完成設定。驗證機制會確認您的身分,以便授予 Google Cloud 服務和 API 的存取權。如要從本機開發環境執行程式碼或範例,您可以選取下列其中一個選項,向 Compute Engine 進行驗證:

    請根據您打算如何使用本頁範例,選取對應的分頁標籤:

    控制台

    使用 Google Cloud 控制台存取 Google Cloud 服務和 API 時,不需要設定驗證機制。

    gcloud

    1. 安裝 Google Cloud CLI,然後 使用聯合身分登入 gcloud CLI。 登入後,執行下列指令來初始化 Google Cloud CLI:

      gcloud init
  • 設定預設區域和可用區。
  • REST

    如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。

      安裝 Google Cloud CLI,然後 使用聯合身分登入 gcloud CLI。

    詳情請參閱 Google Cloud 驗證說明文件中的「使用 REST 進行驗證」一節。

必要的角色

如要取得設定及套用所有執行個體設定所需的權限,請要求管理員授予您專案的 Compute 執行個體管理員 (v1) (roles/compute.instanceAdmin.v1) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

這個預先定義的角色具備設定及套用所有執行個體設定所需的權限。如要查看確切的必要權限,請展開「Required permissions」(必要權限) 部分:

所需權限

您必須具備下列權限,才能設定及套用所有執行個體通用的設定:

  • 如要取得專案的 MIG:compute.instanceGroupManagers.get
  • 如要更新 MIG 的所有執行個體設定: compute.instanceGroupManagers.update 專案
  • 如要在更新 MIG 時使用執行個體範本,請在專案中執行 compute.instanceTemplates.get
  • 如要建立具有指定屬性的執行個體: compute.instances.create 專案
  • 如要將中繼資料套用至現有 VM: compute.instances.setMetadata 專案
  • 如要將標籤套用至現有 VM: compute.instances.setLabels 專案

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

限制

  • 您只能使用所有執行個體設定,覆寫下列執行個體範本屬性:

    • 中繼資料
    • 標籤
  • 您無法對所有執行個體的設定進行初期測試更新。將設定套用至群組時,Compute Engine 會將屬性套用至所有新執行個體,並根據更新政策套用至現有執行個體。如要控管現有執行個體的更新時間,可以使用選擇性更新。

  • 如果您在 MIG 中使用有狀態設定,則無法在任何個別執行個體設定中設定相同屬性,同時在群組的所有執行個體設定中設定相同屬性。

在適用於所有執行個體的設定中設定屬性

使用 gcloud CLI 或 REST,建立及更新 MIG 的所有執行個體設定。

控制台

  1. 前往 Google Cloud 控制台的「Instance groups」(執行個體群組) 頁面。

    前往「Instance groups」(執行個體群組)

  2. 選取要設定所有執行個體設定的 MIG。

  3. 按一下 [編輯]。

  4. 按一下「Instance template & overrides」(執行個體範本和覆寫設定),展開該部分。

  5. 在「All-instances configuration」(所有執行個體設定) 部分,執行下列操作:

    • 如要新增或更新中繼資料值,請按一下「管理中繼資料」。完成設定,然後按一下「Save」(儲存)。
    • 如要新增或更新標籤,請按一下「管理標籤」。完成設定,然後按一下「Save」(儲存)。
  6. 完成所有執行個體設定中的屬性設定後,請按一下「Save」(儲存)。

    如果 MIG 的更新類型設為「Automatic」(自動),您設定的所有執行個體設定會立即套用至所有現有 VM。如果更新類型為「Selective」(選擇性),則必須選擇性地將設定套用至現有 VM。詳情請參閱「將所有執行個體設定套用至現有 VM」。

gcloud

使用 all-instances-config update 指令新增或更新所有執行個體設定。

gcloud compute instance-groups managed all-instances-config update INSTANCE_GROUP_NAME \
    --metadata=KEY1=VALUE1,KEY2=VALUE2 \
    --labels=KEY3=VALUE3,KEY4=VALUE4

更改下列內容:

  • INSTANCE_GROUP_NAME:MIG 的名稱。
  • KEYS 和 VALUES:標籤或中繼資料的鍵/值組合。如果索引鍵不存在,更新指令會新增索引鍵。現有鍵的值會更新。

請記得將更新後的設定套用至 MIG 中的現有 VM。

REST

如要新增或更新適用於所有執行個體的設定,請對可用區或區域 MIG 提出 PATCH 要求。

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "allInstancesConfig": {
    "properties": {
      "metadata": {
        "KEY1": "VALUE1",
        ...
      },
      "labels": {
        "KEY2": "VALUE2",
        ...
      },
    }
  }
}

更改下列內容:

  • PROJECT_ID:MIG 所在的專案。
  • REGION:MIG 所在的區域。如果是可用區 MIG,請將 regions/REGION 替換為 zones/ZONE。
  • INSTANCE_GROUP_NAME:MIG 的名稱。
  • KEYS 和 VALUES:標籤或中繼資料的鍵/值組合。如果索引鍵不存在,要求會新增該索引鍵。如果是現有鍵,系統會更新其值。

請記得將更新後的設定套用至 MIG 中的現有 VM。

將適用於所有執行個體的設定套用至現有 VM

您為 MIG 中的 VM 指定的 VM 設定,會自動套用至新增至群組的新 VM。

如要將更新後的 VM 設定 (包括更新後的所有執行個體設定) 套用至群組中的現有 VM,請使用下列其中一種方法:

  • 自動 (主動):如要讓 MIG 自動將新設定套用至群組中所有或部分現有 VM,請使用這個方法。執行中 VM 的中斷程度取決於您設定的更新政策。您可以使用這個方法,對新執行個體範本進行初期測試更新。如要使用這個方法,請將 MIG 的更新類型設為「主動」。
  • 選擇性 (機會型):如要手動套用更新,或一次更新群組中的所有現有 VM,請使用這個方法。您可以指定任何或所有 VM,將其更新為最新設定。如要使用這個方法,請將 MIG 的更新類型設為「機會型」。
  • 重新建立 VM:在 MIG 中重新建立 VM 時,MIG 會套用尚未套用至該 VM 的任何更新設定。詳情請參閱「重新建立 MIG 中的 VM」。

自動 (主動)

如果希望每次變更所有執行個體設定時,系統都能自動將更新後的設定套用至所有現有 VM,請將群組的更新政策類型設為「主動」。詳情請參閱「自動 (主動) 更新類型」。

您可以使用選用的 maxUnavailable、maxSurge 和 minReadySec 設定,控制主動設定推出作業的速度。

主動更新功能只需設定一次。之後,MIG 會根據群組更新政策中的設定,自動將所有日後的 VM 設定變更 (即群組的所有執行個體設定、執行個體範本和個別執行個體設定變更) 套用至群組中的所有 VM。

如要自動套用設定更新,請使用 gcloud CLI 或 REST。

gcloud

您可以使用 update 指令設定自動 (主動) 更新。

gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
    --update-policy-type=proactive \
    --update-policy-max-unavailable=MAX_UNAVAILABLE \
    --update-policy-max-surge=MAX_SURGE \
    --update-policy-min-ready=MIN_READY \
    --update-policy-minimal-action=MINIMAL_ACTION \
    --update-policy-replacement-method=REPLACEMENT_METHOD

更改下列內容:

  • INSTANCE_GROUP_NAME:MIG 的名稱。
  • MAX_UNAVAILABLE (選用):更新期間無法使用的執行個體數量上限。舉例來說,如果您將 update-minimal-action 旗標設為 restart,則這個旗標會限制一次重新啟動的 VM 數量。可以是固定數字 (例如 5),也可以是代管執行個體群組大小的百分比 (例如 10%)。
  • MAX_SURGE (選用):更新期間可建立的執行個體數量上限。可以是固定數字 (例如 5),或代管執行個體群組大小的百分比 (例如 10%)。
  • MIN_READY (選用):重新啟動或更換的 VM 應準備就緒,才能視為可用的最短時間。例如 10s 代表 10 秒。如要瞭解時間長度格式,請參閱 gcloud topic datetimes。
  • MINIMAL_ACTION (選用):在設定更新期間,對每個執行個體執行的動作:
    • refresh:將新設定套用至執行中的執行個體,而不重新啟動。
    • restart:在更新期間重新啟動 VM,如果應用程式只在重新啟動時讀取中繼資料,這個選項就很有用。
    • replace:刪除 VM 並建立新 VM,以便套用新設定。
  • REPLACEMENT_METHOD (選用):指定要用來取代執行個體的動作:
    • recreate:等待舊執行個體刪除,然後建立與舊執行個體同名的新執行個體。
    • substitute:建立新名稱的執行個體,同時刪除舊執行個體

REST

您可以對可用區或區域 MIG 提出 PATCH 要求,設定自動 (主動) 更新。

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "updatePolicy": {
    "type": "PROACTIVE",
    "maxUnavailable": {
      "percent": MAX_UNAVAILABLE
    },
    "maxSurge": {
      "percent": MAX_SURGE
    },
    "minimalAction": MINIMAL_ACTION,
    "replacementMethod": REPLACEMENT_METHOD
  }
}

更改下列內容:

  • PROJECT_ID:MIG 所在的專案。
  • REGION:MIG 所在的區域。如果是可用區 MIG,請將 regions/REGION 替換為 zones/ZONE。
  • INSTANCE_GROUP_NAME:MIG 的名稱。
  • MAX_UNAVAILABLE (選用):更新期間無法使用的執行個體數量上限。舉例來說,如果您將 update-minimal-action 旗標設為 RESTART,這項旗標就會限制一次重新啟動的 VM 數量。可以是百分比 (例如指定 "percent": 80 代表 80%) 或固定數字。如要指定固定數量,請將 "percent": MAX_UNAVAILABLE 替換為 "fixed": MAX_UNAVAILABLE。
  • MAX_SURGE (選用):更新期間可建立的執行個體數量上限。可以是百分比或固定數字。
  • MINIMAL_ACTION (選用):在設定更新期間,對每個執行個體執行的動作:
    • REFRESH:將新設定套用至執行中的執行個體,而不重新啟動。
    • RESTART:在更新期間重新啟動 VM,如果應用程式只在重新啟動時讀取中繼資料,這個選項就很有用。
    • REPLACE:刪除 VM 並建立新 VM,以便套用新設定。
  • REPLACEMENT_METHOD (選用):指定要用來取代執行個體的動作:
    • RECREATE:等待舊執行個體刪除,然後建立與舊執行個體同名的新執行個體。
    • SUBSTITUTE:建立新名稱的執行個體,同時刪除舊執行個體

如果省略選用旗標,群組會使用群組更新政策中的值。您可以使用 gcloud CLI 或 REST 查看更新政策。

選擇性 (機會主義)

如要控管新設定的套用時間和套用對象,請將群組的更新政策類型設為「投機」。詳情請參閱「選擇性 (機會型) 更新類型」一文。

如果選擇選擇性套用設定更新,則對群組的所有執行個體設定、執行個體範本或個別執行個體設定所做的任何變更,都不會自動套用至現有 VM。您必須明確將更新後的設定套用至現有 VM,才能更新這些 VM。

如要選擇性地將 VM 設定更新套用至 MIG 中的 VM,請使用 gcloud CLI 或 REST。

gcloud

您可以使用 update 指令設定選擇性 (機會型) 更新:

gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \
    --update-policy-type=opportunistic

如果將群組的更新類型設為 opportunistic,則必須在要將新設定套用至現有 VM 時,啟動更新。

將設定套用至特定 VM

如要更新所選執行個體,請使用下列指令:

gcloud compute instance-groups managed update-instances INSTANCE_GROUP_NAME \
    --instances INSTANCE_NAMES \
    --minimal-action=MINIMAL_ACTION \
    --most-disruptive-allowed-action=MOST_DISRUPTIVE_ALLOWED_ACTION

將設定套用至所有 VM

如要更新所有現有執行個體,請使用下列指令:

gcloud compute instance-groups managed update-instances INSTANCE_GROUP_NAME \
    --all-instances \
    --minimal-action=MINIMAL_ACTION \
    --most-disruptive-allowed-action=MOST_DISRUPTIVE_ALLOWED_ACTION

更改下列內容:

  • INSTANCE_GROUP_NAME:MIG 的名稱。
  • INSTANCE_NAMES:要套用範本的執行個體清單。
  • MINIMAL_ACTION (選用):在設定更新期間,對每個執行個體執行的動作:
    • refresh (預設):在執行中的執行個體上套用新設定,不重新啟動。
    • restart:在更新期間重新啟動 VM,如果應用程式只在重新啟動時讀取中繼資料,這個選項就很有用。
    • replace:刪除 VM 並建立新 VM,以便套用新設定。
  • MOST_DISRUPTIVE_ALLOWED_ACTION (選用):對每個執行個體最多執行這項動作。如果設定更新需要比此處指定動作更具破壞性的動作,則更新會失敗,且不會進行任何變更。
    • none:不採取任何行動
    • refresh:盡可能在不停止執行個體的情況下套用新設定。例如,使用 refresh 套用只會影響中繼資料或額外磁碟的變更。
    • restart:盡可能套用新設定,而不替換執行個體。例如,只要停止執行個體並重新啟動,即可套用機型變更。
    • replace:根據 --replacement-method 旗標替換舊執行個體。

REST

如要設定選擇性 (機會型) 更新,請對可用區或區域 MIG 提出 PATCH 要求。

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

{
  "updatePolicy": {
    "type": "OPPORTUNISTIC"
  }
}

如果將群組的更新類型設為 OPPORTUNISTIC,則必須在要將新設定套用至現有 VM 時,啟動更新。

將設定套用至特定 VM

如要更新特定執行個體,請使用下列要求:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/applyUpdatesToInstances

{
  "instances": [
    "zones/ZONE/instances/INSTANCE_NAME_1",
    "zones/ZONE/instances/INSTANCE_NAME_2"
  ],
  "minimalAction": MINIMAL_ACTION,
  "mostDisruptiveAllowedAction": MOST_DISRUPTIVE_ALLOWED_ACTION
}

將設定套用至所有 VM

如要更新所有現有執行個體,請使用下列要求:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/applyUpdatesToInstances

{
  "allInstances": true,
  "minimalAction": MINIMAL_ACTION,
  "mostDisruptiveAllowedAction": MOST_DISRUPTIVE_ALLOWED_ACTION
}

更改下列內容:

  • PROJECT_ID:MIG 所在的專案。
  • REGION:MIG 所在的區域。如果是可用區 MIG,請將 regions/REGION 替換為 zones/ZONE。
  • INSTANCE_GROUP_NAME:MIG 的名稱。
  • MINIMAL_ACTION (選用):在設定更新期間,對每個執行個體執行的動作:
    • REFRESH:將新設定套用至執行中的執行個體,而不重新啟動。
    • RESTART:在更新期間重新啟動 VM,如果應用程式只在重新啟動時讀取中繼資料,這個選項就很有用。
    • REPLACE:刪除 VM 並建立新 VM,以便套用新設定。
  • MOST_DISRUPTIVE_ALLOWED_ACTION (選用):對每個執行個體最多執行這項動作。如果設定更新需要比此處指定動作更具破壞性的動作,則更新會失敗,且不會進行任何變更。
    • NONE:不採取任何行動
    • REFRESH:盡可能在不停止執行個體的情況下套用新設定。例如,使用 REFRESH 套用只會影響中繼資料或額外磁碟的變更。
    • RESTART:盡可能套用新設定,而不替換執行個體。例如,只要停止執行個體並重新啟動,即可套用機型變更。
    • REPLACE:根據群組的 updatePolicy.replacementMethod 欄位取代舊執行個體。

確認是否已套用更新後的「所有執行個體」設定

您可以透過下列任一方式,確認最新的所有執行個體設定是否已套用至群組中的所有 VM。

控制台

  1. 前往 Google Cloud 控制台的「Instance groups」(執行個體群組) 頁面。

    前往「Instance groups」(執行個體群組)

  2. 選取要查看所有執行個體設定的 MIG。

  3. 前往「詳細資料」分頁。

  4. 如果所有 VM 都已套用最新的所有執行個體設定,則「All instances configuration」(所有執行個體設定) 專區中的「Last modified」(上次修改時間) 時間戳記和「Status」(狀態) 欄位必須顯示下列值:

    • 上次修改時間:顯示您將所有執行個體設定套用至所有 VM 的時間。
    • 狀態:顯示「已套用至所有 VM」。如果全執行個體設定未套用至所有 VM,狀態會顯示為「Pending VM update」(待處理的 VM 更新)。

gcloud

使用 describe 指令,並加入 --format 旗標來尋找 status.allInstancesConfig.effective 值。

gcloud compute instance-groups managed describe INSTANCE_GROUP_NAME \
    --format="(status.allInstancesConfig)"

輸出內容範例:

status:
  allInstancesConfig:
    currentRevision: 2022-12-02T10:30:15.012345Z
    effective: true

如果 effective 值設為 true,則所有 VM 都會套用最新設定。currentRevision 值會顯示群組所有執行個體設定的最新變更時間戳記。

如果 effective 值設為 false,表示最新設定尚未套用至所有 VM。

如要查看各個 VM 的狀態,您可以列出 MIG 的所有 VM,或使用 describe-instance 指令個別檢查每個 VM:

gcloud compute instance-groups managed describe-instance INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME

輸出內容範例:

allInstancesConfig:
  revision: 2022-12-02T10:30:15.012345Z
currentAction: NONE
id: '8393021473297481188'
instance: .../projects/PROJECT/zones/ZONE/instances/INSTANCE_NAME
instanceStatus: RUNNING
name: INSTANCE_NAME
version:
  instanceTemplate: .../projects/PROJECT/global/instanceTemplates/INSTANCE_TEMPLATE

如要查看哪些 VM 已套用最新設定,請比較各 VM 的 revision 時間戳記與 MIG 的 currentRevision 時間戳記。

REST

對可用區或區域 MIG 提出 GET 要求,檢查 status.allInstancesConfig.effective 旗標的值。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

回應範例:

{
  ...
  "status": {
    "isStable": "true",
    "versionTarget": {
      "isReached": "true"
    },
    "allInstancesConfig": {
      "currentRevision": "2022-12-02T10:30:15.012345Z",
      "effective": "true"
    },
  ...
  },
  ...
}

如果 effective 欄位設為 true,則所有 VM 都會套用最新設定。currentRevision 欄位會顯示群組所有執行個體設定的最新變更時間戳記。

如果 effective 欄位設為 false,表示最新設定尚未套用至所有 VM。

如要查看各個執行個體的狀態,請列出可用區或區域 MIG 的代管執行個體:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME/listManagedInstances

輸出內容範例:

{
  "managedInstances": [
    ...
    {
      "instance": ".../zones/ZONE/instances/INSTANCE_NAME",
      "instanceStatus": "RUNNING",
      "currentAction": "NONE",
      "allInstancesConfig": {
        "revision": "2022-12-02T10:30:15.012345Z"
      },
      "version": {
        "name": "V1",
        "instanceTemplate": ".../projects/.../instanceTemplates/INSTANCE_TEMPLATE"
      }
    },
    {
      ...
    }
  ]
}

如要查看哪些 VM 已套用最新設定,請比較各 VM 的 revision 時間戳記和 MIG 的 currentRevision 時間戳記。

列出所有執行個體設定中的屬性

所有執行個體設定是 MIG 設定的一部分。如要查看所有執行個體通用的設定,請採用下列其中一種方法。

控制台

  1. 前往 Google Cloud 控制台的「Instance groups」(執行個體群組) 頁面。

    前往「Instance groups」(執行個體群組)

  2. 選取要查看所有執行個體設定的 MIG。

  3. 前往「詳細資料」分頁。

  4. 請參閱「所有執行個體設定」一節。

gcloud

使用 describe 指令,並加入 --format 旗標,顯示群組的所有執行個體設定值。

gcloud compute instance-groups managed describe INSTANCE_GROUP_NAME \
    --format="(allInstancesConfig)"

如果群組有 all-instances 設定,這個指令會傳回該設定。

REST

對可用區或區域 MIG 提出 GET 要求,並尋找 allInstancesConfig 欄位。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME

如果未設定 allInstancesConfig 欄位,則群組沒有所有執行個體設定。

從所有執行個體設定中刪除屬性

如果您從 MIG 的所有執行個體設定中刪除某項屬性,而 MIG 的執行個體範本中存在相同屬性,則在將最新設定套用至 MIG 中的 VM 後,MIG 中的 VM 會重新沿用執行個體範本中的該項屬性。如要進一步瞭解如何將最新設定套用至現有 VM,請參閱「將所有執行個體設定套用至現有 VM」。

如要從所有執行個體通用的設定中刪除屬性,請使用下列其中一種方法。

控制台

  1. 前往 Google Cloud 控制台的「Instance groups」(執行個體群組) 頁面。

    前往「Instance groups」(執行個體群組)

  2. 選取要刪除所有執行個體設定的 MIG。

  3. 按一下 [編輯]。

  4. 按一下「Instance template & overrides」(執行個體範本和覆寫設定),展開該部分。

  5. 在「All-instances configuration」(所有執行個體設定) 部分,執行下列操作:

    1. 視要刪除的屬性而定,按一下「Manage metadata」(管理中繼資料) 或「Manage labels」(管理標籤)。
    2. 在「Manage metadata」(管理中繼資料) 或「Manage labels」(管理標籤) 窗格中,將指標懸停在設定上,啟用刪除選項,然後按一下 「Delete item」(刪除項目)。
    3. 按一下「儲存」。
  6. 按一下「儲存」,將變更套用至 MIG。

    如果 MIG 的更新類型設為「Automatic」(自動),則所有執行個體設定的變更會立即套用至所有現有 VM。如果更新類型為「Selective」(選擇性),則必須選擇性地將設定套用至現有 VM。詳情請參閱「將所有執行個體設定套用至現有 VM」。

gcloud

如要刪除屬性,請使用 all-instances-configuration delete 指令,並為要刪除的屬性指定一或多個鍵。

gcloud compute instance-groups managed all-instances-config delete INSTANCE_GROUP_NAME \
    --metadata=KEY1[, KEY1]\
    --labels=KEY1[, KEY1]

請記得將更新後的設定套用至 MIG 中的現有 VM。

REST

如要刪除屬性,請對可用區或區域 MIG 提出 PATCH 要求,並為要移除的每個屬性指定 null 值做為索引鍵。

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME
{
  "allInstancesConfig": {
    "properties": {
      "metadata": {
        "KEY1": null,
        ...
      },
      "labels": {
        "KEY2": null,
        ...
      }
    }
  }
}

請記得將更新後的設定套用至 MIG 中的現有 VM。

後續步驟

  • 進一步瞭解如何自動套用更新後的設定至 MIG 中的現有 VM。
  • 進一步瞭解如何選擇性套用設定更新至 MIG 中的現有 VM。
  • 查看 MIG 及其 VM 的相關資訊。