為有狀態的代管執行個體群組 (MIG)建立或更新有狀態設定後,您可以:
事前準備
- 請參閱使用有狀態的 MIG 的時機和有狀態的 MIG 如何運作。
-
如果尚未設定,請先設定驗證機制。驗證是指驗證身分,以便存取 Google Cloud 服務和 API 的程序。如要在本機開發環境中執行程式碼或範例,您可以選取下列任一選項,向 Compute Engine 進行驗證:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
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.
- Set a default region and zone.
REST
To use the REST API samples on this page in a local development environment, you use the credentials you provide to the gcloud CLI.
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.
For more information, see Authenticate for using REST in the Google Cloud authentication documentation.
-
將有狀態設定套用至受管理的執行個體
有狀態設定會在您或 MIG 套用後生效。
- 有狀態政策中的設定變更會自動套用至所有受管理的執行個體。
- 您可以手動或自動套用個別執行個體設定中的設定變更。
如需更多概念資訊,請參閱「如何將具狀態設定套用至受管理的執行個體」。
套用有狀態政策的設定
有狀態政策中的所有設定變更都會自動套用至所有受管理的執行個體。有狀態政策的更新不會中斷正在執行的虛擬機器 (VM) 例項。
確認是否已套用有狀態政策
驗證所有 VM
確認是否已將有狀態政策的變更套用至所有 VM,方法是檢查 MIG 在變更後是否「已穩定運作」。
驗證特定 VM
如要確認是否已將有狀態政策的變更套用至 MIG 中的特定 VM,請查看代管執行個體的保留狀態,並檢查有狀態政策中的所有磁碟是否存在於 preservedStateFromPolicy
或 preservedStateFromConfig
中的代管執行個體。
從個別執行個體設定套用有狀態設定
您可以手動或自動套用新的或更新的個別例項設定。請採取下列任一做法:
- 選擇性地將更新的設定套用至特定執行個體:使用這種方法控管中斷時間、時間和更新順序。
- 透過滾動式更新自動套用更新的設定:使用這種方法,以自動滾動式方式將設定變更套用至受管理的執行個體。
這兩種方法都會套用個別例項設定和未套用的版本或執行個體範本 (如有) 的未完成更新。
選擇性將更新後的設定套用至特定執行個體
如要手動將個別執行個體設定套用至特定執行個體,請按照下列步驟操作:
或者,您也可以使用下列方法:
- 使用 gcloud CLI 建立或更新個別執行個體設定時,請使用
--update-instance
標記,立即將設定套用至相關聯的受管理執行個體。 - 手動建立新執行個體時,請在建立時指定其名稱和每個執行個體的設定。MIG 會在建立 VM 時立即套用設定。
透過滾動式更新自動套用更新的設定
設定主動式滾動式更新,讓 MIG 自動以滾動式方式,將設定更新套用至對應的受管理執行個體。
有狀態的 MIG 需要下列設定,才能採用主動式更新政策:
- 您必須將替換方法設為
RECREATE
。 - 您必須將加價上限設為
0
。 - 對於區域性 MIG,您必須停用主動式執行個體重新分配功能,以便在各個可用區之間重新分配。
這項設定可確保 MIG 重新建立現有的有狀態執行個體,且不會以其他執行個體取代。
您也可以在群組的更新政策中將最少動作設為 REFRESH
,確保在套用個別執行個體設定時,不必停止執行個體。
確認是否已套用個別執行個體設定
驗證所有個別執行個體設定
如要確認是否已套用 MIG 中的所有個別執行個體設定,請查看 MIG 的有狀態狀態,並檢查 status.stateful.perInstanceConfigs.allEffective
:
true
:群組中的所有個別例項設定已套用且生效,或是群組沒有個別例項設定。false
:群組中至少有一個個別例項設定尚未生效:您尚未套用該設定,或是該設定正在套用中。
驗證特定的個別執行個體設定
如要確認是否已將特定個別執行個體設定的變更套用至對應的 VM,請查看所有個別執行個體設定,並檢查特定個別執行個體設定的 status
欄位:
UNAPPLIED
:您已建立或更新個別執行個體設定,因此必須透過手動執行個體更新,將設定套用至 VM。APPLYING
:MIG 目前正在將新的或更新的個別執行個體設定套用至 VM。EFFECTIVE
:已成功將個別執行個體設定套用至 VM,且生效。UNAPPLIED_DELETION
:已設定要刪除個別執行個體的設定。您必須透過手動執行個體更新,將這項更新套用至 VM,更新才會生效。DELETING
:系統正在刪除個別執行個體設定,並將變更套用至 VM。
查看有狀態設定和保留狀態
取得有狀態 MIG 的相關資訊,以便執行下列工作:
- 驗證 MIG 是否具有有狀態設定,以及這項設定是否已套用並生效。
- 查看 MIG 中所有執行個體都適用的具狀態設定,這些設定會儲存在具狀態政策中。
- 查看個別執行個體專屬的具狀態設定 (儲存在個別執行個體設定中),並檢查這項設定是否已套用並生效。
- 根據 MIG 中的有狀態政策和套用的個別執行個體設定,查看 MIG 中每個執行個體的有效保留狀態。
查看 MIG 有狀態設定的狀態
如果 MIG 具有任何有狀態設定,也就是有狀態政策或至少一個非空白的個別例項設定,就會視為有狀態。
如果您建立有狀態的政策,MIG 會自動套用該政策,使其生效。如果您建立個別例項設定,可以決定稍後套用這些設定。
如要確認 MIG 是否具有有狀態設定,並套用所有個別執行個體設定,請使用 gcloud CLI 或 REST 查看 MIG 的有狀態狀態。
gcloud
如要確認 MIG 是否具有有狀態設定,請執行 gcloud compute instance-groups managed describe
指令,查看其有狀態狀態。例如:
gcloud compute instance-groups managed describe NAME
baseInstanceName node
...
name example-group
...
status:
isStable: true
stateful:
hasStatefulConfig: true
perInstanceConfigs:
allEffective: true
versionTarget:
isReached: true
targetSize: 3
...
在這個輸出內容中:
hasStatefulConfig
:true
:群組具有有狀態設定,也就是群組具有非空狀態政策,或至少一個非空的個別執行個體設定。false
:沒有有狀態設定。
perInstanceConfigs.allEffective
:true
:群組中的所有個別例項設定已套用且生效,或是群組沒有個別例項設定。false
:群組中至少有一個個別例項設定尚未生效:您尚未套用該設定,或是該設定正在套用中。
REST
如要確認 MIG 是否具有有狀態設定,請使用 instanceGroupManagers.get
或 regionInstanceGroupManagers.get
方法,然後檢查 status.stateful
欄位。例如:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/NAME
這個方法會傳回 instanceGroupManagers
物件:
{ "name": "example-group", "baseInstanceName": "node", ... "status": { "isStable": true, "stateful": { "hasStatefulConfig": true, "perInstanceConfigs": { "allEffective": true } }, "versionTarget": { "isReached": true } }, "targetSize": 3, ... }
在這個輸出內容中:
hasStatefulConfig
:true
:群組具有有狀態設定,也就是群組具有非空狀態政策,或至少一個非空的個別執行個體設定。false
:沒有有狀態設定。
perInstanceConfigs.allEffective
:true
:群組中的所有個別例項設定已套用且生效,或是群組沒有個別例項設定。false
:群組中至少有一個個別例項設定尚未生效:您尚未套用該設定,或是該設定正在套用中。
查看 MIG 的有狀態政策
如要查看 MIG 的有狀態政策,請使用 Google Cloud 控制台、gcloud CLI 或 REST 查看群組的詳細資料。
主控台
前往 Google Cloud 控制台的「Instance groups」(執行個體群組) 頁面。
按一下要查看具狀態政策的執行個體群組名稱。
前往「詳細資料」分頁。
在「有狀態資源」下方,列出有狀態政策中的所有資源。
gcloud
如要查看 MIG 的有狀態政策,請執行 gcloud compute instance-groups managed describe
指令。例如:
gcloud compute instance-groups managed describe NAME
baseInstanceName node
...
name example-group
...
statefulPolicy:
preservedState:
disks:
data-disk:
autoDelete: NEVER
logs-disk:
autoDelete: ON_PERMANENT_INSTANCE_DELETION
internalIPs:
nic0:
autoDelete: ON_PERMANENT_INSTANCE_DELETION
externalIPs:
nic0:
autoDelete: NEVER
status:
isStable: true
stateful:
hasStatefulConfig: true
perInstanceConfigs:
allEffective: true
versionTarget:
isReached: true
targetSize: 3
...
REST
如要查看 MIG 的有狀態政策,請使用 instanceGroupManagers.get
或 regionInstanceGroupManagers.get
方法,然後查看 statefulPolicy
欄位。例如:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/NAME
這個方法會傳回 instanceGroupManagers
物件:
{ "name": "example-group", "baseInstanceName": "node", ... "status": { "isStable": true, "versionTarget": { "isReached": true }, "stateful": { "hasStatefulConfig": true, "perInstanceConfigs": { "allEffective": true } } ... "statefulPolicy": { "preservedState": { "disks": { "data-disk": { "autoDelete": "NEVER" }, "logs-disk": { "autoDelete": "ON_PERMANENT_INSTANCE_DELETION" } }, "internalIPs": { "nic0" : { "autoDelete": "ON_PERMANENT_INSTANCE_DELETION"} }, "externalIPs": { "nic0" : { "autoDelete": "NEVER"} }, } }, "targetSize": 3, ... }
查看 MIG 的個別執行個體設定
在 MIG 中列出所有個別執行個體設定,即可查看個別執行個體設定。使用 gcloud CLI 或 REST。
如果您決定手動套用個別執行個體設定,部分個別執行個體設定可能尚未套用至相關聯的執行個體,因此執行個體的已保留狀態可能尚未反映您的個別執行個體設定。詳情請參閱「套用個別執行個體設定」和「確認是否已套用個別執行個體設定」。
gcloud
執行 gcloud compute instance-groups managed instance-configs list
指令,列出 MIG 中的所有個別執行個體設定。
gcloud compute instance-groups managed instance-configs list NAME
更改下列內容:
NAME
:要列出每個執行個體設定的 MIG 名稱
使用標準 --filter
flag 篩選清單。
舉例來說,如要列出 example-group
中的所有個別執行個體設定:
gcloud compute instance-groups managed instance-configs list example-group
---
fingerprint: JxPvsKOywuY=
name: node-1
preservedState:
disks:
data-disk:
autoDelete: NEVER
mode: rw
source: https://www.googleapis.com/compute/v1/projects/example-project/zones/us-east1-c/disks/data-disk-1
metadata:
role: primary
internalIPs:
nic0:
ipAddress:
address: /projects/example-project/regions/us-east1/addresses/node-1-int-ip
autoDelete: ON_PERMANENT_INSTANCE_DELETION
externalIPs:
nic0:
ipAddress:
literal: 130.211.181.55
autoDelete: NEVER
status: EFFECTIVE
---
fingerprint: IbGmJBqqEkk=
name: node-2
preservedState:
...
REST
呼叫 instanceGroupManagers.listPerInstanceConfigs
或 regionInstanceGroupManagers.listPerInstanceConfigs
方法,列出 MIG 中的所有個別執行個體設定。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/NAME/listPerInstanceConfigs
更改下列內容:
PROJECT_ID
:要求的專案 IDZONE
:MIG 所在的可用區 (適用於區域 MIG)- 如果是區域 MIG,請將
zones/ZONE
替換為regions/REGION
,並指定 MIG 的區域
- 如果是區域 MIG,請將
NAME
:要列出每個執行個體設定的 MIG 名稱
舉例來說,如要列出 example-group
中的所有個別執行個體設定:
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-east1-c/instanceGroupManagers/example-group/listPerInstanceConfigs
這個方法會傳回群組中每個執行個體的設定清單:
{ "items": [ { "fingerprint": "JxPvsKOywuY=", "name": "node-1", "preservedState" : { "disks": { "data-disk" : { "source": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-east1-c/disks/data-disk-1", "mode": "READ_WRITE", "autoDelete": "NEVER" } }, "metadata": { "role": "primary" }, "internalIPs": { "nic0" : { "ipAddress" : { "address": "/projects/example-project/regions/us-east1/addresses/node-1-int-ip" }, "autoDelete": "ON_PERMANENT_INSTANCE_DELETION" } }, "externalIPs": { "nic0": { "ipAddress" : { "literal": "54.2.3.4" }, "autoDelete": "NEVER" } } }, "status": "EFFECTIVE" }, { "fingerprint": "IbGmJBqqEkk=", "name": "node-2", "preservedState" : { ... } ... }, ... ] }
查看代管執行個體的保留狀態
套用有狀態設定後,MIG 會在兩個欄位中產生並設定每個受管理執行個體的有效保留狀態:
preservedStateFromPolicy
:包含根據有狀態政策產生的已保留狀態,不含任何由個別執行個體設定覆寫的有狀態設定。preservedStateFromConfig
:包含已保存的狀態,這些狀態是根據已套用至受管理執行個體的個別執行個體設定產生。
如要查看 MIG 中每個代管執行個體的有效保留狀態,請使用 gcloud CLI 或 REST 列出代管執行個體。
gcloud
檢查哪些已保留狀態的代管執行個體,請使用 gcloud compute instance-groups managed list-instances
指令,並查看 PRESERVED_STATE
欄中的值。例如:
gcloud compute instance-groups managed list-instances NAME
NAME ZONE STATUS HEALTH_STATE ACTION PRESERVED_STATE INSTANCE_TEMPLATE ...
node-1 us-east1-c RUNNING NONE POLICY,CONFIG example-template
node-2 us-east1-c RUNNING NONE POLICY,CONFIG example-template
PRESERVED_STATE
欄可能包含下列值:
POLICY
:代管執行個體已根據有狀態政策保留狀態。CONFIG
:受管理的執行個體已根據個別執行個體設定保留狀態。- 無值:管理例項沒有保留狀態,且為無狀態。
查看特定受管理執行個體的保留狀態,請執行 gcloud compute instance-groups managed describe-instance
指令。
gcloud compute instance-groups managed describe-instance INSTANCE_GROUP_NAME \ --instance INSTANCE_NAME
更改下列內容:
INSTANCE_GROUP_NAME
:MIG 名稱INSTANCE_NAME
:群組中代管執行個體的名稱
例如,如要查看 example-group
中 node-1
受管理執行個體的保留狀態,請執行以下指令:
gcloud compute instance-groups managed describe-instance example-group \
--instance node-1
instance: .../example-project/zones/us-east1-c/instances/node-1
instanceStatus: RUNNING
currentAction: NONE
id: 123456789012345678
version:
instanceTemplate: .../example-project/global/instanceTemplates/example-template
preservedStateFromPolicy:
disks:
data-disk:
autoDelete: NEVER
mode: rw
source: .../example-project/zones/us-east1-c/disks/data-disk-1
internalIPs:
nic0:
ipAddress:
literal: 10.0.0.1
address: .../example-project/regions/us-east1/addresses/node-1-int-ip
autoDelete: ON_PERMANENT_INSTANCE_DELETION
preservedStateFromConfig:
metadata:
role: primary
my-key: my-value
externalIPs:
nic0:
ipAddress:
literal: 130.211.181.55
address: .../example-project/regions/us-east1/addresses/node-1-nat-ip
autoDelete: NEVER
REST
透過呼叫 instanceGroupManagers.listManagedInstances
或 regionInstanceGroupManagers.listManagedInstances
方法,列出受管理的例項,以便查看每個例項的保留狀態。
舉例來說,如要列出所有受管理的執行個體:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/NAME/listManagedInstances
這個方法會傳回群組中代管執行個體的清單,其中包含這些執行個體的保留狀態資訊:
{ "managedInstances": [ { "instance": ".../example-project/zones/us-east1-c/instances/node-1", "instanceStatus": "RUNNING", "currentAction": "NONE", "id": "123456789012345678", "version": { "instanceTemplate":".../example-project/global/instanceTemplates/example-template" }, "preservedStateFromPolicy": { "disks": { "data-disk" : { "source": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-east1-c/disks/data-disk-1", "mode": "rw", "autoDelete": "NEVER" }, }, "internalIPs": { "nic0" : { "ipAddress": { "literal": "10.0.0.1", "address": "/projects/example-project/regions/us-east1/addresses/node-1-int-ip" }, "autoDelete": "ON_PERMANENT_INSTANCE_DELETION" } }, }, "preservedStateFromConfig": { "metadata": { "role": "primary", "my-key": "my-value" }, "externalIPs": { "nic0": { "ipAddress": { "literal": "130.211.181.55", "address": "/projects/example-project/regions/us-east1/addresses/node-1-nat-ip" }, "autoDelete": "NEVER" } }, } }, { "instance": ".../example-project/zones/us-east1-c/instances/node-2", "instanceStatus": "RUNNING", ... "preservedStateFromPolicy": { ... }, "preservedStateFromConfig": { ... } }, ... ] }
查看相關的靜態 IP 位址資源
如要擷取已指派給 MIG 中代管執行個體的靜態 IP 位址 (Address
資源),請查看這些執行個體的保留狀態。您可以在 ipAddress.address
欄位中查看靜態位址。
如果 MIG 或執行個體已不存在,但 IP 位址保留項目仍存在,您可以列出靜態內部或外部位址保留項目。
移除有狀態設定
在下列情況下,移除有狀態設定會相當實用:
- 您已遷移獨立 VM 至有狀態的 MIG,現在想將有狀態設定從個別執行個體設定移至通用有狀態政策。
- 您已重新架構工作負載,因此不必再在 VM 執行個體上保留任何狀態。
- 您為測試目的建立了具狀態設定,現在想清除該設定。
本節說明如何在個別執行個體設定中完全移除有狀態政策。如果您只需要移除部分具狀態政策或個別執行個體設定,請參閱下列章節:
- 將先前具狀態的永久磁碟宣告為無狀態,適用於 MIG 中的所有 VM。
- 將先前具狀態的網路介面宣告為無狀態,適用於 MIG 中的所有 VM。
- 針對 MIG 中的特定 VM,卸除有狀態磁碟或宣告其為無狀態。
- 從 MIG 中的特定 VM 移除有狀態中繼資料
- 從 MIG 中的特定 VM 中解除靜態 IP 位址。
移除有狀態政策
移除有狀態政策後,會影響 MIG 中的所有 VM。除非在個別執行個體的個別例項設定中也設定了這些資源,否則 MIG 會將在有狀態政策中設定的所有有狀態資源視為無狀態。在後續的執行個體重建、自動修復或更新作業中,現已無狀態的資源可能會失去狀態:
- 磁碟可以從來源刪除及重新建立,來源是在執行個體範本中定義。
- IP 位址可能會變更。
如需概念資訊,請參閱從具狀態政策中移除資源會如何影響已保留的狀態。
gcloud
如要刪除有狀態政策中的所有設定,請搭配適用的標記執行 gcloud compute instance-groups managed update
指令。適用的旗標如下:
--remove-stateful-disks
,並列出所有已設定的狀態磁碟的裝置名稱。--remove-stateful-internal-ips
,並列出所有已設定的具狀態內部 IP 位址的網路介面名稱。--remove-stateful-external-ips
,並列出所有已設定的具狀態外部 IP 位址的網路介面名稱。
舉例來說,如果您的有狀態政策包含兩個有狀態磁碟的設定,且這些磁碟的裝置名稱分別為 data-disk
和 logs-disk
,並且包含 nic0
網路介面內有狀態內部和外部 IP 位址的設定,請執行下列指令來清除政策:
gcloud compute instance-groups managed update example-group \ --zone us-east1-c \ --remove-stateful-disks data-disk,logs-disk \ --remove-stateful-internal-ips nic0 \ --remove-stateful-external-ips nic0
MIG 會從其有狀態政策中移除 data-disk
和 logs-disk
有狀態設定,以及 nic0
網路介面的有狀態內部和外部 IP 設定。因此,除非磁碟或 IP 位址也已在個別執行個體設定中設定,否則 MIG 會自動且非同步地從群組中所有已管理執行個體的保留狀態中移除這些磁碟和靜態 IP 位址。
REST
如要刪除有狀態政策中的所有設定,請使用 instanceGroupManagers.patch
或 regionInstanceGroupManagers.patch
將 statefulPolicy
欄位設為 null
。方法。
舉例來說,下列呼叫會移除有狀態政策設定:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/NAME { "statefulPolicy": null }
除非在個別執行個體設定中也設定了資源,否則 MIG 會自動且非同步地清除有狀態政策設定,並從群組中所有代管執行個體的保存狀態中移除有狀態資源。
移除特定 VM 的具狀態設定
移除特定 VM 的具狀態設定有兩個步驟:
- 刪除相關聯的個別執行個體設定。
- 將變更套用至受管理的執行個體。您可以選擇是否要手動或自動套用變更。
套用變更後,先前在個別例項設定中設定的所有有狀態項目,現在會視為無狀態,除非這些項目也已在群組的有狀態政策中設定。之後重新建立或更新 VM 時,項目的狀態就會遺失:
- 您可以在執行個體範本中,從來源中卸載或重新建立磁碟。
- 中繼資料會遭到移除,或重設為執行個體範本中定義的值。
- IP 位址可能會變更。
詳情請參閱從個別執行個體設定中移除項目對保留狀態的影響。
gcloud
如要完全刪除個別執行個體設定,請執行 gcloud compute instance-groups managed instance-configs delete
指令。
使用選用的 --update-instance
標記,即可立即將變更套用至執行個體 (預設)。如果您設定 --no-update-instance
標記,系統會在您下次重新建立或更新執行個體時套用變更。
--instance-update-minimal-action
標記只能與 --update-instance
標記搭配使用。
gcloud compute instance-groups managed instance-configs delete INSTANCE_GROUP_NAME \ --instances INSTANCE_NAME[,INSTANCE_NAME,...] \ [--no-update-instance | --update-instance] \ [--instance-update-minimal-action MINIMAL_ACTION]
更改下列內容:
INSTANCE_GROUP_NAME
:MIG 的名稱。INSTANCE_NAME
:要刪除個別執行個體設定的執行個體名稱MINIMAL_ACTION
:將個別執行個體設定更新套用至 VM 時,要執行的最少動作。這個值必須是下列其中一個:none
:無動作。refresh
:套用可在未停止 VM 的情況下套用的更新。restart
:停止 VM,然後重新啟動。replace
:重新建立 VM。
舉例來說,如要刪除 example-group
中 node-1
的個別執行個體設定,請執行下列指令:
gcloud compute instance-groups managed instance-configs delete example-group \ --instances node-1 \ --update-instance
MIG 會刪除 node-1
的個別執行個體設定,且由於虛擬機器已更新並套用設定變更,MIG 不再將先前的有狀態項目視為有狀態。
REST
如要徹底刪除一或多個執行個體的個別執行個體設定,請使用 instanceGroupManagers.deletePerInstanceConfigs
或 regionInstanceGroupManagers.deletePerInstanceConfigs
方法。
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/deletePerInstanceConfigs { "names": ["INSTANCE_NAME",...] }
更改下列內容:
PROJECT_ID
:要求的專案 IDZONE
:MIG 所在的可用區 (適用於區域 MIG)- 如果是區域 MIG,請將
zones/ZONE
替換為regions/REGION
,並指定 MIG 的區域
- 如果是區域 MIG,請將
INSTANCE_GROUP_NAME
:MIG 名稱INSTANCE_NAME
:要刪除個別執行個體設定的執行個體名稱
deletePerInstanceConfig
方法會刪除指定的個別執行個體設定,但不會將變更套用至相關聯的 VM。重新建立或更新執行個體時,系統會將變更套用至 VM。手動更新所選 VM 以套用變更。
舉例來說,如要刪除 example-group
中 node-1
的個別例項設定,請呼叫下列方法:
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-east1-c/instanceGroupManagers/example-group/deletePerInstanceConfigs { "names": ["node-1"] }
這個方法會從 example-group
中刪除 node-1
例項的個別例項設定。您重新建立或更新執行個體時,系統會將變更套用至代管執行個體。
如要套用設定變更,請呼叫 instanceGroupManagers.applyUpdatesToInstances
方法:
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-east1-c/instanceGroupManagers/example-group/applyUpdatesToInstances { "instances": ["/zones/us-east1-c/instances/node-1"] }
這個方法會從受管理執行個體的已保留狀態中移除有狀態項目。
意見回饋
我們想瞭解您對有狀態 MIG 的使用情境、難題和意見。請前往以下網址,並與我們的團隊分享您的寶貴意見:mig-discuss@google.com。
後續步驟
- 設定有狀態的 MIG。
- 取得特定 MIG 和其代管執行個體的相關資訊,包括 VM 狀態和屬性。
- 進一步瞭解有狀態的 MIG。
- 進一步瞭解 MIG 和使用代管執行個體。