This document explains how to suspend and stop virtual machine (VM) instances in a managed instance group (MIG), and how to resume their operation.
Before you begin
- Review the introductory page about suspended and stopped VMs in a MIG .
- If you haven't already, set up authentication
.
Authentication verifies your identity for access to Google Cloud services and APIs. To run
code or samples from a local development environment, you can authenticate to
Compute Engine by selecting one of the following options:
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
-
Install the Google Cloud CLI. After installation, initialize the Google Cloud CLI 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.
Install the Google Cloud CLI. After installation, initialize the Google Cloud CLI 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.
-
Suspend specific VMs in a MIG
You can suspend a running VM in a MIG using the Google Cloud console, the Google Cloud CLI, or the Compute Engine API.
Console
- In the Google Cloud console, go to the Instance groupspage.
- Click the instance group name where you want to suspend VMs.
- In the instance group Overviewpage, under VM instances, select all the VMs that you want to suspend.
- Click Suspend.
- In the confirmation dialog that appears, click Suspendto confirm.
gcloud
Use the instance-groups managed suspend-instances
command
.
gcloud compute instance-groups managed suspend-instances MIG_NAME \ --instances= INSTANCE_NAME \ [--region= REGION | --zone= ZONE ]
Replace the following:
-
MIG_NAME
: the name of the MIG in which to suspend an instance. -
INSTANCE_NAME
: the name of the instance to suspend. To suspend multiple instances, provide a comma-separated list of names. -
REGION
: for a regional MIG, the region where the MIG is located. -
ZONE
: for a zonal MIG, the zone where the MIG is located.
REST
Use the instanceGroupManager.suspendInstances
method
and specify the instances in the request body.
For regional MIGs, use the regionInstanceGroupManager.suspendInstances
method
.
POST https://compute.googleapis.com/compute/v1/projects/ PROJECT_ID /zones/ ZONE /instanceGroupManagers/ MIG_NAME /suspendInstances { "instances": [ " INSTANCE_NAME_URL " ] }
Replace the following:
-
PROJECT_ID
: the project ID for the request. -
ZONE
: for a zonal MIG, the zone where the MIG is located.- For a regional MIG, replace
zones/ ZONE
withregions/ REGION
and specify the region of the MIG.
- For a regional MIG, replace
-
MIG_NAME
: the name of the MIG in which to suspend an instance. -
INSTANCE_NAME_URL
: the URL of the instance to suspend—for example,zones/us-central1-a/instances/example-instance-name1
. To suspend multiple instances, provide a comma-separated list of URLs—for example,"zones/us-central1-a/instances/example-instance-name1","zones/us-central1-a/instances/example-instance-name2"
.
Resume selected VMs in a MIG
You can resume a suspended VM in a MIG using the Google Cloud console, the gcloud CLI, or the Compute Engine API.
Console
- In the Google Cloud console, go to the Instance groupspage.
- Click the instance group name where you want to resume VMs.
- In the instance group Overviewpage, under VM instances, select all the suspended VMs that you want to resume, then click Start/Resume.
gcloud
Use the instance-groups managed resume-instances
command
.
gcloud compute instance-groups managed resume-instances MIG_NAME \ --instances= INSTANCE_NAME \ [--region= REGION | --zone= ZONE ]
Replace the following:
-
MIG_NAME
: the name of the MIG in which to resume an instance. -
INSTANCE_NAME
: the name of the instance to resume. To resume multiple instances, provide a comma-separated list of names. -
REGION
: for a regional MIG, the region where the MIG is located. -
ZONE
: for a zonal MIG, the zone where the MIG is located.
REST
Use the instanceGroupManager.resumeInstances
method
and specify the instances in the request body.
For regional MIGs, use the regionInstanceGroupManager.resumeInstances
method
.
POST https://compute.googleapis.com/compute/v1/projects/ PROJECT_ID /zones/ ZONE /instanceGroupManagers/ MIG_NAME /resumeInstances { "instances": [ " INSTANCE_NAME_URL " ] }
Replace the following:
-
PROJECT_ID
: the project ID for the request. -
ZONE
: for a zonal MIG, the zone where the MIG is located.- For a regional MIG, replace
zones/ ZONE
withregions/ REGION
and specify the region of the MIG.
- For a regional MIG, replace
-
MIG_NAME
: the name of the MIG in which to resume an instance. -
INSTANCE_NAME_URL
: the URL of the instance to resume—for example,zones/us-central1-a/instances/example-instance-name1
. To resume multiple instances, provide a comma-separated list of URLs—for example,"zones/us-central1-a/instances/example-instance-name1","zones/us-central1-a/instances/example-instance-name2"
.
Stop selected VMs in a MIG
You can stop a running VM in a MIG using the Google Cloud console, the Google Cloud CLI, or the Compute Engine API.
Console
- In the Google Cloud console, go to the Instance groupspage.
- Click the instance group name where you want to stop VMs.
- In the instance group Overviewpage, under VM instances, select all the VMs that you want to stop, then click Stop. If there is no Stopoption, click More actions > Stop.
- In the confirmation dialog that appears, click Stopto confirm.
gcloud
Use the instance-groups managed stop-instances
command
.
gcloud compute instance-groups managed stop-instances MIG_NAME \ --instances= INSTANCE_NAME \ [--region= REGION | --zone= ZONE ]
Replace the following:
-
MIG_NAME
: the name of the MIG in which to stop an instance. -
INSTANCE_NAME
: the name of the instance to stop. To stop multiple instances, provide a comma-separated list of names. -
REGION
: for a regional MIG, the region where the MIG is located. -
ZONE
: for a zonal MIG, the zone where the MIG is located.
REST
Use the instanceGroupManager.stopInstances
method
and specify the instances in the request body.
For regional MIGs, use the regionInstanceGroupManager.stopInstances
method
.
POST https://compute.googleapis.com/compute/v1/projects/ PROJECT_ID /zones/ ZONE /instanceGroupManagers/ MIG_NAME /stopInstances { "instances": [ " INSTANCE_NAME_URL " ] }
Replace the following:
-
PROJECT_ID
: the project ID for the request. -
ZONE
: for a zonal MIG, the zone where the MIG is located.- For a regional MIG, replace
zones/ ZONE
withregions/ REGION
and specify the region of the MIG.
- For a regional MIG, replace
-
MIG_NAME
: the name of the MIG in which to stop an instance. -
INSTANCE_NAME_URL
: the URL of the instance to stop—for example,zones/us-central1-a/instances/example-instance-name1
. To stop multiple instances, provide a comma-separated list of URLs—for example,"zones/us-central1-a/instances/example-instance-name1","zones/us-central1-a/instances/example-instance-name2"
.
Start selected VMs in a MIG
You can start a stopped VM in a MIG using the Google Cloud console, the gcloud CLI, or the Compute Engine API.
Console
- In the Google Cloud console, go to the Instance groupspage.
- Click the instance group name where you want to start VMs.
- In the instance group Overviewpage, under VM instances, select all the stopped VMs that you want to start, then click Start/Resume.
gcloud
Use the instance-groups managed start-instances
command
.
gcloud compute instance-groups managed start-instances MIG_NAME \ --instances= INSTANCE_NAME \ [--region= REGION | --zone= ZONE ]
Replace the following:
-
MIG_NAME
: the name of the MIG in which to start an instance. -
INSTANCE_NAME
: the name of the instance to start. To start multiple instances, provide a comma-separated list of names. -
REGION
: for a regional MIG, the region where the MIG is located. -
ZONE
: for a zonal MIG, the zone where the MIG is located.
REST
Use the instanceGroupManager.startInstances
method
and specify the instances in the request body.
For regional MIGs, use the regionInstanceGroupManager.startInstances
method
.
POST https://compute.googleapis.com/compute/v1/projects/ PROJECT_ID /zones/ ZONE /instanceGroupManagers/ MIG_NAME /startInstances { "instances": [ " INSTANCE_NAME_URL " ] }
Replace the following:
-
PROJECT_ID
: the project ID for the request. -
ZONE
: for a zonal MIG, the zone where the MIG is located.- For a regional MIG, replace
zones/ ZONE
withregions/ REGION
and specify the region of the MIG.
- For a regional MIG, replace
-
MIG_NAME
: the name of the MIG in which to start an instance. -
INSTANCE_NAME_URL
: the URL of the instance to start—for example,zones/us-central1-a/instances/example-instance-name1
. To start multiple instances, provide a comma-separated list of URLs—for example,"zones/us-central1-a/instances/example-instance-name1","zones/us-central1-a/instances/example-instance-name2"
.
What's next
- Learn how to accelerate scale out with the standby pool .