spotinst.gcp.Elastigroup
Explore with Pulumi AI
Provides a Spotinst elastigroup GCP resource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as spotinst from "@pulumi/spotinst";
const example = new spotinst.gcp.Elastigroup("example", {
    name: "example-gcp",
    description: "spotinst gcp group",
    serviceAccount: "example@myProject.iam.gservicecct.com",
    startupScript: "",
    instanceNamePrefix: "test-123a",
    minCpuPlatform: "Intel Sandy Bridge",
    minSize: 0,
    maxSize: 1,
    desiredCapacity: 1,
    availabilityZones: [
        "asia-east1-c",
        "us-central1-a",
    ],
    preferredAvailabilityZones: ["us-central1-a"],
    preemptiblePercentage: 50,
    revertToPreemptibles: [{
        performAt: "timeWindow",
    }],
    optimizationWindows: ["Mon:01:00-Mon:03:00"],
    fallbackToOndemand: true,
    drainingTimeout: 180,
    provisioningModel: "SPOT",
    shouldUtilizeCommitments: true,
    labels: [{
        key: "test_key",
        value: "test_value",
    }],
    tags: [
        "http",
        "https",
    ],
    backendServices: [{
        serviceName: "spotinst-elb-backend-service",
        locationType: "regional",
        scheme: "INTERNAL",
        namedPorts: [{
            name: "port-name",
            ports: [
                "8000",
                "6000",
            ],
        }],
    }],
    disks: [{
        deviceName: "device",
        mode: "READ_WRITE",
        type: "PERSISTENT",
        autoDelete: true,
        boot: true,
        "interface": "SCSI",
        initializeParams: [{
            diskSizeGb: "10",
            diskType: "pd-standard",
            sourceImage: "",
        }],
    }],
    shieldedInstanceConfig: {
        enableSecureBoot: true,
        enableIntegrityMonitoring: false,
    },
    networkInterfaces: [{
        network: "spot-network",
    }],
    instanceTypesOndemand: "n1-standard-1",
    instanceTypesPreemptibles: [
        "n1-standard-1",
        "n1-standard-2",
    ],
    instanceTypesCustoms: [{
        vcpu: 2,
        memoryGib: 7,
    }],
    subnets: [{
        region: "asia-east1",
        subnetNames: ["default"],
    }],
    scalingUpPolicies: [{
        policyName: "scale_up_1",
        source: "stackdriver",
        metricName: "instance/disk/read_ops_count",
        namespace: "compute",
        statistic: "average",
        unit: "percent",
        threshold: 10000,
        period: 300,
        cooldown: 300,
        operator: "gte",
        evaluationPeriods: 1,
        actionType: "adjustment",
        adjustment: 1,
        dimensions: [{
            name: "storage_type",
            value: "pd-ssd",
        }],
    }],
});
import pulumi
import pulumi_spotinst as spotinst
example = spotinst.gcp.Elastigroup("example",
    name="example-gcp",
    description="spotinst gcp group",
    service_account="example@myProject.iam.gservicecct.com",
    startup_script="",
    instance_name_prefix="test-123a",
    min_cpu_platform="Intel Sandy Bridge",
    min_size=0,
    max_size=1,
    desired_capacity=1,
    availability_zones=[
        "asia-east1-c",
        "us-central1-a",
    ],
    preferred_availability_zones=["us-central1-a"],
    preemptible_percentage=50,
    revert_to_preemptibles=[{
        "perform_at": "timeWindow",
    }],
    optimization_windows=["Mon:01:00-Mon:03:00"],
    fallback_to_ondemand=True,
    draining_timeout=180,
    provisioning_model="SPOT",
    should_utilize_commitments=True,
    labels=[{
        "key": "test_key",
        "value": "test_value",
    }],
    tags=[
        "http",
        "https",
    ],
    backend_services=[{
        "service_name": "spotinst-elb-backend-service",
        "location_type": "regional",
        "scheme": "INTERNAL",
        "named_ports": [{
            "name": "port-name",
            "ports": [
                "8000",
                "6000",
            ],
        }],
    }],
    disks=[{
        "device_name": "device",
        "mode": "READ_WRITE",
        "type": "PERSISTENT",
        "auto_delete": True,
        "boot": True,
        "interface": "SCSI",
        "initialize_params": [{
            "disk_size_gb": "10",
            "disk_type": "pd-standard",
            "source_image": "",
        }],
    }],
    shielded_instance_config={
        "enable_secure_boot": True,
        "enable_integrity_monitoring": False,
    },
    network_interfaces=[{
        "network": "spot-network",
    }],
    instance_types_ondemand="n1-standard-1",
    instance_types_preemptibles=[
        "n1-standard-1",
        "n1-standard-2",
    ],
    instance_types_customs=[{
        "vcpu": 2,
        "memory_gib": 7,
    }],
    subnets=[{
        "region": "asia-east1",
        "subnet_names": ["default"],
    }],
    scaling_up_policies=[{
        "policy_name": "scale_up_1",
        "source": "stackdriver",
        "metric_name": "instance/disk/read_ops_count",
        "namespace": "compute",
        "statistic": "average",
        "unit": "percent",
        "threshold": 10000,
        "period": 300,
        "cooldown": 300,
        "operator": "gte",
        "evaluation_periods": 1,
        "action_type": "adjustment",
        "adjustment": 1,
        "dimensions": [{
            "name": "storage_type",
            "value": "pd-ssd",
        }],
    }])
package main
import (
	"github.com/pulumi/pulumi-spotinst/sdk/v3/go/spotinst/gcp"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := gcp.NewElastigroup(ctx, "example", &gcp.ElastigroupArgs{
			Name:               pulumi.String("example-gcp"),
			Description:        pulumi.String("spotinst gcp group"),
			ServiceAccount:     pulumi.String("example@myProject.iam.gservicecct.com"),
			StartupScript:      pulumi.String(""),
			InstanceNamePrefix: pulumi.String("test-123a"),
			MinCpuPlatform:     pulumi.String("Intel Sandy Bridge"),
			MinSize:            pulumi.Int(0),
			MaxSize:            pulumi.Int(1),
			DesiredCapacity:    pulumi.Int(1),
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("asia-east1-c"),
				pulumi.String("us-central1-a"),
			},
			PreferredAvailabilityZones: pulumi.StringArray{
				pulumi.String("us-central1-a"),
			},
			PreemptiblePercentage: pulumi.Int(50),
			RevertToPreemptibles: gcp.ElastigroupRevertToPreemptibleArray{
				&gcp.ElastigroupRevertToPreemptibleArgs{
					PerformAt: pulumi.String("timeWindow"),
				},
			},
			OptimizationWindows: pulumi.StringArray{
				pulumi.String("Mon:01:00-Mon:03:00"),
			},
			FallbackToOndemand:       pulumi.Bool(true),
			DrainingTimeout:          pulumi.Int(180),
			ProvisioningModel:        pulumi.String("SPOT"),
			ShouldUtilizeCommitments: pulumi.Bool(true),
			Labels: gcp.ElastigroupLabelArray{
				&gcp.ElastigroupLabelArgs{
					Key:   pulumi.String("test_key"),
					Value: pulumi.String("test_value"),
				},
			},
			Tags: pulumi.StringArray{
				pulumi.String("http"),
				pulumi.String("https"),
			},
			BackendServices: gcp.ElastigroupBackendServiceArray{
				&gcp.ElastigroupBackendServiceArgs{
					ServiceName:  pulumi.String("spotinst-elb-backend-service"),
					LocationType: pulumi.String("regional"),
					Scheme:       pulumi.String("INTERNAL"),
					NamedPorts: gcp.ElastigroupBackendServiceNamedPortArray{
						&gcp.ElastigroupBackendServiceNamedPortArgs{
							Name: pulumi.String("port-name"),
							Ports: pulumi.StringArray{
								pulumi.String("8000"),
								pulumi.String("6000"),
							},
						},
					},
				},
			},
			Disks: gcp.ElastigroupDiskArray{
				&gcp.ElastigroupDiskArgs{
					DeviceName: pulumi.String("device"),
					Mode:       pulumi.String("READ_WRITE"),
					Type:       pulumi.String("PERSISTENT"),
					AutoDelete: pulumi.Bool(true),
					Boot:       pulumi.Bool(true),
					Interface:  pulumi.String("SCSI"),
					InitializeParams: gcp.ElastigroupDiskInitializeParamArray{
						&gcp.ElastigroupDiskInitializeParamArgs{
							DiskSizeGb:  pulumi.String("10"),
							DiskType:    pulumi.String("pd-standard"),
							SourceImage: pulumi.String(""),
						},
					},
				},
			},
			ShieldedInstanceConfig: &gcp.ElastigroupShieldedInstanceConfigArgs{
				EnableSecureBoot:          pulumi.Bool(true),
				EnableIntegrityMonitoring: pulumi.Bool(false),
			},
			NetworkInterfaces: gcp.ElastigroupNetworkInterfaceArray{
				&gcp.ElastigroupNetworkInterfaceArgs{
					Network: pulumi.String("spot-network"),
				},
			},
			InstanceTypesOndemand: pulumi.String("n1-standard-1"),
			InstanceTypesPreemptibles: pulumi.StringArray{
				pulumi.String("n1-standard-1"),
				pulumi.String("n1-standard-2"),
			},
			InstanceTypesCustoms: gcp.ElastigroupInstanceTypesCustomArray{
				&gcp.ElastigroupInstanceTypesCustomArgs{
					Vcpu:      pulumi.Int(2),
					MemoryGib: pulumi.Int(7),
				},
			},
			Subnets: gcp.ElastigroupSubnetArray{
				&gcp.ElastigroupSubnetArgs{
					Region: pulumi.String("asia-east1"),
					SubnetNames: pulumi.StringArray{
						pulumi.String("default"),
					},
				},
			},
			ScalingUpPolicies: gcp.ElastigroupScalingUpPolicyArray{
				&gcp.ElastigroupScalingUpPolicyArgs{
					PolicyName:        pulumi.String("scale_up_1"),
					Source:            pulumi.String("stackdriver"),
					MetricName:        pulumi.String("instance/disk/read_ops_count"),
					Namespace:         pulumi.String("compute"),
					Statistic:         pulumi.String("average"),
					Unit:              pulumi.String("percent"),
					Threshold:         pulumi.Float64(10000),
					Period:            pulumi.Int(300),
					Cooldown:          pulumi.Int(300),
					Operator:          pulumi.String("gte"),
					EvaluationPeriods: pulumi.Int(1),
					ActionType:        pulumi.String("adjustment"),
					Adjustment:        pulumi.Int(1),
					Dimensions: gcp.ElastigroupScalingUpPolicyDimensionArray{
						&gcp.ElastigroupScalingUpPolicyDimensionArgs{
							Name:  pulumi.String("storage_type"),
							Value: pulumi.String("pd-ssd"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using SpotInst = Pulumi.SpotInst;
return await Deployment.RunAsync(() => 
{
    var example = new SpotInst.Gcp.Elastigroup("example", new()
    {
        Name = "example-gcp",
        Description = "spotinst gcp group",
        ServiceAccount = "example@myProject.iam.gservicecct.com",
        StartupScript = "",
        InstanceNamePrefix = "test-123a",
        MinCpuPlatform = "Intel Sandy Bridge",
        MinSize = 0,
        MaxSize = 1,
        DesiredCapacity = 1,
        AvailabilityZones = new[]
        {
            "asia-east1-c",
            "us-central1-a",
        },
        PreferredAvailabilityZones = new[]
        {
            "us-central1-a",
        },
        PreemptiblePercentage = 50,
        RevertToPreemptibles = new[]
        {
            new SpotInst.Gcp.Inputs.ElastigroupRevertToPreemptibleArgs
            {
                PerformAt = "timeWindow",
            },
        },
        OptimizationWindows = new[]
        {
            "Mon:01:00-Mon:03:00",
        },
        FallbackToOndemand = true,
        DrainingTimeout = 180,
        ProvisioningModel = "SPOT",
        ShouldUtilizeCommitments = true,
        Labels = new[]
        {
            new SpotInst.Gcp.Inputs.ElastigroupLabelArgs
            {
                Key = "test_key",
                Value = "test_value",
            },
        },
        Tags = new[]
        {
            "http",
            "https",
        },
        BackendServices = new[]
        {
            new SpotInst.Gcp.Inputs.ElastigroupBackendServiceArgs
            {
                ServiceName = "spotinst-elb-backend-service",
                LocationType = "regional",
                Scheme = "INTERNAL",
                NamedPorts = new[]
                {
                    new SpotInst.Gcp.Inputs.ElastigroupBackendServiceNamedPortArgs
                    {
                        Name = "port-name",
                        Ports = new[]
                        {
                            "8000",
                            "6000",
                        },
                    },
                },
            },
        },
        Disks = new[]
        {
            new SpotInst.Gcp.Inputs.ElastigroupDiskArgs
            {
                DeviceName = "device",
                Mode = "READ_WRITE",
                Type = "PERSISTENT",
                AutoDelete = true,
                Boot = true,
                Interface = "SCSI",
                InitializeParams = new[]
                {
                    new SpotInst.Gcp.Inputs.ElastigroupDiskInitializeParamArgs
                    {
                        DiskSizeGb = "10",
                        DiskType = "pd-standard",
                        SourceImage = "",
                    },
                },
            },
        },
        ShieldedInstanceConfig = new SpotInst.Gcp.Inputs.ElastigroupShieldedInstanceConfigArgs
        {
            EnableSecureBoot = true,
            EnableIntegrityMonitoring = false,
        },
        NetworkInterfaces = new[]
        {
            new SpotInst.Gcp.Inputs.ElastigroupNetworkInterfaceArgs
            {
                Network = "spot-network",
            },
        },
        InstanceTypesOndemand = "n1-standard-1",
        InstanceTypesPreemptibles = new[]
        {
            "n1-standard-1",
            "n1-standard-2",
        },
        InstanceTypesCustoms = new[]
        {
            new SpotInst.Gcp.Inputs.ElastigroupInstanceTypesCustomArgs
            {
                Vcpu = 2,
                MemoryGib = 7,
            },
        },
        Subnets = new[]
        {
            new SpotInst.Gcp.Inputs.ElastigroupSubnetArgs
            {
                Region = "asia-east1",
                SubnetNames = new[]
                {
                    "default",
                },
            },
        },
        ScalingUpPolicies = new[]
        {
            new SpotInst.Gcp.Inputs.ElastigroupScalingUpPolicyArgs
            {
                PolicyName = "scale_up_1",
                Source = "stackdriver",
                MetricName = "instance/disk/read_ops_count",
                Namespace = "compute",
                Statistic = "average",
                Unit = "percent",
                Threshold = 10000,
                Period = 300,
                Cooldown = 300,
                Operator = "gte",
                EvaluationPeriods = 1,
                ActionType = "adjustment",
                Adjustment = 1,
                Dimensions = new[]
                {
                    new SpotInst.Gcp.Inputs.ElastigroupScalingUpPolicyDimensionArgs
                    {
                        Name = "storage_type",
                        Value = "pd-ssd",
                    },
                },
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.spotinst.gcp.Elastigroup;
import com.pulumi.spotinst.gcp.ElastigroupArgs;
import com.pulumi.spotinst.gcp.inputs.ElastigroupRevertToPreemptibleArgs;
import com.pulumi.spotinst.gcp.inputs.ElastigroupLabelArgs;
import com.pulumi.spotinst.gcp.inputs.ElastigroupBackendServiceArgs;
import com.pulumi.spotinst.gcp.inputs.ElastigroupDiskArgs;
import com.pulumi.spotinst.gcp.inputs.ElastigroupShieldedInstanceConfigArgs;
import com.pulumi.spotinst.gcp.inputs.ElastigroupNetworkInterfaceArgs;
import com.pulumi.spotinst.gcp.inputs.ElastigroupInstanceTypesCustomArgs;
import com.pulumi.spotinst.gcp.inputs.ElastigroupSubnetArgs;
import com.pulumi.spotinst.gcp.inputs.ElastigroupScalingUpPolicyArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        var example = new Elastigroup("example", ElastigroupArgs.builder()
            .name("example-gcp")
            .description("spotinst gcp group")
            .serviceAccount("example@myProject.iam.gservicecct.com")
            .startupScript("")
            .instanceNamePrefix("test-123a")
            .minCpuPlatform("Intel Sandy Bridge")
            .minSize(0)
            .maxSize(1)
            .desiredCapacity(1)
            .availabilityZones(            
                "asia-east1-c",
                "us-central1-a")
            .preferredAvailabilityZones("us-central1-a")
            .preemptiblePercentage(50)
            .revertToPreemptibles(ElastigroupRevertToPreemptibleArgs.builder()
                .performAt("timeWindow")
                .build())
            .optimizationWindows("Mon:01:00-Mon:03:00")
            .fallbackToOndemand(true)
            .drainingTimeout(180)
            .provisioningModel("SPOT")
            .shouldUtilizeCommitments(true)
            .labels(ElastigroupLabelArgs.builder()
                .key("test_key")
                .value("test_value")
                .build())
            .tags(            
                "http",
                "https")
            .backendServices(ElastigroupBackendServiceArgs.builder()
                .serviceName("spotinst-elb-backend-service")
                .locationType("regional")
                .scheme("INTERNAL")
                .namedPorts(ElastigroupBackendServiceNamedPortArgs.builder()
                    .name("port-name")
                    .ports(                    
                        "8000",
                        "6000")
                    .build())
                .build())
            .disks(ElastigroupDiskArgs.builder()
                .deviceName("device")
                .mode("READ_WRITE")
                .type("PERSISTENT")
                .autoDelete(true)
                .boot(true)
                .interface_("SCSI")
                .initializeParams(ElastigroupDiskInitializeParamArgs.builder()
                    .diskSizeGb("10")
                    .diskType("pd-standard")
                    .sourceImage("")
                    .build())
                .build())
            .shieldedInstanceConfig(ElastigroupShieldedInstanceConfigArgs.builder()
                .enableSecureBoot(true)
                .enableIntegrityMonitoring(false)
                .build())
            .networkInterfaces(ElastigroupNetworkInterfaceArgs.builder()
                .network("spot-network")
                .build())
            .instanceTypesOndemand("n1-standard-1")
            .instanceTypesPreemptibles(            
                "n1-standard-1",
                "n1-standard-2")
            .instanceTypesCustoms(ElastigroupInstanceTypesCustomArgs.builder()
                .vcpu(2)
                .memoryGib(7)
                .build())
            .subnets(ElastigroupSubnetArgs.builder()
                .region("asia-east1")
                .subnetNames("default")
                .build())
            .scalingUpPolicies(ElastigroupScalingUpPolicyArgs.builder()
                .policyName("scale_up_1")
                .source("stackdriver")
                .metricName("instance/disk/read_ops_count")
                .namespace("compute")
                .statistic("average")
                .unit("percent")
                .threshold(10000.0)
                .period(300)
                .cooldown(300)
                .operator("gte")
                .evaluationPeriods(1)
                .actionType("adjustment")
                .adjustment(1)
                .dimensions(ElastigroupScalingUpPolicyDimensionArgs.builder()
                    .name("storage_type")
                    .value("pd-ssd")
                    .build())
                .build())
            .build());
    }
}
resources:
  example:
    type: spotinst:gcp:Elastigroup
    properties:
      name: example-gcp
      description: spotinst gcp group
      serviceAccount: example@myProject.iam.gservicecct.com
      startupScript: ""
      instanceNamePrefix: test-123a
      minCpuPlatform: Intel Sandy Bridge
      minSize: 0
      maxSize: 1
      desiredCapacity: 1
      availabilityZones:
        - asia-east1-c
        - us-central1-a
      preferredAvailabilityZones:
        - us-central1-a
      preemptiblePercentage: 50
      revertToPreemptibles:
        - performAt: timeWindow
      optimizationWindows:
        - Mon:01:00-Mon:03:00
      fallbackToOndemand: true
      drainingTimeout: 180
      provisioningModel: SPOT
      shouldUtilizeCommitments: true
      labels:
        - key: test_key
          value: test_value
      tags:
        - http
        - https
      backendServices:
        - serviceName: spotinst-elb-backend-service
          locationType: regional
          scheme: INTERNAL
          namedPorts:
            - name: port-name
              ports:
                - 8000
                - 6000
      disks:
        - deviceName: device
          mode: READ_WRITE
          type: PERSISTENT
          autoDelete: true
          boot: true
          interface: SCSI
          initializeParams:
            - diskSizeGb: 10
              diskType: pd-standard
              sourceImage: ""
      shieldedInstanceConfig:
        enableSecureBoot: true
        enableIntegrityMonitoring: false
      networkInterfaces:
        - network: spot-network
      instanceTypesOndemand: n1-standard-1
      instanceTypesPreemptibles:
        - n1-standard-1
        - n1-standard-2
      instanceTypesCustoms:
        - vcpu: 2
          memoryGib: 7
      subnets:
        - region: asia-east1
          subnetNames:
            - default
      scalingUpPolicies:
        - policyName: scale_up_1
          source: stackdriver
          metricName: instance/disk/read_ops_count
          namespace: compute
          statistic: average
          unit: percent
          threshold: 10000
          period: 300
          cooldown: 300
          operator: gte
          evaluationPeriods: 1
          actionType: adjustment
          adjustment: 1
          dimensions:
            - name: storage_type
              value: pd-ssd
Create Elastigroup Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Elastigroup(name: string, args: ElastigroupArgs, opts?: CustomResourceOptions);@overload
def Elastigroup(resource_name: str,
                args: ElastigroupArgs,
                opts: Optional[ResourceOptions] = None)
@overload
def Elastigroup(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                desired_capacity: Optional[int] = None,
                metadatas: Optional[Sequence[ElastigroupMetadataArgs]] = None,
                min_size: Optional[int] = None,
                description: Optional[str] = None,
                availability_zones: Optional[Sequence[str]] = None,
                disks: Optional[Sequence[ElastigroupDiskArgs]] = None,
                draining_timeout: Optional[int] = None,
                fallback_to_ondemand: Optional[bool] = None,
                gpu: Optional[Sequence[ElastigroupGpuArgs]] = None,
                health_check_grace_period: Optional[int] = None,
                health_check_type: Optional[str] = None,
                instance_name_prefix: Optional[str] = None,
                instance_types_customs: Optional[Sequence[ElastigroupInstanceTypesCustomArgs]] = None,
                instance_types_ondemand: Optional[str] = None,
                instance_types_preemptibles: Optional[Sequence[str]] = None,
                integration_docker_swarm: Optional[ElastigroupIntegrationDockerSwarmArgs] = None,
                integration_gke: Optional[ElastigroupIntegrationGkeArgs] = None,
                ip_forwarding: Optional[bool] = None,
                labels: Optional[Sequence[ElastigroupLabelArgs]] = None,
                max_size: Optional[int] = None,
                auto_healing: Optional[bool] = None,
                backend_services: Optional[Sequence[ElastigroupBackendServiceArgs]] = None,
                name: Optional[str] = None,
                min_cpu_platform: Optional[str] = None,
                network_interfaces: Optional[Sequence[ElastigroupNetworkInterfaceArgs]] = None,
                ondemand_count: Optional[int] = None,
                optimization_windows: Optional[Sequence[str]] = None,
                preemptible_percentage: Optional[int] = None,
                preferred_availability_zones: Optional[Sequence[str]] = None,
                provisioning_model: Optional[str] = None,
                revert_to_preemptibles: Optional[Sequence[ElastigroupRevertToPreemptibleArgs]] = None,
                scaling_down_policies: Optional[Sequence[ElastigroupScalingDownPolicyArgs]] = None,
                scaling_up_policies: Optional[Sequence[ElastigroupScalingUpPolicyArgs]] = None,
                scheduled_tasks: Optional[Sequence[ElastigroupScheduledTaskArgs]] = None,
                service_account: Optional[str] = None,
                shielded_instance_config: Optional[ElastigroupShieldedInstanceConfigArgs] = None,
                should_utilize_commitments: Optional[bool] = None,
                shutdown_script: Optional[str] = None,
                startup_script: Optional[str] = None,
                subnets: Optional[Sequence[ElastigroupSubnetArgs]] = None,
                tags: Optional[Sequence[str]] = None,
                unhealthy_duration: Optional[int] = None)func NewElastigroup(ctx *Context, name string, args ElastigroupArgs, opts ...ResourceOption) (*Elastigroup, error)public Elastigroup(string name, ElastigroupArgs args, CustomResourceOptions? opts = null)
public Elastigroup(String name, ElastigroupArgs args)
public Elastigroup(String name, ElastigroupArgs args, CustomResourceOptions options)
type: spotinst:gcp:Elastigroup
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 ElastigroupArgs
- 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 ElastigroupArgs
- 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 ElastigroupArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ElastigroupArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ElastigroupArgs
- 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 spotinstElastigroupResource = new SpotInst.Gcp.Elastigroup("spotinstElastigroupResource", new()
{
    DesiredCapacity = 0,
    Metadatas = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupMetadataArgs
        {
            Key = "string",
            Value = "string",
        },
    },
    MinSize = 0,
    Description = "string",
    Disks = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupDiskArgs
        {
            AutoDelete = false,
            Boot = false,
            DeviceName = "string",
            InitializeParams = new[]
            {
                new SpotInst.Gcp.Inputs.ElastigroupDiskInitializeParamArgs
                {
                    SourceImage = "string",
                    DiskSizeGb = "string",
                    DiskType = "string",
                },
            },
            Interface = "string",
            Mode = "string",
            Source = "string",
            Type = "string",
        },
    },
    DrainingTimeout = 0,
    FallbackToOndemand = false,
    Gpu = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupGpuArgs
        {
            Count = 0,
            Type = "string",
        },
    },
    HealthCheckGracePeriod = 0,
    HealthCheckType = "string",
    InstanceNamePrefix = "string",
    InstanceTypesCustoms = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupInstanceTypesCustomArgs
        {
            MemoryGib = 0,
            Vcpu = 0,
        },
    },
    InstanceTypesOndemand = "string",
    InstanceTypesPreemptibles = new[]
    {
        "string",
    },
    IntegrationDockerSwarm = new SpotInst.Gcp.Inputs.ElastigroupIntegrationDockerSwarmArgs
    {
        MasterHost = "string",
        MasterPort = 0,
    },
    IntegrationGke = new SpotInst.Gcp.Inputs.ElastigroupIntegrationGkeArgs
    {
        AutoUpdate = false,
        AutoscaleCooldown = 0,
        AutoscaleDown = new SpotInst.Gcp.Inputs.ElastigroupIntegrationGkeAutoscaleDownArgs
        {
            EvaluationPeriods = 0,
        },
        AutoscaleHeadroom = new SpotInst.Gcp.Inputs.ElastigroupIntegrationGkeAutoscaleHeadroomArgs
        {
            CpuPerUnit = 0,
            MemoryPerUnit = 0,
            NumOfUnits = 0,
        },
        AutoscaleIsAutoConfig = false,
        AutoscaleIsEnabled = false,
        AutoscaleLabels = new[]
        {
            new SpotInst.Gcp.Inputs.ElastigroupIntegrationGkeAutoscaleLabelArgs
            {
                Key = "string",
                Value = "string",
            },
        },
        ClusterId = "string",
        Location = "string",
    },
    IpForwarding = false,
    Labels = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupLabelArgs
        {
            Key = "string",
            Value = "string",
        },
    },
    MaxSize = 0,
    AutoHealing = false,
    BackendServices = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupBackendServiceArgs
        {
            ServiceName = "string",
            LocationType = "string",
            NamedPorts = new[]
            {
                new SpotInst.Gcp.Inputs.ElastigroupBackendServiceNamedPortArgs
                {
                    Name = "string",
                    Ports = new[]
                    {
                        "string",
                    },
                },
            },
            Scheme = "string",
        },
    },
    Name = "string",
    MinCpuPlatform = "string",
    NetworkInterfaces = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupNetworkInterfaceArgs
        {
            Network = "string",
            AccessConfigs = new[]
            {
                new SpotInst.Gcp.Inputs.ElastigroupNetworkInterfaceAccessConfigArgs
                {
                    Name = "string",
                    Type = "string",
                },
            },
            AliasIpRanges = new[]
            {
                new SpotInst.Gcp.Inputs.ElastigroupNetworkInterfaceAliasIpRangeArgs
                {
                    IpCidrRange = "string",
                    SubnetworkRangeName = "string",
                },
            },
        },
    },
    OndemandCount = 0,
    OptimizationWindows = new[]
    {
        "string",
    },
    PreemptiblePercentage = 0,
    PreferredAvailabilityZones = new[]
    {
        "string",
    },
    ProvisioningModel = "string",
    RevertToPreemptibles = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupRevertToPreemptibleArgs
        {
            PerformAt = "string",
        },
    },
    ScalingDownPolicies = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupScalingDownPolicyArgs
        {
            PolicyName = "string",
            MetricName = "string",
            Unit = "string",
            Threshold = 0,
            Namespace = "string",
            EvaluationPeriods = 0,
            Period = 0,
            Dimensions = new[]
            {
                new SpotInst.Gcp.Inputs.ElastigroupScalingDownPolicyDimensionArgs
                {
                    Name = "string",
                    Value = "string",
                },
            },
            Adjustment = 0,
            ActionType = "string",
            Source = "string",
            Statistic = "string",
            Operator = "string",
            Cooldown = 0,
        },
    },
    ScalingUpPolicies = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupScalingUpPolicyArgs
        {
            PolicyName = "string",
            MetricName = "string",
            Unit = "string",
            Threshold = 0,
            Namespace = "string",
            EvaluationPeriods = 0,
            Period = 0,
            Dimensions = new[]
            {
                new SpotInst.Gcp.Inputs.ElastigroupScalingUpPolicyDimensionArgs
                {
                    Name = "string",
                    Value = "string",
                },
            },
            Adjustment = 0,
            ActionType = "string",
            Source = "string",
            Statistic = "string",
            Operator = "string",
            Cooldown = 0,
        },
    },
    ScheduledTasks = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupScheduledTaskArgs
        {
            TaskType = "string",
            CronExpression = "string",
            IsEnabled = false,
            MaxCapacity = "string",
            MinCapacity = "string",
            TargetCapacity = "string",
        },
    },
    ServiceAccount = "string",
    ShieldedInstanceConfig = new SpotInst.Gcp.Inputs.ElastigroupShieldedInstanceConfigArgs
    {
        EnableIntegrityMonitoring = false,
        EnableSecureBoot = false,
    },
    ShouldUtilizeCommitments = false,
    ShutdownScript = "string",
    StartupScript = "string",
    Subnets = new[]
    {
        new SpotInst.Gcp.Inputs.ElastigroupSubnetArgs
        {
            Region = "string",
            SubnetNames = new[]
            {
                "string",
            },
        },
    },
    Tags = new[]
    {
        "string",
    },
    UnhealthyDuration = 0,
});
example, err := gcp.NewElastigroup(ctx, "spotinstElastigroupResource", &gcp.ElastigroupArgs{
	DesiredCapacity: pulumi.Int(0),
	Metadatas: gcp.ElastigroupMetadataArray{
		&gcp.ElastigroupMetadataArgs{
			Key:   pulumi.String("string"),
			Value: pulumi.String("string"),
		},
	},
	MinSize:     pulumi.Int(0),
	Description: pulumi.String("string"),
	Disks: gcp.ElastigroupDiskArray{
		&gcp.ElastigroupDiskArgs{
			AutoDelete: pulumi.Bool(false),
			Boot:       pulumi.Bool(false),
			DeviceName: pulumi.String("string"),
			InitializeParams: gcp.ElastigroupDiskInitializeParamArray{
				&gcp.ElastigroupDiskInitializeParamArgs{
					SourceImage: pulumi.String("string"),
					DiskSizeGb:  pulumi.String("string"),
					DiskType:    pulumi.String("string"),
				},
			},
			Interface: pulumi.String("string"),
			Mode:      pulumi.String("string"),
			Source:    pulumi.String("string"),
			Type:      pulumi.String("string"),
		},
	},
	DrainingTimeout:    pulumi.Int(0),
	FallbackToOndemand: pulumi.Bool(false),
	Gpu: gcp.ElastigroupGpuArray{
		&gcp.ElastigroupGpuArgs{
			Count: pulumi.Int(0),
			Type:  pulumi.String("string"),
		},
	},
	HealthCheckGracePeriod: pulumi.Int(0),
	HealthCheckType:        pulumi.String("string"),
	InstanceNamePrefix:     pulumi.String("string"),
	InstanceTypesCustoms: gcp.ElastigroupInstanceTypesCustomArray{
		&gcp.ElastigroupInstanceTypesCustomArgs{
			MemoryGib: pulumi.Int(0),
			Vcpu:      pulumi.Int(0),
		},
	},
	InstanceTypesOndemand: pulumi.String("string"),
	InstanceTypesPreemptibles: pulumi.StringArray{
		pulumi.String("string"),
	},
	IntegrationDockerSwarm: &gcp.ElastigroupIntegrationDockerSwarmArgs{
		MasterHost: pulumi.String("string"),
		MasterPort: pulumi.Int(0),
	},
	IntegrationGke: &gcp.ElastigroupIntegrationGkeArgs{
		AutoUpdate:        pulumi.Bool(false),
		AutoscaleCooldown: pulumi.Int(0),
		AutoscaleDown: &gcp.ElastigroupIntegrationGkeAutoscaleDownArgs{
			EvaluationPeriods: pulumi.Int(0),
		},
		AutoscaleHeadroom: &gcp.ElastigroupIntegrationGkeAutoscaleHeadroomArgs{
			CpuPerUnit:    pulumi.Int(0),
			MemoryPerUnit: pulumi.Int(0),
			NumOfUnits:    pulumi.Int(0),
		},
		AutoscaleIsAutoConfig: pulumi.Bool(false),
		AutoscaleIsEnabled:    pulumi.Bool(false),
		AutoscaleLabels: gcp.ElastigroupIntegrationGkeAutoscaleLabelArray{
			&gcp.ElastigroupIntegrationGkeAutoscaleLabelArgs{
				Key:   pulumi.String("string"),
				Value: pulumi.String("string"),
			},
		},
		ClusterId: pulumi.String("string"),
		Location:  pulumi.String("string"),
	},
	IpForwarding: pulumi.Bool(false),
	Labels: gcp.ElastigroupLabelArray{
		&gcp.ElastigroupLabelArgs{
			Key:   pulumi.String("string"),
			Value: pulumi.String("string"),
		},
	},
	MaxSize:     pulumi.Int(0),
	AutoHealing: pulumi.Bool(false),
	BackendServices: gcp.ElastigroupBackendServiceArray{
		&gcp.ElastigroupBackendServiceArgs{
			ServiceName:  pulumi.String("string"),
			LocationType: pulumi.String("string"),
			NamedPorts: gcp.ElastigroupBackendServiceNamedPortArray{
				&gcp.ElastigroupBackendServiceNamedPortArgs{
					Name: pulumi.String("string"),
					Ports: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
			},
			Scheme: pulumi.String("string"),
		},
	},
	Name:           pulumi.String("string"),
	MinCpuPlatform: pulumi.String("string"),
	NetworkInterfaces: gcp.ElastigroupNetworkInterfaceArray{
		&gcp.ElastigroupNetworkInterfaceArgs{
			Network: pulumi.String("string"),
			AccessConfigs: gcp.ElastigroupNetworkInterfaceAccessConfigArray{
				&gcp.ElastigroupNetworkInterfaceAccessConfigArgs{
					Name: pulumi.String("string"),
					Type: pulumi.String("string"),
				},
			},
			AliasIpRanges: gcp.ElastigroupNetworkInterfaceAliasIpRangeArray{
				&gcp.ElastigroupNetworkInterfaceAliasIpRangeArgs{
					IpCidrRange:         pulumi.String("string"),
					SubnetworkRangeName: pulumi.String("string"),
				},
			},
		},
	},
	OndemandCount: pulumi.Int(0),
	OptimizationWindows: pulumi.StringArray{
		pulumi.String("string"),
	},
	PreemptiblePercentage: pulumi.Int(0),
	PreferredAvailabilityZones: pulumi.StringArray{
		pulumi.String("string"),
	},
	ProvisioningModel: pulumi.String("string"),
	RevertToPreemptibles: gcp.ElastigroupRevertToPreemptibleArray{
		&gcp.ElastigroupRevertToPreemptibleArgs{
			PerformAt: pulumi.String("string"),
		},
	},
	ScalingDownPolicies: gcp.ElastigroupScalingDownPolicyArray{
		&gcp.ElastigroupScalingDownPolicyArgs{
			PolicyName:        pulumi.String("string"),
			MetricName:        pulumi.String("string"),
			Unit:              pulumi.String("string"),
			Threshold:         pulumi.Float64(0),
			Namespace:         pulumi.String("string"),
			EvaluationPeriods: pulumi.Int(0),
			Period:            pulumi.Int(0),
			Dimensions: gcp.ElastigroupScalingDownPolicyDimensionArray{
				&gcp.ElastigroupScalingDownPolicyDimensionArgs{
					Name:  pulumi.String("string"),
					Value: pulumi.String("string"),
				},
			},
			Adjustment: pulumi.Int(0),
			ActionType: pulumi.String("string"),
			Source:     pulumi.String("string"),
			Statistic:  pulumi.String("string"),
			Operator:   pulumi.String("string"),
			Cooldown:   pulumi.Int(0),
		},
	},
	ScalingUpPolicies: gcp.ElastigroupScalingUpPolicyArray{
		&gcp.ElastigroupScalingUpPolicyArgs{
			PolicyName:        pulumi.String("string"),
			MetricName:        pulumi.String("string"),
			Unit:              pulumi.String("string"),
			Threshold:         pulumi.Float64(0),
			Namespace:         pulumi.String("string"),
			EvaluationPeriods: pulumi.Int(0),
			Period:            pulumi.Int(0),
			Dimensions: gcp.ElastigroupScalingUpPolicyDimensionArray{
				&gcp.ElastigroupScalingUpPolicyDimensionArgs{
					Name:  pulumi.String("string"),
					Value: pulumi.String("string"),
				},
			},
			Adjustment: pulumi.Int(0),
			ActionType: pulumi.String("string"),
			Source:     pulumi.String("string"),
			Statistic:  pulumi.String("string"),
			Operator:   pulumi.String("string"),
			Cooldown:   pulumi.Int(0),
		},
	},
	ScheduledTasks: gcp.ElastigroupScheduledTaskArray{
		&gcp.ElastigroupScheduledTaskArgs{
			TaskType:       pulumi.String("string"),
			CronExpression: pulumi.String("string"),
			IsEnabled:      pulumi.Bool(false),
			MaxCapacity:    pulumi.String("string"),
			MinCapacity:    pulumi.String("string"),
			TargetCapacity: pulumi.String("string"),
		},
	},
	ServiceAccount: pulumi.String("string"),
	ShieldedInstanceConfig: &gcp.ElastigroupShieldedInstanceConfigArgs{
		EnableIntegrityMonitoring: pulumi.Bool(false),
		EnableSecureBoot:          pulumi.Bool(false),
	},
	ShouldUtilizeCommitments: pulumi.Bool(false),
	ShutdownScript:           pulumi.String("string"),
	StartupScript:            pulumi.String("string"),
	Subnets: gcp.ElastigroupSubnetArray{
		&gcp.ElastigroupSubnetArgs{
			Region: pulumi.String("string"),
			SubnetNames: pulumi.StringArray{
				pulumi.String("string"),
			},
		},
	},
	Tags: pulumi.StringArray{
		pulumi.String("string"),
	},
	UnhealthyDuration: pulumi.Int(0),
})
var spotinstElastigroupResource = new com.pulumi.spotinst.gcp.Elastigroup("spotinstElastigroupResource", com.pulumi.spotinst.gcp.ElastigroupArgs.builder()
    .desiredCapacity(0)
    .metadatas(ElastigroupMetadataArgs.builder()
        .key("string")
        .value("string")
        .build())
    .minSize(0)
    .description("string")
    .disks(ElastigroupDiskArgs.builder()
        .autoDelete(false)
        .boot(false)
        .deviceName("string")
        .initializeParams(ElastigroupDiskInitializeParamArgs.builder()
            .sourceImage("string")
            .diskSizeGb("string")
            .diskType("string")
            .build())
        .interface_("string")
        .mode("string")
        .source("string")
        .type("string")
        .build())
    .drainingTimeout(0)
    .fallbackToOndemand(false)
    .gpu(ElastigroupGpuArgs.builder()
        .count(0)
        .type("string")
        .build())
    .healthCheckGracePeriod(0)
    .healthCheckType("string")
    .instanceNamePrefix("string")
    .instanceTypesCustoms(ElastigroupInstanceTypesCustomArgs.builder()
        .memoryGib(0)
        .vcpu(0)
        .build())
    .instanceTypesOndemand("string")
    .instanceTypesPreemptibles("string")
    .integrationDockerSwarm(ElastigroupIntegrationDockerSwarmArgs.builder()
        .masterHost("string")
        .masterPort(0)
        .build())
    .integrationGke(ElastigroupIntegrationGkeArgs.builder()
        .autoUpdate(false)
        .autoscaleCooldown(0)
        .autoscaleDown(ElastigroupIntegrationGkeAutoscaleDownArgs.builder()
            .evaluationPeriods(0)
            .build())
        .autoscaleHeadroom(ElastigroupIntegrationGkeAutoscaleHeadroomArgs.builder()
            .cpuPerUnit(0)
            .memoryPerUnit(0)
            .numOfUnits(0)
            .build())
        .autoscaleIsAutoConfig(false)
        .autoscaleIsEnabled(false)
        .autoscaleLabels(ElastigroupIntegrationGkeAutoscaleLabelArgs.builder()
            .key("string")
            .value("string")
            .build())
        .clusterId("string")
        .location("string")
        .build())
    .ipForwarding(false)
    .labels(ElastigroupLabelArgs.builder()
        .key("string")
        .value("string")
        .build())
    .maxSize(0)
    .autoHealing(false)
    .backendServices(ElastigroupBackendServiceArgs.builder()
        .serviceName("string")
        .locationType("string")
        .namedPorts(ElastigroupBackendServiceNamedPortArgs.builder()
            .name("string")
            .ports("string")
            .build())
        .scheme("string")
        .build())
    .name("string")
    .minCpuPlatform("string")
    .networkInterfaces(ElastigroupNetworkInterfaceArgs.builder()
        .network("string")
        .accessConfigs(ElastigroupNetworkInterfaceAccessConfigArgs.builder()
            .name("string")
            .type("string")
            .build())
        .aliasIpRanges(ElastigroupNetworkInterfaceAliasIpRangeArgs.builder()
            .ipCidrRange("string")
            .subnetworkRangeName("string")
            .build())
        .build())
    .ondemandCount(0)
    .optimizationWindows("string")
    .preemptiblePercentage(0)
    .preferredAvailabilityZones("string")
    .provisioningModel("string")
    .revertToPreemptibles(ElastigroupRevertToPreemptibleArgs.builder()
        .performAt("string")
        .build())
    .scalingDownPolicies(ElastigroupScalingDownPolicyArgs.builder()
        .policyName("string")
        .metricName("string")
        .unit("string")
        .threshold(0.0)
        .namespace("string")
        .evaluationPeriods(0)
        .period(0)
        .dimensions(ElastigroupScalingDownPolicyDimensionArgs.builder()
            .name("string")
            .value("string")
            .build())
        .adjustment(0)
        .actionType("string")
        .source("string")
        .statistic("string")
        .operator("string")
        .cooldown(0)
        .build())
    .scalingUpPolicies(ElastigroupScalingUpPolicyArgs.builder()
        .policyName("string")
        .metricName("string")
        .unit("string")
        .threshold(0.0)
        .namespace("string")
        .evaluationPeriods(0)
        .period(0)
        .dimensions(ElastigroupScalingUpPolicyDimensionArgs.builder()
            .name("string")
            .value("string")
            .build())
        .adjustment(0)
        .actionType("string")
        .source("string")
        .statistic("string")
        .operator("string")
        .cooldown(0)
        .build())
    .scheduledTasks(ElastigroupScheduledTaskArgs.builder()
        .taskType("string")
        .cronExpression("string")
        .isEnabled(false)
        .maxCapacity("string")
        .minCapacity("string")
        .targetCapacity("string")
        .build())
    .serviceAccount("string")
    .shieldedInstanceConfig(ElastigroupShieldedInstanceConfigArgs.builder()
        .enableIntegrityMonitoring(false)
        .enableSecureBoot(false)
        .build())
    .shouldUtilizeCommitments(false)
    .shutdownScript("string")
    .startupScript("string")
    .subnets(ElastigroupSubnetArgs.builder()
        .region("string")
        .subnetNames("string")
        .build())
    .tags("string")
    .unhealthyDuration(0)
    .build());
spotinst_elastigroup_resource = spotinst.gcp.Elastigroup("spotinstElastigroupResource",
    desired_capacity=0,
    metadatas=[{
        "key": "string",
        "value": "string",
    }],
    min_size=0,
    description="string",
    disks=[{
        "auto_delete": False,
        "boot": False,
        "device_name": "string",
        "initialize_params": [{
            "source_image": "string",
            "disk_size_gb": "string",
            "disk_type": "string",
        }],
        "interface": "string",
        "mode": "string",
        "source": "string",
        "type": "string",
    }],
    draining_timeout=0,
    fallback_to_ondemand=False,
    gpu=[{
        "count": 0,
        "type": "string",
    }],
    health_check_grace_period=0,
    health_check_type="string",
    instance_name_prefix="string",
    instance_types_customs=[{
        "memory_gib": 0,
        "vcpu": 0,
    }],
    instance_types_ondemand="string",
    instance_types_preemptibles=["string"],
    integration_docker_swarm={
        "master_host": "string",
        "master_port": 0,
    },
    integration_gke={
        "auto_update": False,
        "autoscale_cooldown": 0,
        "autoscale_down": {
            "evaluation_periods": 0,
        },
        "autoscale_headroom": {
            "cpu_per_unit": 0,
            "memory_per_unit": 0,
            "num_of_units": 0,
        },
        "autoscale_is_auto_config": False,
        "autoscale_is_enabled": False,
        "autoscale_labels": [{
            "key": "string",
            "value": "string",
        }],
        "cluster_id": "string",
        "location": "string",
    },
    ip_forwarding=False,
    labels=[{
        "key": "string",
        "value": "string",
    }],
    max_size=0,
    auto_healing=False,
    backend_services=[{
        "service_name": "string",
        "location_type": "string",
        "named_ports": [{
            "name": "string",
            "ports": ["string"],
        }],
        "scheme": "string",
    }],
    name="string",
    min_cpu_platform="string",
    network_interfaces=[{
        "network": "string",
        "access_configs": [{
            "name": "string",
            "type": "string",
        }],
        "alias_ip_ranges": [{
            "ip_cidr_range": "string",
            "subnetwork_range_name": "string",
        }],
    }],
    ondemand_count=0,
    optimization_windows=["string"],
    preemptible_percentage=0,
    preferred_availability_zones=["string"],
    provisioning_model="string",
    revert_to_preemptibles=[{
        "perform_at": "string",
    }],
    scaling_down_policies=[{
        "policy_name": "string",
        "metric_name": "string",
        "unit": "string",
        "threshold": 0,
        "namespace": "string",
        "evaluation_periods": 0,
        "period": 0,
        "dimensions": [{
            "name": "string",
            "value": "string",
        }],
        "adjustment": 0,
        "action_type": "string",
        "source": "string",
        "statistic": "string",
        "operator": "string",
        "cooldown": 0,
    }],
    scaling_up_policies=[{
        "policy_name": "string",
        "metric_name": "string",
        "unit": "string",
        "threshold": 0,
        "namespace": "string",
        "evaluation_periods": 0,
        "period": 0,
        "dimensions": [{
            "name": "string",
            "value": "string",
        }],
        "adjustment": 0,
        "action_type": "string",
        "source": "string",
        "statistic": "string",
        "operator": "string",
        "cooldown": 0,
    }],
    scheduled_tasks=[{
        "task_type": "string",
        "cron_expression": "string",
        "is_enabled": False,
        "max_capacity": "string",
        "min_capacity": "string",
        "target_capacity": "string",
    }],
    service_account="string",
    shielded_instance_config={
        "enable_integrity_monitoring": False,
        "enable_secure_boot": False,
    },
    should_utilize_commitments=False,
    shutdown_script="string",
    startup_script="string",
    subnets=[{
        "region": "string",
        "subnet_names": ["string"],
    }],
    tags=["string"],
    unhealthy_duration=0)
const spotinstElastigroupResource = new spotinst.gcp.Elastigroup("spotinstElastigroupResource", {
    desiredCapacity: 0,
    metadatas: [{
        key: "string",
        value: "string",
    }],
    minSize: 0,
    description: "string",
    disks: [{
        autoDelete: false,
        boot: false,
        deviceName: "string",
        initializeParams: [{
            sourceImage: "string",
            diskSizeGb: "string",
            diskType: "string",
        }],
        "interface": "string",
        mode: "string",
        source: "string",
        type: "string",
    }],
    drainingTimeout: 0,
    fallbackToOndemand: false,
    gpu: [{
        count: 0,
        type: "string",
    }],
    healthCheckGracePeriod: 0,
    healthCheckType: "string",
    instanceNamePrefix: "string",
    instanceTypesCustoms: [{
        memoryGib: 0,
        vcpu: 0,
    }],
    instanceTypesOndemand: "string",
    instanceTypesPreemptibles: ["string"],
    integrationDockerSwarm: {
        masterHost: "string",
        masterPort: 0,
    },
    integrationGke: {
        autoUpdate: false,
        autoscaleCooldown: 0,
        autoscaleDown: {
            evaluationPeriods: 0,
        },
        autoscaleHeadroom: {
            cpuPerUnit: 0,
            memoryPerUnit: 0,
            numOfUnits: 0,
        },
        autoscaleIsAutoConfig: false,
        autoscaleIsEnabled: false,
        autoscaleLabels: [{
            key: "string",
            value: "string",
        }],
        clusterId: "string",
        location: "string",
    },
    ipForwarding: false,
    labels: [{
        key: "string",
        value: "string",
    }],
    maxSize: 0,
    autoHealing: false,
    backendServices: [{
        serviceName: "string",
        locationType: "string",
        namedPorts: [{
            name: "string",
            ports: ["string"],
        }],
        scheme: "string",
    }],
    name: "string",
    minCpuPlatform: "string",
    networkInterfaces: [{
        network: "string",
        accessConfigs: [{
            name: "string",
            type: "string",
        }],
        aliasIpRanges: [{
            ipCidrRange: "string",
            subnetworkRangeName: "string",
        }],
    }],
    ondemandCount: 0,
    optimizationWindows: ["string"],
    preemptiblePercentage: 0,
    preferredAvailabilityZones: ["string"],
    provisioningModel: "string",
    revertToPreemptibles: [{
        performAt: "string",
    }],
    scalingDownPolicies: [{
        policyName: "string",
        metricName: "string",
        unit: "string",
        threshold: 0,
        namespace: "string",
        evaluationPeriods: 0,
        period: 0,
        dimensions: [{
            name: "string",
            value: "string",
        }],
        adjustment: 0,
        actionType: "string",
        source: "string",
        statistic: "string",
        operator: "string",
        cooldown: 0,
    }],
    scalingUpPolicies: [{
        policyName: "string",
        metricName: "string",
        unit: "string",
        threshold: 0,
        namespace: "string",
        evaluationPeriods: 0,
        period: 0,
        dimensions: [{
            name: "string",
            value: "string",
        }],
        adjustment: 0,
        actionType: "string",
        source: "string",
        statistic: "string",
        operator: "string",
        cooldown: 0,
    }],
    scheduledTasks: [{
        taskType: "string",
        cronExpression: "string",
        isEnabled: false,
        maxCapacity: "string",
        minCapacity: "string",
        targetCapacity: "string",
    }],
    serviceAccount: "string",
    shieldedInstanceConfig: {
        enableIntegrityMonitoring: false,
        enableSecureBoot: false,
    },
    shouldUtilizeCommitments: false,
    shutdownScript: "string",
    startupScript: "string",
    subnets: [{
        region: "string",
        subnetNames: ["string"],
    }],
    tags: ["string"],
    unhealthyDuration: 0,
});
type: spotinst:gcp:Elastigroup
properties:
    autoHealing: false
    backendServices:
        - locationType: string
          namedPorts:
            - name: string
              ports:
                - string
          scheme: string
          serviceName: string
    description: string
    desiredCapacity: 0
    disks:
        - autoDelete: false
          boot: false
          deviceName: string
          initializeParams:
            - diskSizeGb: string
              diskType: string
              sourceImage: string
          interface: string
          mode: string
          source: string
          type: string
    drainingTimeout: 0
    fallbackToOndemand: false
    gpu:
        - count: 0
          type: string
    healthCheckGracePeriod: 0
    healthCheckType: string
    instanceNamePrefix: string
    instanceTypesCustoms:
        - memoryGib: 0
          vcpu: 0
    instanceTypesOndemand: string
    instanceTypesPreemptibles:
        - string
    integrationDockerSwarm:
        masterHost: string
        masterPort: 0
    integrationGke:
        autoUpdate: false
        autoscaleCooldown: 0
        autoscaleDown:
            evaluationPeriods: 0
        autoscaleHeadroom:
            cpuPerUnit: 0
            memoryPerUnit: 0
            numOfUnits: 0
        autoscaleIsAutoConfig: false
        autoscaleIsEnabled: false
        autoscaleLabels:
            - key: string
              value: string
        clusterId: string
        location: string
    ipForwarding: false
    labels:
        - key: string
          value: string
    maxSize: 0
    metadatas:
        - key: string
          value: string
    minCpuPlatform: string
    minSize: 0
    name: string
    networkInterfaces:
        - accessConfigs:
            - name: string
              type: string
          aliasIpRanges:
            - ipCidrRange: string
              subnetworkRangeName: string
          network: string
    ondemandCount: 0
    optimizationWindows:
        - string
    preemptiblePercentage: 0
    preferredAvailabilityZones:
        - string
    provisioningModel: string
    revertToPreemptibles:
        - performAt: string
    scalingDownPolicies:
        - actionType: string
          adjustment: 0
          cooldown: 0
          dimensions:
            - name: string
              value: string
          evaluationPeriods: 0
          metricName: string
          namespace: string
          operator: string
          period: 0
          policyName: string
          source: string
          statistic: string
          threshold: 0
          unit: string
    scalingUpPolicies:
        - actionType: string
          adjustment: 0
          cooldown: 0
          dimensions:
            - name: string
              value: string
          evaluationPeriods: 0
          metricName: string
          namespace: string
          operator: string
          period: 0
          policyName: string
          source: string
          statistic: string
          threshold: 0
          unit: string
    scheduledTasks:
        - cronExpression: string
          isEnabled: false
          maxCapacity: string
          minCapacity: string
          targetCapacity: string
          taskType: string
    serviceAccount: string
    shieldedInstanceConfig:
        enableIntegrityMonitoring: false
        enableSecureBoot: false
    shouldUtilizeCommitments: false
    shutdownScript: string
    startupScript: string
    subnets:
        - region: string
          subnetNames:
            - string
    tags:
        - string
    unhealthyDuration: 0
Elastigroup 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 Elastigroup resource accepts the following input properties:
- DesiredCapacity int
- The desired number of instances the group should have at any time.
- AutoHealing bool
- AvailabilityZones List<string>
- List of availability zones for the group.
- BackendServices List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Backend Service> 
- Description string
- The region your GCP group will be created in.
- Disks
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Disk> 
- DrainingTimeout int
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- FallbackTo boolOndemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- Gpu
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Gpu> 
- HealthCheck intGrace Period 
- HealthCheck stringType 
- InstanceName stringPrefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- InstanceTypes List<Pulumi.Customs Spot Inst. Gcp. Inputs. Elastigroup Instance Types Custom> 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- InstanceTypes stringOndemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- InstanceTypes List<string>Preemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- IntegrationDocker Pulumi.Swarm Spot Inst. Gcp. Inputs. Elastigroup Integration Docker Swarm 
- IntegrationGke Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Integration Gke 
- IpForwarding bool
- Labels
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Label> 
- Array of objects with key-value pairs.
- MaxSize int
- The maximum number of instances the group should have at any time.
- Metadatas
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Metadata> 
- Array of objects with key-value pairs.
- MinCpu stringPlatform 
- Select a minimum CPU platform for the compute instance.
- MinSize int
- The minimum number of instances the group should have at any time.
- Name string
- The group name.
- NetworkInterfaces List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Network Interface> 
- OndemandCount int
- OptimizationWindows List<string>
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- PreemptiblePercentage int
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- PreferredAvailability List<string>Zones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- ProvisioningModel string
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- RevertTo List<Pulumi.Preemptibles Spot Inst. Gcp. Inputs. Elastigroup Revert To Preemptible> 
- Setting for revert to preemptible option.
- ScalingDown List<Pulumi.Policies Spot Inst. Gcp. Inputs. Elastigroup Scaling Down Policy> 
- ScalingUp List<Pulumi.Policies Spot Inst. Gcp. Inputs. Elastigroup Scaling Up Policy> 
- ScheduledTasks List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Scheduled Task> 
- ServiceAccount string
- The email of the service account in which the group instances will be launched.
- ShieldedInstance Pulumi.Config Spot Inst. Gcp. Inputs. Elastigroup Shielded Instance Config 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- ShouldUtilize boolCommitments 
- Enable committed use discounts utilization.
- ShutdownScript string
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- StartupScript string
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- Subnets
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Subnet> 
- A list of regions and subnets.
- List<string>
- Tags to mark created instances.
- UnhealthyDuration int
- DesiredCapacity int
- The desired number of instances the group should have at any time.
- AutoHealing bool
- AvailabilityZones []string
- List of availability zones for the group.
- BackendServices []ElastigroupBackend Service Args 
- Description string
- The region your GCP group will be created in.
- Disks
[]ElastigroupDisk Args 
- DrainingTimeout int
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- FallbackTo boolOndemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- Gpu
[]ElastigroupGpu Args 
- HealthCheck intGrace Period 
- HealthCheck stringType 
- InstanceName stringPrefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- InstanceTypes []ElastigroupCustoms Instance Types Custom Args 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- InstanceTypes stringOndemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- InstanceTypes []stringPreemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- IntegrationDocker ElastigroupSwarm Integration Docker Swarm Args 
- IntegrationGke ElastigroupIntegration Gke Args 
- IpForwarding bool
- Labels
[]ElastigroupLabel Args 
- Array of objects with key-value pairs.
- MaxSize int
- The maximum number of instances the group should have at any time.
- Metadatas
[]ElastigroupMetadata Args 
- Array of objects with key-value pairs.
- MinCpu stringPlatform 
- Select a minimum CPU platform for the compute instance.
- MinSize int
- The minimum number of instances the group should have at any time.
- Name string
- The group name.
- NetworkInterfaces []ElastigroupNetwork Interface Args 
- OndemandCount int
- OptimizationWindows []string
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- PreemptiblePercentage int
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- PreferredAvailability []stringZones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- ProvisioningModel string
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- RevertTo []ElastigroupPreemptibles Revert To Preemptible Args 
- Setting for revert to preemptible option.
- ScalingDown []ElastigroupPolicies Scaling Down Policy Args 
- ScalingUp []ElastigroupPolicies Scaling Up Policy Args 
- ScheduledTasks []ElastigroupScheduled Task Args 
- ServiceAccount string
- The email of the service account in which the group instances will be launched.
- ShieldedInstance ElastigroupConfig Shielded Instance Config Args 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- ShouldUtilize boolCommitments 
- Enable committed use discounts utilization.
- ShutdownScript string
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- StartupScript string
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- Subnets
[]ElastigroupSubnet Args 
- A list of regions and subnets.
- []string
- Tags to mark created instances.
- UnhealthyDuration int
- desiredCapacity Integer
- The desired number of instances the group should have at any time.
- autoHealing Boolean
- availabilityZones List<String>
- List of availability zones for the group.
- backendServices List<ElastigroupBackend Service> 
- description String
- The region your GCP group will be created in.
- disks
List<ElastigroupDisk> 
- drainingTimeout Integer
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- fallbackTo BooleanOndemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- gpu
List<ElastigroupGpu> 
- healthCheck IntegerGrace Period 
- healthCheck StringType 
- instanceName StringPrefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- instanceTypes List<ElastigroupCustoms Instance Types Custom> 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- instanceTypes StringOndemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- instanceTypes List<String>Preemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- integrationDocker ElastigroupSwarm Integration Docker Swarm 
- integrationGke ElastigroupIntegration Gke 
- ipForwarding Boolean
- labels
List<ElastigroupLabel> 
- Array of objects with key-value pairs.
- maxSize Integer
- The maximum number of instances the group should have at any time.
- metadatas
List<ElastigroupMetadata> 
- Array of objects with key-value pairs.
- minCpu StringPlatform 
- Select a minimum CPU platform for the compute instance.
- minSize Integer
- The minimum number of instances the group should have at any time.
- name String
- The group name.
- networkInterfaces List<ElastigroupNetwork Interface> 
- ondemandCount Integer
- optimizationWindows List<String>
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- preemptiblePercentage Integer
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- preferredAvailability List<String>Zones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- provisioningModel String
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- revertTo List<ElastigroupPreemptibles Revert To Preemptible> 
- Setting for revert to preemptible option.
- scalingDown List<ElastigroupPolicies Scaling Down Policy> 
- scalingUp List<ElastigroupPolicies Scaling Up Policy> 
- scheduledTasks List<ElastigroupScheduled Task> 
- serviceAccount String
- The email of the service account in which the group instances will be launched.
- shieldedInstance ElastigroupConfig Shielded Instance Config 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- shouldUtilize BooleanCommitments 
- Enable committed use discounts utilization.
- shutdownScript String
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- startupScript String
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- subnets
List<ElastigroupSubnet> 
- A list of regions and subnets.
- List<String>
- Tags to mark created instances.
- unhealthyDuration Integer
- desiredCapacity number
- The desired number of instances the group should have at any time.
- autoHealing boolean
- availabilityZones string[]
- List of availability zones for the group.
- backendServices ElastigroupBackend Service[] 
- description string
- The region your GCP group will be created in.
- disks
ElastigroupDisk[] 
- drainingTimeout number
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- fallbackTo booleanOndemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- gpu
ElastigroupGpu[] 
- healthCheck numberGrace Period 
- healthCheck stringType 
- instanceName stringPrefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- instanceTypes ElastigroupCustoms Instance Types Custom[] 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- instanceTypes stringOndemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- instanceTypes string[]Preemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- integrationDocker ElastigroupSwarm Integration Docker Swarm 
- integrationGke ElastigroupIntegration Gke 
- ipForwarding boolean
- labels
ElastigroupLabel[] 
- Array of objects with key-value pairs.
- maxSize number
- The maximum number of instances the group should have at any time.
- metadatas
ElastigroupMetadata[] 
- Array of objects with key-value pairs.
- minCpu stringPlatform 
- Select a minimum CPU platform for the compute instance.
- minSize number
- The minimum number of instances the group should have at any time.
- name string
- The group name.
- networkInterfaces ElastigroupNetwork Interface[] 
- ondemandCount number
- optimizationWindows string[]
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- preemptiblePercentage number
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- preferredAvailability string[]Zones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- provisioningModel string
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- revertTo ElastigroupPreemptibles Revert To Preemptible[] 
- Setting for revert to preemptible option.
- scalingDown ElastigroupPolicies Scaling Down Policy[] 
- scalingUp ElastigroupPolicies Scaling Up Policy[] 
- scheduledTasks ElastigroupScheduled Task[] 
- serviceAccount string
- The email of the service account in which the group instances will be launched.
- shieldedInstance ElastigroupConfig Shielded Instance Config 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- shouldUtilize booleanCommitments 
- Enable committed use discounts utilization.
- shutdownScript string
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- startupScript string
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- subnets
ElastigroupSubnet[] 
- A list of regions and subnets.
- string[]
- Tags to mark created instances.
- unhealthyDuration number
- desired_capacity int
- The desired number of instances the group should have at any time.
- auto_healing bool
- availability_zones Sequence[str]
- List of availability zones for the group.
- backend_services Sequence[ElastigroupBackend Service Args] 
- description str
- The region your GCP group will be created in.
- disks
Sequence[ElastigroupDisk Args] 
- draining_timeout int
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- fallback_to_ boolondemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- gpu
Sequence[ElastigroupGpu Args] 
- health_check_ intgrace_ period 
- health_check_ strtype 
- instance_name_ strprefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- instance_types_ Sequence[Elastigroupcustoms Instance Types Custom Args] 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- instance_types_ strondemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- instance_types_ Sequence[str]preemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- integration_docker_ Elastigroupswarm Integration Docker Swarm Args 
- integration_gke ElastigroupIntegration Gke Args 
- ip_forwarding bool
- labels
Sequence[ElastigroupLabel Args] 
- Array of objects with key-value pairs.
- max_size int
- The maximum number of instances the group should have at any time.
- metadatas
Sequence[ElastigroupMetadata Args] 
- Array of objects with key-value pairs.
- min_cpu_ strplatform 
- Select a minimum CPU platform for the compute instance.
- min_size int
- The minimum number of instances the group should have at any time.
- name str
- The group name.
- network_interfaces Sequence[ElastigroupNetwork Interface Args] 
- ondemand_count int
- optimization_windows Sequence[str]
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- preemptible_percentage int
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- preferred_availability_ Sequence[str]zones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- provisioning_model str
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- revert_to_ Sequence[Elastigrouppreemptibles Revert To Preemptible Args] 
- Setting for revert to preemptible option.
- scaling_down_ Sequence[Elastigrouppolicies Scaling Down Policy Args] 
- scaling_up_ Sequence[Elastigrouppolicies Scaling Up Policy Args] 
- scheduled_tasks Sequence[ElastigroupScheduled Task Args] 
- service_account str
- The email of the service account in which the group instances will be launched.
- shielded_instance_ Elastigroupconfig Shielded Instance Config Args 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- should_utilize_ boolcommitments 
- Enable committed use discounts utilization.
- shutdown_script str
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- startup_script str
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- subnets
Sequence[ElastigroupSubnet Args] 
- A list of regions and subnets.
- Sequence[str]
- Tags to mark created instances.
- unhealthy_duration int
- desiredCapacity Number
- The desired number of instances the group should have at any time.
- autoHealing Boolean
- availabilityZones List<String>
- List of availability zones for the group.
- backendServices List<Property Map>
- description String
- The region your GCP group will be created in.
- disks List<Property Map>
- drainingTimeout Number
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- fallbackTo BooleanOndemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- gpu List<Property Map>
- healthCheck NumberGrace Period 
- healthCheck StringType 
- instanceName StringPrefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- instanceTypes List<Property Map>Customs 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- instanceTypes StringOndemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- instanceTypes List<String>Preemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- integrationDocker Property MapSwarm 
- integrationGke Property Map
- ipForwarding Boolean
- labels List<Property Map>
- Array of objects with key-value pairs.
- maxSize Number
- The maximum number of instances the group should have at any time.
- metadatas List<Property Map>
- Array of objects with key-value pairs.
- minCpu StringPlatform 
- Select a minimum CPU platform for the compute instance.
- minSize Number
- The minimum number of instances the group should have at any time.
- name String
- The group name.
- networkInterfaces List<Property Map>
- ondemandCount Number
- optimizationWindows List<String>
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- preemptiblePercentage Number
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- preferredAvailability List<String>Zones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- provisioningModel String
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- revertTo List<Property Map>Preemptibles 
- Setting for revert to preemptible option.
- scalingDown List<Property Map>Policies 
- scalingUp List<Property Map>Policies 
- scheduledTasks List<Property Map>
- serviceAccount String
- The email of the service account in which the group instances will be launched.
- shieldedInstance Property MapConfig 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- shouldUtilize BooleanCommitments 
- Enable committed use discounts utilization.
- shutdownScript String
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- startupScript String
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- subnets List<Property Map>
- A list of regions and subnets.
- List<String>
- Tags to mark created instances.
- unhealthyDuration Number
Outputs
All input properties are implicitly available as output properties. Additionally, the Elastigroup resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing Elastigroup Resource
Get an existing Elastigroup 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?: ElastigroupState, opts?: CustomResourceOptions): Elastigroup@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        auto_healing: Optional[bool] = None,
        availability_zones: Optional[Sequence[str]] = None,
        backend_services: Optional[Sequence[ElastigroupBackendServiceArgs]] = None,
        description: Optional[str] = None,
        desired_capacity: Optional[int] = None,
        disks: Optional[Sequence[ElastigroupDiskArgs]] = None,
        draining_timeout: Optional[int] = None,
        fallback_to_ondemand: Optional[bool] = None,
        gpu: Optional[Sequence[ElastigroupGpuArgs]] = None,
        health_check_grace_period: Optional[int] = None,
        health_check_type: Optional[str] = None,
        instance_name_prefix: Optional[str] = None,
        instance_types_customs: Optional[Sequence[ElastigroupInstanceTypesCustomArgs]] = None,
        instance_types_ondemand: Optional[str] = None,
        instance_types_preemptibles: Optional[Sequence[str]] = None,
        integration_docker_swarm: Optional[ElastigroupIntegrationDockerSwarmArgs] = None,
        integration_gke: Optional[ElastigroupIntegrationGkeArgs] = None,
        ip_forwarding: Optional[bool] = None,
        labels: Optional[Sequence[ElastigroupLabelArgs]] = None,
        max_size: Optional[int] = None,
        metadatas: Optional[Sequence[ElastigroupMetadataArgs]] = None,
        min_cpu_platform: Optional[str] = None,
        min_size: Optional[int] = None,
        name: Optional[str] = None,
        network_interfaces: Optional[Sequence[ElastigroupNetworkInterfaceArgs]] = None,
        ondemand_count: Optional[int] = None,
        optimization_windows: Optional[Sequence[str]] = None,
        preemptible_percentage: Optional[int] = None,
        preferred_availability_zones: Optional[Sequence[str]] = None,
        provisioning_model: Optional[str] = None,
        revert_to_preemptibles: Optional[Sequence[ElastigroupRevertToPreemptibleArgs]] = None,
        scaling_down_policies: Optional[Sequence[ElastigroupScalingDownPolicyArgs]] = None,
        scaling_up_policies: Optional[Sequence[ElastigroupScalingUpPolicyArgs]] = None,
        scheduled_tasks: Optional[Sequence[ElastigroupScheduledTaskArgs]] = None,
        service_account: Optional[str] = None,
        shielded_instance_config: Optional[ElastigroupShieldedInstanceConfigArgs] = None,
        should_utilize_commitments: Optional[bool] = None,
        shutdown_script: Optional[str] = None,
        startup_script: Optional[str] = None,
        subnets: Optional[Sequence[ElastigroupSubnetArgs]] = None,
        tags: Optional[Sequence[str]] = None,
        unhealthy_duration: Optional[int] = None) -> Elastigroupfunc GetElastigroup(ctx *Context, name string, id IDInput, state *ElastigroupState, opts ...ResourceOption) (*Elastigroup, error)public static Elastigroup Get(string name, Input<string> id, ElastigroupState? state, CustomResourceOptions? opts = null)public static Elastigroup get(String name, Output<String> id, ElastigroupState state, CustomResourceOptions options)resources:  _:    type: spotinst:gcp:Elastigroup    get:      id: ${id}- 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.
- AutoHealing bool
- AvailabilityZones List<string>
- List of availability zones for the group.
- BackendServices List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Backend Service> 
- Description string
- The region your GCP group will be created in.
- DesiredCapacity int
- The desired number of instances the group should have at any time.
- Disks
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Disk> 
- DrainingTimeout int
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- FallbackTo boolOndemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- Gpu
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Gpu> 
- HealthCheck intGrace Period 
- HealthCheck stringType 
- InstanceName stringPrefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- InstanceTypes List<Pulumi.Customs Spot Inst. Gcp. Inputs. Elastigroup Instance Types Custom> 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- InstanceTypes stringOndemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- InstanceTypes List<string>Preemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- IntegrationDocker Pulumi.Swarm Spot Inst. Gcp. Inputs. Elastigroup Integration Docker Swarm 
- IntegrationGke Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Integration Gke 
- IpForwarding bool
- Labels
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Label> 
- Array of objects with key-value pairs.
- MaxSize int
- The maximum number of instances the group should have at any time.
- Metadatas
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Metadata> 
- Array of objects with key-value pairs.
- MinCpu stringPlatform 
- Select a minimum CPU platform for the compute instance.
- MinSize int
- The minimum number of instances the group should have at any time.
- Name string
- The group name.
- NetworkInterfaces List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Network Interface> 
- OndemandCount int
- OptimizationWindows List<string>
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- PreemptiblePercentage int
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- PreferredAvailability List<string>Zones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- ProvisioningModel string
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- RevertTo List<Pulumi.Preemptibles Spot Inst. Gcp. Inputs. Elastigroup Revert To Preemptible> 
- Setting for revert to preemptible option.
- ScalingDown List<Pulumi.Policies Spot Inst. Gcp. Inputs. Elastigroup Scaling Down Policy> 
- ScalingUp List<Pulumi.Policies Spot Inst. Gcp. Inputs. Elastigroup Scaling Up Policy> 
- ScheduledTasks List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Scheduled Task> 
- ServiceAccount string
- The email of the service account in which the group instances will be launched.
- ShieldedInstance Pulumi.Config Spot Inst. Gcp. Inputs. Elastigroup Shielded Instance Config 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- ShouldUtilize boolCommitments 
- Enable committed use discounts utilization.
- ShutdownScript string
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- StartupScript string
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- Subnets
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Subnet> 
- A list of regions and subnets.
- List<string>
- Tags to mark created instances.
- UnhealthyDuration int
- AutoHealing bool
- AvailabilityZones []string
- List of availability zones for the group.
- BackendServices []ElastigroupBackend Service Args 
- Description string
- The region your GCP group will be created in.
- DesiredCapacity int
- The desired number of instances the group should have at any time.
- Disks
[]ElastigroupDisk Args 
- DrainingTimeout int
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- FallbackTo boolOndemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- Gpu
[]ElastigroupGpu Args 
- HealthCheck intGrace Period 
- HealthCheck stringType 
- InstanceName stringPrefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- InstanceTypes []ElastigroupCustoms Instance Types Custom Args 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- InstanceTypes stringOndemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- InstanceTypes []stringPreemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- IntegrationDocker ElastigroupSwarm Integration Docker Swarm Args 
- IntegrationGke ElastigroupIntegration Gke Args 
- IpForwarding bool
- Labels
[]ElastigroupLabel Args 
- Array of objects with key-value pairs.
- MaxSize int
- The maximum number of instances the group should have at any time.
- Metadatas
[]ElastigroupMetadata Args 
- Array of objects with key-value pairs.
- MinCpu stringPlatform 
- Select a minimum CPU platform for the compute instance.
- MinSize int
- The minimum number of instances the group should have at any time.
- Name string
- The group name.
- NetworkInterfaces []ElastigroupNetwork Interface Args 
- OndemandCount int
- OptimizationWindows []string
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- PreemptiblePercentage int
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- PreferredAvailability []stringZones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- ProvisioningModel string
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- RevertTo []ElastigroupPreemptibles Revert To Preemptible Args 
- Setting for revert to preemptible option.
- ScalingDown []ElastigroupPolicies Scaling Down Policy Args 
- ScalingUp []ElastigroupPolicies Scaling Up Policy Args 
- ScheduledTasks []ElastigroupScheduled Task Args 
- ServiceAccount string
- The email of the service account in which the group instances will be launched.
- ShieldedInstance ElastigroupConfig Shielded Instance Config Args 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- ShouldUtilize boolCommitments 
- Enable committed use discounts utilization.
- ShutdownScript string
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- StartupScript string
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- Subnets
[]ElastigroupSubnet Args 
- A list of regions and subnets.
- []string
- Tags to mark created instances.
- UnhealthyDuration int
- autoHealing Boolean
- availabilityZones List<String>
- List of availability zones for the group.
- backendServices List<ElastigroupBackend Service> 
- description String
- The region your GCP group will be created in.
- desiredCapacity Integer
- The desired number of instances the group should have at any time.
- disks
List<ElastigroupDisk> 
- drainingTimeout Integer
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- fallbackTo BooleanOndemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- gpu
List<ElastigroupGpu> 
- healthCheck IntegerGrace Period 
- healthCheck StringType 
- instanceName StringPrefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- instanceTypes List<ElastigroupCustoms Instance Types Custom> 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- instanceTypes StringOndemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- instanceTypes List<String>Preemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- integrationDocker ElastigroupSwarm Integration Docker Swarm 
- integrationGke ElastigroupIntegration Gke 
- ipForwarding Boolean
- labels
List<ElastigroupLabel> 
- Array of objects with key-value pairs.
- maxSize Integer
- The maximum number of instances the group should have at any time.
- metadatas
List<ElastigroupMetadata> 
- Array of objects with key-value pairs.
- minCpu StringPlatform 
- Select a minimum CPU platform for the compute instance.
- minSize Integer
- The minimum number of instances the group should have at any time.
- name String
- The group name.
- networkInterfaces List<ElastigroupNetwork Interface> 
- ondemandCount Integer
- optimizationWindows List<String>
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- preemptiblePercentage Integer
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- preferredAvailability List<String>Zones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- provisioningModel String
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- revertTo List<ElastigroupPreemptibles Revert To Preemptible> 
- Setting for revert to preemptible option.
- scalingDown List<ElastigroupPolicies Scaling Down Policy> 
- scalingUp List<ElastigroupPolicies Scaling Up Policy> 
- scheduledTasks List<ElastigroupScheduled Task> 
- serviceAccount String
- The email of the service account in which the group instances will be launched.
- shieldedInstance ElastigroupConfig Shielded Instance Config 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- shouldUtilize BooleanCommitments 
- Enable committed use discounts utilization.
- shutdownScript String
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- startupScript String
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- subnets
List<ElastigroupSubnet> 
- A list of regions and subnets.
- List<String>
- Tags to mark created instances.
- unhealthyDuration Integer
- autoHealing boolean
- availabilityZones string[]
- List of availability zones for the group.
- backendServices ElastigroupBackend Service[] 
- description string
- The region your GCP group will be created in.
- desiredCapacity number
- The desired number of instances the group should have at any time.
- disks
ElastigroupDisk[] 
- drainingTimeout number
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- fallbackTo booleanOndemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- gpu
ElastigroupGpu[] 
- healthCheck numberGrace Period 
- healthCheck stringType 
- instanceName stringPrefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- instanceTypes ElastigroupCustoms Instance Types Custom[] 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- instanceTypes stringOndemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- instanceTypes string[]Preemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- integrationDocker ElastigroupSwarm Integration Docker Swarm 
- integrationGke ElastigroupIntegration Gke 
- ipForwarding boolean
- labels
ElastigroupLabel[] 
- Array of objects with key-value pairs.
- maxSize number
- The maximum number of instances the group should have at any time.
- metadatas
ElastigroupMetadata[] 
- Array of objects with key-value pairs.
- minCpu stringPlatform 
- Select a minimum CPU platform for the compute instance.
- minSize number
- The minimum number of instances the group should have at any time.
- name string
- The group name.
- networkInterfaces ElastigroupNetwork Interface[] 
- ondemandCount number
- optimizationWindows string[]
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- preemptiblePercentage number
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- preferredAvailability string[]Zones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- provisioningModel string
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- revertTo ElastigroupPreemptibles Revert To Preemptible[] 
- Setting for revert to preemptible option.
- scalingDown ElastigroupPolicies Scaling Down Policy[] 
- scalingUp ElastigroupPolicies Scaling Up Policy[] 
- scheduledTasks ElastigroupScheduled Task[] 
- serviceAccount string
- The email of the service account in which the group instances will be launched.
- shieldedInstance ElastigroupConfig Shielded Instance Config 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- shouldUtilize booleanCommitments 
- Enable committed use discounts utilization.
- shutdownScript string
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- startupScript string
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- subnets
ElastigroupSubnet[] 
- A list of regions and subnets.
- string[]
- Tags to mark created instances.
- unhealthyDuration number
- auto_healing bool
- availability_zones Sequence[str]
- List of availability zones for the group.
- backend_services Sequence[ElastigroupBackend Service Args] 
- description str
- The region your GCP group will be created in.
- desired_capacity int
- The desired number of instances the group should have at any time.
- disks
Sequence[ElastigroupDisk Args] 
- draining_timeout int
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- fallback_to_ boolondemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- gpu
Sequence[ElastigroupGpu Args] 
- health_check_ intgrace_ period 
- health_check_ strtype 
- instance_name_ strprefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- instance_types_ Sequence[Elastigroupcustoms Instance Types Custom Args] 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- instance_types_ strondemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- instance_types_ Sequence[str]preemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- integration_docker_ Elastigroupswarm Integration Docker Swarm Args 
- integration_gke ElastigroupIntegration Gke Args 
- ip_forwarding bool
- labels
Sequence[ElastigroupLabel Args] 
- Array of objects with key-value pairs.
- max_size int
- The maximum number of instances the group should have at any time.
- metadatas
Sequence[ElastigroupMetadata Args] 
- Array of objects with key-value pairs.
- min_cpu_ strplatform 
- Select a minimum CPU platform for the compute instance.
- min_size int
- The minimum number of instances the group should have at any time.
- name str
- The group name.
- network_interfaces Sequence[ElastigroupNetwork Interface Args] 
- ondemand_count int
- optimization_windows Sequence[str]
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- preemptible_percentage int
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- preferred_availability_ Sequence[str]zones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- provisioning_model str
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- revert_to_ Sequence[Elastigrouppreemptibles Revert To Preemptible Args] 
- Setting for revert to preemptible option.
- scaling_down_ Sequence[Elastigrouppolicies Scaling Down Policy Args] 
- scaling_up_ Sequence[Elastigrouppolicies Scaling Up Policy Args] 
- scheduled_tasks Sequence[ElastigroupScheduled Task Args] 
- service_account str
- The email of the service account in which the group instances will be launched.
- shielded_instance_ Elastigroupconfig Shielded Instance Config Args 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- should_utilize_ boolcommitments 
- Enable committed use discounts utilization.
- shutdown_script str
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- startup_script str
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- subnets
Sequence[ElastigroupSubnet Args] 
- A list of regions and subnets.
- Sequence[str]
- Tags to mark created instances.
- unhealthy_duration int
- autoHealing Boolean
- availabilityZones List<String>
- List of availability zones for the group.
- backendServices List<Property Map>
- description String
- The region your GCP group will be created in.
- desiredCapacity Number
- The desired number of instances the group should have at any time.
- disks List<Property Map>
- drainingTimeout Number
- Time (seconds) the instance is allowed to run after it is detached from the group. This is to allow the instance time to drain all the current TCP connections before terminating it.
- fallbackTo BooleanOndemand 
- Activate fallback-to-on-demand. When provisioning an instance, if no Preemptible market is available, fallback-to-on-demand will provision an On-Demand instance to maintain the group capacity.
- gpu List<Property Map>
- healthCheck NumberGrace Period 
- healthCheck StringType 
- instanceName StringPrefix 
- Set an instance name prefix to be used for all launched instances and their boot disk. The prefix value should comply with the following limitations:- A maximal length of 25 characters.
- The first character must be a lowercase letter, and all the following characters must be hyphens, lowercase letters, or digits, except the last character, which cannot be a hyphen.
 
- instanceTypes List<Property Map>Customs 
- Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.- vCPU- (Optional) The number of vCPUs in the custom instance type. GCP has a number of limitations on accepted vCPU values. For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
 
- instanceTypes StringOndemand 
- The regular VM instance type to use for mixed-type groups and when falling back to on-demand. Required if instance_types_preemptible is not set.
- instanceTypes List<String>Preemptibles 
- The preemptible VMs instance type. To maximize cost savings and market availability, select as many types as possible. Required if instance_types_ondemand is not set.
- integrationDocker Property MapSwarm 
- integrationGke Property Map
- ipForwarding Boolean
- labels List<Property Map>
- Array of objects with key-value pairs.
- maxSize Number
- The maximum number of instances the group should have at any time.
- metadatas List<Property Map>
- Array of objects with key-value pairs.
- minCpu StringPlatform 
- Select a minimum CPU platform for the compute instance.
- minSize Number
- The minimum number of instances the group should have at any time.
- name String
- The group name.
- networkInterfaces List<Property Map>
- ondemandCount Number
- optimizationWindows List<String>
- Set time window to perform the revert to preemptible. Time windows must be at least 120 minutes. Format: DayInWeek:HH-DayInWeek:HH. Required when strategy.revertToPreemptible.performAt is 'timeWindow'.
- preemptiblePercentage Number
- Percentage of Preemptible VMs to spin up from the "desired_capacity".
- preferredAvailability List<String>Zones 
- prioritize availability zones when launching instances for the group. Must be a sublist of availability_zones.
- provisioningModel String
- Valid values: "SPOT", "PREEMPTIBLE". Define the provisioning model of the launched instances. Default value is "PREEMPTIBLE".
- revertTo List<Property Map>Preemptibles 
- Setting for revert to preemptible option.
- scalingDown List<Property Map>Policies 
- scalingUp List<Property Map>Policies 
- scheduledTasks List<Property Map>
- serviceAccount String
- The email of the service account in which the group instances will be launched.
- shieldedInstance Property MapConfig 
- You can use secure boot when you launch VMs using Elastigroup. This helps you comply with your security policies. In the instance configuration, use ‘secureBootEnabled’ set to True to enforce UEFI with secure boot. Elastigroup provisions VMs with secure boot, as long as the images supports UEFI.
- shouldUtilize BooleanCommitments 
- Enable committed use discounts utilization.
- shutdownScript String
- The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- startupScript String
- Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- subnets List<Property Map>
- A list of regions and subnets.
- List<String>
- Tags to mark created instances.
- unhealthyDuration Number
Supporting Types
ElastigroupBackendService, ElastigroupBackendServiceArgs      
- ServiceName string
- The name of the backend service.
- LocationType string
- Sets which location the backend services will be active. Valid values: regional,global.
- NamedPorts List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Backend Service Named Port> 
- Describes a named port and a list of ports.
- Scheme string
- Use when location_typeis "regional". Set the traffic for the backend service to either between the instances in the vpc or to traffic from the internet. Valid values:INTERNAL,EXTERNAL.
- ServiceName string
- The name of the backend service.
- LocationType string
- Sets which location the backend services will be active. Valid values: regional,global.
- NamedPorts []ElastigroupBackend Service Named Port 
- Describes a named port and a list of ports.
- Scheme string
- Use when location_typeis "regional". Set the traffic for the backend service to either between the instances in the vpc or to traffic from the internet. Valid values:INTERNAL,EXTERNAL.
- serviceName String
- The name of the backend service.
- locationType String
- Sets which location the backend services will be active. Valid values: regional,global.
- namedPorts List<ElastigroupBackend Service Named Port> 
- Describes a named port and a list of ports.
- scheme String
- Use when location_typeis "regional". Set the traffic for the backend service to either between the instances in the vpc or to traffic from the internet. Valid values:INTERNAL,EXTERNAL.
- serviceName string
- The name of the backend service.
- locationType string
- Sets which location the backend services will be active. Valid values: regional,global.
- namedPorts ElastigroupBackend Service Named Port[] 
- Describes a named port and a list of ports.
- scheme string
- Use when location_typeis "regional". Set the traffic for the backend service to either between the instances in the vpc or to traffic from the internet. Valid values:INTERNAL,EXTERNAL.
- service_name str
- The name of the backend service.
- location_type str
- Sets which location the backend services will be active. Valid values: regional,global.
- named_ports Sequence[ElastigroupBackend Service Named Port] 
- Describes a named port and a list of ports.
- scheme str
- Use when location_typeis "regional". Set the traffic for the backend service to either between the instances in the vpc or to traffic from the internet. Valid values:INTERNAL,EXTERNAL.
- serviceName String
- The name of the backend service.
- locationType String
- Sets which location the backend services will be active. Valid values: regional,global.
- namedPorts List<Property Map>
- Describes a named port and a list of ports.
- scheme String
- Use when location_typeis "regional". Set the traffic for the backend service to either between the instances in the vpc or to traffic from the internet. Valid values:INTERNAL,EXTERNAL.
ElastigroupBackendServiceNamedPort, ElastigroupBackendServiceNamedPortArgs          
ElastigroupDisk, ElastigroupDiskArgs    
- AutoDelete bool
- Specifies whether the disk will be auto-deleted when the instance is deleted.
- Boot bool
- Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.
- DeviceName string
- Specifies a unique device name of your choice.
- InitializeParams List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Disk Initialize Param> 
- Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.
- Interface string
- Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME.
- Mode string
- The mode in which to attach this disk, either READ_WRITE or READ_ONLY.
- Source string
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- Type string
- Specifies the type of disk, either SCRATCH or PERSISTENT.
- AutoDelete bool
- Specifies whether the disk will be auto-deleted when the instance is deleted.
- Boot bool
- Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.
- DeviceName string
- Specifies a unique device name of your choice.
- InitializeParams []ElastigroupDisk Initialize Param 
- Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.
- Interface string
- Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME.
- Mode string
- The mode in which to attach this disk, either READ_WRITE or READ_ONLY.
- Source string
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- Type string
- Specifies the type of disk, either SCRATCH or PERSISTENT.
- autoDelete Boolean
- Specifies whether the disk will be auto-deleted when the instance is deleted.
- boot Boolean
- Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.
- deviceName String
- Specifies a unique device name of your choice.
- initializeParams List<ElastigroupDisk Initialize Param> 
- Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.
- interface_ String
- Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME.
- mode String
- The mode in which to attach this disk, either READ_WRITE or READ_ONLY.
- source String
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- type String
- Specifies the type of disk, either SCRATCH or PERSISTENT.
- autoDelete boolean
- Specifies whether the disk will be auto-deleted when the instance is deleted.
- boot boolean
- Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.
- deviceName string
- Specifies a unique device name of your choice.
- initializeParams ElastigroupDisk Initialize Param[] 
- Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.
- interface string
- Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME.
- mode string
- The mode in which to attach this disk, either READ_WRITE or READ_ONLY.
- source string
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- type string
- Specifies the type of disk, either SCRATCH or PERSISTENT.
- auto_delete bool
- Specifies whether the disk will be auto-deleted when the instance is deleted.
- boot bool
- Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.
- device_name str
- Specifies a unique device name of your choice.
- initialize_params Sequence[ElastigroupDisk Initialize Param] 
- Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.
- interface str
- Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME.
- mode str
- The mode in which to attach this disk, either READ_WRITE or READ_ONLY.
- source str
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- type str
- Specifies the type of disk, either SCRATCH or PERSISTENT.
- autoDelete Boolean
- Specifies whether the disk will be auto-deleted when the instance is deleted.
- boot Boolean
- Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.
- deviceName String
- Specifies a unique device name of your choice.
- initializeParams List<Property Map>
- Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.
- interface String
- Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME.
- mode String
- The mode in which to attach this disk, either READ_WRITE or READ_ONLY.
- source String
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- type String
- Specifies the type of disk, either SCRATCH or PERSISTENT.
ElastigroupDiskInitializeParam, ElastigroupDiskInitializeParamArgs        
- SourceImage string
- A source image used to create the disk. You can provide a private (custom) image, and Compute Engine will use the corresponding image from your project. - Usage: 
- DiskSize stringGb 
- Specifies disk size in gigabytes. Must be in increments of 2.
- DiskType string
- Specifies the disk type to use to create the instance. Valid values: pd-ssd, local-ssd.
- SourceImage string
- A source image used to create the disk. You can provide a private (custom) image, and Compute Engine will use the corresponding image from your project. - Usage: 
- DiskSize stringGb 
- Specifies disk size in gigabytes. Must be in increments of 2.
- DiskType string
- Specifies the disk type to use to create the instance. Valid values: pd-ssd, local-ssd.
- sourceImage String
- A source image used to create the disk. You can provide a private (custom) image, and Compute Engine will use the corresponding image from your project. - Usage: 
- diskSize StringGb 
- Specifies disk size in gigabytes. Must be in increments of 2.
- diskType String
- Specifies the disk type to use to create the instance. Valid values: pd-ssd, local-ssd.
- sourceImage string
- A source image used to create the disk. You can provide a private (custom) image, and Compute Engine will use the corresponding image from your project. - Usage: 
- diskSize stringGb 
- Specifies disk size in gigabytes. Must be in increments of 2.
- diskType string
- Specifies the disk type to use to create the instance. Valid values: pd-ssd, local-ssd.
- source_image str
- A source image used to create the disk. You can provide a private (custom) image, and Compute Engine will use the corresponding image from your project. - Usage: 
- disk_size_ strgb 
- Specifies disk size in gigabytes. Must be in increments of 2.
- disk_type str
- Specifies the disk type to use to create the instance. Valid values: pd-ssd, local-ssd.
- sourceImage String
- A source image used to create the disk. You can provide a private (custom) image, and Compute Engine will use the corresponding image from your project. - Usage: 
- diskSize StringGb 
- Specifies disk size in gigabytes. Must be in increments of 2.
- diskType String
- Specifies the disk type to use to create the instance. Valid values: pd-ssd, local-ssd.
ElastigroupGpu, ElastigroupGpuArgs    
ElastigroupInstanceTypesCustom, ElastigroupInstanceTypesCustomArgs        
- memory_gib int
- The memory (in GiB) in the custom instance types. GCP has a number of limitations on accepted memory values.For more information, see the GCP documentation (here.)[https://cloud.google.com/compute/docs/instances/creating-instance-with-custom-machine-type#specifications]
- vcpu int
ElastigroupIntegrationDockerSwarm, ElastigroupIntegrationDockerSwarmArgs        
- MasterHost string
- IP or FQDN of one of your swarm managers.
- MasterPort int
- Network port used by your swarm. - Usage: 
- MasterHost string
- IP or FQDN of one of your swarm managers.
- MasterPort int
- Network port used by your swarm. - Usage: 
- masterHost String
- IP or FQDN of one of your swarm managers.
- masterPort Integer
- Network port used by your swarm. - Usage: 
- masterHost string
- IP or FQDN of one of your swarm managers.
- masterPort number
- Network port used by your swarm. - Usage: 
- master_host str
- IP or FQDN of one of your swarm managers.
- master_port int
- Network port used by your swarm. - Usage: 
- masterHost String
- IP or FQDN of one of your swarm managers.
- masterPort Number
- Network port used by your swarm. - Usage: 
ElastigroupIntegrationGke, ElastigroupIntegrationGkeArgs      
- AutoUpdate bool
- AutoscaleCooldown int
- AutoscaleDown Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Integration Gke Autoscale Down 
- AutoscaleHeadroom Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Integration Gke Autoscale Headroom 
- AutoscaleIs boolAuto Config 
- AutoscaleIs boolEnabled 
- AutoscaleLabels List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Integration Gke Autoscale Label> 
- ClusterId string
- Location string
- autoUpdate Boolean
- autoscaleCooldown Integer
- autoscaleDown ElastigroupIntegration Gke Autoscale Down 
- autoscaleHeadroom ElastigroupIntegration Gke Autoscale Headroom 
- autoscaleIs BooleanAuto Config 
- autoscaleIs BooleanEnabled 
- autoscaleLabels List<ElastigroupIntegration Gke Autoscale Label> 
- clusterId String
- location String
- autoUpdate Boolean
- autoscaleCooldown Number
- autoscaleDown Property Map
- autoscaleHeadroom Property Map
- autoscaleIs BooleanAuto Config 
- autoscaleIs BooleanEnabled 
- autoscaleLabels List<Property Map>
- clusterId String
- location String
ElastigroupIntegrationGkeAutoscaleDown, ElastigroupIntegrationGkeAutoscaleDownArgs          
- EvaluationPeriods int
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- EvaluationPeriods int
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- evaluationPeriods Integer
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- evaluationPeriods number
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- evaluation_periods int
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- evaluationPeriods Number
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
ElastigroupIntegrationGkeAutoscaleHeadroom, ElastigroupIntegrationGkeAutoscaleHeadroomArgs          
- CpuPer intUnit 
- MemoryPer intUnit 
- NumOf intUnits 
- CpuPer intUnit 
- MemoryPer intUnit 
- NumOf intUnits 
- cpuPer IntegerUnit 
- memoryPer IntegerUnit 
- numOf IntegerUnits 
- cpuPer numberUnit 
- memoryPer numberUnit 
- numOf numberUnits 
- cpu_per_ intunit 
- memory_per_ intunit 
- num_of_ intunits 
- cpuPer NumberUnit 
- memoryPer NumberUnit 
- numOf NumberUnits 
ElastigroupIntegrationGkeAutoscaleLabel, ElastigroupIntegrationGkeAutoscaleLabelArgs          
ElastigroupLabel, ElastigroupLabelArgs    
ElastigroupMetadata, ElastigroupMetadataArgs    
ElastigroupNetworkInterface, ElastigroupNetworkInterfaceArgs      
- Network string
- Network resource for this group.
- AccessConfigs List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Network Interface Access Config> 
- Array of configurations.
- AliasIp List<Pulumi.Ranges Spot Inst. Gcp. Inputs. Elastigroup Network Interface Alias Ip Range> 
- Network string
- Network resource for this group.
- AccessConfigs []ElastigroupNetwork Interface Access Config 
- Array of configurations.
- AliasIp []ElastigroupRanges Network Interface Alias Ip Range 
- network String
- Network resource for this group.
- accessConfigs List<ElastigroupNetwork Interface Access Config> 
- Array of configurations.
- aliasIp List<ElastigroupRanges Network Interface Alias Ip Range> 
- network string
- Network resource for this group.
- accessConfigs ElastigroupNetwork Interface Access Config[] 
- Array of configurations.
- aliasIp ElastigroupRanges Network Interface Alias Ip Range[] 
- network str
- Network resource for this group.
- access_configs Sequence[ElastigroupNetwork Interface Access Config] 
- Array of configurations.
- alias_ip_ Sequence[Elastigroupranges Network Interface Alias Ip Range] 
- network String
- Network resource for this group.
- accessConfigs List<Property Map>
- Array of configurations.
- aliasIp List<Property Map>Ranges 
ElastigroupNetworkInterfaceAccessConfig, ElastigroupNetworkInterfaceAccessConfigArgs          
ElastigroupNetworkInterfaceAliasIpRange, ElastigroupNetworkInterfaceAliasIpRangeArgs            
- IpCidr stringRange 
- SubnetworkRange stringName 
- IpCidr stringRange 
- SubnetworkRange stringName 
- ipCidr StringRange 
- subnetworkRange StringName 
- ipCidr stringRange 
- subnetworkRange stringName 
- ipCidr StringRange 
- subnetworkRange StringName 
ElastigroupRevertToPreemptible, ElastigroupRevertToPreemptibleArgs        
- PerformAt string
- Valid values: "always", "never", "timeWindow". Required on strategy.revertToPreemptible object.
- PerformAt string
- Valid values: "always", "never", "timeWindow". Required on strategy.revertToPreemptible object.
- performAt String
- Valid values: "always", "never", "timeWindow". Required on strategy.revertToPreemptible object.
- performAt string
- Valid values: "always", "never", "timeWindow". Required on strategy.revertToPreemptible object.
- perform_at str
- Valid values: "always", "never", "timeWindow". Required on strategy.revertToPreemptible object.
- performAt String
- Valid values: "always", "never", "timeWindow". Required on strategy.revertToPreemptible object.
ElastigroupScalingDownPolicy, ElastigroupScalingDownPolicyArgs        
- MetricName string
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- Namespace string
- PolicyName string
- Name of scaling policy.
- Threshold double
- The value at which the scaling action is triggered.
- Unit string
- ActionType string
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- Adjustment int
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- Cooldown int
- Time (seconds) to wait after a scaling action before resuming monitoring.
- Dimensions
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Scaling Down Policy Dimension> 
- A list of dimensions describing qualities of the metric.
- EvaluationPeriods int
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- Operator string
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- Period int
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- Source string
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- Statistic string
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
- MetricName string
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- Namespace string
- PolicyName string
- Name of scaling policy.
- Threshold float64
- The value at which the scaling action is triggered.
- Unit string
- ActionType string
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- Adjustment int
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- Cooldown int
- Time (seconds) to wait after a scaling action before resuming monitoring.
- Dimensions
[]ElastigroupScaling Down Policy Dimension 
- A list of dimensions describing qualities of the metric.
- EvaluationPeriods int
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- Operator string
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- Period int
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- Source string
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- Statistic string
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
- metricName String
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- namespace String
- policyName String
- Name of scaling policy.
- threshold Double
- The value at which the scaling action is triggered.
- unit String
- actionType String
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- adjustment Integer
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- cooldown Integer
- Time (seconds) to wait after a scaling action before resuming monitoring.
- dimensions
List<ElastigroupScaling Down Policy Dimension> 
- A list of dimensions describing qualities of the metric.
- evaluationPeriods Integer
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- operator String
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- period Integer
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- source String
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- statistic String
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
- metricName string
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- namespace string
- policyName string
- Name of scaling policy.
- threshold number
- The value at which the scaling action is triggered.
- unit string
- actionType string
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- adjustment number
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- cooldown number
- Time (seconds) to wait after a scaling action before resuming monitoring.
- dimensions
ElastigroupScaling Down Policy Dimension[] 
- A list of dimensions describing qualities of the metric.
- evaluationPeriods number
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- operator string
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- period number
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- source string
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- statistic string
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
- metric_name str
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- namespace str
- policy_name str
- Name of scaling policy.
- threshold float
- The value at which the scaling action is triggered.
- unit str
- action_type str
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- adjustment int
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- cooldown int
- Time (seconds) to wait after a scaling action before resuming monitoring.
- dimensions
Sequence[ElastigroupScaling Down Policy Dimension] 
- A list of dimensions describing qualities of the metric.
- evaluation_periods int
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- operator str
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- period int
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- source str
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- statistic str
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
- metricName String
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- namespace String
- policyName String
- Name of scaling policy.
- threshold Number
- The value at which the scaling action is triggered.
- unit String
- actionType String
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- adjustment Number
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- cooldown Number
- Time (seconds) to wait after a scaling action before resuming monitoring.
- dimensions List<Property Map>
- A list of dimensions describing qualities of the metric.
- evaluationPeriods Number
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- operator String
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- period Number
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- source String
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- statistic String
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
ElastigroupScalingDownPolicyDimension, ElastigroupScalingDownPolicyDimensionArgs          
ElastigroupScalingUpPolicy, ElastigroupScalingUpPolicyArgs        
- MetricName string
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- Namespace string
- PolicyName string
- Name of scaling policy.
- Threshold double
- The value at which the scaling action is triggered.
- Unit string
- ActionType string
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- Adjustment int
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- Cooldown int
- Time (seconds) to wait after a scaling action before resuming monitoring.
- Dimensions
List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Scaling Up Policy Dimension> 
- A list of dimensions describing qualities of the metric.
- EvaluationPeriods int
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- Operator string
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- Period int
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- Source string
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- Statistic string
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
- MetricName string
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- Namespace string
- PolicyName string
- Name of scaling policy.
- Threshold float64
- The value at which the scaling action is triggered.
- Unit string
- ActionType string
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- Adjustment int
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- Cooldown int
- Time (seconds) to wait after a scaling action before resuming monitoring.
- Dimensions
[]ElastigroupScaling Up Policy Dimension 
- A list of dimensions describing qualities of the metric.
- EvaluationPeriods int
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- Operator string
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- Period int
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- Source string
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- Statistic string
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
- metricName String
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- namespace String
- policyName String
- Name of scaling policy.
- threshold Double
- The value at which the scaling action is triggered.
- unit String
- actionType String
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- adjustment Integer
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- cooldown Integer
- Time (seconds) to wait after a scaling action before resuming monitoring.
- dimensions
List<ElastigroupScaling Up Policy Dimension> 
- A list of dimensions describing qualities of the metric.
- evaluationPeriods Integer
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- operator String
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- period Integer
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- source String
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- statistic String
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
- metricName string
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- namespace string
- policyName string
- Name of scaling policy.
- threshold number
- The value at which the scaling action is triggered.
- unit string
- actionType string
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- adjustment number
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- cooldown number
- Time (seconds) to wait after a scaling action before resuming monitoring.
- dimensions
ElastigroupScaling Up Policy Dimension[] 
- A list of dimensions describing qualities of the metric.
- evaluationPeriods number
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- operator string
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- period number
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- source string
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- statistic string
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
- metric_name str
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- namespace str
- policy_name str
- Name of scaling policy.
- threshold float
- The value at which the scaling action is triggered.
- unit str
- action_type str
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- adjustment int
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- cooldown int
- Time (seconds) to wait after a scaling action before resuming monitoring.
- dimensions
Sequence[ElastigroupScaling Up Policy Dimension] 
- A list of dimensions describing qualities of the metric.
- evaluation_periods int
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- operator str
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- period int
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- source str
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- statistic str
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
- metricName String
- Metric to monitor. Valid values: "Percentage CPU", "Network In", "Network Out", "Disk Read Bytes", "Disk Write Bytes", "Disk Write Operations/Sec", "Disk Read Operations/Sec".
- namespace String
- policyName String
- Name of scaling policy.
- threshold Number
- The value at which the scaling action is triggered.
- unit String
- actionType String
- Type of scaling action to take when the scaling policy is triggered. Valid values: "adjustment", "setMinTarget", "updateCapacity", "percentageAdjustment"
- adjustment Number
- Value to which the action type will be adjusted. Required if using "numeric" or "percentageAdjustment" action types.
- cooldown Number
- Time (seconds) to wait after a scaling action before resuming monitoring.
- dimensions List<Property Map>
- A list of dimensions describing qualities of the metric.
- evaluationPeriods Number
- Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.
- operator String
- The operator used to evaluate the threshold against the current metric value. Valid values: "gt" (greater than), "get" (greater-than or equal), "lt" (less than), "lte" (less than or equal).
- period Number
- Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.
- source String
- Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.
- statistic String
- Statistic by which to evaluate the selected metric. Valid values: "AVERAGE", "SAMPLE_COUNT", "SUM", "MINIMUM", "MAXIMUM", "PERCENTILE", "COUNT".
ElastigroupScalingUpPolicyDimension, ElastigroupScalingUpPolicyDimensionArgs          
ElastigroupScheduledTask, ElastigroupScheduledTaskArgs      
- TaskType string
- The task type to run. Valid values: "setCapacity".
- CronExpression string
- A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- IsEnabled bool
- Setting the task to being enabled or disabled.
- MaxCapacity string
- The maximum number of instances the group should have. - Usage: 
- MinCapacity string
- The minimum number of instances the group should have.
- TargetCapacity string
- The desired number of instances the group should have.
- TaskType string
- The task type to run. Valid values: "setCapacity".
- CronExpression string
- A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- IsEnabled bool
- Setting the task to being enabled or disabled.
- MaxCapacity string
- The maximum number of instances the group should have. - Usage: 
- MinCapacity string
- The minimum number of instances the group should have.
- TargetCapacity string
- The desired number of instances the group should have.
- taskType String
- The task type to run. Valid values: "setCapacity".
- cronExpression String
- A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- isEnabled Boolean
- Setting the task to being enabled or disabled.
- maxCapacity String
- The maximum number of instances the group should have. - Usage: 
- minCapacity String
- The minimum number of instances the group should have.
- targetCapacity String
- The desired number of instances the group should have.
- taskType string
- The task type to run. Valid values: "setCapacity".
- cronExpression string
- A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- isEnabled boolean
- Setting the task to being enabled or disabled.
- maxCapacity string
- The maximum number of instances the group should have. - Usage: 
- minCapacity string
- The minimum number of instances the group should have.
- targetCapacity string
- The desired number of instances the group should have.
- task_type str
- The task type to run. Valid values: "setCapacity".
- cron_expression str
- A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- is_enabled bool
- Setting the task to being enabled or disabled.
- max_capacity str
- The maximum number of instances the group should have. - Usage: 
- min_capacity str
- The minimum number of instances the group should have.
- target_capacity str
- The desired number of instances the group should have.
- taskType String
- The task type to run. Valid values: "setCapacity".
- cronExpression String
- A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- isEnabled Boolean
- Setting the task to being enabled or disabled.
- maxCapacity String
- The maximum number of instances the group should have. - Usage: 
- minCapacity String
- The minimum number of instances the group should have.
- targetCapacity String
- The desired number of instances the group should have.
ElastigroupShieldedInstanceConfig, ElastigroupShieldedInstanceConfigArgs        
- EnableIntegrity boolMonitoring 
- Default: false
- EnableSecure boolBoot 
- Default: false
- EnableIntegrity boolMonitoring 
- Default: false
- EnableSecure boolBoot 
- Default: false
- enableIntegrity BooleanMonitoring 
- Default: false
- enableSecure BooleanBoot 
- Default: false
- enableIntegrity booleanMonitoring 
- Default: false
- enableSecure booleanBoot 
- Default: false
- enable_integrity_ boolmonitoring 
- Default: false
- enable_secure_ boolboot 
- Default: false
- enableIntegrity BooleanMonitoring 
- Default: false
- enableSecure BooleanBoot 
- Default: false
ElastigroupSubnet, ElastigroupSubnetArgs    
- Region string
- The region for the group of subnets.
- SubnetNames List<string>
- The names of the subnets in the region.
- Region string
- The region for the group of subnets.
- SubnetNames []string
- The names of the subnets in the region.
- region String
- The region for the group of subnets.
- subnetNames List<String>
- The names of the subnets in the region.
- region string
- The region for the group of subnets.
- subnetNames string[]
- The names of the subnets in the region.
- region str
- The region for the group of subnets.
- subnet_names Sequence[str]
- The names of the subnets in the region.
- region String
- The region for the group of subnets.
- subnetNames List<String>
- The names of the subnets in the region.
Package Details
- Repository
- Spotinst pulumi/pulumi-spotinst
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the spotinstTerraform Provider.