0
0
GCPcloud~10 mins

Managed instance groups in GCP - Step-by-Step Execution

Choose your learning style9 modes available
Process Flow - Managed instance groups
Create Instance Template
Create Managed Instance Group
Group uses Template to launch VMs
Autoscaling & Autohealing Monitor
Add or Remove Instances Automatically
Update Group with New Template
Rolling Update of Instances
Group Stable
This flow shows how a managed instance group is created from a template, then automatically manages VM instances by scaling, healing, and updating them.
Execution Sample
GCP
gcloud compute instance-templates create web-template \
  --machine-type=e2-medium --image-family=debian-11 \
  --image-project=debian-cloud

gcloud compute instance-groups managed create web-group \
  --base-instance-name=web --size=2 \
  --template=web-template --zone=us-central1-a

gcloud compute instance-groups managed set-autoscaling web-group \
  --max-num-replicas=5 --min-num-replicas=1 --target-cpu-utilization=0.6 \
  --zone=us-central1-a
This code creates an instance template, then a managed instance group with 2 VMs, and sets autoscaling based on CPU usage.
Process Table
StepActionState ChangeResult
1Create instance template 'web-template'Template created with Debian 11 image and e2-medium machine typeTemplate ready for use
2Create managed instance group 'web-group' with size 22 VM instances launched using 'web-template'Group has 2 running instances
3Set autoscaling: min 1, max 5, target CPU 60%Autoscaler monitors CPU usageGroup can scale between 1 and 5 instances
4CPU usage rises above 60%Autoscaler adds 1 instanceGroup scales up to 3 instances
5CPU usage drops below 60%Autoscaler removes 1 instanceGroup scales down to 2 instances
6Update instance template with new softwareNew template version createdReady for rolling update
7Perform rolling update on 'web-group'Instances replaced one by one with new templateAll instances updated and stable
8Instance fails health checkAutohealing deletes and recreates instanceGroup maintains desired size and health
9Manual resize to 4 instancesGroup adds 2 instancesGroup now has 4 running instances
10Autoscaler disablesNo automatic scalingGroup size fixed until autoscaler re-enabled
11ExitNo further actionsGroup stable with current instances
💡 Execution stops as group is stable and no further scaling or updates occur
Status Tracker
VariableStartAfter Step 2After Step 4After Step 5After Step 7After Step 9Final
Instance TemplateNoneweb-template createdweb-template createdweb-template createdUpdated template createdUpdated template createdUpdated template created
Managed Instance Group Size02322 (rolling update ongoing)44
Autoscaler StatusDisabledEnabledEnabledEnabledEnabledEnabledDisabled
Instance HealthN/AHealthyHealthyHealthyHealthy (rolling update)HealthyHealthy
Key Moments - 3 Insights
Why does the managed instance group add or remove instances automatically?
Because the autoscaler monitors CPU usage and adjusts the number of instances to keep CPU near the target, as shown in steps 3, 4, and 5 in the execution table.
What happens during a rolling update of the managed instance group?
Instances are replaced one by one with new versions from the updated template to avoid downtime, as shown in step 7.
How does autohealing keep the group healthy?
If an instance fails health checks, the group deletes and recreates it automatically, maintaining the desired size and health, as shown in step 8.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution table, at which step does the group scale up due to high CPU usage?
AStep 4
BStep 5
CStep 7
DStep 9
💡 Hint
Check the 'Action' and 'Result' columns for scaling events related to CPU usage.
According to the variable tracker, what is the group size after step 9?
A2
B4
C3
D5
💡 Hint
Look at the 'Managed Instance Group Size' row and the 'After Step 9' column.
If autoscaling is disabled at step 10, what happens to the group size afterward?
AIt continues to scale automatically
BIt immediately scales down to minimum size
CIt remains fixed until autoscaler is re-enabled
DIt deletes all instances
💡 Hint
Refer to step 10 in the execution table under 'Result' for autoscaler status effects.
Concept Snapshot
Managed instance groups use an instance template to launch identical VMs.
They automatically scale instances based on load and heal unhealthy ones.
Rolling updates replace instances gradually to avoid downtime.
Autoscaling can be configured with min/max sizes and CPU targets.
Autohealing ensures group health by recreating failed instances.
Full Transcript
Managed instance groups start by creating an instance template that defines VM settings. Then, a managed instance group is created using this template, launching a set number of VM instances. Autoscaling monitors CPU usage and adjusts the number of instances automatically to keep performance steady. When CPU usage rises, the group adds instances; when it falls, it removes them. Updates to the group are done by creating a new template version and performing a rolling update, replacing instances one at a time to avoid downtime. Autohealing monitors instance health and replaces any failing instances to keep the group stable. Manual resizing and disabling autoscaling are also possible, giving control over the group size. This process ensures a reliable, scalable, and maintainable VM environment.