1. Packages
  2. Yandex
  3. API Docs
  4. ComputeInstanceGroup
Yandex v0.13.0 published on Tuesday, Feb 22, 2022 by Pulumi

yandex.ComputeInstanceGroup

Explore with Pulumi AI

yandex logo
Yandex v0.13.0 published on Tuesday, Feb 22, 2022 by Pulumi

    An Instance group resource. For more information, see the official documentation.

    Example Usage

    using System.IO;
    using Pulumi;
    using Yandex = Pulumi.Yandex;
    
    class MyStack : Stack
    {
        public MyStack()
        {
            var group1 = new Yandex.ComputeInstanceGroup("group1", new Yandex.ComputeInstanceGroupArgs
            {
                AllocationPolicy = new Yandex.Inputs.ComputeInstanceGroupAllocationPolicyArgs
                {
                    Zones = 
                    {
                        "ru-central1-a",
                    },
                },
                DeletionProtection = true,
                DeployPolicy = new Yandex.Inputs.ComputeInstanceGroupDeployPolicyArgs
                {
                    MaxCreating = 2,
                    MaxDeleting = 2,
                    MaxExpansion = 2,
                    MaxUnavailable = 2,
                },
                FolderId = data.Yandex_resourcemanager_folder.Test_folder.Id,
                InstanceTemplate = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateArgs
                {
                    BootDisk = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateBootDiskArgs
                    {
                        InitializeParams = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateBootDiskInitializeParamsArgs
                        {
                            ImageId = data.Yandex_compute_image.Ubuntu.Id,
                            Size = 4,
                        },
                        Mode = "READ_WRITE",
                    },
                    Labels = 
                    {
                        { "label1", "label1-value" },
                        { "label2", "label2-value" },
                    },
                    Metadata = 
                    {
                        { "foo", "bar" },
                        { "ssh-keys", $"ubuntu:{File.ReadAllText("~/.ssh/id_rsa.pub")}" },
                    },
                    NetworkInterfaces = 
                    {
                        new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateNetworkInterfaceArgs
                        {
                            NetworkId = yandex_vpc_network.My_inst_group_network.Id,
                            SubnetIds = 
                            {
                                yandex_vpc_subnet.My_inst_group_subnet.Id,
                            },
                        },
                    },
                    NetworkSettings = 
                    {
                        new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateNetworkSettingArgs
                        {
                            Type = "STANDARD",
                        },
                    },
                    PlatformId = "standard-v1",
                    Resources = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateResourcesArgs
                    {
                        Cores = 2,
                        Memory = 1,
                    },
                },
                ScalePolicy = new Yandex.Inputs.ComputeInstanceGroupScalePolicyArgs
                {
                    FixedScale = new Yandex.Inputs.ComputeInstanceGroupScalePolicyFixedScaleArgs
                    {
                        Size = 3,
                    },
                },
                ServiceAccountId = yandex_iam_service_account.Test_account.Id,
                Variables = 
                {
                    { "test_key1", "test_value1" },
                    { "test_key2", "test_value2" },
                },
            });
        }
    
    }
    
    package main
    
    import (
    	"fmt"
    	"io/ioutil"
    
    	"github.com/pulumi/pulumi-yandex/sdk/go/yandex"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func readFileOrPanic(path string) pulumi.StringPtrInput {
    	data, err := ioutil.ReadFile(path)
    	if err != nil {
    		panic(err.Error())
    	}
    	return pulumi.String(string(data))
    }
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := yandex.NewComputeInstanceGroup(ctx, "group1", &yandex.ComputeInstanceGroupArgs{
    			AllocationPolicy: &ComputeInstanceGroupAllocationPolicyArgs{
    				Zones: pulumi.StringArray{
    					pulumi.String("ru-central1-a"),
    				},
    			},
    			DeletionProtection: pulumi.Bool(true),
    			DeployPolicy: &ComputeInstanceGroupDeployPolicyArgs{
    				MaxCreating:    pulumi.Int(2),
    				MaxDeleting:    pulumi.Int(2),
    				MaxExpansion:   pulumi.Int(2),
    				MaxUnavailable: pulumi.Int(2),
    			},
    			FolderId: pulumi.Any(data.Yandex_resourcemanager_folder.Test_folder.Id),
    			InstanceTemplate: &ComputeInstanceGroupInstanceTemplateArgs{
    				BootDisk: &ComputeInstanceGroupInstanceTemplateBootDiskArgs{
    					InitializeParams: &ComputeInstanceGroupInstanceTemplateBootDiskInitializeParamsArgs{
    						ImageId: pulumi.Any(data.Yandex_compute_image.Ubuntu.Id),
    						Size:    pulumi.Int(4),
    					},
    					Mode: pulumi.String("READ_WRITE"),
    				},
    				Labels: pulumi.StringMap{
    					"label1": pulumi.String("label1-value"),
    					"label2": pulumi.String("label2-value"),
    				},
    				Metadata: pulumi.StringMap{
    					"foo":      pulumi.String("bar"),
    					"ssh-keys": pulumi.String(fmt.Sprintf("%v%v", "ubuntu:", readFileOrPanic("~/.ssh/id_rsa.pub"))),
    				},
    				NetworkInterfaces: ComputeInstanceGroupInstanceTemplateNetworkInterfaceArray{
    					&ComputeInstanceGroupInstanceTemplateNetworkInterfaceArgs{
    						NetworkId: pulumi.Any(yandex_vpc_network.My - inst - group - network.Id),
    						SubnetIds: pulumi.StringArray{
    							pulumi.Any(yandex_vpc_subnet.My - inst - group - subnet.Id),
    						},
    					},
    				},
    				NetworkSettings: ComputeInstanceGroupInstanceTemplateNetworkSettingArray{
    					&ComputeInstanceGroupInstanceTemplateNetworkSettingArgs{
    						Type: pulumi.String("STANDARD"),
    					},
    				},
    				PlatformId: pulumi.String("standard-v1"),
    				Resources: &ComputeInstanceGroupInstanceTemplateResourcesArgs{
    					Cores:  pulumi.Int(2),
    					Memory: pulumi.Float64(1),
    				},
    			},
    			ScalePolicy: &ComputeInstanceGroupScalePolicyArgs{
    				FixedScale: &ComputeInstanceGroupScalePolicyFixedScaleArgs{
    					Size: pulumi.Int(3),
    				},
    			},
    			ServiceAccountId: pulumi.Any(yandex_iam_service_account.Test_account.Id),
    			Variables: pulumi.StringMap{
    				"test_key1": pulumi.String("test_value1"),
    				"test_key2": pulumi.String("test_value2"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Coming soon!

    import pulumi
    import pulumi_yandex as yandex
    
    group1 = yandex.ComputeInstanceGroup("group1",
        allocation_policy=yandex.ComputeInstanceGroupAllocationPolicyArgs(
            zones=["ru-central1-a"],
        ),
        deletion_protection=True,
        deploy_policy=yandex.ComputeInstanceGroupDeployPolicyArgs(
            max_creating=2,
            max_deleting=2,
            max_expansion=2,
            max_unavailable=2,
        ),
        folder_id=data["yandex_resourcemanager_folder"]["test_folder"]["id"],
        instance_template=yandex.ComputeInstanceGroupInstanceTemplateArgs(
            boot_disk=yandex.ComputeInstanceGroupInstanceTemplateBootDiskArgs(
                initialize_params=yandex.ComputeInstanceGroupInstanceTemplateBootDiskInitializeParamsArgs(
                    image_id=data["yandex_compute_image"]["ubuntu"]["id"],
                    size=4,
                ),
                mode="READ_WRITE",
            ),
            labels={
                "label1": "label1-value",
                "label2": "label2-value",
            },
            metadata={
                "foo": "bar",
                "ssh-keys": f"ubuntu:{(lambda path: open(path).read())('~/.ssh/id_rsa.pub')}",
            },
            network_interfaces=[yandex.ComputeInstanceGroupInstanceTemplateNetworkInterfaceArgs(
                network_id=yandex_vpc_network["my-inst-group-network"]["id"],
                subnet_ids=[yandex_vpc_subnet["my-inst-group-subnet"]["id"]],
            )],
            network_settings=[yandex.ComputeInstanceGroupInstanceTemplateNetworkSettingArgs(
                type="STANDARD",
            )],
            platform_id="standard-v1",
            resources=yandex.ComputeInstanceGroupInstanceTemplateResourcesArgs(
                cores=2,
                memory=1,
            ),
        ),
        scale_policy=yandex.ComputeInstanceGroupScalePolicyArgs(
            fixed_scale=yandex.ComputeInstanceGroupScalePolicyFixedScaleArgs(
                size=3,
            ),
        ),
        service_account_id=yandex_iam_service_account["test_account"]["id"],
        variables={
            "test_key1": "test_value1",
            "test_key2": "test_value2",
        })
    
    import * as pulumi from "@pulumi/pulumi";
    import * as fs from "fs";
    import * as yandex from "@pulumi/yandex";
    
    const group1 = new yandex.ComputeInstanceGroup("group1", {
        allocationPolicy: {
            zones: ["ru-central1-a"],
        },
        deletionProtection: true,
        deployPolicy: {
            maxCreating: 2,
            maxDeleting: 2,
            maxExpansion: 2,
            maxUnavailable: 2,
        },
        folderId: yandex_resourcemanager_folder_test_folder.id,
        instanceTemplate: {
            bootDisk: {
                initializeParams: {
                    imageId: yandex_compute_image_ubuntu.id,
                    size: 4,
                },
                mode: "READ_WRITE",
            },
            labels: {
                label1: "label1-value",
                label2: "label2-value",
            },
            metadata: {
                foo: "bar",
                "ssh-keys": `ubuntu:${fs.readFileSync("~/.ssh/id_rsa.pub", "utf-8")}`,
            },
            networkInterfaces: [{
                networkId: yandex_vpc_network_my_inst_group_network.id,
                subnetIds: [yandex_vpc_subnet_my_inst_group_subnet.id],
            }],
            networkSettings: [{
                type: "STANDARD",
            }],
            platformId: "standard-v1",
            resources: {
                cores: 2,
                memory: 1,
            },
        },
        scalePolicy: {
            fixedScale: {
                size: 3,
            },
        },
        serviceAccountId: yandex_iam_service_account_test_account.id,
        variables: {
            test_key1: "test_value1",
            test_key2: "test_value2",
        },
    });
    

    Coming soon!

    Create ComputeInstanceGroup Resource

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

    Constructor syntax

    new ComputeInstanceGroup(name: string, args: ComputeInstanceGroupArgs, opts?: CustomResourceOptions);
    @overload
    def ComputeInstanceGroup(resource_name: str,
                             args: ComputeInstanceGroupArgs,
                             opts: Optional[ResourceOptions] = None)
    
    @overload
    def ComputeInstanceGroup(resource_name: str,
                             opts: Optional[ResourceOptions] = None,
                             allocation_policy: Optional[ComputeInstanceGroupAllocationPolicyArgs] = None,
                             service_account_id: Optional[str] = None,
                             scale_policy: Optional[ComputeInstanceGroupScalePolicyArgs] = None,
                             deploy_policy: Optional[ComputeInstanceGroupDeployPolicyArgs] = None,
                             instance_template: Optional[ComputeInstanceGroupInstanceTemplateArgs] = None,
                             health_checks: Optional[Sequence[ComputeInstanceGroupHealthCheckArgs]] = None,
                             folder_id: Optional[str] = None,
                             description: Optional[str] = None,
                             labels: Optional[Mapping[str, str]] = None,
                             load_balancer: Optional[ComputeInstanceGroupLoadBalancerArgs] = None,
                             max_checking_health_duration: Optional[int] = None,
                             name: Optional[str] = None,
                             deletion_protection: Optional[bool] = None,
                             application_load_balancer: Optional[ComputeInstanceGroupApplicationLoadBalancerArgs] = None,
                             variables: Optional[Mapping[str, str]] = None)
    func NewComputeInstanceGroup(ctx *Context, name string, args ComputeInstanceGroupArgs, opts ...ResourceOption) (*ComputeInstanceGroup, error)
    public ComputeInstanceGroup(string name, ComputeInstanceGroupArgs args, CustomResourceOptions? opts = null)
    public ComputeInstanceGroup(String name, ComputeInstanceGroupArgs args)
    public ComputeInstanceGroup(String name, ComputeInstanceGroupArgs args, CustomResourceOptions options)
    
    type: yandex:ComputeInstanceGroup
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ComputeInstanceGroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ComputeInstanceGroupArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ComputeInstanceGroupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ComputeInstanceGroupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ComputeInstanceGroupArgs
    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 computeInstanceGroupResource = new Yandex.ComputeInstanceGroup("computeInstanceGroupResource", new()
    {
        AllocationPolicy = new Yandex.Inputs.ComputeInstanceGroupAllocationPolicyArgs
        {
            Zones = new[]
            {
                "string",
            },
        },
        ServiceAccountId = "string",
        ScalePolicy = new Yandex.Inputs.ComputeInstanceGroupScalePolicyArgs
        {
            AutoScale = new Yandex.Inputs.ComputeInstanceGroupScalePolicyAutoScaleArgs
            {
                InitialSize = 0,
                MeasurementDuration = 0,
                CpuUtilizationTarget = 0,
                CustomRules = new[]
                {
                    new Yandex.Inputs.ComputeInstanceGroupScalePolicyAutoScaleCustomRuleArgs
                    {
                        MetricName = "string",
                        MetricType = "string",
                        RuleType = "string",
                        Target = 0,
                        FolderId = "string",
                        Labels = 
                        {
                            { "string", "string" },
                        },
                        Service = "string",
                    },
                },
                MaxSize = 0,
                MinZoneSize = 0,
                StabilizationDuration = 0,
                WarmupDuration = 0,
            },
            FixedScale = new Yandex.Inputs.ComputeInstanceGroupScalePolicyFixedScaleArgs
            {
                Size = 0,
            },
            TestAutoScale = new Yandex.Inputs.ComputeInstanceGroupScalePolicyTestAutoScaleArgs
            {
                InitialSize = 0,
                MeasurementDuration = 0,
                CpuUtilizationTarget = 0,
                CustomRules = new[]
                {
                    new Yandex.Inputs.ComputeInstanceGroupScalePolicyTestAutoScaleCustomRuleArgs
                    {
                        MetricName = "string",
                        MetricType = "string",
                        RuleType = "string",
                        Target = 0,
                        FolderId = "string",
                        Labels = 
                        {
                            { "string", "string" },
                        },
                        Service = "string",
                    },
                },
                MaxSize = 0,
                MinZoneSize = 0,
                StabilizationDuration = 0,
                WarmupDuration = 0,
            },
        },
        DeployPolicy = new Yandex.Inputs.ComputeInstanceGroupDeployPolicyArgs
        {
            MaxExpansion = 0,
            MaxUnavailable = 0,
            MaxCreating = 0,
            MaxDeleting = 0,
            StartupDuration = 0,
            Strategy = "string",
        },
        InstanceTemplate = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateArgs
        {
            BootDisk = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateBootDiskArgs
            {
                DeviceName = "string",
                DiskId = "string",
                InitializeParams = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateBootDiskInitializeParamsArgs
                {
                    Description = "string",
                    ImageId = "string",
                    Size = 0,
                    SnapshotId = "string",
                    Type = "string",
                },
                Mode = "string",
            },
            Resources = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateResourcesArgs
            {
                Cores = 0,
                Memory = 0,
                CoreFraction = 0,
                Gpus = 0,
            },
            NetworkInterfaces = new[]
            {
                new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateNetworkInterfaceArgs
                {
                    DnsRecords = new[]
                    {
                        new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecordArgs
                        {
                            Fqdn = "string",
                            DnsZoneId = "string",
                            Ptr = false,
                            Ttl = 0,
                        },
                    },
                    IpAddress = "string",
                    Ipv4 = false,
                    Ipv6 = false,
                    Ipv6Address = "string",
                    Ipv6DnsRecords = new[]
                    {
                        new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecordArgs
                        {
                            Fqdn = "string",
                            DnsZoneId = "string",
                            Ptr = false,
                            Ttl = 0,
                        },
                    },
                    Nat = false,
                    NatDnsRecords = new[]
                    {
                        new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecordArgs
                        {
                            Fqdn = "string",
                            DnsZoneId = "string",
                            Ptr = false,
                            Ttl = 0,
                        },
                    },
                    NatIpAddress = "string",
                    NetworkId = "string",
                    SecurityGroupIds = new[]
                    {
                        "string",
                    },
                    SubnetIds = new[]
                    {
                        "string",
                    },
                },
            },
            Labels = 
            {
                { "string", "string" },
            },
            Metadata = 
            {
                { "string", "string" },
            },
            Name = "string",
            Hostname = "string",
            NetworkSettings = new[]
            {
                new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateNetworkSettingArgs
                {
                    Type = "string",
                },
            },
            PlacementPolicy = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplatePlacementPolicyArgs
            {
                PlacementGroupId = "string",
            },
            PlatformId = "string",
            Description = "string",
            SchedulingPolicy = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateSchedulingPolicyArgs
            {
                Preemptible = false,
            },
            SecondaryDisks = new[]
            {
                new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateSecondaryDiskArgs
                {
                    DeviceName = "string",
                    DiskId = "string",
                    InitializeParams = new Yandex.Inputs.ComputeInstanceGroupInstanceTemplateSecondaryDiskInitializeParamsArgs
                    {
                        Description = "string",
                        ImageId = "string",
                        Size = 0,
                        SnapshotId = "string",
                        Type = "string",
                    },
                    Mode = "string",
                },
            },
            ServiceAccountId = "string",
        },
        HealthChecks = new[]
        {
            new Yandex.Inputs.ComputeInstanceGroupHealthCheckArgs
            {
                HealthyThreshold = 0,
                HttpOptions = new[]
                {
                    new Yandex.Inputs.ComputeInstanceGroupHealthCheckHttpOptionArgs
                    {
                        Path = "string",
                        Port = 0,
                    },
                },
                Interval = 0,
                TcpOptions = new Yandex.Inputs.ComputeInstanceGroupHealthCheckTcpOptionsArgs
                {
                    Port = 0,
                },
                Timeout = 0,
                UnhealthyThreshold = 0,
            },
        },
        FolderId = "string",
        Description = "string",
        Labels = 
        {
            { "string", "string" },
        },
        LoadBalancer = new Yandex.Inputs.ComputeInstanceGroupLoadBalancerArgs
        {
            MaxOpeningTrafficDuration = 0,
            StatusMessage = "string",
            TargetGroupDescription = "string",
            TargetGroupId = "string",
            TargetGroupLabels = 
            {
                { "string", "string" },
            },
            TargetGroupName = "string",
        },
        MaxCheckingHealthDuration = 0,
        Name = "string",
        DeletionProtection = false,
        ApplicationLoadBalancer = new Yandex.Inputs.ComputeInstanceGroupApplicationLoadBalancerArgs
        {
            MaxOpeningTrafficDuration = 0,
            StatusMessage = "string",
            TargetGroupDescription = "string",
            TargetGroupId = "string",
            TargetGroupLabels = 
            {
                { "string", "string" },
            },
            TargetGroupName = "string",
        },
        Variables = 
        {
            { "string", "string" },
        },
    });
    
    example, err := yandex.NewComputeInstanceGroup(ctx, "computeInstanceGroupResource", &yandex.ComputeInstanceGroupArgs{
    	AllocationPolicy: &yandex.ComputeInstanceGroupAllocationPolicyArgs{
    		Zones: pulumi.StringArray{
    			pulumi.String("string"),
    		},
    	},
    	ServiceAccountId: pulumi.String("string"),
    	ScalePolicy: &yandex.ComputeInstanceGroupScalePolicyArgs{
    		AutoScale: &yandex.ComputeInstanceGroupScalePolicyAutoScaleArgs{
    			InitialSize:          pulumi.Int(0),
    			MeasurementDuration:  pulumi.Int(0),
    			CpuUtilizationTarget: pulumi.Float64(0),
    			CustomRules: yandex.ComputeInstanceGroupScalePolicyAutoScaleCustomRuleArray{
    				&yandex.ComputeInstanceGroupScalePolicyAutoScaleCustomRuleArgs{
    					MetricName: pulumi.String("string"),
    					MetricType: pulumi.String("string"),
    					RuleType:   pulumi.String("string"),
    					Target:     pulumi.Float64(0),
    					FolderId:   pulumi.String("string"),
    					Labels: pulumi.StringMap{
    						"string": pulumi.String("string"),
    					},
    					Service: pulumi.String("string"),
    				},
    			},
    			MaxSize:               pulumi.Int(0),
    			MinZoneSize:           pulumi.Int(0),
    			StabilizationDuration: pulumi.Int(0),
    			WarmupDuration:        pulumi.Int(0),
    		},
    		FixedScale: &yandex.ComputeInstanceGroupScalePolicyFixedScaleArgs{
    			Size: pulumi.Int(0),
    		},
    		TestAutoScale: &yandex.ComputeInstanceGroupScalePolicyTestAutoScaleArgs{
    			InitialSize:          pulumi.Int(0),
    			MeasurementDuration:  pulumi.Int(0),
    			CpuUtilizationTarget: pulumi.Float64(0),
    			CustomRules: yandex.ComputeInstanceGroupScalePolicyTestAutoScaleCustomRuleArray{
    				&yandex.ComputeInstanceGroupScalePolicyTestAutoScaleCustomRuleArgs{
    					MetricName: pulumi.String("string"),
    					MetricType: pulumi.String("string"),
    					RuleType:   pulumi.String("string"),
    					Target:     pulumi.Float64(0),
    					FolderId:   pulumi.String("string"),
    					Labels: pulumi.StringMap{
    						"string": pulumi.String("string"),
    					},
    					Service: pulumi.String("string"),
    				},
    			},
    			MaxSize:               pulumi.Int(0),
    			MinZoneSize:           pulumi.Int(0),
    			StabilizationDuration: pulumi.Int(0),
    			WarmupDuration:        pulumi.Int(0),
    		},
    	},
    	DeployPolicy: &yandex.ComputeInstanceGroupDeployPolicyArgs{
    		MaxExpansion:    pulumi.Int(0),
    		MaxUnavailable:  pulumi.Int(0),
    		MaxCreating:     pulumi.Int(0),
    		MaxDeleting:     pulumi.Int(0),
    		StartupDuration: pulumi.Int(0),
    		Strategy:        pulumi.String("string"),
    	},
    	InstanceTemplate: &yandex.ComputeInstanceGroupInstanceTemplateArgs{
    		BootDisk: &yandex.ComputeInstanceGroupInstanceTemplateBootDiskArgs{
    			DeviceName: pulumi.String("string"),
    			DiskId:     pulumi.String("string"),
    			InitializeParams: &yandex.ComputeInstanceGroupInstanceTemplateBootDiskInitializeParamsArgs{
    				Description: pulumi.String("string"),
    				ImageId:     pulumi.String("string"),
    				Size:        pulumi.Int(0),
    				SnapshotId:  pulumi.String("string"),
    				Type:        pulumi.String("string"),
    			},
    			Mode: pulumi.String("string"),
    		},
    		Resources: &yandex.ComputeInstanceGroupInstanceTemplateResourcesArgs{
    			Cores:        pulumi.Int(0),
    			Memory:       pulumi.Float64(0),
    			CoreFraction: pulumi.Int(0),
    			Gpus:         pulumi.Int(0),
    		},
    		NetworkInterfaces: yandex.ComputeInstanceGroupInstanceTemplateNetworkInterfaceArray{
    			&yandex.ComputeInstanceGroupInstanceTemplateNetworkInterfaceArgs{
    				DnsRecords: yandex.ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecordArray{
    					&yandex.ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecordArgs{
    						Fqdn:      pulumi.String("string"),
    						DnsZoneId: pulumi.String("string"),
    						Ptr:       pulumi.Bool(false),
    						Ttl:       pulumi.Int(0),
    					},
    				},
    				IpAddress:   pulumi.String("string"),
    				Ipv4:        pulumi.Bool(false),
    				Ipv6:        pulumi.Bool(false),
    				Ipv6Address: pulumi.String("string"),
    				Ipv6DnsRecords: yandex.ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecordArray{
    					&yandex.ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecordArgs{
    						Fqdn:      pulumi.String("string"),
    						DnsZoneId: pulumi.String("string"),
    						Ptr:       pulumi.Bool(false),
    						Ttl:       pulumi.Int(0),
    					},
    				},
    				Nat: pulumi.Bool(false),
    				NatDnsRecords: yandex.ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecordArray{
    					&yandex.ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecordArgs{
    						Fqdn:      pulumi.String("string"),
    						DnsZoneId: pulumi.String("string"),
    						Ptr:       pulumi.Bool(false),
    						Ttl:       pulumi.Int(0),
    					},
    				},
    				NatIpAddress: pulumi.String("string"),
    				NetworkId:    pulumi.String("string"),
    				SecurityGroupIds: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    				SubnetIds: pulumi.StringArray{
    					pulumi.String("string"),
    				},
    			},
    		},
    		Labels: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		Metadata: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		Name:     pulumi.String("string"),
    		Hostname: pulumi.String("string"),
    		NetworkSettings: yandex.ComputeInstanceGroupInstanceTemplateNetworkSettingArray{
    			&yandex.ComputeInstanceGroupInstanceTemplateNetworkSettingArgs{
    				Type: pulumi.String("string"),
    			},
    		},
    		PlacementPolicy: &yandex.ComputeInstanceGroupInstanceTemplatePlacementPolicyArgs{
    			PlacementGroupId: pulumi.String("string"),
    		},
    		PlatformId:  pulumi.String("string"),
    		Description: pulumi.String("string"),
    		SchedulingPolicy: &yandex.ComputeInstanceGroupInstanceTemplateSchedulingPolicyArgs{
    			Preemptible: pulumi.Bool(false),
    		},
    		SecondaryDisks: yandex.ComputeInstanceGroupInstanceTemplateSecondaryDiskArray{
    			&yandex.ComputeInstanceGroupInstanceTemplateSecondaryDiskArgs{
    				DeviceName: pulumi.String("string"),
    				DiskId:     pulumi.String("string"),
    				InitializeParams: &yandex.ComputeInstanceGroupInstanceTemplateSecondaryDiskInitializeParamsArgs{
    					Description: pulumi.String("string"),
    					ImageId:     pulumi.String("string"),
    					Size:        pulumi.Int(0),
    					SnapshotId:  pulumi.String("string"),
    					Type:        pulumi.String("string"),
    				},
    				Mode: pulumi.String("string"),
    			},
    		},
    		ServiceAccountId: pulumi.String("string"),
    	},
    	HealthChecks: yandex.ComputeInstanceGroupHealthCheckArray{
    		&yandex.ComputeInstanceGroupHealthCheckArgs{
    			HealthyThreshold: pulumi.Int(0),
    			HttpOptions: yandex.ComputeInstanceGroupHealthCheckHttpOptionArray{
    				&yandex.ComputeInstanceGroupHealthCheckHttpOptionArgs{
    					Path: pulumi.String("string"),
    					Port: pulumi.Int(0),
    				},
    			},
    			Interval: pulumi.Int(0),
    			TcpOptions: &yandex.ComputeInstanceGroupHealthCheckTcpOptionsArgs{
    				Port: pulumi.Int(0),
    			},
    			Timeout:            pulumi.Int(0),
    			UnhealthyThreshold: pulumi.Int(0),
    		},
    	},
    	FolderId:    pulumi.String("string"),
    	Description: pulumi.String("string"),
    	Labels: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    	LoadBalancer: &yandex.ComputeInstanceGroupLoadBalancerArgs{
    		MaxOpeningTrafficDuration: pulumi.Int(0),
    		StatusMessage:             pulumi.String("string"),
    		TargetGroupDescription:    pulumi.String("string"),
    		TargetGroupId:             pulumi.String("string"),
    		TargetGroupLabels: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		TargetGroupName: pulumi.String("string"),
    	},
    	MaxCheckingHealthDuration: pulumi.Int(0),
    	Name:                      pulumi.String("string"),
    	DeletionProtection:        pulumi.Bool(false),
    	ApplicationLoadBalancer: &yandex.ComputeInstanceGroupApplicationLoadBalancerArgs{
    		MaxOpeningTrafficDuration: pulumi.Int(0),
    		StatusMessage:             pulumi.String("string"),
    		TargetGroupDescription:    pulumi.String("string"),
    		TargetGroupId:             pulumi.String("string"),
    		TargetGroupLabels: pulumi.StringMap{
    			"string": pulumi.String("string"),
    		},
    		TargetGroupName: pulumi.String("string"),
    	},
    	Variables: pulumi.StringMap{
    		"string": pulumi.String("string"),
    	},
    })
    
    var computeInstanceGroupResource = new ComputeInstanceGroup("computeInstanceGroupResource", ComputeInstanceGroupArgs.builder()
        .allocationPolicy(ComputeInstanceGroupAllocationPolicyArgs.builder()
            .zones("string")
            .build())
        .serviceAccountId("string")
        .scalePolicy(ComputeInstanceGroupScalePolicyArgs.builder()
            .autoScale(ComputeInstanceGroupScalePolicyAutoScaleArgs.builder()
                .initialSize(0)
                .measurementDuration(0)
                .cpuUtilizationTarget(0)
                .customRules(ComputeInstanceGroupScalePolicyAutoScaleCustomRuleArgs.builder()
                    .metricName("string")
                    .metricType("string")
                    .ruleType("string")
                    .target(0)
                    .folderId("string")
                    .labels(Map.of("string", "string"))
                    .service("string")
                    .build())
                .maxSize(0)
                .minZoneSize(0)
                .stabilizationDuration(0)
                .warmupDuration(0)
                .build())
            .fixedScale(ComputeInstanceGroupScalePolicyFixedScaleArgs.builder()
                .size(0)
                .build())
            .testAutoScale(ComputeInstanceGroupScalePolicyTestAutoScaleArgs.builder()
                .initialSize(0)
                .measurementDuration(0)
                .cpuUtilizationTarget(0)
                .customRules(ComputeInstanceGroupScalePolicyTestAutoScaleCustomRuleArgs.builder()
                    .metricName("string")
                    .metricType("string")
                    .ruleType("string")
                    .target(0)
                    .folderId("string")
                    .labels(Map.of("string", "string"))
                    .service("string")
                    .build())
                .maxSize(0)
                .minZoneSize(0)
                .stabilizationDuration(0)
                .warmupDuration(0)
                .build())
            .build())
        .deployPolicy(ComputeInstanceGroupDeployPolicyArgs.builder()
            .maxExpansion(0)
            .maxUnavailable(0)
            .maxCreating(0)
            .maxDeleting(0)
            .startupDuration(0)
            .strategy("string")
            .build())
        .instanceTemplate(ComputeInstanceGroupInstanceTemplateArgs.builder()
            .bootDisk(ComputeInstanceGroupInstanceTemplateBootDiskArgs.builder()
                .deviceName("string")
                .diskId("string")
                .initializeParams(ComputeInstanceGroupInstanceTemplateBootDiskInitializeParamsArgs.builder()
                    .description("string")
                    .imageId("string")
                    .size(0)
                    .snapshotId("string")
                    .type("string")
                    .build())
                .mode("string")
                .build())
            .resources(ComputeInstanceGroupInstanceTemplateResourcesArgs.builder()
                .cores(0)
                .memory(0)
                .coreFraction(0)
                .gpus(0)
                .build())
            .networkInterfaces(ComputeInstanceGroupInstanceTemplateNetworkInterfaceArgs.builder()
                .dnsRecords(ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecordArgs.builder()
                    .fqdn("string")
                    .dnsZoneId("string")
                    .ptr(false)
                    .ttl(0)
                    .build())
                .ipAddress("string")
                .ipv4(false)
                .ipv6(false)
                .ipv6Address("string")
                .ipv6DnsRecords(ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecordArgs.builder()
                    .fqdn("string")
                    .dnsZoneId("string")
                    .ptr(false)
                    .ttl(0)
                    .build())
                .nat(false)
                .natDnsRecords(ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecordArgs.builder()
                    .fqdn("string")
                    .dnsZoneId("string")
                    .ptr(false)
                    .ttl(0)
                    .build())
                .natIpAddress("string")
                .networkId("string")
                .securityGroupIds("string")
                .subnetIds("string")
                .build())
            .labels(Map.of("string", "string"))
            .metadata(Map.of("string", "string"))
            .name("string")
            .hostname("string")
            .networkSettings(ComputeInstanceGroupInstanceTemplateNetworkSettingArgs.builder()
                .type("string")
                .build())
            .placementPolicy(ComputeInstanceGroupInstanceTemplatePlacementPolicyArgs.builder()
                .placementGroupId("string")
                .build())
            .platformId("string")
            .description("string")
            .schedulingPolicy(ComputeInstanceGroupInstanceTemplateSchedulingPolicyArgs.builder()
                .preemptible(false)
                .build())
            .secondaryDisks(ComputeInstanceGroupInstanceTemplateSecondaryDiskArgs.builder()
                .deviceName("string")
                .diskId("string")
                .initializeParams(ComputeInstanceGroupInstanceTemplateSecondaryDiskInitializeParamsArgs.builder()
                    .description("string")
                    .imageId("string")
                    .size(0)
                    .snapshotId("string")
                    .type("string")
                    .build())
                .mode("string")
                .build())
            .serviceAccountId("string")
            .build())
        .healthChecks(ComputeInstanceGroupHealthCheckArgs.builder()
            .healthyThreshold(0)
            .httpOptions(ComputeInstanceGroupHealthCheckHttpOptionArgs.builder()
                .path("string")
                .port(0)
                .build())
            .interval(0)
            .tcpOptions(ComputeInstanceGroupHealthCheckTcpOptionsArgs.builder()
                .port(0)
                .build())
            .timeout(0)
            .unhealthyThreshold(0)
            .build())
        .folderId("string")
        .description("string")
        .labels(Map.of("string", "string"))
        .loadBalancer(ComputeInstanceGroupLoadBalancerArgs.builder()
            .maxOpeningTrafficDuration(0)
            .statusMessage("string")
            .targetGroupDescription("string")
            .targetGroupId("string")
            .targetGroupLabels(Map.of("string", "string"))
            .targetGroupName("string")
            .build())
        .maxCheckingHealthDuration(0)
        .name("string")
        .deletionProtection(false)
        .applicationLoadBalancer(ComputeInstanceGroupApplicationLoadBalancerArgs.builder()
            .maxOpeningTrafficDuration(0)
            .statusMessage("string")
            .targetGroupDescription("string")
            .targetGroupId("string")
            .targetGroupLabels(Map.of("string", "string"))
            .targetGroupName("string")
            .build())
        .variables(Map.of("string", "string"))
        .build());
    
    compute_instance_group_resource = yandex.ComputeInstanceGroup("computeInstanceGroupResource",
        allocation_policy={
            "zones": ["string"],
        },
        service_account_id="string",
        scale_policy={
            "auto_scale": {
                "initial_size": 0,
                "measurement_duration": 0,
                "cpu_utilization_target": 0,
                "custom_rules": [{
                    "metric_name": "string",
                    "metric_type": "string",
                    "rule_type": "string",
                    "target": 0,
                    "folder_id": "string",
                    "labels": {
                        "string": "string",
                    },
                    "service": "string",
                }],
                "max_size": 0,
                "min_zone_size": 0,
                "stabilization_duration": 0,
                "warmup_duration": 0,
            },
            "fixed_scale": {
                "size": 0,
            },
            "test_auto_scale": {
                "initial_size": 0,
                "measurement_duration": 0,
                "cpu_utilization_target": 0,
                "custom_rules": [{
                    "metric_name": "string",
                    "metric_type": "string",
                    "rule_type": "string",
                    "target": 0,
                    "folder_id": "string",
                    "labels": {
                        "string": "string",
                    },
                    "service": "string",
                }],
                "max_size": 0,
                "min_zone_size": 0,
                "stabilization_duration": 0,
                "warmup_duration": 0,
            },
        },
        deploy_policy={
            "max_expansion": 0,
            "max_unavailable": 0,
            "max_creating": 0,
            "max_deleting": 0,
            "startup_duration": 0,
            "strategy": "string",
        },
        instance_template={
            "boot_disk": {
                "device_name": "string",
                "disk_id": "string",
                "initialize_params": {
                    "description": "string",
                    "image_id": "string",
                    "size": 0,
                    "snapshot_id": "string",
                    "type": "string",
                },
                "mode": "string",
            },
            "resources": {
                "cores": 0,
                "memory": 0,
                "core_fraction": 0,
                "gpus": 0,
            },
            "network_interfaces": [{
                "dns_records": [{
                    "fqdn": "string",
                    "dns_zone_id": "string",
                    "ptr": False,
                    "ttl": 0,
                }],
                "ip_address": "string",
                "ipv4": False,
                "ipv6": False,
                "ipv6_address": "string",
                "ipv6_dns_records": [{
                    "fqdn": "string",
                    "dns_zone_id": "string",
                    "ptr": False,
                    "ttl": 0,
                }],
                "nat": False,
                "nat_dns_records": [{
                    "fqdn": "string",
                    "dns_zone_id": "string",
                    "ptr": False,
                    "ttl": 0,
                }],
                "nat_ip_address": "string",
                "network_id": "string",
                "security_group_ids": ["string"],
                "subnet_ids": ["string"],
            }],
            "labels": {
                "string": "string",
            },
            "metadata": {
                "string": "string",
            },
            "name": "string",
            "hostname": "string",
            "network_settings": [{
                "type": "string",
            }],
            "placement_policy": {
                "placement_group_id": "string",
            },
            "platform_id": "string",
            "description": "string",
            "scheduling_policy": {
                "preemptible": False,
            },
            "secondary_disks": [{
                "device_name": "string",
                "disk_id": "string",
                "initialize_params": {
                    "description": "string",
                    "image_id": "string",
                    "size": 0,
                    "snapshot_id": "string",
                    "type": "string",
                },
                "mode": "string",
            }],
            "service_account_id": "string",
        },
        health_checks=[{
            "healthy_threshold": 0,
            "http_options": [{
                "path": "string",
                "port": 0,
            }],
            "interval": 0,
            "tcp_options": {
                "port": 0,
            },
            "timeout": 0,
            "unhealthy_threshold": 0,
        }],
        folder_id="string",
        description="string",
        labels={
            "string": "string",
        },
        load_balancer={
            "max_opening_traffic_duration": 0,
            "status_message": "string",
            "target_group_description": "string",
            "target_group_id": "string",
            "target_group_labels": {
                "string": "string",
            },
            "target_group_name": "string",
        },
        max_checking_health_duration=0,
        name="string",
        deletion_protection=False,
        application_load_balancer={
            "max_opening_traffic_duration": 0,
            "status_message": "string",
            "target_group_description": "string",
            "target_group_id": "string",
            "target_group_labels": {
                "string": "string",
            },
            "target_group_name": "string",
        },
        variables={
            "string": "string",
        })
    
    const computeInstanceGroupResource = new yandex.ComputeInstanceGroup("computeInstanceGroupResource", {
        allocationPolicy: {
            zones: ["string"],
        },
        serviceAccountId: "string",
        scalePolicy: {
            autoScale: {
                initialSize: 0,
                measurementDuration: 0,
                cpuUtilizationTarget: 0,
                customRules: [{
                    metricName: "string",
                    metricType: "string",
                    ruleType: "string",
                    target: 0,
                    folderId: "string",
                    labels: {
                        string: "string",
                    },
                    service: "string",
                }],
                maxSize: 0,
                minZoneSize: 0,
                stabilizationDuration: 0,
                warmupDuration: 0,
            },
            fixedScale: {
                size: 0,
            },
            testAutoScale: {
                initialSize: 0,
                measurementDuration: 0,
                cpuUtilizationTarget: 0,
                customRules: [{
                    metricName: "string",
                    metricType: "string",
                    ruleType: "string",
                    target: 0,
                    folderId: "string",
                    labels: {
                        string: "string",
                    },
                    service: "string",
                }],
                maxSize: 0,
                minZoneSize: 0,
                stabilizationDuration: 0,
                warmupDuration: 0,
            },
        },
        deployPolicy: {
            maxExpansion: 0,
            maxUnavailable: 0,
            maxCreating: 0,
            maxDeleting: 0,
            startupDuration: 0,
            strategy: "string",
        },
        instanceTemplate: {
            bootDisk: {
                deviceName: "string",
                diskId: "string",
                initializeParams: {
                    description: "string",
                    imageId: "string",
                    size: 0,
                    snapshotId: "string",
                    type: "string",
                },
                mode: "string",
            },
            resources: {
                cores: 0,
                memory: 0,
                coreFraction: 0,
                gpus: 0,
            },
            networkInterfaces: [{
                dnsRecords: [{
                    fqdn: "string",
                    dnsZoneId: "string",
                    ptr: false,
                    ttl: 0,
                }],
                ipAddress: "string",
                ipv4: false,
                ipv6: false,
                ipv6Address: "string",
                ipv6DnsRecords: [{
                    fqdn: "string",
                    dnsZoneId: "string",
                    ptr: false,
                    ttl: 0,
                }],
                nat: false,
                natDnsRecords: [{
                    fqdn: "string",
                    dnsZoneId: "string",
                    ptr: false,
                    ttl: 0,
                }],
                natIpAddress: "string",
                networkId: "string",
                securityGroupIds: ["string"],
                subnetIds: ["string"],
            }],
            labels: {
                string: "string",
            },
            metadata: {
                string: "string",
            },
            name: "string",
            hostname: "string",
            networkSettings: [{
                type: "string",
            }],
            placementPolicy: {
                placementGroupId: "string",
            },
            platformId: "string",
            description: "string",
            schedulingPolicy: {
                preemptible: false,
            },
            secondaryDisks: [{
                deviceName: "string",
                diskId: "string",
                initializeParams: {
                    description: "string",
                    imageId: "string",
                    size: 0,
                    snapshotId: "string",
                    type: "string",
                },
                mode: "string",
            }],
            serviceAccountId: "string",
        },
        healthChecks: [{
            healthyThreshold: 0,
            httpOptions: [{
                path: "string",
                port: 0,
            }],
            interval: 0,
            tcpOptions: {
                port: 0,
            },
            timeout: 0,
            unhealthyThreshold: 0,
        }],
        folderId: "string",
        description: "string",
        labels: {
            string: "string",
        },
        loadBalancer: {
            maxOpeningTrafficDuration: 0,
            statusMessage: "string",
            targetGroupDescription: "string",
            targetGroupId: "string",
            targetGroupLabels: {
                string: "string",
            },
            targetGroupName: "string",
        },
        maxCheckingHealthDuration: 0,
        name: "string",
        deletionProtection: false,
        applicationLoadBalancer: {
            maxOpeningTrafficDuration: 0,
            statusMessage: "string",
            targetGroupDescription: "string",
            targetGroupId: "string",
            targetGroupLabels: {
                string: "string",
            },
            targetGroupName: "string",
        },
        variables: {
            string: "string",
        },
    });
    
    type: yandex:ComputeInstanceGroup
    properties:
        allocationPolicy:
            zones:
                - string
        applicationLoadBalancer:
            maxOpeningTrafficDuration: 0
            statusMessage: string
            targetGroupDescription: string
            targetGroupId: string
            targetGroupLabels:
                string: string
            targetGroupName: string
        deletionProtection: false
        deployPolicy:
            maxCreating: 0
            maxDeleting: 0
            maxExpansion: 0
            maxUnavailable: 0
            startupDuration: 0
            strategy: string
        description: string
        folderId: string
        healthChecks:
            - healthyThreshold: 0
              httpOptions:
                - path: string
                  port: 0
              interval: 0
              tcpOptions:
                port: 0
              timeout: 0
              unhealthyThreshold: 0
        instanceTemplate:
            bootDisk:
                deviceName: string
                diskId: string
                initializeParams:
                    description: string
                    imageId: string
                    size: 0
                    snapshotId: string
                    type: string
                mode: string
            description: string
            hostname: string
            labels:
                string: string
            metadata:
                string: string
            name: string
            networkInterfaces:
                - dnsRecords:
                    - dnsZoneId: string
                      fqdn: string
                      ptr: false
                      ttl: 0
                  ipAddress: string
                  ipv4: false
                  ipv6: false
                  ipv6Address: string
                  ipv6DnsRecords:
                    - dnsZoneId: string
                      fqdn: string
                      ptr: false
                      ttl: 0
                  nat: false
                  natDnsRecords:
                    - dnsZoneId: string
                      fqdn: string
                      ptr: false
                      ttl: 0
                  natIpAddress: string
                  networkId: string
                  securityGroupIds:
                    - string
                  subnetIds:
                    - string
            networkSettings:
                - type: string
            placementPolicy:
                placementGroupId: string
            platformId: string
            resources:
                coreFraction: 0
                cores: 0
                gpus: 0
                memory: 0
            schedulingPolicy:
                preemptible: false
            secondaryDisks:
                - deviceName: string
                  diskId: string
                  initializeParams:
                    description: string
                    imageId: string
                    size: 0
                    snapshotId: string
                    type: string
                  mode: string
            serviceAccountId: string
        labels:
            string: string
        loadBalancer:
            maxOpeningTrafficDuration: 0
            statusMessage: string
            targetGroupDescription: string
            targetGroupId: string
            targetGroupLabels:
                string: string
            targetGroupName: string
        maxCheckingHealthDuration: 0
        name: string
        scalePolicy:
            autoScale:
                cpuUtilizationTarget: 0
                customRules:
                    - folderId: string
                      labels:
                        string: string
                      metricName: string
                      metricType: string
                      ruleType: string
                      service: string
                      target: 0
                initialSize: 0
                maxSize: 0
                measurementDuration: 0
                minZoneSize: 0
                stabilizationDuration: 0
                warmupDuration: 0
            fixedScale:
                size: 0
            testAutoScale:
                cpuUtilizationTarget: 0
                customRules:
                    - folderId: string
                      labels:
                        string: string
                      metricName: string
                      metricType: string
                      ruleType: string
                      service: string
                      target: 0
                initialSize: 0
                maxSize: 0
                measurementDuration: 0
                minZoneSize: 0
                stabilizationDuration: 0
                warmupDuration: 0
        serviceAccountId: string
        variables:
            string: string
    

    ComputeInstanceGroup 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 ComputeInstanceGroup resource accepts the following input properties:

    AllocationPolicy ComputeInstanceGroupAllocationPolicy
    The allocation policy of the instance group by zone and region. The structure is documented below.
    DeployPolicy ComputeInstanceGroupDeployPolicy
    The deployment policy of the instance group. The structure is documented below.
    InstanceTemplate ComputeInstanceGroupInstanceTemplate
    The template for creating new instances. The structure is documented below.
    ScalePolicy ComputeInstanceGroupScalePolicy
    The scaling policy of the instance group. The structure is documented below.
    ServiceAccountId string
    The ID of the service account authorized for this instance.
    ApplicationLoadBalancer ComputeInstanceGroupApplicationLoadBalancer
    Application Load balancing (L7) specifications. The structure is documented below.
    DeletionProtection bool
    Flag that protects the instance group from accidental deletion.
    Description string
    A description of the boot disk.
    FolderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    HealthChecks List<ComputeInstanceGroupHealthCheck>
    Health check specifications. The structure is documented below.
    Labels Dictionary<string, string>
    A map of labels of metric.
    LoadBalancer ComputeInstanceGroupLoadBalancer
    Load balancing specifications. The structure is documented below.
    MaxCheckingHealthDuration int
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    Name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    Variables Dictionary<string, string>
    A set of key/value variables pairs to assign to the instance group.
    AllocationPolicy ComputeInstanceGroupAllocationPolicyArgs
    The allocation policy of the instance group by zone and region. The structure is documented below.
    DeployPolicy ComputeInstanceGroupDeployPolicyArgs
    The deployment policy of the instance group. The structure is documented below.
    InstanceTemplate ComputeInstanceGroupInstanceTemplateArgs
    The template for creating new instances. The structure is documented below.
    ScalePolicy ComputeInstanceGroupScalePolicyArgs
    The scaling policy of the instance group. The structure is documented below.
    ServiceAccountId string
    The ID of the service account authorized for this instance.
    ApplicationLoadBalancer ComputeInstanceGroupApplicationLoadBalancerArgs
    Application Load balancing (L7) specifications. The structure is documented below.
    DeletionProtection bool
    Flag that protects the instance group from accidental deletion.
    Description string
    A description of the boot disk.
    FolderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    HealthChecks []ComputeInstanceGroupHealthCheckArgs
    Health check specifications. The structure is documented below.
    Labels map[string]string
    A map of labels of metric.
    LoadBalancer ComputeInstanceGroupLoadBalancerArgs
    Load balancing specifications. The structure is documented below.
    MaxCheckingHealthDuration int
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    Name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    Variables map[string]string
    A set of key/value variables pairs to assign to the instance group.
    allocationPolicy ComputeInstanceGroupAllocationPolicy
    The allocation policy of the instance group by zone and region. The structure is documented below.
    deployPolicy ComputeInstanceGroupDeployPolicy
    The deployment policy of the instance group. The structure is documented below.
    instanceTemplate ComputeInstanceGroupInstanceTemplate
    The template for creating new instances. The structure is documented below.
    scalePolicy ComputeInstanceGroupScalePolicy
    The scaling policy of the instance group. The structure is documented below.
    serviceAccountId String
    The ID of the service account authorized for this instance.
    applicationLoadBalancer ComputeInstanceGroupApplicationLoadBalancer
    Application Load balancing (L7) specifications. The structure is documented below.
    deletionProtection Boolean
    Flag that protects the instance group from accidental deletion.
    description String
    A description of the boot disk.
    folderId String
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    healthChecks List<ComputeInstanceGroupHealthCheck>
    Health check specifications. The structure is documented below.
    labels Map<String,String>
    A map of labels of metric.
    loadBalancer ComputeInstanceGroupLoadBalancer
    Load balancing specifications. The structure is documented below.
    maxCheckingHealthDuration Integer
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    name String
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    variables Map<String,String>
    A set of key/value variables pairs to assign to the instance group.
    allocationPolicy ComputeInstanceGroupAllocationPolicy
    The allocation policy of the instance group by zone and region. The structure is documented below.
    deployPolicy ComputeInstanceGroupDeployPolicy
    The deployment policy of the instance group. The structure is documented below.
    instanceTemplate ComputeInstanceGroupInstanceTemplate
    The template for creating new instances. The structure is documented below.
    scalePolicy ComputeInstanceGroupScalePolicy
    The scaling policy of the instance group. The structure is documented below.
    serviceAccountId string
    The ID of the service account authorized for this instance.
    applicationLoadBalancer ComputeInstanceGroupApplicationLoadBalancer
    Application Load balancing (L7) specifications. The structure is documented below.
    deletionProtection boolean
    Flag that protects the instance group from accidental deletion.
    description string
    A description of the boot disk.
    folderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    healthChecks ComputeInstanceGroupHealthCheck[]
    Health check specifications. The structure is documented below.
    labels {[key: string]: string}
    A map of labels of metric.
    loadBalancer ComputeInstanceGroupLoadBalancer
    Load balancing specifications. The structure is documented below.
    maxCheckingHealthDuration number
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    variables {[key: string]: string}
    A set of key/value variables pairs to assign to the instance group.
    allocation_policy ComputeInstanceGroupAllocationPolicyArgs
    The allocation policy of the instance group by zone and region. The structure is documented below.
    deploy_policy ComputeInstanceGroupDeployPolicyArgs
    The deployment policy of the instance group. The structure is documented below.
    instance_template ComputeInstanceGroupInstanceTemplateArgs
    The template for creating new instances. The structure is documented below.
    scale_policy ComputeInstanceGroupScalePolicyArgs
    The scaling policy of the instance group. The structure is documented below.
    service_account_id str
    The ID of the service account authorized for this instance.
    application_load_balancer ComputeInstanceGroupApplicationLoadBalancerArgs
    Application Load balancing (L7) specifications. The structure is documented below.
    deletion_protection bool
    Flag that protects the instance group from accidental deletion.
    description str
    A description of the boot disk.
    folder_id str
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    health_checks Sequence[ComputeInstanceGroupHealthCheckArgs]
    Health check specifications. The structure is documented below.
    labels Mapping[str, str]
    A map of labels of metric.
    load_balancer ComputeInstanceGroupLoadBalancerArgs
    Load balancing specifications. The structure is documented below.
    max_checking_health_duration int
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    name str
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    variables Mapping[str, str]
    A set of key/value variables pairs to assign to the instance group.
    allocationPolicy Property Map
    The allocation policy of the instance group by zone and region. The structure is documented below.
    deployPolicy Property Map
    The deployment policy of the instance group. The structure is documented below.
    instanceTemplate Property Map
    The template for creating new instances. The structure is documented below.
    scalePolicy Property Map
    The scaling policy of the instance group. The structure is documented below.
    serviceAccountId String
    The ID of the service account authorized for this instance.
    applicationLoadBalancer Property Map
    Application Load balancing (L7) specifications. The structure is documented below.
    deletionProtection Boolean
    Flag that protects the instance group from accidental deletion.
    description String
    A description of the boot disk.
    folderId String
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    healthChecks List<Property Map>
    Health check specifications. The structure is documented below.
    labels Map<String>
    A map of labels of metric.
    loadBalancer Property Map
    Load balancing specifications. The structure is documented below.
    maxCheckingHealthDuration Number
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    name String
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    variables Map<String>
    A set of key/value variables pairs to assign to the instance group.

    Outputs

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

    CreatedAt string
    The instance group creation timestamp.
    Id string
    The provider-assigned unique ID for this managed resource.
    Instances List<ComputeInstanceGroupInstance>
    Status string
    The status of the instance.
    CreatedAt string
    The instance group creation timestamp.
    Id string
    The provider-assigned unique ID for this managed resource.
    Instances []ComputeInstanceGroupInstance
    Status string
    The status of the instance.
    createdAt String
    The instance group creation timestamp.
    id String
    The provider-assigned unique ID for this managed resource.
    instances List<ComputeInstanceGroupInstance>
    status String
    The status of the instance.
    createdAt string
    The instance group creation timestamp.
    id string
    The provider-assigned unique ID for this managed resource.
    instances ComputeInstanceGroupInstance[]
    status string
    The status of the instance.
    created_at str
    The instance group creation timestamp.
    id str
    The provider-assigned unique ID for this managed resource.
    instances Sequence[ComputeInstanceGroupInstance]
    status str
    The status of the instance.
    createdAt String
    The instance group creation timestamp.
    id String
    The provider-assigned unique ID for this managed resource.
    instances List<Property Map>
    status String
    The status of the instance.

    Look up Existing ComputeInstanceGroup Resource

    Get an existing ComputeInstanceGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ComputeInstanceGroupState, opts?: CustomResourceOptions): ComputeInstanceGroup
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            allocation_policy: Optional[ComputeInstanceGroupAllocationPolicyArgs] = None,
            application_load_balancer: Optional[ComputeInstanceGroupApplicationLoadBalancerArgs] = None,
            created_at: Optional[str] = None,
            deletion_protection: Optional[bool] = None,
            deploy_policy: Optional[ComputeInstanceGroupDeployPolicyArgs] = None,
            description: Optional[str] = None,
            folder_id: Optional[str] = None,
            health_checks: Optional[Sequence[ComputeInstanceGroupHealthCheckArgs]] = None,
            instance_template: Optional[ComputeInstanceGroupInstanceTemplateArgs] = None,
            instances: Optional[Sequence[ComputeInstanceGroupInstanceArgs]] = None,
            labels: Optional[Mapping[str, str]] = None,
            load_balancer: Optional[ComputeInstanceGroupLoadBalancerArgs] = None,
            max_checking_health_duration: Optional[int] = None,
            name: Optional[str] = None,
            scale_policy: Optional[ComputeInstanceGroupScalePolicyArgs] = None,
            service_account_id: Optional[str] = None,
            status: Optional[str] = None,
            variables: Optional[Mapping[str, str]] = None) -> ComputeInstanceGroup
    func GetComputeInstanceGroup(ctx *Context, name string, id IDInput, state *ComputeInstanceGroupState, opts ...ResourceOption) (*ComputeInstanceGroup, error)
    public static ComputeInstanceGroup Get(string name, Input<string> id, ComputeInstanceGroupState? state, CustomResourceOptions? opts = null)
    public static ComputeInstanceGroup get(String name, Output<String> id, ComputeInstanceGroupState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    AllocationPolicy ComputeInstanceGroupAllocationPolicy
    The allocation policy of the instance group by zone and region. The structure is documented below.
    ApplicationLoadBalancer ComputeInstanceGroupApplicationLoadBalancer
    Application Load balancing (L7) specifications. The structure is documented below.
    CreatedAt string
    The instance group creation timestamp.
    DeletionProtection bool
    Flag that protects the instance group from accidental deletion.
    DeployPolicy ComputeInstanceGroupDeployPolicy
    The deployment policy of the instance group. The structure is documented below.
    Description string
    A description of the boot disk.
    FolderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    HealthChecks List<ComputeInstanceGroupHealthCheck>
    Health check specifications. The structure is documented below.
    InstanceTemplate ComputeInstanceGroupInstanceTemplate
    The template for creating new instances. The structure is documented below.
    Instances List<ComputeInstanceGroupInstance>
    Labels Dictionary<string, string>
    A map of labels of metric.
    LoadBalancer ComputeInstanceGroupLoadBalancer
    Load balancing specifications. The structure is documented below.
    MaxCheckingHealthDuration int
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    Name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    ScalePolicy ComputeInstanceGroupScalePolicy
    The scaling policy of the instance group. The structure is documented below.
    ServiceAccountId string
    The ID of the service account authorized for this instance.
    Status string
    The status of the instance.
    Variables Dictionary<string, string>
    A set of key/value variables pairs to assign to the instance group.
    AllocationPolicy ComputeInstanceGroupAllocationPolicyArgs
    The allocation policy of the instance group by zone and region. The structure is documented below.
    ApplicationLoadBalancer ComputeInstanceGroupApplicationLoadBalancerArgs
    Application Load balancing (L7) specifications. The structure is documented below.
    CreatedAt string
    The instance group creation timestamp.
    DeletionProtection bool
    Flag that protects the instance group from accidental deletion.
    DeployPolicy ComputeInstanceGroupDeployPolicyArgs
    The deployment policy of the instance group. The structure is documented below.
    Description string
    A description of the boot disk.
    FolderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    HealthChecks []ComputeInstanceGroupHealthCheckArgs
    Health check specifications. The structure is documented below.
    InstanceTemplate ComputeInstanceGroupInstanceTemplateArgs
    The template for creating new instances. The structure is documented below.
    Instances []ComputeInstanceGroupInstanceArgs
    Labels map[string]string
    A map of labels of metric.
    LoadBalancer ComputeInstanceGroupLoadBalancerArgs
    Load balancing specifications. The structure is documented below.
    MaxCheckingHealthDuration int
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    Name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    ScalePolicy ComputeInstanceGroupScalePolicyArgs
    The scaling policy of the instance group. The structure is documented below.
    ServiceAccountId string
    The ID of the service account authorized for this instance.
    Status string
    The status of the instance.
    Variables map[string]string
    A set of key/value variables pairs to assign to the instance group.
    allocationPolicy ComputeInstanceGroupAllocationPolicy
    The allocation policy of the instance group by zone and region. The structure is documented below.
    applicationLoadBalancer ComputeInstanceGroupApplicationLoadBalancer
    Application Load balancing (L7) specifications. The structure is documented below.
    createdAt String
    The instance group creation timestamp.
    deletionProtection Boolean
    Flag that protects the instance group from accidental deletion.
    deployPolicy ComputeInstanceGroupDeployPolicy
    The deployment policy of the instance group. The structure is documented below.
    description String
    A description of the boot disk.
    folderId String
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    healthChecks List<ComputeInstanceGroupHealthCheck>
    Health check specifications. The structure is documented below.
    instanceTemplate ComputeInstanceGroupInstanceTemplate
    The template for creating new instances. The structure is documented below.
    instances List<ComputeInstanceGroupInstance>
    labels Map<String,String>
    A map of labels of metric.
    loadBalancer ComputeInstanceGroupLoadBalancer
    Load balancing specifications. The structure is documented below.
    maxCheckingHealthDuration Integer
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    name String
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    scalePolicy ComputeInstanceGroupScalePolicy
    The scaling policy of the instance group. The structure is documented below.
    serviceAccountId String
    The ID of the service account authorized for this instance.
    status String
    The status of the instance.
    variables Map<String,String>
    A set of key/value variables pairs to assign to the instance group.
    allocationPolicy ComputeInstanceGroupAllocationPolicy
    The allocation policy of the instance group by zone and region. The structure is documented below.
    applicationLoadBalancer ComputeInstanceGroupApplicationLoadBalancer
    Application Load balancing (L7) specifications. The structure is documented below.
    createdAt string
    The instance group creation timestamp.
    deletionProtection boolean
    Flag that protects the instance group from accidental deletion.
    deployPolicy ComputeInstanceGroupDeployPolicy
    The deployment policy of the instance group. The structure is documented below.
    description string
    A description of the boot disk.
    folderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    healthChecks ComputeInstanceGroupHealthCheck[]
    Health check specifications. The structure is documented below.
    instanceTemplate ComputeInstanceGroupInstanceTemplate
    The template for creating new instances. The structure is documented below.
    instances ComputeInstanceGroupInstance[]
    labels {[key: string]: string}
    A map of labels of metric.
    loadBalancer ComputeInstanceGroupLoadBalancer
    Load balancing specifications. The structure is documented below.
    maxCheckingHealthDuration number
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    scalePolicy ComputeInstanceGroupScalePolicy
    The scaling policy of the instance group. The structure is documented below.
    serviceAccountId string
    The ID of the service account authorized for this instance.
    status string
    The status of the instance.
    variables {[key: string]: string}
    A set of key/value variables pairs to assign to the instance group.
    allocation_policy ComputeInstanceGroupAllocationPolicyArgs
    The allocation policy of the instance group by zone and region. The structure is documented below.
    application_load_balancer ComputeInstanceGroupApplicationLoadBalancerArgs
    Application Load balancing (L7) specifications. The structure is documented below.
    created_at str
    The instance group creation timestamp.
    deletion_protection bool
    Flag that protects the instance group from accidental deletion.
    deploy_policy ComputeInstanceGroupDeployPolicyArgs
    The deployment policy of the instance group. The structure is documented below.
    description str
    A description of the boot disk.
    folder_id str
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    health_checks Sequence[ComputeInstanceGroupHealthCheckArgs]
    Health check specifications. The structure is documented below.
    instance_template ComputeInstanceGroupInstanceTemplateArgs
    The template for creating new instances. The structure is documented below.
    instances Sequence[ComputeInstanceGroupInstanceArgs]
    labels Mapping[str, str]
    A map of labels of metric.
    load_balancer ComputeInstanceGroupLoadBalancerArgs
    Load balancing specifications. The structure is documented below.
    max_checking_health_duration int
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    name str
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    scale_policy ComputeInstanceGroupScalePolicyArgs
    The scaling policy of the instance group. The structure is documented below.
    service_account_id str
    The ID of the service account authorized for this instance.
    status str
    The status of the instance.
    variables Mapping[str, str]
    A set of key/value variables pairs to assign to the instance group.
    allocationPolicy Property Map
    The allocation policy of the instance group by zone and region. The structure is documented below.
    applicationLoadBalancer Property Map
    Application Load balancing (L7) specifications. The structure is documented below.
    createdAt String
    The instance group creation timestamp.
    deletionProtection Boolean
    Flag that protects the instance group from accidental deletion.
    deployPolicy Property Map
    The deployment policy of the instance group. The structure is documented below.
    description String
    A description of the boot disk.
    folderId String
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    healthChecks List<Property Map>
    Health check specifications. The structure is documented below.
    instanceTemplate Property Map
    The template for creating new instances. The structure is documented below.
    instances List<Property Map>
    labels Map<String>
    A map of labels of metric.
    loadBalancer Property Map
    Load balancing specifications. The structure is documented below.
    maxCheckingHealthDuration Number
    Timeout for waiting for the VM to become healthy. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    name String
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    scalePolicy Property Map
    The scaling policy of the instance group. The structure is documented below.
    serviceAccountId String
    The ID of the service account authorized for this instance.
    status String
    The status of the instance.
    variables Map<String>
    A set of key/value variables pairs to assign to the instance group.

    Supporting Types

    ComputeInstanceGroupAllocationPolicy, ComputeInstanceGroupAllocationPolicyArgs

    Zones List<string>
    A list of availability zones.
    Zones []string
    A list of availability zones.
    zones List<String>
    A list of availability zones.
    zones string[]
    A list of availability zones.
    zones Sequence[str]
    A list of availability zones.
    zones List<String>
    A list of availability zones.

    ComputeInstanceGroupApplicationLoadBalancer, ComputeInstanceGroupApplicationLoadBalancerArgs

    MaxOpeningTrafficDuration int
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    StatusMessage string
    The status message of the instance.
    TargetGroupDescription string
    A description of the target group.
    TargetGroupId string
    TargetGroupLabels Dictionary<string, string>
    A set of key/value label pairs.
    TargetGroupName string
    The name of the target group.
    MaxOpeningTrafficDuration int
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    StatusMessage string
    The status message of the instance.
    TargetGroupDescription string
    A description of the target group.
    TargetGroupId string
    TargetGroupLabels map[string]string
    A set of key/value label pairs.
    TargetGroupName string
    The name of the target group.
    maxOpeningTrafficDuration Integer
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    statusMessage String
    The status message of the instance.
    targetGroupDescription String
    A description of the target group.
    targetGroupId String
    targetGroupLabels Map<String,String>
    A set of key/value label pairs.
    targetGroupName String
    The name of the target group.
    maxOpeningTrafficDuration number
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    statusMessage string
    The status message of the instance.
    targetGroupDescription string
    A description of the target group.
    targetGroupId string
    targetGroupLabels {[key: string]: string}
    A set of key/value label pairs.
    targetGroupName string
    The name of the target group.
    max_opening_traffic_duration int
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    status_message str
    The status message of the instance.
    target_group_description str
    A description of the target group.
    target_group_id str
    target_group_labels Mapping[str, str]
    A set of key/value label pairs.
    target_group_name str
    The name of the target group.
    maxOpeningTrafficDuration Number
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    statusMessage String
    The status message of the instance.
    targetGroupDescription String
    A description of the target group.
    targetGroupId String
    targetGroupLabels Map<String>
    A set of key/value label pairs.
    targetGroupName String
    The name of the target group.

    ComputeInstanceGroupDeployPolicy, ComputeInstanceGroupDeployPolicyArgs

    MaxExpansion int
    The maximum number of instances that can be temporarily allocated above the group's target size during the update process.
    MaxUnavailable int
    The maximum number of running instances that can be taken offline (stopped or deleted) at the same time during the update process.
    MaxCreating int
    The maximum number of instances that can be created at the same time.
    MaxDeleting int
    The maximum number of instances that can be deleted at the same time.
    StartupDuration int
    The amount of time in seconds to allow for an instance to start. Instance will be considered up and running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed.
    Strategy string
    Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy.
    MaxExpansion int
    The maximum number of instances that can be temporarily allocated above the group's target size during the update process.
    MaxUnavailable int
    The maximum number of running instances that can be taken offline (stopped or deleted) at the same time during the update process.
    MaxCreating int
    The maximum number of instances that can be created at the same time.
    MaxDeleting int
    The maximum number of instances that can be deleted at the same time.
    StartupDuration int
    The amount of time in seconds to allow for an instance to start. Instance will be considered up and running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed.
    Strategy string
    Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy.
    maxExpansion Integer
    The maximum number of instances that can be temporarily allocated above the group's target size during the update process.
    maxUnavailable Integer
    The maximum number of running instances that can be taken offline (stopped or deleted) at the same time during the update process.
    maxCreating Integer
    The maximum number of instances that can be created at the same time.
    maxDeleting Integer
    The maximum number of instances that can be deleted at the same time.
    startupDuration Integer
    The amount of time in seconds to allow for an instance to start. Instance will be considered up and running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed.
    strategy String
    Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy.
    maxExpansion number
    The maximum number of instances that can be temporarily allocated above the group's target size during the update process.
    maxUnavailable number
    The maximum number of running instances that can be taken offline (stopped or deleted) at the same time during the update process.
    maxCreating number
    The maximum number of instances that can be created at the same time.
    maxDeleting number
    The maximum number of instances that can be deleted at the same time.
    startupDuration number
    The amount of time in seconds to allow for an instance to start. Instance will be considered up and running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed.
    strategy string
    Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy.
    max_expansion int
    The maximum number of instances that can be temporarily allocated above the group's target size during the update process.
    max_unavailable int
    The maximum number of running instances that can be taken offline (stopped or deleted) at the same time during the update process.
    max_creating int
    The maximum number of instances that can be created at the same time.
    max_deleting int
    The maximum number of instances that can be deleted at the same time.
    startup_duration int
    The amount of time in seconds to allow for an instance to start. Instance will be considered up and running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed.
    strategy str
    Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy.
    maxExpansion Number
    The maximum number of instances that can be temporarily allocated above the group's target size during the update process.
    maxUnavailable Number
    The maximum number of running instances that can be taken offline (stopped or deleted) at the same time during the update process.
    maxCreating Number
    The maximum number of instances that can be created at the same time.
    maxDeleting Number
    The maximum number of instances that can be deleted at the same time.
    startupDuration Number
    The amount of time in seconds to allow for an instance to start. Instance will be considered up and running (and start receiving traffic) only after the startup_duration has elapsed and all health checks are passed.
    strategy String
    Affects the lifecycle of the instance during deployment. If set to proactive (default), Instance Groups can forcefully stop a running instance. If opportunistic, Instance Groups does not stop a running instance. Instead, it will wait until the instance stops itself or becomes unhealthy.

    ComputeInstanceGroupHealthCheck, ComputeInstanceGroupHealthCheckArgs

    HealthyThreshold int
    The number of successful health checks before the managed instance is declared healthy.
    HttpOptions List<ComputeInstanceGroupHealthCheckHttpOption>
    HTTP check options. The structure is documented below.
    Interval int
    The interval to wait between health checks in seconds.
    TcpOptions ComputeInstanceGroupHealthCheckTcpOptions
    TCP check options. The structure is documented below.
    Timeout int
    The length of time to wait for a response before the health check times out in seconds.
    UnhealthyThreshold int
    The number of failed health checks before the managed instance is declared unhealthy.
    HealthyThreshold int
    The number of successful health checks before the managed instance is declared healthy.
    HttpOptions []ComputeInstanceGroupHealthCheckHttpOption
    HTTP check options. The structure is documented below.
    Interval int
    The interval to wait between health checks in seconds.
    TcpOptions ComputeInstanceGroupHealthCheckTcpOptions
    TCP check options. The structure is documented below.
    Timeout int
    The length of time to wait for a response before the health check times out in seconds.
    UnhealthyThreshold int
    The number of failed health checks before the managed instance is declared unhealthy.
    healthyThreshold Integer
    The number of successful health checks before the managed instance is declared healthy.
    httpOptions List<ComputeInstanceGroupHealthCheckHttpOption>
    HTTP check options. The structure is documented below.
    interval Integer
    The interval to wait between health checks in seconds.
    tcpOptions ComputeInstanceGroupHealthCheckTcpOptions
    TCP check options. The structure is documented below.
    timeout Integer
    The length of time to wait for a response before the health check times out in seconds.
    unhealthyThreshold Integer
    The number of failed health checks before the managed instance is declared unhealthy.
    healthyThreshold number
    The number of successful health checks before the managed instance is declared healthy.
    httpOptions ComputeInstanceGroupHealthCheckHttpOption[]
    HTTP check options. The structure is documented below.
    interval number
    The interval to wait between health checks in seconds.
    tcpOptions ComputeInstanceGroupHealthCheckTcpOptions
    TCP check options. The structure is documented below.
    timeout number
    The length of time to wait for a response before the health check times out in seconds.
    unhealthyThreshold number
    The number of failed health checks before the managed instance is declared unhealthy.
    healthy_threshold int
    The number of successful health checks before the managed instance is declared healthy.
    http_options Sequence[ComputeInstanceGroupHealthCheckHttpOption]
    HTTP check options. The structure is documented below.
    interval int
    The interval to wait between health checks in seconds.
    tcp_options ComputeInstanceGroupHealthCheckTcpOptions
    TCP check options. The structure is documented below.
    timeout int
    The length of time to wait for a response before the health check times out in seconds.
    unhealthy_threshold int
    The number of failed health checks before the managed instance is declared unhealthy.
    healthyThreshold Number
    The number of successful health checks before the managed instance is declared healthy.
    httpOptions List<Property Map>
    HTTP check options. The structure is documented below.
    interval Number
    The interval to wait between health checks in seconds.
    tcpOptions Property Map
    TCP check options. The structure is documented below.
    timeout Number
    The length of time to wait for a response before the health check times out in seconds.
    unhealthyThreshold Number
    The number of failed health checks before the managed instance is declared unhealthy.

    ComputeInstanceGroupHealthCheckHttpOption, ComputeInstanceGroupHealthCheckHttpOptionArgs

    Path string
    The URL path used for health check requests.
    Port int
    The port used for TCP health checks.
    Path string
    The URL path used for health check requests.
    Port int
    The port used for TCP health checks.
    path String
    The URL path used for health check requests.
    port Integer
    The port used for TCP health checks.
    path string
    The URL path used for health check requests.
    port number
    The port used for TCP health checks.
    path str
    The URL path used for health check requests.
    port int
    The port used for TCP health checks.
    path String
    The URL path used for health check requests.
    port Number
    The port used for TCP health checks.

    ComputeInstanceGroupHealthCheckTcpOptions, ComputeInstanceGroupHealthCheckTcpOptionsArgs

    Port int
    The port used for TCP health checks.
    Port int
    The port used for TCP health checks.
    port Integer
    The port used for TCP health checks.
    port number
    The port used for TCP health checks.
    port int
    The port used for TCP health checks.
    port Number
    The port used for TCP health checks.

    ComputeInstanceGroupInstance, ComputeInstanceGroupInstanceArgs

    Fqdn string
    DNS record fqdn (must have dot at the end).
    InstanceId string
    The ID of the instance.
    Name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    NetworkInterfaces List<ComputeInstanceGroupInstanceNetworkInterface>
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    Status string
    The status of the instance.
    StatusChangedAt string
    StatusMessage string
    The status message of the instance.
    ZoneId string
    The ID of the availability zone where the instance resides.
    Fqdn string
    DNS record fqdn (must have dot at the end).
    InstanceId string
    The ID of the instance.
    Name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    NetworkInterfaces []ComputeInstanceGroupInstanceNetworkInterface
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    Status string
    The status of the instance.
    StatusChangedAt string
    StatusMessage string
    The status message of the instance.
    ZoneId string
    The ID of the availability zone where the instance resides.
    fqdn String
    DNS record fqdn (must have dot at the end).
    instanceId String
    The ID of the instance.
    name String
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    networkInterfaces List<ComputeInstanceGroupInstanceNetworkInterface>
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    status String
    The status of the instance.
    statusChangedAt String
    statusMessage String
    The status message of the instance.
    zoneId String
    The ID of the availability zone where the instance resides.
    fqdn string
    DNS record fqdn (must have dot at the end).
    instanceId string
    The ID of the instance.
    name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    networkInterfaces ComputeInstanceGroupInstanceNetworkInterface[]
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    status string
    The status of the instance.
    statusChangedAt string
    statusMessage string
    The status message of the instance.
    zoneId string
    The ID of the availability zone where the instance resides.
    fqdn str
    DNS record fqdn (must have dot at the end).
    instance_id str
    The ID of the instance.
    name str
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    network_interfaces Sequence[ComputeInstanceGroupInstanceNetworkInterface]
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    status str
    The status of the instance.
    status_changed_at str
    status_message str
    The status message of the instance.
    zone_id str
    The ID of the availability zone where the instance resides.
    fqdn String
    DNS record fqdn (must have dot at the end).
    instanceId String
    The ID of the instance.
    name String
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    networkInterfaces List<Property Map>
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    status String
    The status of the instance.
    statusChangedAt String
    statusMessage String
    The status message of the instance.
    zoneId String
    The ID of the availability zone where the instance resides.

    ComputeInstanceGroupInstanceNetworkInterface, ComputeInstanceGroupInstanceNetworkInterfaceArgs

    Index int
    The index of the network interface as generated by the server.
    IpAddress string
    Manual set static IP address.
    Ipv4 bool
    True if IPv4 address allocated for the network interface.
    Ipv6 bool
    Ipv6Address string
    Manual set static IPv6 address.
    MacAddress string
    The MAC address assigned to the network interface.
    Nat bool
    Flag for using NAT.
    NatIpAddress string
    A public address that can be used to access the internet over NAT. Use variables to set.
    NatIpVersion string
    The IP version for the public address.
    SubnetId string
    The ID of the subnet to attach this interface to. The subnet must reside in the same zone where this instance was created.
    Index int
    The index of the network interface as generated by the server.
    IpAddress string
    Manual set static IP address.
    Ipv4 bool
    True if IPv4 address allocated for the network interface.
    Ipv6 bool
    Ipv6Address string
    Manual set static IPv6 address.
    MacAddress string
    The MAC address assigned to the network interface.
    Nat bool
    Flag for using NAT.
    NatIpAddress string
    A public address that can be used to access the internet over NAT. Use variables to set.
    NatIpVersion string
    The IP version for the public address.
    SubnetId string
    The ID of the subnet to attach this interface to. The subnet must reside in the same zone where this instance was created.
    index Integer
    The index of the network interface as generated by the server.
    ipAddress String
    Manual set static IP address.
    ipv4 Boolean
    True if IPv4 address allocated for the network interface.
    ipv6 Boolean
    ipv6Address String
    Manual set static IPv6 address.
    macAddress String
    The MAC address assigned to the network interface.
    nat Boolean
    Flag for using NAT.
    natIpAddress String
    A public address that can be used to access the internet over NAT. Use variables to set.
    natIpVersion String
    The IP version for the public address.
    subnetId String
    The ID of the subnet to attach this interface to. The subnet must reside in the same zone where this instance was created.
    index number
    The index of the network interface as generated by the server.
    ipAddress string
    Manual set static IP address.
    ipv4 boolean
    True if IPv4 address allocated for the network interface.
    ipv6 boolean
    ipv6Address string
    Manual set static IPv6 address.
    macAddress string
    The MAC address assigned to the network interface.
    nat boolean
    Flag for using NAT.
    natIpAddress string
    A public address that can be used to access the internet over NAT. Use variables to set.
    natIpVersion string
    The IP version for the public address.
    subnetId string
    The ID of the subnet to attach this interface to. The subnet must reside in the same zone where this instance was created.
    index int
    The index of the network interface as generated by the server.
    ip_address str
    Manual set static IP address.
    ipv4 bool
    True if IPv4 address allocated for the network interface.
    ipv6 bool
    ipv6_address str
    Manual set static IPv6 address.
    mac_address str
    The MAC address assigned to the network interface.
    nat bool
    Flag for using NAT.
    nat_ip_address str
    A public address that can be used to access the internet over NAT. Use variables to set.
    nat_ip_version str
    The IP version for the public address.
    subnet_id str
    The ID of the subnet to attach this interface to. The subnet must reside in the same zone where this instance was created.
    index Number
    The index of the network interface as generated by the server.
    ipAddress String
    Manual set static IP address.
    ipv4 Boolean
    True if IPv4 address allocated for the network interface.
    ipv6 Boolean
    ipv6Address String
    Manual set static IPv6 address.
    macAddress String
    The MAC address assigned to the network interface.
    nat Boolean
    Flag for using NAT.
    natIpAddress String
    A public address that can be used to access the internet over NAT. Use variables to set.
    natIpVersion String
    The IP version for the public address.
    subnetId String
    The ID of the subnet to attach this interface to. The subnet must reside in the same zone where this instance was created.

    ComputeInstanceGroupInstanceTemplate, ComputeInstanceGroupInstanceTemplateArgs

    BootDisk ComputeInstanceGroupInstanceTemplateBootDisk
    Boot disk specifications for the instance. The structure is documented below.
    NetworkInterfaces List<ComputeInstanceGroupInstanceTemplateNetworkInterface>
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    Resources ComputeInstanceGroupInstanceTemplateResources
    Compute resource specifications for the instance. The structure is documented below.
    Description string
    A description of the boot disk.
    Hostname string
    Hostname template for the instance.
    This field is used to generate the FQDN value of instance. The hostname must be unique within the network and region. If not specified, the hostname will be equal to id of the instance and FQDN will be <id>.auto.internal. Otherwise FQDN will be <hostname>.<region_id>.internal. In order to be unique it must contain at least on of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, name value will be used It may also contain another placeholders, see metadata doc for full list.
    Labels Dictionary<string, string>
    A map of labels of metric.
    Metadata Dictionary<string, string>
    A set of metadata key/value pairs to make available from within the instance.
    Name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    NetworkSettings List<ComputeInstanceGroupInstanceTemplateNetworkSetting>
    Network acceleration type for instance. The structure is documented below.
    PlacementPolicy ComputeInstanceGroupInstanceTemplatePlacementPolicy
    The placement policy configuration. The structure is documented below.
    PlatformId string
    The ID of the hardware platform configuration for the instance. The default is 'standard-v1'.
    SchedulingPolicy ComputeInstanceGroupInstanceTemplateSchedulingPolicy
    The scheduling policy configuration. The structure is documented below.
    SecondaryDisks List<ComputeInstanceGroupInstanceTemplateSecondaryDisk>
    A list of disks to attach to the instance. The structure is documented below.
    ServiceAccountId string
    The ID of the service account authorized for this instance.
    BootDisk ComputeInstanceGroupInstanceTemplateBootDisk
    Boot disk specifications for the instance. The structure is documented below.
    NetworkInterfaces []ComputeInstanceGroupInstanceTemplateNetworkInterface
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    Resources ComputeInstanceGroupInstanceTemplateResources
    Compute resource specifications for the instance. The structure is documented below.
    Description string
    A description of the boot disk.
    Hostname string
    Hostname template for the instance.
    This field is used to generate the FQDN value of instance. The hostname must be unique within the network and region. If not specified, the hostname will be equal to id of the instance and FQDN will be <id>.auto.internal. Otherwise FQDN will be <hostname>.<region_id>.internal. In order to be unique it must contain at least on of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, name value will be used It may also contain another placeholders, see metadata doc for full list.
    Labels map[string]string
    A map of labels of metric.
    Metadata map[string]string
    A set of metadata key/value pairs to make available from within the instance.
    Name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    NetworkSettings []ComputeInstanceGroupInstanceTemplateNetworkSetting
    Network acceleration type for instance. The structure is documented below.
    PlacementPolicy ComputeInstanceGroupInstanceTemplatePlacementPolicy
    The placement policy configuration. The structure is documented below.
    PlatformId string
    The ID of the hardware platform configuration for the instance. The default is 'standard-v1'.
    SchedulingPolicy ComputeInstanceGroupInstanceTemplateSchedulingPolicy
    The scheduling policy configuration. The structure is documented below.
    SecondaryDisks []ComputeInstanceGroupInstanceTemplateSecondaryDisk
    A list of disks to attach to the instance. The structure is documented below.
    ServiceAccountId string
    The ID of the service account authorized for this instance.
    bootDisk ComputeInstanceGroupInstanceTemplateBootDisk
    Boot disk specifications for the instance. The structure is documented below.
    networkInterfaces List<ComputeInstanceGroupInstanceTemplateNetworkInterface>
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    resources ComputeInstanceGroupInstanceTemplateResources
    Compute resource specifications for the instance. The structure is documented below.
    description String
    A description of the boot disk.
    hostname String
    Hostname template for the instance.
    This field is used to generate the FQDN value of instance. The hostname must be unique within the network and region. If not specified, the hostname will be equal to id of the instance and FQDN will be <id>.auto.internal. Otherwise FQDN will be <hostname>.<region_id>.internal. In order to be unique it must contain at least on of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, name value will be used It may also contain another placeholders, see metadata doc for full list.
    labels Map<String,String>
    A map of labels of metric.
    metadata Map<String,String>
    A set of metadata key/value pairs to make available from within the instance.
    name String
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    networkSettings List<ComputeInstanceGroupInstanceTemplateNetworkSetting>
    Network acceleration type for instance. The structure is documented below.
    placementPolicy ComputeInstanceGroupInstanceTemplatePlacementPolicy
    The placement policy configuration. The structure is documented below.
    platformId String
    The ID of the hardware platform configuration for the instance. The default is 'standard-v1'.
    schedulingPolicy ComputeInstanceGroupInstanceTemplateSchedulingPolicy
    The scheduling policy configuration. The structure is documented below.
    secondaryDisks List<ComputeInstanceGroupInstanceTemplateSecondaryDisk>
    A list of disks to attach to the instance. The structure is documented below.
    serviceAccountId String
    The ID of the service account authorized for this instance.
    bootDisk ComputeInstanceGroupInstanceTemplateBootDisk
    Boot disk specifications for the instance. The structure is documented below.
    networkInterfaces ComputeInstanceGroupInstanceTemplateNetworkInterface[]
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    resources ComputeInstanceGroupInstanceTemplateResources
    Compute resource specifications for the instance. The structure is documented below.
    description string
    A description of the boot disk.
    hostname string
    Hostname template for the instance.
    This field is used to generate the FQDN value of instance. The hostname must be unique within the network and region. If not specified, the hostname will be equal to id of the instance and FQDN will be <id>.auto.internal. Otherwise FQDN will be <hostname>.<region_id>.internal. In order to be unique it must contain at least on of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, name value will be used It may also contain another placeholders, see metadata doc for full list.
    labels {[key: string]: string}
    A map of labels of metric.
    metadata {[key: string]: string}
    A set of metadata key/value pairs to make available from within the instance.
    name string
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    networkSettings ComputeInstanceGroupInstanceTemplateNetworkSetting[]
    Network acceleration type for instance. The structure is documented below.
    placementPolicy ComputeInstanceGroupInstanceTemplatePlacementPolicy
    The placement policy configuration. The structure is documented below.
    platformId string
    The ID of the hardware platform configuration for the instance. The default is 'standard-v1'.
    schedulingPolicy ComputeInstanceGroupInstanceTemplateSchedulingPolicy
    The scheduling policy configuration. The structure is documented below.
    secondaryDisks ComputeInstanceGroupInstanceTemplateSecondaryDisk[]
    A list of disks to attach to the instance. The structure is documented below.
    serviceAccountId string
    The ID of the service account authorized for this instance.
    boot_disk ComputeInstanceGroupInstanceTemplateBootDisk
    Boot disk specifications for the instance. The structure is documented below.
    network_interfaces Sequence[ComputeInstanceGroupInstanceTemplateNetworkInterface]
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    resources ComputeInstanceGroupInstanceTemplateResources
    Compute resource specifications for the instance. The structure is documented below.
    description str
    A description of the boot disk.
    hostname str
    Hostname template for the instance.
    This field is used to generate the FQDN value of instance. The hostname must be unique within the network and region. If not specified, the hostname will be equal to id of the instance and FQDN will be <id>.auto.internal. Otherwise FQDN will be <hostname>.<region_id>.internal. In order to be unique it must contain at least on of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, name value will be used It may also contain another placeholders, see metadata doc for full list.
    labels Mapping[str, str]
    A map of labels of metric.
    metadata Mapping[str, str]
    A set of metadata key/value pairs to make available from within the instance.
    name str
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    network_settings Sequence[ComputeInstanceGroupInstanceTemplateNetworkSetting]
    Network acceleration type for instance. The structure is documented below.
    placement_policy ComputeInstanceGroupInstanceTemplatePlacementPolicy
    The placement policy configuration. The structure is documented below.
    platform_id str
    The ID of the hardware platform configuration for the instance. The default is 'standard-v1'.
    scheduling_policy ComputeInstanceGroupInstanceTemplateSchedulingPolicy
    The scheduling policy configuration. The structure is documented below.
    secondary_disks Sequence[ComputeInstanceGroupInstanceTemplateSecondaryDisk]
    A list of disks to attach to the instance. The structure is documented below.
    service_account_id str
    The ID of the service account authorized for this instance.
    bootDisk Property Map
    Boot disk specifications for the instance. The structure is documented below.
    networkInterfaces List<Property Map>
    Network specifications for the instance. This can be used multiple times for adding multiple interfaces. The structure is documented below.
    resources Property Map
    Compute resource specifications for the instance. The structure is documented below.
    description String
    A description of the boot disk.
    hostname String
    Hostname template for the instance.
    This field is used to generate the FQDN value of instance. The hostname must be unique within the network and region. If not specified, the hostname will be equal to id of the instance and FQDN will be <id>.auto.internal. Otherwise FQDN will be <hostname>.<region_id>.internal. In order to be unique it must contain at least on of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, name value will be used It may also contain another placeholders, see metadata doc for full list.
    labels Map<String>
    A map of labels of metric.
    metadata Map<String>
    A set of metadata key/value pairs to make available from within the instance.
    name String
    Name template of the instance.
    In order to be unique it must contain at least one of instance unique placeholders: {instance.short_id} {instance.index} combination of {instance.zone_id} and {instance.index_in_zone} Example: my-instance-{instance.index} If not set, default is used: {instance_group.id}-{instance.short_id} It may also contain another placeholders, see metadata doc for full list.
    networkSettings List<Property Map>
    Network acceleration type for instance. The structure is documented below.
    placementPolicy Property Map
    The placement policy configuration. The structure is documented below.
    platformId String
    The ID of the hardware platform configuration for the instance. The default is 'standard-v1'.
    schedulingPolicy Property Map
    The scheduling policy configuration. The structure is documented below.
    secondaryDisks List<Property Map>
    A list of disks to attach to the instance. The structure is documented below.
    serviceAccountId String
    The ID of the service account authorized for this instance.

    ComputeInstanceGroupInstanceTemplateBootDisk, ComputeInstanceGroupInstanceTemplateBootDiskArgs

    DeviceName string
    This value can be used to reference the device under /dev/disk/by-id/.
    DiskId string
    ID of the existing disk. To set use variables.
    InitializeParams ComputeInstanceGroupInstanceTemplateBootDiskInitializeParams
    Parameters for creating a disk alongside the instance. The structure is documented below.
    Mode string
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.
    DeviceName string
    This value can be used to reference the device under /dev/disk/by-id/.
    DiskId string
    ID of the existing disk. To set use variables.
    InitializeParams ComputeInstanceGroupInstanceTemplateBootDiskInitializeParams
    Parameters for creating a disk alongside the instance. The structure is documented below.
    Mode string
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.
    deviceName String
    This value can be used to reference the device under /dev/disk/by-id/.
    diskId String
    ID of the existing disk. To set use variables.
    initializeParams ComputeInstanceGroupInstanceTemplateBootDiskInitializeParams
    Parameters for creating a disk alongside the instance. The structure is documented below.
    mode String
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.
    deviceName string
    This value can be used to reference the device under /dev/disk/by-id/.
    diskId string
    ID of the existing disk. To set use variables.
    initializeParams ComputeInstanceGroupInstanceTemplateBootDiskInitializeParams
    Parameters for creating a disk alongside the instance. The structure is documented below.
    mode string
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.
    device_name str
    This value can be used to reference the device under /dev/disk/by-id/.
    disk_id str
    ID of the existing disk. To set use variables.
    initialize_params ComputeInstanceGroupInstanceTemplateBootDiskInitializeParams
    Parameters for creating a disk alongside the instance. The structure is documented below.
    mode str
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.
    deviceName String
    This value can be used to reference the device under /dev/disk/by-id/.
    diskId String
    ID of the existing disk. To set use variables.
    initializeParams Property Map
    Parameters for creating a disk alongside the instance. The structure is documented below.
    mode String
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.

    ComputeInstanceGroupInstanceTemplateBootDiskInitializeParams, ComputeInstanceGroupInstanceTemplateBootDiskInitializeParamsArgs

    Description string
    A description of the boot disk.
    ImageId string
    The disk image to initialize this disk from.
    Size int
    The number of instances in the instance group.
    SnapshotId string
    The snapshot to initialize this disk from.
    Type string
    Network acceleration type. By default a network is in STANDARD mode.
    Description string
    A description of the boot disk.
    ImageId string
    The disk image to initialize this disk from.
    Size int
    The number of instances in the instance group.
    SnapshotId string
    The snapshot to initialize this disk from.
    Type string
    Network acceleration type. By default a network is in STANDARD mode.
    description String
    A description of the boot disk.
    imageId String
    The disk image to initialize this disk from.
    size Integer
    The number of instances in the instance group.
    snapshotId String
    The snapshot to initialize this disk from.
    type String
    Network acceleration type. By default a network is in STANDARD mode.
    description string
    A description of the boot disk.
    imageId string
    The disk image to initialize this disk from.
    size number
    The number of instances in the instance group.
    snapshotId string
    The snapshot to initialize this disk from.
    type string
    Network acceleration type. By default a network is in STANDARD mode.
    description str
    A description of the boot disk.
    image_id str
    The disk image to initialize this disk from.
    size int
    The number of instances in the instance group.
    snapshot_id str
    The snapshot to initialize this disk from.
    type str
    Network acceleration type. By default a network is in STANDARD mode.
    description String
    A description of the boot disk.
    imageId String
    The disk image to initialize this disk from.
    size Number
    The number of instances in the instance group.
    snapshotId String
    The snapshot to initialize this disk from.
    type String
    Network acceleration type. By default a network is in STANDARD mode.

    ComputeInstanceGroupInstanceTemplateNetworkInterface, ComputeInstanceGroupInstanceTemplateNetworkInterfaceArgs

    DnsRecords List<ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecord>
    List of dns records. The structure is documented below.
    IpAddress string
    Manual set static IP address.
    Ipv4 bool
    True if IPv4 address allocated for the network interface.
    Ipv6 bool
    Ipv6Address string
    Manual set static IPv6 address.
    Ipv6DnsRecords List<ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecord>
    List of ipv6 dns records. The structure is documented below.
    Nat bool
    Flag for using NAT.
    NatDnsRecords List<ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecord>
    List of nat dns records. The structure is documented below.
    NatIpAddress string
    A public address that can be used to access the internet over NAT. Use variables to set.
    NetworkId string
    The ID of the network.
    SecurityGroupIds List<string>
    Security group ids for network interface.
    SubnetIds List<string>
    The ID of the subnets to attach this interface to.
    DnsRecords []ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecord
    List of dns records. The structure is documented below.
    IpAddress string
    Manual set static IP address.
    Ipv4 bool
    True if IPv4 address allocated for the network interface.
    Ipv6 bool
    Ipv6Address string
    Manual set static IPv6 address.
    Ipv6DnsRecords []ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecord
    List of ipv6 dns records. The structure is documented below.
    Nat bool
    Flag for using NAT.
    NatDnsRecords []ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecord
    List of nat dns records. The structure is documented below.
    NatIpAddress string
    A public address that can be used to access the internet over NAT. Use variables to set.
    NetworkId string
    The ID of the network.
    SecurityGroupIds []string
    Security group ids for network interface.
    SubnetIds []string
    The ID of the subnets to attach this interface to.
    dnsRecords List<ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecord>
    List of dns records. The structure is documented below.
    ipAddress String
    Manual set static IP address.
    ipv4 Boolean
    True if IPv4 address allocated for the network interface.
    ipv6 Boolean
    ipv6Address String
    Manual set static IPv6 address.
    ipv6DnsRecords List<ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecord>
    List of ipv6 dns records. The structure is documented below.
    nat Boolean
    Flag for using NAT.
    natDnsRecords List<ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecord>
    List of nat dns records. The structure is documented below.
    natIpAddress String
    A public address that can be used to access the internet over NAT. Use variables to set.
    networkId String
    The ID of the network.
    securityGroupIds List<String>
    Security group ids for network interface.
    subnetIds List<String>
    The ID of the subnets to attach this interface to.
    dnsRecords ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecord[]
    List of dns records. The structure is documented below.
    ipAddress string
    Manual set static IP address.
    ipv4 boolean
    True if IPv4 address allocated for the network interface.
    ipv6 boolean
    ipv6Address string
    Manual set static IPv6 address.
    ipv6DnsRecords ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecord[]
    List of ipv6 dns records. The structure is documented below.
    nat boolean
    Flag for using NAT.
    natDnsRecords ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecord[]
    List of nat dns records. The structure is documented below.
    natIpAddress string
    A public address that can be used to access the internet over NAT. Use variables to set.
    networkId string
    The ID of the network.
    securityGroupIds string[]
    Security group ids for network interface.
    subnetIds string[]
    The ID of the subnets to attach this interface to.
    dns_records Sequence[ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecord]
    List of dns records. The structure is documented below.
    ip_address str
    Manual set static IP address.
    ipv4 bool
    True if IPv4 address allocated for the network interface.
    ipv6 bool
    ipv6_address str
    Manual set static IPv6 address.
    ipv6_dns_records Sequence[ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecord]
    List of ipv6 dns records. The structure is documented below.
    nat bool
    Flag for using NAT.
    nat_dns_records Sequence[ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecord]
    List of nat dns records. The structure is documented below.
    nat_ip_address str
    A public address that can be used to access the internet over NAT. Use variables to set.
    network_id str
    The ID of the network.
    security_group_ids Sequence[str]
    Security group ids for network interface.
    subnet_ids Sequence[str]
    The ID of the subnets to attach this interface to.
    dnsRecords List<Property Map>
    List of dns records. The structure is documented below.
    ipAddress String
    Manual set static IP address.
    ipv4 Boolean
    True if IPv4 address allocated for the network interface.
    ipv6 Boolean
    ipv6Address String
    Manual set static IPv6 address.
    ipv6DnsRecords List<Property Map>
    List of ipv6 dns records. The structure is documented below.
    nat Boolean
    Flag for using NAT.
    natDnsRecords List<Property Map>
    List of nat dns records. The structure is documented below.
    natIpAddress String
    A public address that can be used to access the internet over NAT. Use variables to set.
    networkId String
    The ID of the network.
    securityGroupIds List<String>
    Security group ids for network interface.
    subnetIds List<String>
    The ID of the subnets to attach this interface to.

    ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecord, ComputeInstanceGroupInstanceTemplateNetworkInterfaceDnsRecordArgs

    Fqdn string
    DNS record fqdn (must have dot at the end).
    DnsZoneId string
    DNS zone id (if not set, private zone used).
    Ptr bool
    When set to true, also create PTR DNS record.
    Ttl int
    DNS record TTL.
    Fqdn string
    DNS record fqdn (must have dot at the end).
    DnsZoneId string
    DNS zone id (if not set, private zone used).
    Ptr bool
    When set to true, also create PTR DNS record.
    Ttl int
    DNS record TTL.
    fqdn String
    DNS record fqdn (must have dot at the end).
    dnsZoneId String
    DNS zone id (if not set, private zone used).
    ptr Boolean
    When set to true, also create PTR DNS record.
    ttl Integer
    DNS record TTL.
    fqdn string
    DNS record fqdn (must have dot at the end).
    dnsZoneId string
    DNS zone id (if not set, private zone used).
    ptr boolean
    When set to true, also create PTR DNS record.
    ttl number
    DNS record TTL.
    fqdn str
    DNS record fqdn (must have dot at the end).
    dns_zone_id str
    DNS zone id (if not set, private zone used).
    ptr bool
    When set to true, also create PTR DNS record.
    ttl int
    DNS record TTL.
    fqdn String
    DNS record fqdn (must have dot at the end).
    dnsZoneId String
    DNS zone id (if not set, private zone used).
    ptr Boolean
    When set to true, also create PTR DNS record.
    ttl Number
    DNS record TTL.

    ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecord, ComputeInstanceGroupInstanceTemplateNetworkInterfaceIpv6DnsRecordArgs

    Fqdn string
    DNS record fqdn (must have dot at the end).
    DnsZoneId string
    DNS zone id (if not set, private zone used).
    Ptr bool
    When set to true, also create PTR DNS record.
    Ttl int
    DNS record TTL.
    Fqdn string
    DNS record fqdn (must have dot at the end).
    DnsZoneId string
    DNS zone id (if not set, private zone used).
    Ptr bool
    When set to true, also create PTR DNS record.
    Ttl int
    DNS record TTL.
    fqdn String
    DNS record fqdn (must have dot at the end).
    dnsZoneId String
    DNS zone id (if not set, private zone used).
    ptr Boolean
    When set to true, also create PTR DNS record.
    ttl Integer
    DNS record TTL.
    fqdn string
    DNS record fqdn (must have dot at the end).
    dnsZoneId string
    DNS zone id (if not set, private zone used).
    ptr boolean
    When set to true, also create PTR DNS record.
    ttl number
    DNS record TTL.
    fqdn str
    DNS record fqdn (must have dot at the end).
    dns_zone_id str
    DNS zone id (if not set, private zone used).
    ptr bool
    When set to true, also create PTR DNS record.
    ttl int
    DNS record TTL.
    fqdn String
    DNS record fqdn (must have dot at the end).
    dnsZoneId String
    DNS zone id (if not set, private zone used).
    ptr Boolean
    When set to true, also create PTR DNS record.
    ttl Number
    DNS record TTL.

    ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecord, ComputeInstanceGroupInstanceTemplateNetworkInterfaceNatDnsRecordArgs

    Fqdn string
    DNS record fqdn (must have dot at the end).
    DnsZoneId string
    DNS zone id (if not set, private zone used).
    Ptr bool
    When set to true, also create PTR DNS record.
    Ttl int
    DNS record TTL.
    Fqdn string
    DNS record fqdn (must have dot at the end).
    DnsZoneId string
    DNS zone id (if not set, private zone used).
    Ptr bool
    When set to true, also create PTR DNS record.
    Ttl int
    DNS record TTL.
    fqdn String
    DNS record fqdn (must have dot at the end).
    dnsZoneId String
    DNS zone id (if not set, private zone used).
    ptr Boolean
    When set to true, also create PTR DNS record.
    ttl Integer
    DNS record TTL.
    fqdn string
    DNS record fqdn (must have dot at the end).
    dnsZoneId string
    DNS zone id (if not set, private zone used).
    ptr boolean
    When set to true, also create PTR DNS record.
    ttl number
    DNS record TTL.
    fqdn str
    DNS record fqdn (must have dot at the end).
    dns_zone_id str
    DNS zone id (if not set, private zone used).
    ptr bool
    When set to true, also create PTR DNS record.
    ttl int
    DNS record TTL.
    fqdn String
    DNS record fqdn (must have dot at the end).
    dnsZoneId String
    DNS zone id (if not set, private zone used).
    ptr Boolean
    When set to true, also create PTR DNS record.
    ttl Number
    DNS record TTL.

    ComputeInstanceGroupInstanceTemplateNetworkSetting, ComputeInstanceGroupInstanceTemplateNetworkSettingArgs

    Type string
    Network acceleration type. By default a network is in STANDARD mode.
    Type string
    Network acceleration type. By default a network is in STANDARD mode.
    type String
    Network acceleration type. By default a network is in STANDARD mode.
    type string
    Network acceleration type. By default a network is in STANDARD mode.
    type str
    Network acceleration type. By default a network is in STANDARD mode.
    type String
    Network acceleration type. By default a network is in STANDARD mode.

    ComputeInstanceGroupInstanceTemplatePlacementPolicy, ComputeInstanceGroupInstanceTemplatePlacementPolicyArgs

    PlacementGroupId string
    Specifies the id of the Placement Group to assign to the instances.
    PlacementGroupId string
    Specifies the id of the Placement Group to assign to the instances.
    placementGroupId String
    Specifies the id of the Placement Group to assign to the instances.
    placementGroupId string
    Specifies the id of the Placement Group to assign to the instances.
    placement_group_id str
    Specifies the id of the Placement Group to assign to the instances.
    placementGroupId String
    Specifies the id of the Placement Group to assign to the instances.

    ComputeInstanceGroupInstanceTemplateResources, ComputeInstanceGroupInstanceTemplateResourcesArgs

    Cores int
    The number of CPU cores for the instance.
    Memory double
    The memory size in GB.
    CoreFraction int
    If provided, specifies baseline core performance as a percent.
    Gpus int
    Cores int
    The number of CPU cores for the instance.
    Memory float64
    The memory size in GB.
    CoreFraction int
    If provided, specifies baseline core performance as a percent.
    Gpus int
    cores Integer
    The number of CPU cores for the instance.
    memory Double
    The memory size in GB.
    coreFraction Integer
    If provided, specifies baseline core performance as a percent.
    gpus Integer
    cores number
    The number of CPU cores for the instance.
    memory number
    The memory size in GB.
    coreFraction number
    If provided, specifies baseline core performance as a percent.
    gpus number
    cores int
    The number of CPU cores for the instance.
    memory float
    The memory size in GB.
    core_fraction int
    If provided, specifies baseline core performance as a percent.
    gpus int
    cores Number
    The number of CPU cores for the instance.
    memory Number
    The memory size in GB.
    coreFraction Number
    If provided, specifies baseline core performance as a percent.
    gpus Number

    ComputeInstanceGroupInstanceTemplateSchedulingPolicy, ComputeInstanceGroupInstanceTemplateSchedulingPolicyArgs

    Preemptible bool
    Specifies if the instance is preemptible. Defaults to false.
    Preemptible bool
    Specifies if the instance is preemptible. Defaults to false.
    preemptible Boolean
    Specifies if the instance is preemptible. Defaults to false.
    preemptible boolean
    Specifies if the instance is preemptible. Defaults to false.
    preemptible bool
    Specifies if the instance is preemptible. Defaults to false.
    preemptible Boolean
    Specifies if the instance is preemptible. Defaults to false.

    ComputeInstanceGroupInstanceTemplateSecondaryDisk, ComputeInstanceGroupInstanceTemplateSecondaryDiskArgs

    DeviceName string
    This value can be used to reference the device under /dev/disk/by-id/.
    DiskId string
    ID of the existing disk. To set use variables.
    InitializeParams ComputeInstanceGroupInstanceTemplateSecondaryDiskInitializeParams
    Parameters for creating a disk alongside the instance. The structure is documented below.
    Mode string
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.
    DeviceName string
    This value can be used to reference the device under /dev/disk/by-id/.
    DiskId string
    ID of the existing disk. To set use variables.
    InitializeParams ComputeInstanceGroupInstanceTemplateSecondaryDiskInitializeParams
    Parameters for creating a disk alongside the instance. The structure is documented below.
    Mode string
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.
    deviceName String
    This value can be used to reference the device under /dev/disk/by-id/.
    diskId String
    ID of the existing disk. To set use variables.
    initializeParams ComputeInstanceGroupInstanceTemplateSecondaryDiskInitializeParams
    Parameters for creating a disk alongside the instance. The structure is documented below.
    mode String
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.
    deviceName string
    This value can be used to reference the device under /dev/disk/by-id/.
    diskId string
    ID of the existing disk. To set use variables.
    initializeParams ComputeInstanceGroupInstanceTemplateSecondaryDiskInitializeParams
    Parameters for creating a disk alongside the instance. The structure is documented below.
    mode string
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.
    device_name str
    This value can be used to reference the device under /dev/disk/by-id/.
    disk_id str
    ID of the existing disk. To set use variables.
    initialize_params ComputeInstanceGroupInstanceTemplateSecondaryDiskInitializeParams
    Parameters for creating a disk alongside the instance. The structure is documented below.
    mode str
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.
    deviceName String
    This value can be used to reference the device under /dev/disk/by-id/.
    diskId String
    ID of the existing disk. To set use variables.
    initializeParams Property Map
    Parameters for creating a disk alongside the instance. The structure is documented below.
    mode String
    The access mode to the disk resource. By default a disk is attached in READ_WRITE mode.

    ComputeInstanceGroupInstanceTemplateSecondaryDiskInitializeParams, ComputeInstanceGroupInstanceTemplateSecondaryDiskInitializeParamsArgs

    Description string
    A description of the boot disk.
    ImageId string
    The disk image to initialize this disk from.
    Size int
    The number of instances in the instance group.
    SnapshotId string
    The snapshot to initialize this disk from.
    Type string
    Network acceleration type. By default a network is in STANDARD mode.
    Description string
    A description of the boot disk.
    ImageId string
    The disk image to initialize this disk from.
    Size int
    The number of instances in the instance group.
    SnapshotId string
    The snapshot to initialize this disk from.
    Type string
    Network acceleration type. By default a network is in STANDARD mode.
    description String
    A description of the boot disk.
    imageId String
    The disk image to initialize this disk from.
    size Integer
    The number of instances in the instance group.
    snapshotId String
    The snapshot to initialize this disk from.
    type String
    Network acceleration type. By default a network is in STANDARD mode.
    description string
    A description of the boot disk.
    imageId string
    The disk image to initialize this disk from.
    size number
    The number of instances in the instance group.
    snapshotId string
    The snapshot to initialize this disk from.
    type string
    Network acceleration type. By default a network is in STANDARD mode.
    description str
    A description of the boot disk.
    image_id str
    The disk image to initialize this disk from.
    size int
    The number of instances in the instance group.
    snapshot_id str
    The snapshot to initialize this disk from.
    type str
    Network acceleration type. By default a network is in STANDARD mode.
    description String
    A description of the boot disk.
    imageId String
    The disk image to initialize this disk from.
    size Number
    The number of instances in the instance group.
    snapshotId String
    The snapshot to initialize this disk from.
    type String
    Network acceleration type. By default a network is in STANDARD mode.

    ComputeInstanceGroupLoadBalancer, ComputeInstanceGroupLoadBalancerArgs

    MaxOpeningTrafficDuration int
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    StatusMessage string
    The status message of the instance.
    TargetGroupDescription string
    A description of the target group.
    TargetGroupId string
    TargetGroupLabels Dictionary<string, string>
    A set of key/value label pairs.
    TargetGroupName string
    The name of the target group.
    MaxOpeningTrafficDuration int
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    StatusMessage string
    The status message of the instance.
    TargetGroupDescription string
    A description of the target group.
    TargetGroupId string
    TargetGroupLabels map[string]string
    A set of key/value label pairs.
    TargetGroupName string
    The name of the target group.
    maxOpeningTrafficDuration Integer
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    statusMessage String
    The status message of the instance.
    targetGroupDescription String
    A description of the target group.
    targetGroupId String
    targetGroupLabels Map<String,String>
    A set of key/value label pairs.
    targetGroupName String
    The name of the target group.
    maxOpeningTrafficDuration number
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    statusMessage string
    The status message of the instance.
    targetGroupDescription string
    A description of the target group.
    targetGroupId string
    targetGroupLabels {[key: string]: string}
    A set of key/value label pairs.
    targetGroupName string
    The name of the target group.
    max_opening_traffic_duration int
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    status_message str
    The status message of the instance.
    target_group_description str
    A description of the target group.
    target_group_id str
    target_group_labels Mapping[str, str]
    A set of key/value label pairs.
    target_group_name str
    The name of the target group.
    maxOpeningTrafficDuration Number
    Timeout for waiting for the VM to be checked by the load balancer. If the timeout is exceeded, the VM will be turned off based on the deployment policy. Specified in seconds.
    statusMessage String
    The status message of the instance.
    targetGroupDescription String
    A description of the target group.
    targetGroupId String
    targetGroupLabels Map<String>
    A set of key/value label pairs.
    targetGroupName String
    The name of the target group.

    ComputeInstanceGroupScalePolicy, ComputeInstanceGroupScalePolicyArgs

    AutoScale ComputeInstanceGroupScalePolicyAutoScale
    The auto scaling policy of the instance group. The structure is documented below.
    FixedScale ComputeInstanceGroupScalePolicyFixedScale
    The fixed scaling policy of the instance group. The structure is documented below.
    TestAutoScale ComputeInstanceGroupScalePolicyTestAutoScale
    The test auto scaling policy of the instance group. Use it to test how the auto scale works. The structure is documented below.
    AutoScale ComputeInstanceGroupScalePolicyAutoScale
    The auto scaling policy of the instance group. The structure is documented below.
    FixedScale ComputeInstanceGroupScalePolicyFixedScale
    The fixed scaling policy of the instance group. The structure is documented below.
    TestAutoScale ComputeInstanceGroupScalePolicyTestAutoScale
    The test auto scaling policy of the instance group. Use it to test how the auto scale works. The structure is documented below.
    autoScale ComputeInstanceGroupScalePolicyAutoScale
    The auto scaling policy of the instance group. The structure is documented below.
    fixedScale ComputeInstanceGroupScalePolicyFixedScale
    The fixed scaling policy of the instance group. The structure is documented below.
    testAutoScale ComputeInstanceGroupScalePolicyTestAutoScale
    The test auto scaling policy of the instance group. Use it to test how the auto scale works. The structure is documented below.
    autoScale ComputeInstanceGroupScalePolicyAutoScale
    The auto scaling policy of the instance group. The structure is documented below.
    fixedScale ComputeInstanceGroupScalePolicyFixedScale
    The fixed scaling policy of the instance group. The structure is documented below.
    testAutoScale ComputeInstanceGroupScalePolicyTestAutoScale
    The test auto scaling policy of the instance group. Use it to test how the auto scale works. The structure is documented below.
    auto_scale ComputeInstanceGroupScalePolicyAutoScale
    The auto scaling policy of the instance group. The structure is documented below.
    fixed_scale ComputeInstanceGroupScalePolicyFixedScale
    The fixed scaling policy of the instance group. The structure is documented below.
    test_auto_scale ComputeInstanceGroupScalePolicyTestAutoScale
    The test auto scaling policy of the instance group. Use it to test how the auto scale works. The structure is documented below.
    autoScale Property Map
    The auto scaling policy of the instance group. The structure is documented below.
    fixedScale Property Map
    The fixed scaling policy of the instance group. The structure is documented below.
    testAutoScale Property Map
    The test auto scaling policy of the instance group. Use it to test how the auto scale works. The structure is documented below.

    ComputeInstanceGroupScalePolicyAutoScale, ComputeInstanceGroupScalePolicyAutoScaleArgs

    InitialSize int
    The initial number of instances in the instance group.
    MeasurementDuration int
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    CpuUtilizationTarget double
    Target CPU load level.
    CustomRules List<ComputeInstanceGroupScalePolicyAutoScaleCustomRule>
    A list of custom rules. The structure is documented below.
    MaxSize int
    The maximum number of virtual machines in the group.
    MinZoneSize int
    The minimum number of virtual machines in a single availability zone.
    StabilizationDuration int
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    WarmupDuration int
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.
    InitialSize int
    The initial number of instances in the instance group.
    MeasurementDuration int
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    CpuUtilizationTarget float64
    Target CPU load level.
    CustomRules []ComputeInstanceGroupScalePolicyAutoScaleCustomRule
    A list of custom rules. The structure is documented below.
    MaxSize int
    The maximum number of virtual machines in the group.
    MinZoneSize int
    The minimum number of virtual machines in a single availability zone.
    StabilizationDuration int
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    WarmupDuration int
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.
    initialSize Integer
    The initial number of instances in the instance group.
    measurementDuration Integer
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    cpuUtilizationTarget Double
    Target CPU load level.
    customRules List<ComputeInstanceGroupScalePolicyAutoScaleCustomRule>
    A list of custom rules. The structure is documented below.
    maxSize Integer
    The maximum number of virtual machines in the group.
    minZoneSize Integer
    The minimum number of virtual machines in a single availability zone.
    stabilizationDuration Integer
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    warmupDuration Integer
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.
    initialSize number
    The initial number of instances in the instance group.
    measurementDuration number
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    cpuUtilizationTarget number
    Target CPU load level.
    customRules ComputeInstanceGroupScalePolicyAutoScaleCustomRule[]
    A list of custom rules. The structure is documented below.
    maxSize number
    The maximum number of virtual machines in the group.
    minZoneSize number
    The minimum number of virtual machines in a single availability zone.
    stabilizationDuration number
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    warmupDuration number
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.
    initial_size int
    The initial number of instances in the instance group.
    measurement_duration int
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    cpu_utilization_target float
    Target CPU load level.
    custom_rules Sequence[ComputeInstanceGroupScalePolicyAutoScaleCustomRule]
    A list of custom rules. The structure is documented below.
    max_size int
    The maximum number of virtual machines in the group.
    min_zone_size int
    The minimum number of virtual machines in a single availability zone.
    stabilization_duration int
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    warmup_duration int
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.
    initialSize Number
    The initial number of instances in the instance group.
    measurementDuration Number
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    cpuUtilizationTarget Number
    Target CPU load level.
    customRules List<Property Map>
    A list of custom rules. The structure is documented below.
    maxSize Number
    The maximum number of virtual machines in the group.
    minZoneSize Number
    The minimum number of virtual machines in a single availability zone.
    stabilizationDuration Number
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    warmupDuration Number
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.

    ComputeInstanceGroupScalePolicyAutoScaleCustomRule, ComputeInstanceGroupScalePolicyAutoScaleCustomRuleArgs

    MetricName string
    The name of metric.
    MetricType string
    Metric type, GAUGE or COUNTER.
    RuleType string
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    Target double
    Target metric value level.
    FolderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    Labels Dictionary<string, string>
    A map of labels of metric.
    Service string
    Service of custom metric in Yandex Monitoring that should be used for scaling.
    MetricName string
    The name of metric.
    MetricType string
    Metric type, GAUGE or COUNTER.
    RuleType string
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    Target float64
    Target metric value level.
    FolderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    Labels map[string]string
    A map of labels of metric.
    Service string
    Service of custom metric in Yandex Monitoring that should be used for scaling.
    metricName String
    The name of metric.
    metricType String
    Metric type, GAUGE or COUNTER.
    ruleType String
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    target Double
    Target metric value level.
    folderId String
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    labels Map<String,String>
    A map of labels of metric.
    service String
    Service of custom metric in Yandex Monitoring that should be used for scaling.
    metricName string
    The name of metric.
    metricType string
    Metric type, GAUGE or COUNTER.
    ruleType string
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    target number
    Target metric value level.
    folderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    labels {[key: string]: string}
    A map of labels of metric.
    service string
    Service of custom metric in Yandex Monitoring that should be used for scaling.
    metric_name str
    The name of metric.
    metric_type str
    Metric type, GAUGE or COUNTER.
    rule_type str
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    target float
    Target metric value level.
    folder_id str
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    labels Mapping[str, str]
    A map of labels of metric.
    service str
    Service of custom metric in Yandex Monitoring that should be used for scaling.
    metricName String
    The name of metric.
    metricType String
    Metric type, GAUGE or COUNTER.
    ruleType String
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    target Number
    Target metric value level.
    folderId String
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    labels Map<String>
    A map of labels of metric.
    service String
    Service of custom metric in Yandex Monitoring that should be used for scaling.

    ComputeInstanceGroupScalePolicyFixedScale, ComputeInstanceGroupScalePolicyFixedScaleArgs

    Size int
    The number of instances in the instance group.
    Size int
    The number of instances in the instance group.
    size Integer
    The number of instances in the instance group.
    size number
    The number of instances in the instance group.
    size int
    The number of instances in the instance group.
    size Number
    The number of instances in the instance group.

    ComputeInstanceGroupScalePolicyTestAutoScale, ComputeInstanceGroupScalePolicyTestAutoScaleArgs

    InitialSize int
    The initial number of instances in the instance group.
    MeasurementDuration int
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    CpuUtilizationTarget double
    Target CPU load level.
    CustomRules List<ComputeInstanceGroupScalePolicyTestAutoScaleCustomRule>
    A list of custom rules. The structure is documented below.
    MaxSize int
    The maximum number of virtual machines in the group.
    MinZoneSize int
    The minimum number of virtual machines in a single availability zone.
    StabilizationDuration int
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    WarmupDuration int
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.
    InitialSize int
    The initial number of instances in the instance group.
    MeasurementDuration int
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    CpuUtilizationTarget float64
    Target CPU load level.
    CustomRules []ComputeInstanceGroupScalePolicyTestAutoScaleCustomRule
    A list of custom rules. The structure is documented below.
    MaxSize int
    The maximum number of virtual machines in the group.
    MinZoneSize int
    The minimum number of virtual machines in a single availability zone.
    StabilizationDuration int
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    WarmupDuration int
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.
    initialSize Integer
    The initial number of instances in the instance group.
    measurementDuration Integer
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    cpuUtilizationTarget Double
    Target CPU load level.
    customRules List<ComputeInstanceGroupScalePolicyTestAutoScaleCustomRule>
    A list of custom rules. The structure is documented below.
    maxSize Integer
    The maximum number of virtual machines in the group.
    minZoneSize Integer
    The minimum number of virtual machines in a single availability zone.
    stabilizationDuration Integer
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    warmupDuration Integer
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.
    initialSize number
    The initial number of instances in the instance group.
    measurementDuration number
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    cpuUtilizationTarget number
    Target CPU load level.
    customRules ComputeInstanceGroupScalePolicyTestAutoScaleCustomRule[]
    A list of custom rules. The structure is documented below.
    maxSize number
    The maximum number of virtual machines in the group.
    minZoneSize number
    The minimum number of virtual machines in a single availability zone.
    stabilizationDuration number
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    warmupDuration number
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.
    initial_size int
    The initial number of instances in the instance group.
    measurement_duration int
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    cpu_utilization_target float
    Target CPU load level.
    custom_rules Sequence[ComputeInstanceGroupScalePolicyTestAutoScaleCustomRule]
    A list of custom rules. The structure is documented below.
    max_size int
    The maximum number of virtual machines in the group.
    min_zone_size int
    The minimum number of virtual machines in a single availability zone.
    stabilization_duration int
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    warmup_duration int
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.
    initialSize Number
    The initial number of instances in the instance group.
    measurementDuration Number
    The amount of time, in seconds, that metrics are averaged for. If the average value at the end of the interval is higher than the cpu_utilization_target, the instance group will increase the number of virtual machines in the group.
    cpuUtilizationTarget Number
    Target CPU load level.
    customRules List<Property Map>
    A list of custom rules. The structure is documented below.
    maxSize Number
    The maximum number of virtual machines in the group.
    minZoneSize Number
    The minimum number of virtual machines in a single availability zone.
    stabilizationDuration Number
    The minimum time interval, in seconds, to monitor the load before an instance group can reduce the number of virtual machines in the group. During this time, the group will not decrease even if the average load falls below the value of cpu_utilization_target.
    warmupDuration Number
    The warm-up time of the virtual machine, in seconds. During this time, traffic is fed to the virtual machine, but load metrics are not taken into account.

    ComputeInstanceGroupScalePolicyTestAutoScaleCustomRule, ComputeInstanceGroupScalePolicyTestAutoScaleCustomRuleArgs

    MetricName string
    The name of metric.
    MetricType string
    Metric type, GAUGE or COUNTER.
    RuleType string
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    Target double
    Target metric value level.
    FolderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    Labels Dictionary<string, string>
    A map of labels of metric.
    Service string
    Service of custom metric in Yandex Monitoring that should be used for scaling.
    MetricName string
    The name of metric.
    MetricType string
    Metric type, GAUGE or COUNTER.
    RuleType string
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    Target float64
    Target metric value level.
    FolderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    Labels map[string]string
    A map of labels of metric.
    Service string
    Service of custom metric in Yandex Monitoring that should be used for scaling.
    metricName String
    The name of metric.
    metricType String
    Metric type, GAUGE or COUNTER.
    ruleType String
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    target Double
    Target metric value level.
    folderId String
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    labels Map<String,String>
    A map of labels of metric.
    service String
    Service of custom metric in Yandex Monitoring that should be used for scaling.
    metricName string
    The name of metric.
    metricType string
    Metric type, GAUGE or COUNTER.
    ruleType string
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    target number
    Target metric value level.
    folderId string
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    labels {[key: string]: string}
    A map of labels of metric.
    service string
    Service of custom metric in Yandex Monitoring that should be used for scaling.
    metric_name str
    The name of metric.
    metric_type str
    Metric type, GAUGE or COUNTER.
    rule_type str
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    target float
    Target metric value level.
    folder_id str
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    labels Mapping[str, str]
    A map of labels of metric.
    service str
    Service of custom metric in Yandex Monitoring that should be used for scaling.
    metricName String
    The name of metric.
    metricType String
    Metric type, GAUGE or COUNTER.
    ruleType String
    Rule type: UTILIZATION - This type means that the metric applies to one instance. First, Instance Groups calculates the average metric value for each instance, then averages the values for instances in one availability zone. This type of metric must have the instance_id label. WORKLOAD - This type means that the metric applies to instances in one availability zone. This type of metric must have the zone_id label.
    target Number
    Target metric value level.
    folderId String
    Folder ID of custom metric in Yandex Monitoring that should be used for scaling.
    labels Map<String>
    A map of labels of metric.
    service String
    Service of custom metric in Yandex Monitoring that should be used for scaling.

    Package Details

    Repository
    Yandex pulumi/pulumi-yandex
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the yandex Terraform Provider.
    yandex logo
    Yandex v0.13.0 published on Tuesday, Feb 22, 2022 by Pulumi