Elastigroup
Provides a Spotinst elastigroup GCP resource.
GPU
gpu- (Optional) Defines the GPU configuration.type- (Required) The type of GPU instance. Valid values:nvidia-tesla-v100,nvidia-tesla-p100,nvidia-tesla-k80.count- (Required) The number of GPUs. Must be 0, 2, 4, 6, 8.
Usage:
import * as pulumi from "@pulumi/pulumi";import pulumiusing Pulumi;
class MyStack : Stack
{
public MyStack()
{
}
}
Backend Services
backend_services- (Optional) Describes the backend service configurations.service_name- (Required) The name of the backend service.location_type- (Optional) Sets which location the backend services will be active. Valid values:regional,global.scheme- (Optional) Use whenlocation_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.named_port- (Optional) Describes a named port and a list of ports.port_name- (Required) The name of the port.ports- (Required) A list of ports.
Usage:
import * as pulumi from "@pulumi/pulumi";import pulumiusing Pulumi;
class MyStack : Stack
{
public MyStack()
{
}
}
Disks
disks- (Optional) Array of disks associated with this instance. Persistent disks must be created before you can assign them.auto_delete- (Optional) Specifies whether the disk will be auto-deleted when the instance is deleted.boot- (Optional) Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.device_name- (Optional) Specifies a unique device name of your choice.interface- (Optional, Default:SCSI) Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME.mode- (Optional, Default:READ_WRITE) The mode in which to attach this disk, either READ_WRITE or READ_ONLY.source- (Optional) Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks.type- (Optional, Default:PERSISTENT) Specifies the type of disk, either SCRATCH or PERSISTENT.initialize_params- (Optional) 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.disk_size_gb- (Optional) Specifies disk size in gigabytes. Must be in increments of 2.disk_type- (Optional, Default”pd-standard) Specifies the disk type to use to create the instance. Valid values: pd-ssd, local-ssd.source_image- (Optional) 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:
import * as pulumi from "@pulumi/pulumi";import pulumiusing Pulumi;
class MyStack : Stack
{
public MyStack()
{
}
}
Network Interfaces
Each of the network_interface attributes controls a portion of the GCP
Instance’s “Network Interfaces”. It’s a good idea to familiarize yourself with GCP’s Network
Interfaces docs
to understand the implications of using these attributes.
network_interface- (Required, minimum 1) Array of objects representing the network configuration for the elastigroup.network- (Required) Network resource for this group.access_configs- (Optional) Array of configurations.name- (Optional) Name of this access configuration.type- (Optional) Array of configurations for this interface. Currently, only ONE_TO_ONE_NAT is supported.
import * as pulumi from "@pulumi/pulumi";import pulumiusing Pulumi;
class MyStack : Stack
{
public MyStack()
{
}
}
Scaling Policies
scaling_up_policy- (Optional) Contains scaling policies for scaling the Elastigroup up.scaling_down_policy- (Optional) Contains scaling policies for scaling the Elastigroup down.
Each scaling_*_policy supports the following:
policy_name- (Optional) Name of scaling policy.metric_name- (Optional) 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”.statistic- (Optional) Statistic by which to evaluate the selected metric. Valid values: “AVERAGE”, “SAMPLE_COUNT”, “SUM”, “MINIMUM”, “MAXIMUM”, “PERCENTILE”, “COUNT”.threshold- (Optional) The value at which the scaling action is triggered.period- (Optional) Amount of time (seconds) for which the threshold must be met in order to trigger the scaling action.evaluation_periods- (Optional) Number of consecutive periods in which the threshold must be met in order to trigger a scaling action.cooldown- (Optional) Time (seconds) to wait after a scaling action before resuming monitoring.operator- (Optional) 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).action- (Optional) Scaling action to take when the policy is triggered.type- (Optional) Type of scaling action to take when the scaling policy is triggered. Valid values: “adjustment”, “setMinTarget”, “updateCapacity”, “percentageAdjustment”adjustment- (Optional) Value to which the action type will be adjusted. Required if using “numeric” or “percentageAdjustment” action types.
dimensions- (Optional) A list of dimensions describing qualities of the metric.name- (Required) The dimension name.value- (Required) The dimension value.
Usage:
import * as pulumi from "@pulumi/pulumi";import pulumiusing Pulumi;
class MyStack : Stack
{
public MyStack()
{
}
}
Third-Party Integrations
integration_docker_swarm- (Optional) Describes the Docker Swarm integration.master_host- (Required) IP or FQDN of one of your swarm managers.master_port- (Required) Network port used by your swarm.
Usage:
import * as pulumi from "@pulumi/pulumi";import pulumiusing Pulumi;
class MyStack : Stack
{
public MyStack()
{
}
}
Scheduled Tasks
Each scheduled_task supports the following:
task_type- (Required) The task type to run. Valid values:"setCapacity".cron_expression- (Optional) A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.is_enabled- (Optional, Default:true) Setting the task to being enabled or disabled.target_capacity- (Optional) The desired number of instances the group should have.min_capacity- (Optional) The minimum number of instances the group should have.max_capacity- (Optional) The maximum number of instances the group should have.
Usage:
import * as pulumi from "@pulumi/pulumi";import pulumiusing Pulumi;
class MyStack : Stack
{
public MyStack()
{
}
}
Create a Elastigroup Resource
new Elastigroup(name: string, args: ElastigroupArgs, opts?: CustomResourceOptions);def Elastigroup(resource_name, opts=None, auto_healing=None, availability_zones=None, backend_services=None, description=None, desired_capacity=None, disks=None, draining_timeout=None, fallback_to_ondemand=None, gpu=None, health_check_grace_period=None, health_check_type=None, instance_types_customs=None, instance_types_ondemand=None, instance_types_preemptibles=None, integration_docker_swarm=None, integration_gke=None, ip_forwarding=None, labels=None, max_size=None, metadatas=None, min_size=None, name=None, network_interfaces=None, ondemand_count=None, preemptible_percentage=None, scaling_down_policies=None, scaling_up_policies=None, scheduled_tasks=None, service_account=None, shutdown_script=None, startup_script=None, subnets=None, tags=None, unhealthy_duration=None, __props__=None);func NewElastigroup(ctx *Context, name string, args ElastigroupArgs, opts ...ResourceOption) (*Elastigroup, error)public Elastigroup(string name, ElastigroupArgs args, CustomResourceOptions? opts = null)- 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.
- opts ResourceOptions
- A bag of options that control this 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.
Elastigroup Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Programming Model docs.
Inputs
The Elastigroup resource accepts the following input properties:
- Desired
Capacity int The desired number of instances the group should have at any time.
- Auto
Healing bool - Availability
Zones List<string> List of availability zones for the group.
- Backend
Services List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Backend Service Args> - Description string
The region your GCP group will be created in.
- Disks
List<Pulumi.
Spot Inst. Gcp. Inputs. Elastigroup Disk 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
List<Pulumi.
Spot Inst. Gcp. Inputs. Elastigroup Gpu Args> - Health
Check intGrace Period - Health
Check stringType - Instance
Types List<Pulumi.Customs Spot Inst. Gcp. Inputs. Elastigroup Instance Types Custom Args> Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
- Instance
Types 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.
- Instance
Types 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.
- Integration
Docker Pulumi.Swarm Spot Inst. Gcp. Inputs. Elastigroup Integration Docker Swarm Args - Integration
Gke Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Integration Gke Args - Ip
Forwarding bool - Labels
List<Pulumi.
Spot Inst. Gcp. Inputs. Elastigroup Label Args> Array of objects with key-value pairs.
- Max
Size int The maximum number of instances the group should have at any time.
- Metadatas
List<Pulumi.
Spot Inst. Gcp. Inputs. Elastigroup Metadata Args> Array of objects with key-value pairs.
- Min
Size int The minimum number of instances the group should have at any time.
- Name string
The group name.
- Network
Interfaces List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Network Interface Args> - Ondemand
Count int - Preemptible
Percentage int Percentage of Preemptible VMs to spin up from the “desired_capacity”.
- Scaling
Down List<Pulumi.Policies Spot Inst. Gcp. Inputs. Elastigroup Scaling Down Policy Args> - Scaling
Up List<Pulumi.Policies Spot Inst. Gcp. Inputs. Elastigroup Scaling Up Policy Args> - Scheduled
Tasks List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Scheduled Task Args> - Service
Account string The email of the service account in which the group instances will be launched.
- Shutdown
Script string The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- Startup
Script 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 Args> A list of regions and subnets.
- List<string>
Tags to mark created instances.
- Unhealthy
Duration int
- Desired
Capacity int The desired number of instances the group should have at any time.
- Auto
Healing bool - Availability
Zones []string List of availability zones for the group.
- Backend
Services []ElastigroupBackend Service - Description string
The region your GCP group will be created in.
- Disks
[]Elastigroup
Disk - 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
[]Elastigroup
Gpu - Health
Check intGrace Period - Health
Check stringType - Instance
Types []ElastigroupCustoms Instance Types Custom Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
- Instance
Types 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.
- Instance
Types []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.
- Integration
Docker ElastigroupSwarm Integration Docker Swarm - Integration
Gke ElastigroupIntegration Gke - Ip
Forwarding bool - Labels
[]Elastigroup
Label Array of objects with key-value pairs.
- Max
Size int The maximum number of instances the group should have at any time.
- Metadatas
[]Elastigroup
Metadata Array of objects with key-value pairs.
- Min
Size int The minimum number of instances the group should have at any time.
- Name string
The group name.
- Network
Interfaces []ElastigroupNetwork Interface - Ondemand
Count int - Preemptible
Percentage int Percentage of Preemptible VMs to spin up from the “desired_capacity”.
- Scaling
Down []ElastigroupPolicies Scaling Down Policy - Scaling
Up []ElastigroupPolicies Scaling Up Policy - Scheduled
Tasks []ElastigroupScheduled Task - Service
Account string The email of the service account in which the group instances will be launched.
- Shutdown
Script string The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- Startup
Script string Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- Subnets
[]Elastigroup
Subnet A list of regions and subnets.
- []string
Tags to mark created instances.
- Unhealthy
Duration int
- desired
Capacity number The desired number of instances the group should have at any time.
- auto
Healing boolean - availability
Zones string[] List of availability zones for the group.
- backend
Services ElastigroupBackend Service[] - description string
The region your GCP group will be created in.
- disks
Elastigroup
Disk[] - draining
Timeout 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.
- fallback
To 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
Elastigroup
Gpu[] - health
Check numberGrace Period - health
Check stringType - instance
Types ElastigroupCustoms Instance Types Custom[] Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
- instance
Types 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.
- instance
Types 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.
- integration
Docker ElastigroupSwarm Integration Docker Swarm - integration
Gke ElastigroupIntegration Gke - ip
Forwarding boolean - labels
Elastigroup
Label[] Array of objects with key-value pairs.
- max
Size number The maximum number of instances the group should have at any time.
- metadatas
Elastigroup
Metadata[] Array of objects with key-value pairs.
- min
Size number The minimum number of instances the group should have at any time.
- name string
The group name.
- network
Interfaces ElastigroupNetwork Interface[] - ondemand
Count number - preemptible
Percentage number Percentage of Preemptible VMs to spin up from the “desired_capacity”.
- scaling
Down ElastigroupPolicies Scaling Down Policy[] - scaling
Up ElastigroupPolicies Scaling Up Policy[] - scheduled
Tasks ElastigroupScheduled Task[] - service
Account string The email of the service account in which the group instances will be launched.
- shutdown
Script string The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- startup
Script string Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- subnets
Elastigroup
Subnet[] A list of regions and subnets.
- string[]
Tags to mark created instances.
- unhealthy
Duration number
- desired_
capacity float The desired number of instances the group should have at any time.
- auto_
healing bool - availability_
zones List[str] List of availability zones for the group.
- backend_
services List[ElastigroupBackend Service] - description str
The region your GCP group will be created in.
- disks
List[Elastigroup
Disk] - draining_
timeout float 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
List[Elastigroup
Gpu] - health_
check_ floatgrace_ period - health_
check_ strtype - instance_
types_ List[Elastigroupcustoms Instance Types Custom] Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
- 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_ List[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_ Dict[Elastigroupswarm Integration Docker Swarm] - integration_
gke Dict[ElastigroupIntegration Gke] - ip_
forwarding bool - labels
List[Elastigroup
Label] Array of objects with key-value pairs.
- max_
size float The maximum number of instances the group should have at any time.
- metadatas
List[Elastigroup
Metadata] Array of objects with key-value pairs.
- min_
size float The minimum number of instances the group should have at any time.
- name str
The group name.
- network_
interfaces List[ElastigroupNetwork Interface] - ondemand_
count float - preemptible_
percentage float Percentage of Preemptible VMs to spin up from the “desired_capacity”.
- scaling_
down_ List[Elastigrouppolicies Scaling Down Policy] - scaling_
up_ List[Elastigrouppolicies Scaling Up Policy] - scheduled_
tasks List[ElastigroupScheduled Task] - service_
account str The email of the service account in which the group instances will be launched.
- 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
List[Elastigroup
Subnet] A list of regions and subnets.
- List[str]
Tags to mark created instances.
- unhealthy_
duration float
Outputs
All input properties are implicitly available as output properties. Additionally, the Elastigroup resource produces the following output properties:
Look up an 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): Elastigroupstatic get(resource_name, id, opts=None, auto_healing=None, availability_zones=None, backend_services=None, description=None, desired_capacity=None, disks=None, draining_timeout=None, fallback_to_ondemand=None, gpu=None, health_check_grace_period=None, health_check_type=None, instance_types_customs=None, instance_types_ondemand=None, instance_types_preemptibles=None, integration_docker_swarm=None, integration_gke=None, ip_forwarding=None, labels=None, max_size=None, metadatas=None, min_size=None, name=None, network_interfaces=None, ondemand_count=None, preemptible_percentage=None, scaling_down_policies=None, scaling_up_policies=None, scheduled_tasks=None, service_account=None, shutdown_script=None, startup_script=None, subnets=None, tags=None, unhealthy_duration=None, __props__=None);func 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)- 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.
The following state arguments are supported:
- Auto
Healing bool - Availability
Zones List<string> List of availability zones for the group.
- Backend
Services List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Backend Service Args> - Description string
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
List<Pulumi.
Spot Inst. Gcp. Inputs. Elastigroup Disk 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
List<Pulumi.
Spot Inst. Gcp. Inputs. Elastigroup Gpu Args> - Health
Check intGrace Period - Health
Check stringType - Instance
Types List<Pulumi.Customs Spot Inst. Gcp. Inputs. Elastigroup Instance Types Custom Args> Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
- Instance
Types 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.
- Instance
Types 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.
- Integration
Docker Pulumi.Swarm Spot Inst. Gcp. Inputs. Elastigroup Integration Docker Swarm Args - Integration
Gke Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Integration Gke Args - Ip
Forwarding bool - Labels
List<Pulumi.
Spot Inst. Gcp. Inputs. Elastigroup Label Args> Array of objects with key-value pairs.
- Max
Size int The maximum number of instances the group should have at any time.
- Metadatas
List<Pulumi.
Spot Inst. Gcp. Inputs. Elastigroup Metadata Args> Array of objects with key-value pairs.
- Min
Size int The minimum number of instances the group should have at any time.
- Name string
The group name.
- Network
Interfaces List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Network Interface Args> - Ondemand
Count int - Preemptible
Percentage int Percentage of Preemptible VMs to spin up from the “desired_capacity”.
- Scaling
Down List<Pulumi.Policies Spot Inst. Gcp. Inputs. Elastigroup Scaling Down Policy Args> - Scaling
Up List<Pulumi.Policies Spot Inst. Gcp. Inputs. Elastigroup Scaling Up Policy Args> - Scheduled
Tasks List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Scheduled Task Args> - Service
Account string The email of the service account in which the group instances will be launched.
- Shutdown
Script string The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- Startup
Script 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 Args> A list of regions and subnets.
- List<string>
Tags to mark created instances.
- Unhealthy
Duration int
- Auto
Healing bool - Availability
Zones []string List of availability zones for the group.
- Backend
Services []ElastigroupBackend Service - Description string
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
[]Elastigroup
Disk - 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
[]Elastigroup
Gpu - Health
Check intGrace Period - Health
Check stringType - Instance
Types []ElastigroupCustoms Instance Types Custom Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
- Instance
Types 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.
- Instance
Types []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.
- Integration
Docker ElastigroupSwarm Integration Docker Swarm - Integration
Gke ElastigroupIntegration Gke - Ip
Forwarding bool - Labels
[]Elastigroup
Label Array of objects with key-value pairs.
- Max
Size int The maximum number of instances the group should have at any time.
- Metadatas
[]Elastigroup
Metadata Array of objects with key-value pairs.
- Min
Size int The minimum number of instances the group should have at any time.
- Name string
The group name.
- Network
Interfaces []ElastigroupNetwork Interface - Ondemand
Count int - Preemptible
Percentage int Percentage of Preemptible VMs to spin up from the “desired_capacity”.
- Scaling
Down []ElastigroupPolicies Scaling Down Policy - Scaling
Up []ElastigroupPolicies Scaling Up Policy - Scheduled
Tasks []ElastigroupScheduled Task - Service
Account string The email of the service account in which the group instances will be launched.
- Shutdown
Script string The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- Startup
Script string Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- Subnets
[]Elastigroup
Subnet A list of regions and subnets.
- []string
Tags to mark created instances.
- Unhealthy
Duration int
- auto
Healing boolean - availability
Zones string[] List of availability zones for the group.
- backend
Services ElastigroupBackend Service[] - description string
The region your GCP group will be created in.
- desired
Capacity number The desired number of instances the group should have at any time.
- disks
Elastigroup
Disk[] - draining
Timeout 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.
- fallback
To 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
Elastigroup
Gpu[] - health
Check numberGrace Period - health
Check stringType - instance
Types ElastigroupCustoms Instance Types Custom[] Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
- instance
Types 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.
- instance
Types 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.
- integration
Docker ElastigroupSwarm Integration Docker Swarm - integration
Gke ElastigroupIntegration Gke - ip
Forwarding boolean - labels
Elastigroup
Label[] Array of objects with key-value pairs.
- max
Size number The maximum number of instances the group should have at any time.
- metadatas
Elastigroup
Metadata[] Array of objects with key-value pairs.
- min
Size number The minimum number of instances the group should have at any time.
- name string
The group name.
- network
Interfaces ElastigroupNetwork Interface[] - ondemand
Count number - preemptible
Percentage number Percentage of Preemptible VMs to spin up from the “desired_capacity”.
- scaling
Down ElastigroupPolicies Scaling Down Policy[] - scaling
Up ElastigroupPolicies Scaling Up Policy[] - scheduled
Tasks ElastigroupScheduled Task[] - service
Account string The email of the service account in which the group instances will be launched.
- shutdown
Script string The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- startup
Script string Create and run your own startup scripts on your virtual machines to perform automated tasks every time your instance boots up.
- subnets
Elastigroup
Subnet[] A list of regions and subnets.
- string[]
Tags to mark created instances.
- unhealthy
Duration number
- auto_
healing bool - availability_
zones List[str] List of availability zones for the group.
- backend_
services List[ElastigroupBackend Service] - description str
The region your GCP group will be created in.
- desired_
capacity float The desired number of instances the group should have at any time.
- disks
List[Elastigroup
Disk] - draining_
timeout float 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
List[Elastigroup
Gpu] - health_
check_ floatgrace_ period - health_
check_ strtype - instance_
types_ List[Elastigroupcustoms Instance Types Custom] Defines a set of custom instance types. Required if instance_types_preemptible and instance_types_ondemand are not set.
- 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_ List[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_ Dict[Elastigroupswarm Integration Docker Swarm] - integration_
gke Dict[ElastigroupIntegration Gke] - ip_
forwarding bool - labels
List[Elastigroup
Label] Array of objects with key-value pairs.
- max_
size float The maximum number of instances the group should have at any time.
- metadatas
List[Elastigroup
Metadata] Array of objects with key-value pairs.
- min_
size float The minimum number of instances the group should have at any time.
- name str
The group name.
- network_
interfaces List[ElastigroupNetwork Interface] - ondemand_
count float - preemptible_
percentage float Percentage of Preemptible VMs to spin up from the “desired_capacity”.
- scaling_
down_ List[Elastigrouppolicies Scaling Down Policy] - scaling_
up_ List[Elastigrouppolicies Scaling Up Policy] - scheduled_
tasks List[ElastigroupScheduled Task] - service_
account str The email of the service account in which the group instances will be launched.
- 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
List[Elastigroup
Subnet] A list of regions and subnets.
- List[str]
Tags to mark created instances.
- unhealthy_
duration float
Supporting Types
ElastigroupBackendService
ElastigroupBackendServiceNamedPort
- Name string
The group name.
- Ports List<string>
ElastigroupDisk
ElastigroupDiskInitializeParam
ElastigroupGpu
ElastigroupInstanceTypesCustom
- 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
- 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
- memory
Gib number 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 number
- memory
Gib float 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 float
ElastigroupIntegrationDockerSwarm
ElastigroupIntegrationGke
- Auto
Update bool - Autoscale
Cooldown int - Autoscale
Down Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Integration Gke Autoscale Down Args - Autoscale
Headroom Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Integration Gke Autoscale Headroom Args - Autoscale
Is boolAuto Config - Autoscale
Is boolEnabled - Autoscale
Labels List<Pulumi.Spot Inst. Gcp. Inputs. Elastigroup Integration Gke Autoscale Label Args> - Cluster
Id string - Location string
ElastigroupIntegrationGkeAutoscaleDown
ElastigroupIntegrationGkeAutoscaleHeadroom
ElastigroupIntegrationGkeAutoscaleLabel
ElastigroupLabel
ElastigroupMetadata
ElastigroupNetworkInterface
ElastigroupNetworkInterfaceAccessConfig
ElastigroupNetworkInterfaceAliasIpRange
ElastigroupScalingDownPolicy
ElastigroupScalingDownPolicyDimension
ElastigroupScalingUpPolicy
ElastigroupScalingUpPolicyDimension
ElastigroupScheduledTask
ElastigroupSubnet
- Region string
The region for the group of subnets.
- Subnet
Names List<string> The names of the subnets in the region.
- Region string
The region for the group of subnets.
- Subnet
Names []string The names of the subnets in the region.
- region string
The region for the group of subnets.
- subnet
Names string[] The names of the subnets in the region.
- region str
The region for the group of subnets.
- subnet
Names List[str] The names of the subnets in the region.
Package Details
- Repository
- https://github.com/pulumi/pulumi-spotinst
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
spotinstTerraform Provider.