An instance group is a collection of virtual machine (VM) instances that you can manage as a single entity.
Compute Engine offers two kinds of VM instance groups, managed and unmanaged:
Managed instance groups (MIGs) let you operate apps on multiple identical VMs. You can make your workloads scalable and highly available by taking advantage of automated MIG services, including: autoscaling, autohealing, regional (multiple zone) deployment, and automatic updating.
Unmanaged instance groups let you load balance across a fleet of VMs that you manage yourself.
If you're new to Google Cloud, create an account to evaluate how Compute Engine performs in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
Try Compute Engine free Managed instance groups (MIGs)Use a managed instance group (MIG) for scenarios like these:
Compute Engine maintains each of the MIG's managed instances based on the configuration that you specify in an instance template and optional stateful configuration.
For information about how to create a MIG, see Creating managed instance groups.
BenefitsMIGs offer the following advantages:
Managed instance groups maintain high availability of your applications by proactively keeping your instances available. A MIG automatically repairs failed instances by recreating them.
You might also want to repair instances when an application freezes, crashes, or runs out of memory. Application-based autohealing improves application availability by relying on a health checking signal that detects application-specific issues such as freezing, crashing, or overloading. If a health check determines that an application has failed on a VM, the group automatically recreates that VM instance.
For more information, see About repairing VMs in a MIG.
Health checkingThe health checks used to monitor MIGs are similar to the health checks used for load balancing, with some differences in behavior. Load balancing health checks help direct traffic away from non-responsive instances and toward healthy instances; these health checks do not cause Compute Engine to recreate instances. On the other hand, managed instance group health checks proactively signal to delete and recreate instances that become UNHEALTHY
.
For the majority of scenarios, use separate health checks for load balancing and for autohealing. Health checking for load balancing can and should be more aggressive because these health checks determine whether an instance receives user traffic. Because customers might rely on your services, you want to catch non-responsive instances quickly so you can redirect traffic if necessary. In contrast, health checking for autohealing causes MIGs to proactively replace failing instances, so this health check should be more conservative than a load balancing health check.
For more information, see Set up an application health check and autohealing.
Regional or zonal groupsYou can create two types of MIGs:
Both types offer all of the advantages of MIGs. Regional MIGs add higher availability by spreading application load across multiple zones, which protects your workload against zonal failure, and regional MIGs offer more capacity. By default, you can create up to 2,000 VMs in a regional MIG and 1,000 VMs in a zonal MIG. If you need more VMs, you can increase the size limit of your MIG or contact support.
Load balancingGoogle Cloud load balancing can use instance groups to serve traffic. Depending on the type of load balancer you choose, you can add instance groups to a target pool or to a backend service.
For more information, see Adding an instance group to a load balancer.
AutoscalingMIGs support autoscaling that dynamically adds or removes VM instances from the group in response to increases or decreases in load. You can configure an autoscaling policy to specify how you want to scale the group. In your autoscaling policy, you can set one or more signals to scale the group based on CPU utilization, load balancing capacity, Cloud Monitoring metrics, schedules, or, for zonal MIGs, by using a queue-based workload like Pub/Sub.
For more information, read Autoscaling groups of instances.
Automatic updatingYou can easily and safely deploy new versions of software to instances in a MIG. The rollout of an update happens automatically based on your specifications: you can control the speed and scope of the update rollout in order to minimize disruptions to your application. You can optionally perform partial rollouts, which allows for canary testing.
See Updating MIGs.
Support for stateful workloadsYou can build highly available deployments of stateful workloads on VMs using stateful managed instance groups (stateful MIGs). Stateful workloads include applications with stateful data or configuration, such as databases, legacy monolith applications, and long-running batch computations with checkpointing.
You can improve uptime and resiliency of such applications with autohealing, controlled updates, and multi-zone deployments, while preserving each instance's unique state, including customizable instance name, persistent disks, and metadata.
For more information, read Stateful MIGs.
Create GPU VMs all at onceYou can create a resize request in a MIG with GPU VMs to create the requested VMs all at once when the requested capacity becomes available. When you create a resize request in a MIG, Compute Engine schedules the creation of the VMs based on the number of requested VMs, their requested run duration, and the availability of the requested resources in the zones of the MIG. Then, at the scheduled delivery of the resources, the MIG creates the requested number of VMs all at once. The VMs run until the end of their run duration or until you delete them.
For more information, see About resize requests in a MIG.
Groups of preemptible instancesFor workloads where minimal costs are more important than speed of execution, you can reduce the cost of your workload by using preemptible VM instances in your instance group. Preemptible instances last up to 24 hours, and are preempted gracefully—your application has 30 seconds to exit correctly. Preemptible instances can be deleted at any time, but autohealing will bring the instances back when preemptible capacity becomes available again.
ContainersYou can simplify application deployment by deploying containers to instances in managed instance groups. When you specify a container image in an instance template and then use that template to create a managed instance group, each VM is created with a container-optimized OS that includes Docker, and your container starts automatically on each VM in the group. See Deploying containers on VMs and MIGs.
Network and subnetWhen you create a managed instance group, you must reference an existing instance template. The instance template defines the VPC network and subnet that member instances use. If you omit a VPC network, Google Cloud attempts to use the VPC network named default
and the automatically-created subnet in the region specified in the template.
For more information, see Networks and subnets.
If you want your managed instance group to include VM instances that use IPv6 addressing, you must use the dual-stack setting when you create your instance template. For more information, see Create an instance template with IPv6 addresses.
Demo of MIG capabilitiesThe following 45-minute video presentation, recorded at Google Cloud NEXT '18, contains demos and best practices for setting up, running, and updating scalable and highly available deployments using Compute Engine MIGs.
The video shows you how to deploy a container to a MIG, set up an autohealing policy, use a regional group to protect against a zonal failure, configure autoscaling to meet CPU targets and queue-based demands, and manage canary and rolling updates.
Unmanaged instance groupsUnmanaged instance groups can contain heterogeneous instances that you can arbitrarily add and remove from the group. Unmanaged instance groups do not offer autoscaling, autohealing, rolling update support, multi-zone support, or the use of instance templates and are not a good fit for deploying highly available and scalable workloads. Use unmanaged instance groups if you need to apply load balancing to groups of heterogeneous instances, or if you need to manage the instances yourself. You can add up to 2,000 VMs to a group. If you want to add more than 2,000 VMs to the group, contact support.
If you must create unmanaged instance groups, see Unmanaged instance groups.
PricingThere is no additional charge for using managed or unmanaged instance groups. You are charged based on the resources that your group uses. For Compute Engine pricing information, see Pricing.
What's nextLearn more about instance templates or create an instance template that you can use to configure the VMs in a MIG.
Learn more about the basic scenarios for creating a MIG.
Learn about updating MIGs to use a new configuration.
Try a tutorial:
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4