1. Packages
  2. Google Cloud Native
  3. API Docs
  4. compute
  5. compute/v1
  6. RegionInstanceGroupManager

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.compute/v1.RegionInstanceGroupManager

Explore with Pulumi AI

Creates a managed instance group using the information that you specify in the request. After the group is created, instances in the group are created using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method. A regional managed instance group can contain up to 2000 instances.

Create RegionInstanceGroupManager Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new RegionInstanceGroupManager(name: string, args: RegionInstanceGroupManagerArgs, opts?: CustomResourceOptions);
@overload
def RegionInstanceGroupManager(resource_name: str,
                               args: RegionInstanceGroupManagerArgs,
                               opts: Optional[ResourceOptions] = None)

@overload
def RegionInstanceGroupManager(resource_name: str,
                               opts: Optional[ResourceOptions] = None,
                               region: Optional[str] = None,
                               named_ports: Optional[Sequence[NamedPortArgs]] = None,
                               base_instance_name: Optional[str] = None,
                               distribution_policy: Optional[DistributionPolicyArgs] = None,
                               instance_lifecycle_policy: Optional[InstanceGroupManagerInstanceLifecyclePolicyArgs] = None,
                               instance_template: Optional[str] = None,
                               list_managed_instances_results: Optional[RegionInstanceGroupManagerListManagedInstancesResults] = None,
                               description: Optional[str] = None,
                               name: Optional[str] = None,
                               project: Optional[str] = None,
                               auto_healing_policies: Optional[Sequence[InstanceGroupManagerAutoHealingPolicyArgs]] = None,
                               request_id: Optional[str] = None,
                               stateful_policy: Optional[StatefulPolicyArgs] = None,
                               target_pools: Optional[Sequence[str]] = None,
                               target_size: Optional[int] = None,
                               update_policy: Optional[InstanceGroupManagerUpdatePolicyArgs] = None,
                               versions: Optional[Sequence[InstanceGroupManagerVersionArgs]] = None)
func NewRegionInstanceGroupManager(ctx *Context, name string, args RegionInstanceGroupManagerArgs, opts ...ResourceOption) (*RegionInstanceGroupManager, error)
public RegionInstanceGroupManager(string name, RegionInstanceGroupManagerArgs args, CustomResourceOptions? opts = null)
public RegionInstanceGroupManager(String name, RegionInstanceGroupManagerArgs args)
public RegionInstanceGroupManager(String name, RegionInstanceGroupManagerArgs args, CustomResourceOptions options)
type: google-native:compute/v1:RegionInstanceGroupManager
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. RegionInstanceGroupManagerArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. RegionInstanceGroupManagerArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. RegionInstanceGroupManagerArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. RegionInstanceGroupManagerArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. RegionInstanceGroupManagerArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var exampleregionInstanceGroupManagerResourceResourceFromComputev1 = new GoogleNative.Compute.V1.RegionInstanceGroupManager("exampleregionInstanceGroupManagerResourceResourceFromComputev1", new()
{
    Region = "string",
    NamedPorts = new[]
    {
        new GoogleNative.Compute.V1.Inputs.NamedPortArgs
        {
            Name = "string",
            Port = 0,
        },
    },
    BaseInstanceName = "string",
    DistributionPolicy = new GoogleNative.Compute.V1.Inputs.DistributionPolicyArgs
    {
        TargetShape = GoogleNative.Compute.V1.DistributionPolicyTargetShape.Any,
        Zones = new[]
        {
            new GoogleNative.Compute.V1.Inputs.DistributionPolicyZoneConfigurationArgs
            {
                Zone = "string",
            },
        },
    },
    InstanceLifecyclePolicy = new GoogleNative.Compute.V1.Inputs.InstanceGroupManagerInstanceLifecyclePolicyArgs
    {
        ForceUpdateOnRepair = GoogleNative.Compute.V1.InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepair.No,
    },
    InstanceTemplate = "string",
    ListManagedInstancesResults = GoogleNative.Compute.V1.RegionInstanceGroupManagerListManagedInstancesResults.Pageless,
    Description = "string",
    Name = "string",
    Project = "string",
    AutoHealingPolicies = new[]
    {
        new GoogleNative.Compute.V1.Inputs.InstanceGroupManagerAutoHealingPolicyArgs
        {
            HealthCheck = "string",
            InitialDelaySec = 0,
        },
    },
    RequestId = "string",
    StatefulPolicy = new GoogleNative.Compute.V1.Inputs.StatefulPolicyArgs
    {
        PreservedState = new GoogleNative.Compute.V1.Inputs.StatefulPolicyPreservedStateArgs
        {
            Disks = 
            {
                { "string", "string" },
            },
            ExternalIPs = 
            {
                { "string", "string" },
            },
            InternalIPs = 
            {
                { "string", "string" },
            },
        },
    },
    TargetPools = new[]
    {
        "string",
    },
    TargetSize = 0,
    UpdatePolicy = new GoogleNative.Compute.V1.Inputs.InstanceGroupManagerUpdatePolicyArgs
    {
        InstanceRedistributionType = GoogleNative.Compute.V1.InstanceGroupManagerUpdatePolicyInstanceRedistributionType.None,
        MaxSurge = new GoogleNative.Compute.V1.Inputs.FixedOrPercentArgs
        {
            Fixed = 0,
            Percent = 0,
        },
        MaxUnavailable = new GoogleNative.Compute.V1.Inputs.FixedOrPercentArgs
        {
            Fixed = 0,
            Percent = 0,
        },
        MinimalAction = GoogleNative.Compute.V1.InstanceGroupManagerUpdatePolicyMinimalAction.None,
        MostDisruptiveAllowedAction = GoogleNative.Compute.V1.InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedAction.None,
        ReplacementMethod = GoogleNative.Compute.V1.InstanceGroupManagerUpdatePolicyReplacementMethod.Recreate,
        Type = GoogleNative.Compute.V1.InstanceGroupManagerUpdatePolicyType.Opportunistic,
    },
    Versions = new[]
    {
        new GoogleNative.Compute.V1.Inputs.InstanceGroupManagerVersionArgs
        {
            InstanceTemplate = "string",
            Name = "string",
            TargetSize = new GoogleNative.Compute.V1.Inputs.FixedOrPercentArgs
            {
                Fixed = 0,
                Percent = 0,
            },
        },
    },
});
Copy
example, err := computev1.NewRegionInstanceGroupManager(ctx, "exampleregionInstanceGroupManagerResourceResourceFromComputev1", &computev1.RegionInstanceGroupManagerArgs{
	Region: pulumi.String("string"),
	NamedPorts: compute.NamedPortArray{
		&compute.NamedPortArgs{
			Name: pulumi.String("string"),
			Port: pulumi.Int(0),
		},
	},
	BaseInstanceName: pulumi.String("string"),
	DistributionPolicy: &compute.DistributionPolicyArgs{
		TargetShape: computev1.DistributionPolicyTargetShapeAny,
		Zones: compute.DistributionPolicyZoneConfigurationArray{
			&compute.DistributionPolicyZoneConfigurationArgs{
				Zone: pulumi.String("string"),
			},
		},
	},
	InstanceLifecyclePolicy: &compute.InstanceGroupManagerInstanceLifecyclePolicyArgs{
		ForceUpdateOnRepair: computev1.InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepairNo,
	},
	InstanceTemplate:            pulumi.String("string"),
	ListManagedInstancesResults: computev1.RegionInstanceGroupManagerListManagedInstancesResultsPageless,
	Description:                 pulumi.String("string"),
	Name:                        pulumi.String("string"),
	Project:                     pulumi.String("string"),
	AutoHealingPolicies: compute.InstanceGroupManagerAutoHealingPolicyArray{
		&compute.InstanceGroupManagerAutoHealingPolicyArgs{
			HealthCheck:     pulumi.String("string"),
			InitialDelaySec: pulumi.Int(0),
		},
	},
	RequestId: pulumi.String("string"),
	StatefulPolicy: &compute.StatefulPolicyArgs{
		PreservedState: &compute.StatefulPolicyPreservedStateArgs{
			Disks: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			ExternalIPs: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
			InternalIPs: pulumi.StringMap{
				"string": pulumi.String("string"),
			},
		},
	},
	TargetPools: pulumi.StringArray{
		pulumi.String("string"),
	},
	TargetSize: pulumi.Int(0),
	UpdatePolicy: &compute.InstanceGroupManagerUpdatePolicyArgs{
		InstanceRedistributionType: computev1.InstanceGroupManagerUpdatePolicyInstanceRedistributionTypeNone,
		MaxSurge: &compute.FixedOrPercentArgs{
			Fixed:   pulumi.Int(0),
			Percent: pulumi.Int(0),
		},
		MaxUnavailable: &compute.FixedOrPercentArgs{
			Fixed:   pulumi.Int(0),
			Percent: pulumi.Int(0),
		},
		MinimalAction:               computev1.InstanceGroupManagerUpdatePolicyMinimalActionNone,
		MostDisruptiveAllowedAction: computev1.InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedActionNone,
		ReplacementMethod:           computev1.InstanceGroupManagerUpdatePolicyReplacementMethodRecreate,
		Type:                        computev1.InstanceGroupManagerUpdatePolicyTypeOpportunistic,
	},
	Versions: compute.InstanceGroupManagerVersionArray{
		&compute.InstanceGroupManagerVersionArgs{
			InstanceTemplate: pulumi.String("string"),
			Name:             pulumi.String("string"),
			TargetSize: &compute.FixedOrPercentArgs{
				Fixed:   pulumi.Int(0),
				Percent: pulumi.Int(0),
			},
		},
	},
})
Copy
var exampleregionInstanceGroupManagerResourceResourceFromComputev1 = new RegionInstanceGroupManager("exampleregionInstanceGroupManagerResourceResourceFromComputev1", RegionInstanceGroupManagerArgs.builder()
    .region("string")
    .namedPorts(NamedPortArgs.builder()
        .name("string")
        .port(0)
        .build())
    .baseInstanceName("string")
    .distributionPolicy(DistributionPolicyArgs.builder()
        .targetShape("ANY")
        .zones(DistributionPolicyZoneConfigurationArgs.builder()
            .zone("string")
            .build())
        .build())
    .instanceLifecyclePolicy(InstanceGroupManagerInstanceLifecyclePolicyArgs.builder()
        .forceUpdateOnRepair("NO")
        .build())
    .instanceTemplate("string")
    .listManagedInstancesResults("PAGELESS")
    .description("string")
    .name("string")
    .project("string")
    .autoHealingPolicies(InstanceGroupManagerAutoHealingPolicyArgs.builder()
        .healthCheck("string")
        .initialDelaySec(0)
        .build())
    .requestId("string")
    .statefulPolicy(StatefulPolicyArgs.builder()
        .preservedState(StatefulPolicyPreservedStateArgs.builder()
            .disks(Map.of("string", "string"))
            .externalIPs(Map.of("string", "string"))
            .internalIPs(Map.of("string", "string"))
            .build())
        .build())
    .targetPools("string")
    .targetSize(0)
    .updatePolicy(InstanceGroupManagerUpdatePolicyArgs.builder()
        .instanceRedistributionType("NONE")
        .maxSurge(FixedOrPercentArgs.builder()
            .fixed(0)
            .percent(0)
            .build())
        .maxUnavailable(FixedOrPercentArgs.builder()
            .fixed(0)
            .percent(0)
            .build())
        .minimalAction("NONE")
        .mostDisruptiveAllowedAction("NONE")
        .replacementMethod("RECREATE")
        .type("OPPORTUNISTIC")
        .build())
    .versions(InstanceGroupManagerVersionArgs.builder()
        .instanceTemplate("string")
        .name("string")
        .targetSize(FixedOrPercentArgs.builder()
            .fixed(0)
            .percent(0)
            .build())
        .build())
    .build());
Copy
exampleregion_instance_group_manager_resource_resource_from_computev1 = google_native.compute.v1.RegionInstanceGroupManager("exampleregionInstanceGroupManagerResourceResourceFromComputev1",
    region="string",
    named_ports=[{
        "name": "string",
        "port": 0,
    }],
    base_instance_name="string",
    distribution_policy={
        "target_shape": google_native.compute.v1.DistributionPolicyTargetShape.ANY,
        "zones": [{
            "zone": "string",
        }],
    },
    instance_lifecycle_policy={
        "force_update_on_repair": google_native.compute.v1.InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepair.NO,
    },
    instance_template="string",
    list_managed_instances_results=google_native.compute.v1.RegionInstanceGroupManagerListManagedInstancesResults.PAGELESS,
    description="string",
    name="string",
    project="string",
    auto_healing_policies=[{
        "health_check": "string",
        "initial_delay_sec": 0,
    }],
    request_id="string",
    stateful_policy={
        "preserved_state": {
            "disks": {
                "string": "string",
            },
            "external_ips": {
                "string": "string",
            },
            "internal_ips": {
                "string": "string",
            },
        },
    },
    target_pools=["string"],
    target_size=0,
    update_policy={
        "instance_redistribution_type": google_native.compute.v1.InstanceGroupManagerUpdatePolicyInstanceRedistributionType.NONE,
        "max_surge": {
            "fixed": 0,
            "percent": 0,
        },
        "max_unavailable": {
            "fixed": 0,
            "percent": 0,
        },
        "minimal_action": google_native.compute.v1.InstanceGroupManagerUpdatePolicyMinimalAction.NONE,
        "most_disruptive_allowed_action": google_native.compute.v1.InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedAction.NONE,
        "replacement_method": google_native.compute.v1.InstanceGroupManagerUpdatePolicyReplacementMethod.RECREATE,
        "type": google_native.compute.v1.InstanceGroupManagerUpdatePolicyType.OPPORTUNISTIC,
    },
    versions=[{
        "instance_template": "string",
        "name": "string",
        "target_size": {
            "fixed": 0,
            "percent": 0,
        },
    }])
Copy
const exampleregionInstanceGroupManagerResourceResourceFromComputev1 = new google_native.compute.v1.RegionInstanceGroupManager("exampleregionInstanceGroupManagerResourceResourceFromComputev1", {
    region: "string",
    namedPorts: [{
        name: "string",
        port: 0,
    }],
    baseInstanceName: "string",
    distributionPolicy: {
        targetShape: google_native.compute.v1.DistributionPolicyTargetShape.Any,
        zones: [{
            zone: "string",
        }],
    },
    instanceLifecyclePolicy: {
        forceUpdateOnRepair: google_native.compute.v1.InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepair.No,
    },
    instanceTemplate: "string",
    listManagedInstancesResults: google_native.compute.v1.RegionInstanceGroupManagerListManagedInstancesResults.Pageless,
    description: "string",
    name: "string",
    project: "string",
    autoHealingPolicies: [{
        healthCheck: "string",
        initialDelaySec: 0,
    }],
    requestId: "string",
    statefulPolicy: {
        preservedState: {
            disks: {
                string: "string",
            },
            externalIPs: {
                string: "string",
            },
            internalIPs: {
                string: "string",
            },
        },
    },
    targetPools: ["string"],
    targetSize: 0,
    updatePolicy: {
        instanceRedistributionType: google_native.compute.v1.InstanceGroupManagerUpdatePolicyInstanceRedistributionType.None,
        maxSurge: {
            fixed: 0,
            percent: 0,
        },
        maxUnavailable: {
            fixed: 0,
            percent: 0,
        },
        minimalAction: google_native.compute.v1.InstanceGroupManagerUpdatePolicyMinimalAction.None,
        mostDisruptiveAllowedAction: google_native.compute.v1.InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedAction.None,
        replacementMethod: google_native.compute.v1.InstanceGroupManagerUpdatePolicyReplacementMethod.Recreate,
        type: google_native.compute.v1.InstanceGroupManagerUpdatePolicyType.Opportunistic,
    },
    versions: [{
        instanceTemplate: "string",
        name: "string",
        targetSize: {
            fixed: 0,
            percent: 0,
        },
    }],
});
Copy
type: google-native:compute/v1:RegionInstanceGroupManager
properties:
    autoHealingPolicies:
        - healthCheck: string
          initialDelaySec: 0
    baseInstanceName: string
    description: string
    distributionPolicy:
        targetShape: ANY
        zones:
            - zone: string
    instanceLifecyclePolicy:
        forceUpdateOnRepair: "NO"
    instanceTemplate: string
    listManagedInstancesResults: PAGELESS
    name: string
    namedPorts:
        - name: string
          port: 0
    project: string
    region: string
    requestId: string
    statefulPolicy:
        preservedState:
            disks:
                string: string
            externalIPs:
                string: string
            internalIPs:
                string: string
    targetPools:
        - string
    targetSize: 0
    updatePolicy:
        instanceRedistributionType: NONE
        maxSurge:
            fixed: 0
            percent: 0
        maxUnavailable:
            fixed: 0
            percent: 0
        minimalAction: NONE
        mostDisruptiveAllowedAction: NONE
        replacementMethod: RECREATE
        type: OPPORTUNISTIC
    versions:
        - instanceTemplate: string
          name: string
          targetSize:
            fixed: 0
            percent: 0
Copy

RegionInstanceGroupManager Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The RegionInstanceGroupManager resource accepts the following input properties:

Region
This property is required.
Changes to this property will trigger replacement.
string
AutoHealingPolicies List<Pulumi.GoogleNative.Compute.V1.Inputs.InstanceGroupManagerAutoHealingPolicy>
The autohealing policy for this managed instance group. You can specify only one value.
BaseInstanceName string
The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.
Description string
An optional description of this resource.
DistributionPolicy Pulumi.GoogleNative.Compute.V1.Inputs.DistributionPolicy
Policy specifying the intended distribution of managed instances across zones in a regional managed instance group.
InstanceLifecyclePolicy Pulumi.GoogleNative.Compute.V1.Inputs.InstanceGroupManagerInstanceLifecyclePolicy
The repair policy for this managed instance group.
InstanceTemplate string
The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE.
ListManagedInstancesResults Pulumi.GoogleNative.Compute.V1.RegionInstanceGroupManagerListManagedInstancesResults
Pagination behavior of the listManagedInstances API method for this managed instance group.
Name string
The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.
NamedPorts List<Pulumi.GoogleNative.Compute.V1.Inputs.NamedPort>
Named ports configured for the Instance Groups complementary to this Instance Group Manager.
Project Changes to this property will trigger replacement. string
RequestId string
An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
StatefulPolicy Pulumi.GoogleNative.Compute.V1.Inputs.StatefulPolicy
Stateful configuration for this Instanced Group Manager
TargetPools List<string>
The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.
TargetSize int
The target number of running instances for this managed instance group. You can reduce this number by using the instanceGroupManager deleteInstances or abandonInstances methods. Resizing the group also changes this number.
UpdatePolicy Pulumi.GoogleNative.Compute.V1.Inputs.InstanceGroupManagerUpdatePolicy
The update policy for this managed instance group.
Versions List<Pulumi.GoogleNative.Compute.V1.Inputs.InstanceGroupManagerVersion>
Specifies the instance templates used by this managed instance group to create instances. Each version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.
Region
This property is required.
Changes to this property will trigger replacement.
string
AutoHealingPolicies []InstanceGroupManagerAutoHealingPolicyArgs
The autohealing policy for this managed instance group. You can specify only one value.
BaseInstanceName string
The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.
Description string
An optional description of this resource.
DistributionPolicy DistributionPolicyArgs
Policy specifying the intended distribution of managed instances across zones in a regional managed instance group.
InstanceLifecyclePolicy InstanceGroupManagerInstanceLifecyclePolicyArgs
The repair policy for this managed instance group.
InstanceTemplate string
The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE.
ListManagedInstancesResults RegionInstanceGroupManagerListManagedInstancesResults
Pagination behavior of the listManagedInstances API method for this managed instance group.
Name string
The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.
NamedPorts []NamedPortArgs
Named ports configured for the Instance Groups complementary to this Instance Group Manager.
Project Changes to this property will trigger replacement. string
RequestId string
An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
StatefulPolicy StatefulPolicyArgs
Stateful configuration for this Instanced Group Manager
TargetPools []string
The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.
TargetSize int
The target number of running instances for this managed instance group. You can reduce this number by using the instanceGroupManager deleteInstances or abandonInstances methods. Resizing the group also changes this number.
UpdatePolicy InstanceGroupManagerUpdatePolicyArgs
The update policy for this managed instance group.
Versions []InstanceGroupManagerVersionArgs
Specifies the instance templates used by this managed instance group to create instances. Each version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.
region
This property is required.
Changes to this property will trigger replacement.
String
autoHealingPolicies List<InstanceGroupManagerAutoHealingPolicy>
The autohealing policy for this managed instance group. You can specify only one value.
baseInstanceName String
The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.
description String
An optional description of this resource.
distributionPolicy DistributionPolicy
Policy specifying the intended distribution of managed instances across zones in a regional managed instance group.
instanceLifecyclePolicy InstanceGroupManagerInstanceLifecyclePolicy
The repair policy for this managed instance group.
instanceTemplate String
The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE.
listManagedInstancesResults RegionInstanceGroupManagerListManagedInstancesResults
Pagination behavior of the listManagedInstances API method for this managed instance group.
name String
The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.
namedPorts List<NamedPort>
Named ports configured for the Instance Groups complementary to this Instance Group Manager.
project Changes to this property will trigger replacement. String
requestId String
An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
statefulPolicy StatefulPolicy
Stateful configuration for this Instanced Group Manager
targetPools List<String>
The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.
targetSize Integer
The target number of running instances for this managed instance group. You can reduce this number by using the instanceGroupManager deleteInstances or abandonInstances methods. Resizing the group also changes this number.
updatePolicy InstanceGroupManagerUpdatePolicy
The update policy for this managed instance group.
versions List<InstanceGroupManagerVersion>
Specifies the instance templates used by this managed instance group to create instances. Each version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.
region
This property is required.
Changes to this property will trigger replacement.
string
autoHealingPolicies InstanceGroupManagerAutoHealingPolicy[]
The autohealing policy for this managed instance group. You can specify only one value.
baseInstanceName string
The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.
description string
An optional description of this resource.
distributionPolicy DistributionPolicy
Policy specifying the intended distribution of managed instances across zones in a regional managed instance group.
instanceLifecyclePolicy InstanceGroupManagerInstanceLifecyclePolicy
The repair policy for this managed instance group.
instanceTemplate string
The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE.
listManagedInstancesResults RegionInstanceGroupManagerListManagedInstancesResults
Pagination behavior of the listManagedInstances API method for this managed instance group.
name string
The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.
namedPorts NamedPort[]
Named ports configured for the Instance Groups complementary to this Instance Group Manager.
project Changes to this property will trigger replacement. string
requestId string
An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
statefulPolicy StatefulPolicy
Stateful configuration for this Instanced Group Manager
targetPools string[]
The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.
targetSize number
The target number of running instances for this managed instance group. You can reduce this number by using the instanceGroupManager deleteInstances or abandonInstances methods. Resizing the group also changes this number.
updatePolicy InstanceGroupManagerUpdatePolicy
The update policy for this managed instance group.
versions InstanceGroupManagerVersion[]
Specifies the instance templates used by this managed instance group to create instances. Each version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.
region
This property is required.
Changes to this property will trigger replacement.
str
auto_healing_policies Sequence[InstanceGroupManagerAutoHealingPolicyArgs]
The autohealing policy for this managed instance group. You can specify only one value.
base_instance_name str
The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.
description str
An optional description of this resource.
distribution_policy DistributionPolicyArgs
Policy specifying the intended distribution of managed instances across zones in a regional managed instance group.
instance_lifecycle_policy InstanceGroupManagerInstanceLifecyclePolicyArgs
The repair policy for this managed instance group.
instance_template str
The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE.
list_managed_instances_results RegionInstanceGroupManagerListManagedInstancesResults
Pagination behavior of the listManagedInstances API method for this managed instance group.
name str
The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.
named_ports Sequence[NamedPortArgs]
Named ports configured for the Instance Groups complementary to this Instance Group Manager.
project Changes to this property will trigger replacement. str
request_id str
An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
stateful_policy StatefulPolicyArgs
Stateful configuration for this Instanced Group Manager
target_pools Sequence[str]
The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.
target_size int
The target number of running instances for this managed instance group. You can reduce this number by using the instanceGroupManager deleteInstances or abandonInstances methods. Resizing the group also changes this number.
update_policy InstanceGroupManagerUpdatePolicyArgs
The update policy for this managed instance group.
versions Sequence[InstanceGroupManagerVersionArgs]
Specifies the instance templates used by this managed instance group to create instances. Each version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.
region
This property is required.
Changes to this property will trigger replacement.
String
autoHealingPolicies List<Property Map>
The autohealing policy for this managed instance group. You can specify only one value.
baseInstanceName String
The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.
description String
An optional description of this resource.
distributionPolicy Property Map
Policy specifying the intended distribution of managed instances across zones in a regional managed instance group.
instanceLifecyclePolicy Property Map
The repair policy for this managed instance group.
instanceTemplate String
The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE.
listManagedInstancesResults "PAGELESS" | "PAGINATED"
Pagination behavior of the listManagedInstances API method for this managed instance group.
name String
The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.
namedPorts List<Property Map>
Named ports configured for the Instance Groups complementary to this Instance Group Manager.
project Changes to this property will trigger replacement. String
requestId String
An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported ( 00000000-0000-0000-0000-000000000000).
statefulPolicy Property Map
Stateful configuration for this Instanced Group Manager
targetPools List<String>
The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.
targetSize Number
The target number of running instances for this managed instance group. You can reduce this number by using the instanceGroupManager deleteInstances or abandonInstances methods. Resizing the group also changes this number.
updatePolicy Property Map
The update policy for this managed instance group.
versions List<Property Map>
Specifies the instance templates used by this managed instance group to create instances. Each version is defined by an instanceTemplate and a name. Every version can appear at most once per instance group. This field overrides the top-level instanceTemplate field. Read more about the relationships between these fields. Exactly one version must leave the targetSize field unset. That version will be applied to all remaining instances. For more information, read about canary updates.

Outputs

All input properties are implicitly available as output properties. Additionally, the RegionInstanceGroupManager resource produces the following output properties:

CreationTimestamp string
The creation timestamp for this managed instance group in RFC3339 text format.
CurrentActions Pulumi.GoogleNative.Compute.V1.Outputs.InstanceGroupManagerActionsSummaryResponse
The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions.
Fingerprint string
Fingerprint of this resource. This field may be used in optimistic locking. It will be ignored when inserting an InstanceGroupManager. An up-to-date fingerprint must be provided in order to update the InstanceGroupManager, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an InstanceGroupManager.
Id string
The provider-assigned unique ID for this managed resource.
InstanceGroup string
The URL of the Instance Group resource.
Kind string
The resource type, which is always compute#instanceGroupManager for managed instance groups.
SelfLink string
The URL for this managed instance group. The server defines this URL.
Status Pulumi.GoogleNative.Compute.V1.Outputs.InstanceGroupManagerStatusResponse
The status of this managed instance group.
Zone string
The URL of a zone where the managed instance group is located (for zonal resources).
CreationTimestamp string
The creation timestamp for this managed instance group in RFC3339 text format.
CurrentActions InstanceGroupManagerActionsSummaryResponse
The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions.
Fingerprint string
Fingerprint of this resource. This field may be used in optimistic locking. It will be ignored when inserting an InstanceGroupManager. An up-to-date fingerprint must be provided in order to update the InstanceGroupManager, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an InstanceGroupManager.
Id string
The provider-assigned unique ID for this managed resource.
InstanceGroup string
The URL of the Instance Group resource.
Kind string
The resource type, which is always compute#instanceGroupManager for managed instance groups.
SelfLink string
The URL for this managed instance group. The server defines this URL.
Status InstanceGroupManagerStatusResponse
The status of this managed instance group.
Zone string
The URL of a zone where the managed instance group is located (for zonal resources).
creationTimestamp String
The creation timestamp for this managed instance group in RFC3339 text format.
currentActions InstanceGroupManagerActionsSummaryResponse
The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions.
fingerprint String
Fingerprint of this resource. This field may be used in optimistic locking. It will be ignored when inserting an InstanceGroupManager. An up-to-date fingerprint must be provided in order to update the InstanceGroupManager, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an InstanceGroupManager.
id String
The provider-assigned unique ID for this managed resource.
instanceGroup String
The URL of the Instance Group resource.
kind String
The resource type, which is always compute#instanceGroupManager for managed instance groups.
selfLink String
The URL for this managed instance group. The server defines this URL.
status InstanceGroupManagerStatusResponse
The status of this managed instance group.
zone String
The URL of a zone where the managed instance group is located (for zonal resources).
creationTimestamp string
The creation timestamp for this managed instance group in RFC3339 text format.
currentActions InstanceGroupManagerActionsSummaryResponse
The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions.
fingerprint string
Fingerprint of this resource. This field may be used in optimistic locking. It will be ignored when inserting an InstanceGroupManager. An up-to-date fingerprint must be provided in order to update the InstanceGroupManager, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an InstanceGroupManager.
id string
The provider-assigned unique ID for this managed resource.
instanceGroup string
The URL of the Instance Group resource.
kind string
The resource type, which is always compute#instanceGroupManager for managed instance groups.
selfLink string
The URL for this managed instance group. The server defines this URL.
status InstanceGroupManagerStatusResponse
The status of this managed instance group.
zone string
The URL of a zone where the managed instance group is located (for zonal resources).
creation_timestamp str
The creation timestamp for this managed instance group in RFC3339 text format.
current_actions InstanceGroupManagerActionsSummaryResponse
The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions.
fingerprint str
Fingerprint of this resource. This field may be used in optimistic locking. It will be ignored when inserting an InstanceGroupManager. An up-to-date fingerprint must be provided in order to update the InstanceGroupManager, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an InstanceGroupManager.
id str
The provider-assigned unique ID for this managed resource.
instance_group str
The URL of the Instance Group resource.
kind str
The resource type, which is always compute#instanceGroupManager for managed instance groups.
self_link str
The URL for this managed instance group. The server defines this URL.
status InstanceGroupManagerStatusResponse
The status of this managed instance group.
zone str
The URL of a zone where the managed instance group is located (for zonal resources).
creationTimestamp String
The creation timestamp for this managed instance group in RFC3339 text format.
currentActions Property Map
The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions.
fingerprint String
Fingerprint of this resource. This field may be used in optimistic locking. It will be ignored when inserting an InstanceGroupManager. An up-to-date fingerprint must be provided in order to update the InstanceGroupManager, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an InstanceGroupManager.
id String
The provider-assigned unique ID for this managed resource.
instanceGroup String
The URL of the Instance Group resource.
kind String
The resource type, which is always compute#instanceGroupManager for managed instance groups.
selfLink String
The URL for this managed instance group. The server defines this URL.
status Property Map
The status of this managed instance group.
zone String
The URL of a zone where the managed instance group is located (for zonal resources).

Supporting Types

DistributionPolicy
, DistributionPolicyArgs

TargetShape Pulumi.GoogleNative.Compute.V1.DistributionPolicyTargetShape
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
Zones List<Pulumi.GoogleNative.Compute.V1.Inputs.DistributionPolicyZoneConfiguration>
Zones where the regional managed instance group will create and manage its instances.
TargetShape DistributionPolicyTargetShape
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
Zones []DistributionPolicyZoneConfiguration
Zones where the regional managed instance group will create and manage its instances.
targetShape DistributionPolicyTargetShape
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
zones List<DistributionPolicyZoneConfiguration>
Zones where the regional managed instance group will create and manage its instances.
targetShape DistributionPolicyTargetShape
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
zones DistributionPolicyZoneConfiguration[]
Zones where the regional managed instance group will create and manage its instances.
target_shape DistributionPolicyTargetShape
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
zones Sequence[DistributionPolicyZoneConfiguration]
Zones where the regional managed instance group will create and manage its instances.
targetShape "ANY" | "ANY_SINGLE_ZONE" | "BALANCED" | "EVEN"
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
zones List<Property Map>
Zones where the regional managed instance group will create and manage its instances.

DistributionPolicyResponse
, DistributionPolicyResponseArgs

TargetShape This property is required. string
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
Zones This property is required. List<Pulumi.GoogleNative.Compute.V1.Inputs.DistributionPolicyZoneConfigurationResponse>
Zones where the regional managed instance group will create and manage its instances.
TargetShape This property is required. string
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
Zones This property is required. []DistributionPolicyZoneConfigurationResponse
Zones where the regional managed instance group will create and manage its instances.
targetShape This property is required. String
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
zones This property is required. List<DistributionPolicyZoneConfigurationResponse>
Zones where the regional managed instance group will create and manage its instances.
targetShape This property is required. string
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
zones This property is required. DistributionPolicyZoneConfigurationResponse[]
Zones where the regional managed instance group will create and manage its instances.
target_shape This property is required. str
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
zones This property is required. Sequence[DistributionPolicyZoneConfigurationResponse]
Zones where the regional managed instance group will create and manage its instances.
targetShape This property is required. String
The distribution shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
zones This property is required. List<Property Map>
Zones where the regional managed instance group will create and manage its instances.

DistributionPolicyTargetShape
, DistributionPolicyTargetShapeArgs

Any
ANYThe group picks zones for creating VM instances to fulfill the requested number of VMs within present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads that do not require high availability.
AnySingleZone
ANY_SINGLE_ZONEThe group creates all VM instances within a single zone. The zone is selected based on the present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads with heavy interprocess communication.
Balanced
BALANCEDThe group prioritizes acquisition of resources, scheduling VMs in zones where resources are available while distributing VMs as evenly as possible across selected zones to minimize the impact of zonal failure. Recommended for highly available serving workloads.
Even
EVENThe group schedules VM instance creation and deletion to achieve and maintain an even number of managed instances across the selected zones. The distribution is even when the number of managed instances does not differ by more than 1 between any two zones. Recommended for highly available serving workloads.
DistributionPolicyTargetShapeAny
ANYThe group picks zones for creating VM instances to fulfill the requested number of VMs within present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads that do not require high availability.
DistributionPolicyTargetShapeAnySingleZone
ANY_SINGLE_ZONEThe group creates all VM instances within a single zone. The zone is selected based on the present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads with heavy interprocess communication.
DistributionPolicyTargetShapeBalanced
BALANCEDThe group prioritizes acquisition of resources, scheduling VMs in zones where resources are available while distributing VMs as evenly as possible across selected zones to minimize the impact of zonal failure. Recommended for highly available serving workloads.
DistributionPolicyTargetShapeEven
EVENThe group schedules VM instance creation and deletion to achieve and maintain an even number of managed instances across the selected zones. The distribution is even when the number of managed instances does not differ by more than 1 between any two zones. Recommended for highly available serving workloads.
Any
ANYThe group picks zones for creating VM instances to fulfill the requested number of VMs within present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads that do not require high availability.
AnySingleZone
ANY_SINGLE_ZONEThe group creates all VM instances within a single zone. The zone is selected based on the present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads with heavy interprocess communication.
Balanced
BALANCEDThe group prioritizes acquisition of resources, scheduling VMs in zones where resources are available while distributing VMs as evenly as possible across selected zones to minimize the impact of zonal failure. Recommended for highly available serving workloads.
Even
EVENThe group schedules VM instance creation and deletion to achieve and maintain an even number of managed instances across the selected zones. The distribution is even when the number of managed instances does not differ by more than 1 between any two zones. Recommended for highly available serving workloads.
Any
ANYThe group picks zones for creating VM instances to fulfill the requested number of VMs within present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads that do not require high availability.
AnySingleZone
ANY_SINGLE_ZONEThe group creates all VM instances within a single zone. The zone is selected based on the present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads with heavy interprocess communication.
Balanced
BALANCEDThe group prioritizes acquisition of resources, scheduling VMs in zones where resources are available while distributing VMs as evenly as possible across selected zones to minimize the impact of zonal failure. Recommended for highly available serving workloads.
Even
EVENThe group schedules VM instance creation and deletion to achieve and maintain an even number of managed instances across the selected zones. The distribution is even when the number of managed instances does not differ by more than 1 between any two zones. Recommended for highly available serving workloads.
ANY
ANYThe group picks zones for creating VM instances to fulfill the requested number of VMs within present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads that do not require high availability.
ANY_SINGLE_ZONE
ANY_SINGLE_ZONEThe group creates all VM instances within a single zone. The zone is selected based on the present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads with heavy interprocess communication.
BALANCED
BALANCEDThe group prioritizes acquisition of resources, scheduling VMs in zones where resources are available while distributing VMs as evenly as possible across selected zones to minimize the impact of zonal failure. Recommended for highly available serving workloads.
EVEN
EVENThe group schedules VM instance creation and deletion to achieve and maintain an even number of managed instances across the selected zones. The distribution is even when the number of managed instances does not differ by more than 1 between any two zones. Recommended for highly available serving workloads.
"ANY"
ANYThe group picks zones for creating VM instances to fulfill the requested number of VMs within present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads that do not require high availability.
"ANY_SINGLE_ZONE"
ANY_SINGLE_ZONEThe group creates all VM instances within a single zone. The zone is selected based on the present resource constraints and to maximize utilization of unused zonal reservations. Recommended for batch workloads with heavy interprocess communication.
"BALANCED"
BALANCEDThe group prioritizes acquisition of resources, scheduling VMs in zones where resources are available while distributing VMs as evenly as possible across selected zones to minimize the impact of zonal failure. Recommended for highly available serving workloads.
"EVEN"
EVENThe group schedules VM instance creation and deletion to achieve and maintain an even number of managed instances across the selected zones. The distribution is even when the number of managed instances does not differ by more than 1 between any two zones. Recommended for highly available serving workloads.

DistributionPolicyZoneConfiguration
, DistributionPolicyZoneConfigurationArgs

Zone string
The URL of the zone. The zone must exist in the region where the managed instance group is located.
Zone string
The URL of the zone. The zone must exist in the region where the managed instance group is located.
zone String
The URL of the zone. The zone must exist in the region where the managed instance group is located.
zone string
The URL of the zone. The zone must exist in the region where the managed instance group is located.
zone str
The URL of the zone. The zone must exist in the region where the managed instance group is located.
zone String
The URL of the zone. The zone must exist in the region where the managed instance group is located.

DistributionPolicyZoneConfigurationResponse
, DistributionPolicyZoneConfigurationResponseArgs

Zone This property is required. string
The URL of the zone. The zone must exist in the region where the managed instance group is located.
Zone This property is required. string
The URL of the zone. The zone must exist in the region where the managed instance group is located.
zone This property is required. String
The URL of the zone. The zone must exist in the region where the managed instance group is located.
zone This property is required. string
The URL of the zone. The zone must exist in the region where the managed instance group is located.
zone This property is required. str
The URL of the zone. The zone must exist in the region where the managed instance group is located.
zone This property is required. String
The URL of the zone. The zone must exist in the region where the managed instance group is located.

FixedOrPercent
, FixedOrPercentArgs

Fixed int
Specifies a fixed number of VM instances. This must be a positive integer.
Percent int
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
Fixed int
Specifies a fixed number of VM instances. This must be a positive integer.
Percent int
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
fixed Integer
Specifies a fixed number of VM instances. This must be a positive integer.
percent Integer
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
fixed number
Specifies a fixed number of VM instances. This must be a positive integer.
percent number
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
fixed int
Specifies a fixed number of VM instances. This must be a positive integer.
percent int
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
fixed Number
Specifies a fixed number of VM instances. This must be a positive integer.
percent Number
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.

FixedOrPercentResponse
, FixedOrPercentResponseArgs

Calculated This property is required. int
Absolute value of VM instances calculated based on the specific mode. - If the value is fixed, then the calculated value is equal to the fixed value. - If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded.
Fixed This property is required. int
Specifies a fixed number of VM instances. This must be a positive integer.
Percent This property is required. int
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
Calculated This property is required. int
Absolute value of VM instances calculated based on the specific mode. - If the value is fixed, then the calculated value is equal to the fixed value. - If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded.
Fixed This property is required. int
Specifies a fixed number of VM instances. This must be a positive integer.
Percent This property is required. int
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
calculated This property is required. Integer
Absolute value of VM instances calculated based on the specific mode. - If the value is fixed, then the calculated value is equal to the fixed value. - If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded.
fixed This property is required. Integer
Specifies a fixed number of VM instances. This must be a positive integer.
percent This property is required. Integer
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
calculated This property is required. number
Absolute value of VM instances calculated based on the specific mode. - If the value is fixed, then the calculated value is equal to the fixed value. - If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded.
fixed This property is required. number
Specifies a fixed number of VM instances. This must be a positive integer.
percent This property is required. number
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
calculated This property is required. int
Absolute value of VM instances calculated based on the specific mode. - If the value is fixed, then the calculated value is equal to the fixed value. - If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded.
fixed This property is required. int
Specifies a fixed number of VM instances. This must be a positive integer.
percent This property is required. int
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.
calculated This property is required. Number
Absolute value of VM instances calculated based on the specific mode. - If the value is fixed, then the calculated value is equal to the fixed value. - If the value is a percent, then the calculated value is percent/100 * targetSize. For example, the calculated value of a 80% of a managed instance group with 150 instances would be (80/100 * 150) = 120 VM instances. If there is a remainder, the number is rounded.
fixed This property is required. Number
Specifies a fixed number of VM instances. This must be a positive integer.
percent This property is required. Number
Specifies a percentage of instances between 0 to 100%, inclusive. For example, specify 80 for 80%.

InstanceGroupManagerActionsSummaryResponse
, InstanceGroupManagerActionsSummaryResponseArgs

Abandoning This property is required. int
The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.
Creating This property is required. int
The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully. If you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.
CreatingWithoutRetries This property is required. int
The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.
Deleting This property is required. int
The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.
None This property is required. int
The number of instances in the managed instance group that are running and have no scheduled actions.
Recreating This property is required. int
The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.
Refreshing This property is required. int
The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.
Restarting This property is required. int
The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.
Resuming This property is required. int
The number of instances in the managed instance group that are scheduled to be resumed or are currently being resumed.
Starting This property is required. int
The number of instances in the managed instance group that are scheduled to be started or are currently being started.
Stopping This property is required. int
The number of instances in the managed instance group that are scheduled to be stopped or are currently being stopped.
Suspending This property is required. int
The number of instances in the managed instance group that are scheduled to be suspended or are currently being suspended.
Verifying This property is required. int
The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation.
Abandoning This property is required. int
The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.
Creating This property is required. int
The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully. If you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.
CreatingWithoutRetries This property is required. int
The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.
Deleting This property is required. int
The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.
None This property is required. int
The number of instances in the managed instance group that are running and have no scheduled actions.
Recreating This property is required. int
The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.
Refreshing This property is required. int
The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.
Restarting This property is required. int
The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.
Resuming This property is required. int
The number of instances in the managed instance group that are scheduled to be resumed or are currently being resumed.
Starting This property is required. int
The number of instances in the managed instance group that are scheduled to be started or are currently being started.
Stopping This property is required. int
The number of instances in the managed instance group that are scheduled to be stopped or are currently being stopped.
Suspending This property is required. int
The number of instances in the managed instance group that are scheduled to be suspended or are currently being suspended.
Verifying This property is required. int
The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation.
abandoning This property is required. Integer
The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.
creating This property is required. Integer
The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully. If you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.
creatingWithoutRetries This property is required. Integer
The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.
deleting This property is required. Integer
The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.
none This property is required. Integer
The number of instances in the managed instance group that are running and have no scheduled actions.
recreating This property is required. Integer
The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.
refreshing This property is required. Integer
The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.
restarting This property is required. Integer
The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.
resuming This property is required. Integer
The number of instances in the managed instance group that are scheduled to be resumed or are currently being resumed.
starting This property is required. Integer
The number of instances in the managed instance group that are scheduled to be started or are currently being started.
stopping This property is required. Integer
The number of instances in the managed instance group that are scheduled to be stopped or are currently being stopped.
suspending This property is required. Integer
The number of instances in the managed instance group that are scheduled to be suspended or are currently being suspended.
verifying This property is required. Integer
The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation.
abandoning This property is required. number
The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.
creating This property is required. number
The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully. If you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.
creatingWithoutRetries This property is required. number
The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.
deleting This property is required. number
The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.
none This property is required. number
The number of instances in the managed instance group that are running and have no scheduled actions.
recreating This property is required. number
The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.
refreshing This property is required. number
The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.
restarting This property is required. number
The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.
resuming This property is required. number
The number of instances in the managed instance group that are scheduled to be resumed or are currently being resumed.
starting This property is required. number
The number of instances in the managed instance group that are scheduled to be started or are currently being started.
stopping This property is required. number
The number of instances in the managed instance group that are scheduled to be stopped or are currently being stopped.
suspending This property is required. number
The number of instances in the managed instance group that are scheduled to be suspended or are currently being suspended.
verifying This property is required. number
The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation.
abandoning This property is required. int
The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.
creating This property is required. int
The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully. If you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.
creating_without_retries This property is required. int
The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.
deleting This property is required. int
The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.
none This property is required. int
The number of instances in the managed instance group that are running and have no scheduled actions.
recreating This property is required. int
The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.
refreshing This property is required. int
The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.
restarting This property is required. int
The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.
resuming This property is required. int
The number of instances in the managed instance group that are scheduled to be resumed or are currently being resumed.
starting This property is required. int
The number of instances in the managed instance group that are scheduled to be started or are currently being started.
stopping This property is required. int
The number of instances in the managed instance group that are scheduled to be stopped or are currently being stopped.
suspending This property is required. int
The number of instances in the managed instance group that are scheduled to be suspended or are currently being suspended.
verifying This property is required. int
The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation.
abandoning This property is required. Number
The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.
creating This property is required. Number
The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully. If you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.
creatingWithoutRetries This property is required. Number
The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's targetSize value accordingly.
deleting This property is required. Number
The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.
none This property is required. Number
The number of instances in the managed instance group that are running and have no scheduled actions.
recreating This property is required. Number
The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.
refreshing This property is required. Number
The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.
restarting This property is required. Number
The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.
resuming This property is required. Number
The number of instances in the managed instance group that are scheduled to be resumed or are currently being resumed.
starting This property is required. Number
The number of instances in the managed instance group that are scheduled to be started or are currently being started.
stopping This property is required. Number
The number of instances in the managed instance group that are scheduled to be stopped or are currently being stopped.
suspending This property is required. Number
The number of instances in the managed instance group that are scheduled to be suspended or are currently being suspended.
verifying This property is required. Number
The number of instances in the managed instance group that are being verified. See the managedInstances[].currentAction property in the listManagedInstances method documentation.

InstanceGroupManagerAutoHealingPolicy
, InstanceGroupManagerAutoHealingPolicyArgs

HealthCheck string
The URL for the health check that signals autohealing.
InitialDelaySec int
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
HealthCheck string
The URL for the health check that signals autohealing.
InitialDelaySec int
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
healthCheck String
The URL for the health check that signals autohealing.
initialDelaySec Integer
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
healthCheck string
The URL for the health check that signals autohealing.
initialDelaySec number
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
health_check str
The URL for the health check that signals autohealing.
initial_delay_sec int
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
healthCheck String
The URL for the health check that signals autohealing.
initialDelaySec Number
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.

InstanceGroupManagerAutoHealingPolicyResponse
, InstanceGroupManagerAutoHealingPolicyResponseArgs

HealthCheck This property is required. string
The URL for the health check that signals autohealing.
InitialDelaySec This property is required. int
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
HealthCheck This property is required. string
The URL for the health check that signals autohealing.
InitialDelaySec This property is required. int
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
healthCheck This property is required. String
The URL for the health check that signals autohealing.
initialDelaySec This property is required. Integer
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
healthCheck This property is required. string
The URL for the health check that signals autohealing.
initialDelaySec This property is required. number
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
health_check This property is required. str
The URL for the health check that signals autohealing.
initial_delay_sec This property is required. int
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.
healthCheck This property is required. String
The URL for the health check that signals autohealing.
initialDelaySec This property is required. Number
The initial delay is the number of seconds that a new VM takes to initialize and run its startup script. During a VM's initial delay period, the MIG ignores unsuccessful health checks because the VM might be in the startup process. This prevents the MIG from prematurely recreating a VM. If the health check receives a healthy response during the initial delay, it indicates that the startup process is complete and the VM is ready. The value of initial delay must be between 0 and 3600 seconds. The default value is 0.

InstanceGroupManagerInstanceLifecyclePolicy
, InstanceGroupManagerInstanceLifecyclePolicyArgs

ForceUpdateOnRepair Pulumi.GoogleNative.Compute.V1.InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepair
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.
ForceUpdateOnRepair InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepair
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.
forceUpdateOnRepair InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepair
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.
forceUpdateOnRepair InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepair
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.
force_update_on_repair InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepair
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.
forceUpdateOnRepair "NO" | "YES"
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.

InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepair
, InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepairArgs

No
NO
Yes
YES
InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepairNo
NO
InstanceGroupManagerInstanceLifecyclePolicyForceUpdateOnRepairYes
YES
No
NO
Yes
YES
No
NO
Yes
YES
NO
NO
YES
YES
"NO"
NO
"YES"
YES

InstanceGroupManagerInstanceLifecyclePolicyResponse
, InstanceGroupManagerInstanceLifecyclePolicyResponseArgs

ForceUpdateOnRepair This property is required. string
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.
ForceUpdateOnRepair This property is required. string
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.
forceUpdateOnRepair This property is required. String
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.
forceUpdateOnRepair This property is required. string
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.
force_update_on_repair This property is required. str
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.
forceUpdateOnRepair This property is required. String
A bit indicating whether to forcefully apply the group's latest configuration when repairing a VM. Valid options are: - NO (default): If configuration updates are available, they are not forcefully applied during repair. Instead, configuration updates are applied according to the group's update policy. - YES: If configuration updates are available, they are applied during repair.

InstanceGroupManagerStatusResponse
, InstanceGroupManagerStatusResponseArgs

Autoscaler This property is required. string
The URL of the Autoscaler that targets this instance group manager.
IsStable This property is required. bool
A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified.
Stateful This property is required. Pulumi.GoogleNative.Compute.V1.Inputs.InstanceGroupManagerStatusStatefulResponse
Stateful status of the given Instance Group Manager.
VersionTarget This property is required. Pulumi.GoogleNative.Compute.V1.Inputs.InstanceGroupManagerStatusVersionTargetResponse
A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager.
Autoscaler This property is required. string
The URL of the Autoscaler that targets this instance group manager.
IsStable This property is required. bool
A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified.
Stateful This property is required. InstanceGroupManagerStatusStatefulResponse
Stateful status of the given Instance Group Manager.
VersionTarget This property is required. InstanceGroupManagerStatusVersionTargetResponse
A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager.
autoscaler This property is required. String
The URL of the Autoscaler that targets this instance group manager.
isStable This property is required. Boolean
A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified.
stateful This property is required. InstanceGroupManagerStatusStatefulResponse
Stateful status of the given Instance Group Manager.
versionTarget This property is required. InstanceGroupManagerStatusVersionTargetResponse
A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager.
autoscaler This property is required. string
The URL of the Autoscaler that targets this instance group manager.
isStable This property is required. boolean
A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified.
stateful This property is required. InstanceGroupManagerStatusStatefulResponse
Stateful status of the given Instance Group Manager.
versionTarget This property is required. InstanceGroupManagerStatusVersionTargetResponse
A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager.
autoscaler This property is required. str
The URL of the Autoscaler that targets this instance group manager.
is_stable This property is required. bool
A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified.
stateful This property is required. InstanceGroupManagerStatusStatefulResponse
Stateful status of the given Instance Group Manager.
version_target This property is required. InstanceGroupManagerStatusVersionTargetResponse
A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager.
autoscaler This property is required. String
The URL of the Autoscaler that targets this instance group manager.
isStable This property is required. Boolean
A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified.
stateful This property is required. Property Map
Stateful status of the given Instance Group Manager.
versionTarget This property is required. Property Map
A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager.

InstanceGroupManagerStatusStatefulPerInstanceConfigsResponse
, InstanceGroupManagerStatusStatefulPerInstanceConfigsResponseArgs

AllEffective This property is required. bool
A bit indicating if all of the group's per-instance configurations (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.
AllEffective This property is required. bool
A bit indicating if all of the group's per-instance configurations (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.
allEffective This property is required. Boolean
A bit indicating if all of the group's per-instance configurations (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.
allEffective This property is required. boolean
A bit indicating if all of the group's per-instance configurations (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.
all_effective This property is required. bool
A bit indicating if all of the group's per-instance configurations (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.
allEffective This property is required. Boolean
A bit indicating if all of the group's per-instance configurations (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.

InstanceGroupManagerStatusStatefulResponse
, InstanceGroupManagerStatusStatefulResponseArgs

HasStatefulConfig This property is required. bool
A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful configuration even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
PerInstanceConfigs This property is required. Pulumi.GoogleNative.Compute.V1.Inputs.InstanceGroupManagerStatusStatefulPerInstanceConfigsResponse
Status of per-instance configurations on the instance.
HasStatefulConfig This property is required. bool
A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful configuration even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
PerInstanceConfigs This property is required. InstanceGroupManagerStatusStatefulPerInstanceConfigsResponse
Status of per-instance configurations on the instance.
hasStatefulConfig This property is required. Boolean
A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful configuration even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
perInstanceConfigs This property is required. InstanceGroupManagerStatusStatefulPerInstanceConfigsResponse
Status of per-instance configurations on the instance.
hasStatefulConfig This property is required. boolean
A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful configuration even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
perInstanceConfigs This property is required. InstanceGroupManagerStatusStatefulPerInstanceConfigsResponse
Status of per-instance configurations on the instance.
has_stateful_config This property is required. bool
A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful configuration even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
per_instance_configs This property is required. InstanceGroupManagerStatusStatefulPerInstanceConfigsResponse
Status of per-instance configurations on the instance.
hasStatefulConfig This property is required. Boolean
A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful configuration even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
perInstanceConfigs This property is required. Property Map
Status of per-instance configurations on the instance.

InstanceGroupManagerStatusVersionTargetResponse
, InstanceGroupManagerStatusVersionTargetResponseArgs

IsReached This property is required. bool
A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.
IsReached This property is required. bool
A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.
isReached This property is required. Boolean
A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.
isReached This property is required. boolean
A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.
is_reached This property is required. bool
A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.
isReached This property is required. Boolean
A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.

InstanceGroupManagerUpdatePolicy
, InstanceGroupManagerUpdatePolicyArgs

InstanceRedistributionType Pulumi.GoogleNative.Compute.V1.InstanceGroupManagerUpdatePolicyInstanceRedistributionType
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
MaxSurge Pulumi.GoogleNative.Compute.V1.Inputs.FixedOrPercent
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
MaxUnavailable Pulumi.GoogleNative.Compute.V1.Inputs.FixedOrPercent
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
MinimalAction Pulumi.GoogleNative.Compute.V1.InstanceGroupManagerUpdatePolicyMinimalAction
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
MostDisruptiveAllowedAction Pulumi.GoogleNative.Compute.V1.InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedAction
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
ReplacementMethod Pulumi.GoogleNative.Compute.V1.InstanceGroupManagerUpdatePolicyReplacementMethod
What action should be used to replace instances. See minimal_action.REPLACE
Type Pulumi.GoogleNative.Compute.V1.InstanceGroupManagerUpdatePolicyType
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.
InstanceRedistributionType InstanceGroupManagerUpdatePolicyInstanceRedistributionType
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
MaxSurge FixedOrPercent
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
MaxUnavailable FixedOrPercent
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
MinimalAction InstanceGroupManagerUpdatePolicyMinimalAction
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
MostDisruptiveAllowedAction InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedAction
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
ReplacementMethod InstanceGroupManagerUpdatePolicyReplacementMethod
What action should be used to replace instances. See minimal_action.REPLACE
Type InstanceGroupManagerUpdatePolicyType
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.
instanceRedistributionType InstanceGroupManagerUpdatePolicyInstanceRedistributionType
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
maxSurge FixedOrPercent
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
maxUnavailable FixedOrPercent
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
minimalAction InstanceGroupManagerUpdatePolicyMinimalAction
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
mostDisruptiveAllowedAction InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedAction
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
replacementMethod InstanceGroupManagerUpdatePolicyReplacementMethod
What action should be used to replace instances. See minimal_action.REPLACE
type InstanceGroupManagerUpdatePolicyType
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.
instanceRedistributionType InstanceGroupManagerUpdatePolicyInstanceRedistributionType
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
maxSurge FixedOrPercent
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
maxUnavailable FixedOrPercent
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
minimalAction InstanceGroupManagerUpdatePolicyMinimalAction
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
mostDisruptiveAllowedAction InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedAction
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
replacementMethod InstanceGroupManagerUpdatePolicyReplacementMethod
What action should be used to replace instances. See minimal_action.REPLACE
type InstanceGroupManagerUpdatePolicyType
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.
instance_redistribution_type InstanceGroupManagerUpdatePolicyInstanceRedistributionType
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
max_surge FixedOrPercent
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
max_unavailable FixedOrPercent
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
minimal_action InstanceGroupManagerUpdatePolicyMinimalAction
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
most_disruptive_allowed_action InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedAction
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
replacement_method InstanceGroupManagerUpdatePolicyReplacementMethod
What action should be used to replace instances. See minimal_action.REPLACE
type InstanceGroupManagerUpdatePolicyType
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.
instanceRedistributionType "NONE" | "PROACTIVE"
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
maxSurge Property Map
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
maxUnavailable Property Map
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
minimalAction "NONE" | "REFRESH" | "REPLACE" | "RESTART"
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
mostDisruptiveAllowedAction "NONE" | "REFRESH" | "REPLACE" | "RESTART"
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
replacementMethod "RECREATE" | "SUBSTITUTE"
What action should be used to replace instances. See minimal_action.REPLACE
type "OPPORTUNISTIC" | "PROACTIVE"
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.

InstanceGroupManagerUpdatePolicyInstanceRedistributionType
, InstanceGroupManagerUpdatePolicyInstanceRedistributionTypeArgs

None
NONENo action is being proactively performed in order to bring this IGM to its target instance distribution.
Proactive
PROACTIVEThis IGM will actively converge to its target instance distribution.
InstanceGroupManagerUpdatePolicyInstanceRedistributionTypeNone
NONENo action is being proactively performed in order to bring this IGM to its target instance distribution.
InstanceGroupManagerUpdatePolicyInstanceRedistributionTypeProactive
PROACTIVEThis IGM will actively converge to its target instance distribution.
None
NONENo action is being proactively performed in order to bring this IGM to its target instance distribution.
Proactive
PROACTIVEThis IGM will actively converge to its target instance distribution.
None
NONENo action is being proactively performed in order to bring this IGM to its target instance distribution.
Proactive
PROACTIVEThis IGM will actively converge to its target instance distribution.
NONE
NONENo action is being proactively performed in order to bring this IGM to its target instance distribution.
PROACTIVE
PROACTIVEThis IGM will actively converge to its target instance distribution.
"NONE"
NONENo action is being proactively performed in order to bring this IGM to its target instance distribution.
"PROACTIVE"
PROACTIVEThis IGM will actively converge to its target instance distribution.

InstanceGroupManagerUpdatePolicyMinimalAction
, InstanceGroupManagerUpdatePolicyMinimalActionArgs

None
NONEDo not perform any action.
Refresh
REFRESHDo not stop the instance.
Replace
REPLACE(Default.) Replace the instance according to the replacement method option.
Restart
RESTARTStop the instance and start it again.
InstanceGroupManagerUpdatePolicyMinimalActionNone
NONEDo not perform any action.
InstanceGroupManagerUpdatePolicyMinimalActionRefresh
REFRESHDo not stop the instance.
InstanceGroupManagerUpdatePolicyMinimalActionReplace
REPLACE(Default.) Replace the instance according to the replacement method option.
InstanceGroupManagerUpdatePolicyMinimalActionRestart
RESTARTStop the instance and start it again.
None
NONEDo not perform any action.
Refresh
REFRESHDo not stop the instance.
Replace
REPLACE(Default.) Replace the instance according to the replacement method option.
Restart
RESTARTStop the instance and start it again.
None
NONEDo not perform any action.
Refresh
REFRESHDo not stop the instance.
Replace
REPLACE(Default.) Replace the instance according to the replacement method option.
Restart
RESTARTStop the instance and start it again.
NONE
NONEDo not perform any action.
REFRESH
REFRESHDo not stop the instance.
REPLACE
REPLACE(Default.) Replace the instance according to the replacement method option.
RESTART
RESTARTStop the instance and start it again.
"NONE"
NONEDo not perform any action.
"REFRESH"
REFRESHDo not stop the instance.
"REPLACE"
REPLACE(Default.) Replace the instance according to the replacement method option.
"RESTART"
RESTARTStop the instance and start it again.

InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedAction
, InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedActionArgs

None
NONEDo not perform any action.
Refresh
REFRESHDo not stop the instance.
Replace
REPLACE(Default.) Replace the instance according to the replacement method option.
Restart
RESTARTStop the instance and start it again.
InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedActionNone
NONEDo not perform any action.
InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedActionRefresh
REFRESHDo not stop the instance.
InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedActionReplace
REPLACE(Default.) Replace the instance according to the replacement method option.
InstanceGroupManagerUpdatePolicyMostDisruptiveAllowedActionRestart
RESTARTStop the instance and start it again.
None
NONEDo not perform any action.
Refresh
REFRESHDo not stop the instance.
Replace
REPLACE(Default.) Replace the instance according to the replacement method option.
Restart
RESTARTStop the instance and start it again.
None
NONEDo not perform any action.
Refresh
REFRESHDo not stop the instance.
Replace
REPLACE(Default.) Replace the instance according to the replacement method option.
Restart
RESTARTStop the instance and start it again.
NONE
NONEDo not perform any action.
REFRESH
REFRESHDo not stop the instance.
REPLACE
REPLACE(Default.) Replace the instance according to the replacement method option.
RESTART
RESTARTStop the instance and start it again.
"NONE"
NONEDo not perform any action.
"REFRESH"
REFRESHDo not stop the instance.
"REPLACE"
REPLACE(Default.) Replace the instance according to the replacement method option.
"RESTART"
RESTARTStop the instance and start it again.

InstanceGroupManagerUpdatePolicyReplacementMethod
, InstanceGroupManagerUpdatePolicyReplacementMethodArgs

Recreate
RECREATEInstances will be recreated (with the same name)
Substitute
SUBSTITUTEDefault option: instances will be deleted and created (with a new name)
InstanceGroupManagerUpdatePolicyReplacementMethodRecreate
RECREATEInstances will be recreated (with the same name)
InstanceGroupManagerUpdatePolicyReplacementMethodSubstitute
SUBSTITUTEDefault option: instances will be deleted and created (with a new name)
Recreate
RECREATEInstances will be recreated (with the same name)
Substitute
SUBSTITUTEDefault option: instances will be deleted and created (with a new name)
Recreate
RECREATEInstances will be recreated (with the same name)
Substitute
SUBSTITUTEDefault option: instances will be deleted and created (with a new name)
RECREATE
RECREATEInstances will be recreated (with the same name)
SUBSTITUTE
SUBSTITUTEDefault option: instances will be deleted and created (with a new name)
"RECREATE"
RECREATEInstances will be recreated (with the same name)
"SUBSTITUTE"
SUBSTITUTEDefault option: instances will be deleted and created (with a new name)

InstanceGroupManagerUpdatePolicyResponse
, InstanceGroupManagerUpdatePolicyResponseArgs

InstanceRedistributionType This property is required. string
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
MaxSurge This property is required. Pulumi.GoogleNative.Compute.V1.Inputs.FixedOrPercentResponse
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
MaxUnavailable This property is required. Pulumi.GoogleNative.Compute.V1.Inputs.FixedOrPercentResponse
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
MinimalAction This property is required. string
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
MostDisruptiveAllowedAction This property is required. string
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
ReplacementMethod This property is required. string
What action should be used to replace instances. See minimal_action.REPLACE
Type This property is required. string
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.
InstanceRedistributionType This property is required. string
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
MaxSurge This property is required. FixedOrPercentResponse
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
MaxUnavailable This property is required. FixedOrPercentResponse
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
MinimalAction This property is required. string
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
MostDisruptiveAllowedAction This property is required. string
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
ReplacementMethod This property is required. string
What action should be used to replace instances. See minimal_action.REPLACE
Type This property is required. string
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.
instanceRedistributionType This property is required. String
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
maxSurge This property is required. FixedOrPercentResponse
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
maxUnavailable This property is required. FixedOrPercentResponse
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
minimalAction This property is required. String
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
mostDisruptiveAllowedAction This property is required. String
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
replacementMethod This property is required. String
What action should be used to replace instances. See minimal_action.REPLACE
type This property is required. String
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.
instanceRedistributionType This property is required. string
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
maxSurge This property is required. FixedOrPercentResponse
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
maxUnavailable This property is required. FixedOrPercentResponse
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
minimalAction This property is required. string
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
mostDisruptiveAllowedAction This property is required. string
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
replacementMethod This property is required. string
What action should be used to replace instances. See minimal_action.REPLACE
type This property is required. string
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.
instance_redistribution_type This property is required. str
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
max_surge This property is required. FixedOrPercentResponse
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
max_unavailable This property is required. FixedOrPercentResponse
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
minimal_action This property is required. str
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
most_disruptive_allowed_action This property is required. str
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
replacement_method This property is required. str
What action should be used to replace instances. See minimal_action.REPLACE
type This property is required. str
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.
instanceRedistributionType This property is required. String
The instance redistribution policy for regional managed instance groups. Valid values are: - PROACTIVE (default): The group attempts to maintain an even distribution of VM instances across zones in the region. - NONE: For non-autoscaled groups, proactive redistribution is disabled.
maxSurge This property is required. Property Map
The maximum number of instances that can be created above the specified targetSize during the update process. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxSurge is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxSurge.
maxUnavailable This property is required. Property Map
The maximum number of instances that can be unavailable during the update process. An instance is considered available if all of the following conditions are satisfied: - The instance's status is RUNNING. - If there is a health check on the instance group, the instance's health check status must be HEALTHY at least once. If there is no health check on the group, then the instance only needs to have a status of RUNNING to be considered available. This value can be either a fixed number or, if the group has 10 or more instances, a percentage. If you set a percentage, the number of instances is rounded if necessary. The default value for maxUnavailable is a fixed value equal to the number of zones in which the managed instance group operates. At least one of either maxSurge or maxUnavailable must be greater than 0. Learn more about maxUnavailable.
minimalAction This property is required. String
Minimal action to be taken on an instance. Use this option to minimize disruption as much as possible or to apply a more disruptive action than is necessary. - To limit disruption as much as possible, set the minimal action to REFRESH. If your update requires a more disruptive action, Compute Engine performs the necessary action to execute the update. - To apply a more disruptive action than is strictly necessary, set the minimal action to RESTART or REPLACE. For example, Compute Engine does not need to restart a VM to change its metadata. But if your application reads instance metadata only when a VM is restarted, you can set the minimal action to RESTART in order to pick up metadata changes.
mostDisruptiveAllowedAction This property is required. String
Most disruptive action that is allowed to be taken on an instance. You can specify either NONE to forbid any actions, REFRESH to avoid restarting the VM and to limit disruption as much as possible. RESTART to allow actions that can be applied without instance replacing or REPLACE to allow all possible actions. If the Updater determines that the minimal update action needed is more disruptive than most disruptive allowed action you specify it will not perform the update at all.
replacementMethod This property is required. String
What action should be used to replace instances. See minimal_action.REPLACE
type This property is required. String
The type of update process. You can specify either PROACTIVE so that the MIG automatically updates VMs to the latest configurations or OPPORTUNISTIC so that you can select the VMs that you want to update.

InstanceGroupManagerUpdatePolicyType
, InstanceGroupManagerUpdatePolicyTypeArgs

Opportunistic
OPPORTUNISTICMIG will apply new configurations to existing VMs only when you selectively target specific or all VMs to be updated.
Proactive
PROACTIVEMIG will automatically apply new configurations to all or a subset of existing VMs and also to new VMs that are added to the group.
InstanceGroupManagerUpdatePolicyTypeOpportunistic
OPPORTUNISTICMIG will apply new configurations to existing VMs only when you selectively target specific or all VMs to be updated.
InstanceGroupManagerUpdatePolicyTypeProactive
PROACTIVEMIG will automatically apply new configurations to all or a subset of existing VMs and also to new VMs that are added to the group.
Opportunistic
OPPORTUNISTICMIG will apply new configurations to existing VMs only when you selectively target specific or all VMs to be updated.
Proactive
PROACTIVEMIG will automatically apply new configurations to all or a subset of existing VMs and also to new VMs that are added to the group.
Opportunistic
OPPORTUNISTICMIG will apply new configurations to existing VMs only when you selectively target specific or all VMs to be updated.
Proactive
PROACTIVEMIG will automatically apply new configurations to all or a subset of existing VMs and also to new VMs that are added to the group.
OPPORTUNISTIC
OPPORTUNISTICMIG will apply new configurations to existing VMs only when you selectively target specific or all VMs to be updated.
PROACTIVE
PROACTIVEMIG will automatically apply new configurations to all or a subset of existing VMs and also to new VMs that are added to the group.
"OPPORTUNISTIC"
OPPORTUNISTICMIG will apply new configurations to existing VMs only when you selectively target specific or all VMs to be updated.
"PROACTIVE"
PROACTIVEMIG will automatically apply new configurations to all or a subset of existing VMs and also to new VMs that are added to the group.

InstanceGroupManagerVersion
, InstanceGroupManagerVersionArgs

InstanceTemplate string
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
Name string
Name of the version. Unique among all versions in the scope of this managed instance group.
TargetSize Pulumi.GoogleNative.Compute.V1.Inputs.FixedOrPercent
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.
InstanceTemplate string
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
Name string
Name of the version. Unique among all versions in the scope of this managed instance group.
TargetSize FixedOrPercent
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.
instanceTemplate String
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
name String
Name of the version. Unique among all versions in the scope of this managed instance group.
targetSize FixedOrPercent
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.
instanceTemplate string
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
name string
Name of the version. Unique among all versions in the scope of this managed instance group.
targetSize FixedOrPercent
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.
instance_template str
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
name str
Name of the version. Unique among all versions in the scope of this managed instance group.
target_size FixedOrPercent
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.
instanceTemplate String
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
name String
Name of the version. Unique among all versions in the scope of this managed instance group.
targetSize Property Map
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.

InstanceGroupManagerVersionResponse
, InstanceGroupManagerVersionResponseArgs

InstanceTemplate This property is required. string
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
Name This property is required. string
Name of the version. Unique among all versions in the scope of this managed instance group.
TargetSize This property is required. Pulumi.GoogleNative.Compute.V1.Inputs.FixedOrPercentResponse
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.
InstanceTemplate This property is required. string
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
Name This property is required. string
Name of the version. Unique among all versions in the scope of this managed instance group.
TargetSize This property is required. FixedOrPercentResponse
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.
instanceTemplate This property is required. String
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
name This property is required. String
Name of the version. Unique among all versions in the scope of this managed instance group.
targetSize This property is required. FixedOrPercentResponse
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.
instanceTemplate This property is required. string
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
name This property is required. string
Name of the version. Unique among all versions in the scope of this managed instance group.
targetSize This property is required. FixedOrPercentResponse
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.
instance_template This property is required. str
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
name This property is required. str
Name of the version. Unique among all versions in the scope of this managed instance group.
target_size This property is required. FixedOrPercentResponse
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.
instanceTemplate This property is required. String
The URL of the instance template that is specified for this managed instance group. The group uses this template to create new instances in the managed instance group until the targetSize for this version is reached. The templates for existing instances in the group do not change unless you run recreateInstances, run applyUpdatesToInstances, or set the group's updatePolicy.type to PROACTIVE; in those cases, existing instances are updated until the targetSize for this version is reached.
name This property is required. String
Name of the version. Unique among all versions in the scope of this managed instance group.
targetSize This property is required. Property Map
Specifies the intended number of instances to be created from the instanceTemplate. The final number of instances created from the template will be equal to: - If expressed as a fixed number, the minimum of either targetSize.fixed or instanceGroupManager.targetSize is used. - if expressed as a percent, the targetSize would be (targetSize.percent/100 * InstanceGroupManager.targetSize) If there is a remainder, the number is rounded. If unset, this version will update any remaining instances not updated by another version. Read Starting a canary update for more information.

NamedPort
, NamedPortArgs

Name string
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
Port int
The port number, which can be a value between 1 and 65535.
Name string
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
Port int
The port number, which can be a value between 1 and 65535.
name String
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
port Integer
The port number, which can be a value between 1 and 65535.
name string
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
port number
The port number, which can be a value between 1 and 65535.
name str
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
port int
The port number, which can be a value between 1 and 65535.
name String
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
port Number
The port number, which can be a value between 1 and 65535.

NamedPortResponse
, NamedPortResponseArgs

Name This property is required. string
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
Port This property is required. int
The port number, which can be a value between 1 and 65535.
Name This property is required. string
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
Port This property is required. int
The port number, which can be a value between 1 and 65535.
name This property is required. String
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
port This property is required. Integer
The port number, which can be a value between 1 and 65535.
name This property is required. string
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
port This property is required. number
The port number, which can be a value between 1 and 65535.
name This property is required. str
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
port This property is required. int
The port number, which can be a value between 1 and 65535.
name This property is required. String
The name for this named port. The name must be 1-63 characters long, and comply with RFC1035.
port This property is required. Number
The port number, which can be a value between 1 and 65535.

RegionInstanceGroupManagerListManagedInstancesResults
, RegionInstanceGroupManagerListManagedInstancesResultsArgs

Pageless
PAGELESS(Default) Pagination is disabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are ignored and all instances are returned in a single response.
Paginated
PAGINATEDPagination is enabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are respected.
RegionInstanceGroupManagerListManagedInstancesResultsPageless
PAGELESS(Default) Pagination is disabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are ignored and all instances are returned in a single response.
RegionInstanceGroupManagerListManagedInstancesResultsPaginated
PAGINATEDPagination is enabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are respected.
Pageless
PAGELESS(Default) Pagination is disabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are ignored and all instances are returned in a single response.
Paginated
PAGINATEDPagination is enabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are respected.
Pageless
PAGELESS(Default) Pagination is disabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are ignored and all instances are returned in a single response.
Paginated
PAGINATEDPagination is enabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are respected.
PAGELESS
PAGELESS(Default) Pagination is disabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are ignored and all instances are returned in a single response.
PAGINATED
PAGINATEDPagination is enabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are respected.
"PAGELESS"
PAGELESS(Default) Pagination is disabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are ignored and all instances are returned in a single response.
"PAGINATED"
PAGINATEDPagination is enabled for the group's listManagedInstances API method. maxResults and pageToken query parameters are respected.

StatefulPolicy
, StatefulPolicyArgs

StatefulPolicyPreservedState
, StatefulPolicyPreservedStateArgs

Disks Dictionary<string, string>
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
ExternalIPs Dictionary<string, string>
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
InternalIPs Dictionary<string, string>
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
Disks map[string]string
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
ExternalIPs map[string]string
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
InternalIPs map[string]string
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
disks Map<String,String>
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
externalIPs Map<String,String>
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
internalIPs Map<String,String>
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
disks {[key: string]: string}
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
externalIPs {[key: string]: string}
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
internalIPs {[key: string]: string}
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
disks Mapping[str, str]
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
external_ips Mapping[str, str]
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
internal_ips Mapping[str, str]
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
disks Map<String>
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
externalIPs Map<String>
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
internalIPs Map<String>
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.

StatefulPolicyPreservedStateResponse
, StatefulPolicyPreservedStateResponseArgs

Disks This property is required. Dictionary<string, string>
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
ExternalIPs This property is required. Dictionary<string, string>
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
InternalIPs This property is required. Dictionary<string, string>
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
Disks This property is required. map[string]string
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
ExternalIPs This property is required. map[string]string
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
InternalIPs This property is required. map[string]string
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
disks This property is required. Map<String,String>
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
externalIPs This property is required. Map<String,String>
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
internalIPs This property is required. Map<String,String>
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
disks This property is required. {[key: string]: string}
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
externalIPs This property is required. {[key: string]: string}
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
internalIPs This property is required. {[key: string]: string}
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
disks This property is required. Mapping[str, str]
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
external_ips This property is required. Mapping[str, str]
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
internal_ips This property is required. Mapping[str, str]
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
disks This property is required. Map<String>
Disks created on the instances that will be preserved on instance delete, update, etc. This map is keyed with the device names of the disks.
externalIPs This property is required. Map<String>
External network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.
internalIPs This property is required. Map<String>
Internal network IPs assigned to the instances that will be preserved on instance delete, update, etc. This map is keyed with the network interface name.

StatefulPolicyResponse
, StatefulPolicyResponseArgs

preservedState This property is required. Property Map

Package Details

Repository
Google Cloud Native pulumi/pulumi-google-native
License
Apache-2.0