Show / Hide Table of Contents

Class Elastigroup

Inheritance
System.Object
Resource
CustomResource
Elastigroup
Inherited Members
CustomResource.Id
Resource.GetResourceType()
Resource.GetResourceName()
Resource.Urn
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: Pulumi.SpotInst.Aws
Assembly: Pulumi.SpotInst.dll
Syntax
public class Elastigroup : CustomResource

Constructors

View Source

Elastigroup(String, ElastigroupArgs, CustomResourceOptions)

Create a Elastigroup resource with the given unique name, arguments, and options.

Declaration
public Elastigroup(string name, ElastigroupArgs args, CustomResourceOptions options = null)
Parameters
Type Name Description
System.String name

The unique name of the resource

ElastigroupArgs args

The arguments used to populate this resource's properties

CustomResourceOptions options

A bag of options that control this resource's behavior

Properties

View Source

AvailabilityZones

List of Strings of availability zones. When this parameter is set, subnet_ids should be left unused. Note: availability_zones naming syntax follows the convention availability-zone:subnet:placement-group-name. For example, to set an AZ in us-east-1 with subnet subnet-123456 and placement group ClusterI03, you would set: availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]

Declaration
public Output<ImmutableArray<string>> AvailabilityZones { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

BlockDevicesMode

Declaration
public Output<string> BlockDevicesMode { get; }
Property Value
Type Description
Output<System.String>
View Source

CapacityUnit

The capacity unit to launch instances by. If not specified, when choosing the weight unit, each instance will weight as the number of its vCPUs.

Declaration
public Output<string> CapacityUnit { get; }
Property Value
Type Description
Output<System.String>
View Source

CpuCredits

Controls how T3 instances are launched. Valid values: standard, unlimited.

Declaration
public Output<string> CpuCredits { get; }
Property Value
Type Description
Output<System.String>
View Source

Description

The group description.

Declaration
public Output<string> Description { get; }
Property Value
Type Description
Output<System.String>
View Source

DesiredCapacity

The desired number of instances the group should have at any time.

Declaration
public Output<int?> DesiredCapacity { get; }
Property Value
Type Description
Output<System.Nullable<System.Int32>>
View Source

DrainingTimeout

The time in seconds, the instance is allowed to run while detached from the ELB. This is to allow the instance time to be drained from incoming TCP connections before terminating it, during a scale down operation.

Declaration
public Output<int> DrainingTimeout { get; }
Property Value
Type Description
Output<System.Int32>
View Source

EbsBlockDevices

Declaration
public Output<ImmutableArray<ElastigroupEbsBlockDevice>> EbsBlockDevices { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupEbsBlockDevice>>
View Source

EbsOptimized

Enable high bandwidth connectivity between instances and AWS’s Elastic Block Store (EBS). For instance types that are EBS-optimized by default this parameter will be ignored.

Declaration
public Output<bool> EbsOptimized { get; }
Property Value
Type Description
Output<System.Boolean>
View Source

ElasticIps

A list of AWS Elastic IP allocation IDs to associate to the group instances.

Declaration
public Output<ImmutableArray<string>> ElasticIps { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

ElasticLoadBalancers

Declaration
public Output<ImmutableArray<string>> ElasticLoadBalancers { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

EnableMonitoring

Indicates whether monitoring is enabled for the instance.

Declaration
public Output<bool?> EnableMonitoring { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

EphemeralBlockDevices

Declaration
public Output<ImmutableArray<ElastigroupEphemeralBlockDevice>> EphemeralBlockDevices { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupEphemeralBlockDevice>>
View Source

FallbackToOndemand

In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.

Declaration
public Output<bool> FallbackToOndemand { get; }
Property Value
Type Description
Output<System.Boolean>
View Source

HealthCheckGracePeriod

The amount of time, in seconds, after the instance has launched to starts and check its health.

Declaration
public Output<int?> HealthCheckGracePeriod { get; }
Property Value
Type Description
Output<System.Nullable<System.Int32>>
View Source

HealthCheckType

The service that will perform health checks for the instance. Valid values: &quot;ELB&quot;, &quot;HCS&quot;, &quot;TARGET_GROUP&quot;, &quot;MLB&quot;, &quot;EC2&quot;, &quot;MULTAI_TARGET_SET&quot;, &quot;MLB_RUNTIME&quot;, &quot;K8S_NODE&quot;, &quot;NOMAD_NODE&quot;, &quot;ECS_CLUSTER_INSTANCE&quot;.

Declaration
public Output<string> HealthCheckType { get; }
Property Value
Type Description
Output<System.String>
View Source

HealthCheckUnhealthyDurationBeforeReplacement

The amount of time, in seconds, that we will wait before replacing an instance that is running and became unhealthy (this is only applicable for instances that were once healthy).

Declaration
public Output<int?> HealthCheckUnhealthyDurationBeforeReplacement { get; }
Property Value
Type Description
Output<System.Nullable<System.Int32>>
View Source

IamInstanceProfile

The ARN or name of an IAM instance profile to associate with launched instances.

Declaration
public Output<string> IamInstanceProfile { get; }
Property Value
Type Description
Output<System.String>
View Source

ImageId

The ID of the AMI used to launch the instance.

Declaration
public Output<string> ImageId { get; }
Property Value
Type Description
Output<System.String>
View Source

InstanceTypesOndemand

The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).

Declaration
public Output<string> InstanceTypesOndemand { get; }
Property Value
Type Description
Output<System.String>
View Source

InstanceTypesPreferredSpots

Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.

Declaration
public Output<ImmutableArray<string>> InstanceTypesPreferredSpots { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

InstanceTypesSpots

One or more instance types.

Declaration
public Output<ImmutableArray<string>> InstanceTypesSpots { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

InstanceTypesWeights

List of weights per instance type for weighted groups. Each object in the list should have the following attributes:

Declaration
public Output<ImmutableArray<ElastigroupInstanceTypesWeight>> InstanceTypesWeights { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupInstanceTypesWeight>>
View Source

IntegrationBeanstalk

Declaration
public Output<ElastigroupIntegrationBeanstalk> IntegrationBeanstalk { get; }
Property Value
Type Description
Output<ElastigroupIntegrationBeanstalk>
View Source

IntegrationCodedeploy

Declaration
public Output<ElastigroupIntegrationCodedeploy> IntegrationCodedeploy { get; }
Property Value
Type Description
Output<ElastigroupIntegrationCodedeploy>
View Source

IntegrationDockerSwarm

Declaration
public Output<ElastigroupIntegrationDockerSwarm> IntegrationDockerSwarm { get; }
Property Value
Type Description
Output<ElastigroupIntegrationDockerSwarm>
View Source

IntegrationEcs

Declaration
public Output<ElastigroupIntegrationEcs> IntegrationEcs { get; }
Property Value
Type Description
Output<ElastigroupIntegrationEcs>
View Source

IntegrationGitlab

Declaration
public Output<ElastigroupIntegrationGitlab> IntegrationGitlab { get; }
Property Value
Type Description
Output<ElastigroupIntegrationGitlab>
View Source

IntegrationKubernetes

Declaration
public Output<ElastigroupIntegrationKubernetes> IntegrationKubernetes { get; }
Property Value
Type Description
Output<ElastigroupIntegrationKubernetes>
View Source

IntegrationMesosphere

Declaration
public Output<ElastigroupIntegrationMesosphere> IntegrationMesosphere { get; }
Property Value
Type Description
Output<ElastigroupIntegrationMesosphere>
View Source

IntegrationMultaiRuntime

Declaration
public Output<ElastigroupIntegrationMultaiRuntime> IntegrationMultaiRuntime { get; }
Property Value
Type Description
Output<ElastigroupIntegrationMultaiRuntime>
View Source

IntegrationNomad

Declaration
public Output<ElastigroupIntegrationNomad> IntegrationNomad { get; }
Property Value
Type Description
Output<ElastigroupIntegrationNomad>
View Source

IntegrationRancher

Declaration
public Output<ElastigroupIntegrationRancher> IntegrationRancher { get; }
Property Value
Type Description
Output<ElastigroupIntegrationRancher>
View Source

IntegrationRoute53

Declaration
public Output<ElastigroupIntegrationRoute53> IntegrationRoute53 { get; }
Property Value
Type Description
Output<ElastigroupIntegrationRoute53>
View Source

KeyName

The key name that should be used for the instance.

Declaration
public Output<string> KeyName { get; }
Property Value
Type Description
Output<System.String>
View Source

LifetimePeriod

Declaration
public Output<string> LifetimePeriod { get; }
Property Value
Type Description
Output<System.String>
View Source

MaxSize

The maximum number of instances the group should have at any time.

Declaration
public Output<int> MaxSize { get; }
Property Value
Type Description
Output<System.Int32>
View Source

MinSize

The minimum number of instances the group should have at any time.

Declaration
public Output<int> MinSize { get; }
Property Value
Type Description
Output<System.Int32>
View Source

MultaiTargetSets

Declaration
public Output<ImmutableArray<ElastigroupMultaiTargetSet>> MultaiTargetSets { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupMultaiTargetSet>>
View Source

Name

The group name.

Declaration
public Output<string> Name { get; }
Property Value
Type Description
Output<System.String>
View Source

NetworkInterfaces

Declaration
public Output<ImmutableArray<ElastigroupNetworkInterface>> NetworkInterfaces { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupNetworkInterface>>
View Source

OndemandCount

Number of on demand instances to launch in the group. All other instances will be spot instances. When this parameter is set the spot_percentage parameter is being ignored.

Declaration
public Output<int?> OndemandCount { get; }
Property Value
Type Description
Output<System.Nullable<System.Int32>>
View Source

Orientation

Select a prediction strategy. Valid values: &quot;balanced&quot;, &quot;costOriented&quot;, &quot;equalAzDistribution&quot;, &quot;availabilityOriented&quot;.

Declaration
public Output<string> Orientation { get; }
Property Value
Type Description
Output<System.String>
View Source

PersistBlockDevices

Declaration
public Output<bool?> PersistBlockDevices { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

PersistPrivateIp

Declaration
public Output<bool?> PersistPrivateIp { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

PersistRootDevice

Declaration
public Output<bool?> PersistRootDevice { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

PlacementTenancy

Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used.

Declaration
public Output<string> PlacementTenancy { get; }
Property Value
Type Description
Output<System.String>
View Source

PreferredAvailabilityZones

The AZs to prioritize when launching Spot instances. If no markets are available in the Preferred AZs, Spot instances are launched in the non-preferred AZs. Note: Must be a sublist of availability_zones and orientation value must not be &quot;equalAzDistribution&quot;.

Declaration
public Output<ImmutableArray<string>> PreferredAvailabilityZones { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

PrivateIps

Declaration
public Output<ImmutableArray<string>> PrivateIps { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

Product

Operation system type. Valid values: &quot;Linux/UNIX&quot;, &quot;SUSE Linux&quot;, &quot;Windows&quot;. For EC2 Classic instances: &quot;Linux/UNIX (Amazon VPC)&quot;, &quot;SUSE Linux (Amazon VPC)&quot;, &quot;Windows (Amazon VPC)&quot;.

Declaration
public Output<string> Product { get; }
Property Value
Type Description
Output<System.String>
View Source

Region

The AWS region your group will be created in. Note: This parameter is required if you specify subnets (through subnet_ids). This parameter is optional if you specify Availability Zones (through availability_zones).

Declaration
public Output<string> Region { get; }
Property Value
Type Description
Output<System.String>
View Source

RevertToSpot

Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values: &quot;never&quot;, &quot;always&quot;, &quot;timeWindow&quot;

Declaration
public Output<ElastigroupRevertToSpot> RevertToSpot { get; }
Property Value
Type Description
Output<ElastigroupRevertToSpot>
View Source

ScalingDownPolicies

Declaration
public Output<ImmutableArray<ElastigroupScalingDownPolicy>> ScalingDownPolicies { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupScalingDownPolicy>>
View Source

ScalingStrategies

Set termination policy.

Declaration
public Output<ImmutableArray<ElastigroupScalingStrategy>> ScalingStrategies { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupScalingStrategy>>
View Source

ScalingTargetPolicies

Declaration
public Output<ImmutableArray<ElastigroupScalingTargetPolicy>> ScalingTargetPolicies { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupScalingTargetPolicy>>
View Source

ScalingUpPolicies

Declaration
public Output<ImmutableArray<ElastigroupScalingUpPolicy>> ScalingUpPolicies { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupScalingUpPolicy>>
View Source

ScheduledTasks

Declaration
public Output<ImmutableArray<ElastigroupScheduledTask>> ScheduledTasks { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupScheduledTask>>
View Source

SecurityGroups

A list of associated security group IDS.

Declaration
public Output<ImmutableArray<string>> SecurityGroups { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

ShutdownScript

The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script

Declaration
public Output<string> ShutdownScript { get; }
Property Value
Type Description
Output<System.String>
View Source

Signals

Declaration
public Output<ImmutableArray<ElastigroupSignal>> Signals { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupSignal>>
View Source

SpotPercentage

The percentage of Spot instances that would spin up from the desired_capacity number.

Declaration
public Output<double?> SpotPercentage { get; }
Property Value
Type Description
Output<System.Nullable<System.Double>>
View Source

StatefulDeallocation

Declaration
public Output<ElastigroupStatefulDeallocation> StatefulDeallocation { get; }
Property Value
Type Description
Output<ElastigroupStatefulDeallocation>
View Source

SubnetIds

List of Strings of subnet identifiers. Note: When this parameter is set, availability_zones should be left unused.

Declaration
public Output<ImmutableArray<string>> SubnetIds { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

Tags

A key/value mapping of tags to assign to the resource.

Declaration
public Output<ImmutableArray<ElastigroupTag>> Tags { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<ElastigroupTag>>
View Source

TargetGroupArns

Declaration
public Output<ImmutableArray<string>> TargetGroupArns { get; }
Property Value
Type Description
Output<System.Collections.Immutable.ImmutableArray<System.String>>
View Source

UpdatePolicy

Declaration
public Output<ElastigroupUpdatePolicy> UpdatePolicy { get; }
Property Value
Type Description
Output<ElastigroupUpdatePolicy>
View Source

UserData

The user data to provide when launching the instance.

Declaration
public Output<string> UserData { get; }
Property Value
Type Description
Output<System.String>
View Source

UtilizeReservedInstances

In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.

Declaration
public Output<bool?> UtilizeReservedInstances { get; }
Property Value
Type Description
Output<System.Nullable<System.Boolean>>
View Source

WaitForCapacity

Minimum number of instances in a 'HEALTHY' status that is required before continuing. This is ignored when updating with blue/green deployment. Cannot exceed desired_capacity.

Declaration
public Output<int?> WaitForCapacity { get; }
Property Value
Type Description
Output<System.Nullable<System.Int32>>
View Source

WaitForCapacityTimeout

Time (seconds) to wait for instances to report a 'HEALTHY' status. Useful for plans with multiple dependencies that take some time to initialize. Leave undefined or set to 0 to indicate no wait. This is ignored when updating with blue/green deployment.

Declaration
public Output<int?> WaitForCapacityTimeout { get; }
Property Value
Type Description
Output<System.Nullable<System.Int32>>

Methods

View Source

Get(String, Input<String>, ElastigroupState, CustomResourceOptions)

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

Declaration
public static Elastigroup Get(string name, Input<string> id, ElastigroupState state = null, CustomResourceOptions options = null)
Parameters
Type Name Description
System.String name

The unique name of the resulting resource.

Input<System.String> id

The unique provider ID of the resource to lookup.

ElastigroupState state

Any extra arguments used during the lookup.

CustomResourceOptions options

A bag of options that control this resource's behavior

Returns
Type Description
Elastigroup
  • View Source
Back to top Copyright 2016-2020, Pulumi Corporation.