spotinst.aws.Elastigroup
Explore with Pulumi AI
Provides a Spotinst AWS group resource.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as spotinst from "@pulumi/spotinst";
// Create an Elastigroup
const default_elastigroup = new spotinst.aws.Elastigroup("default-elastigroup", {
name: "default-elastigroup",
description: "created by Pulumi",
product: "Linux/UNIX",
maxSize: 0,
minSize: 0,
desiredCapacity: 0,
capacityUnit: "weight",
region: "us-west-2",
subnetIds: [
"sb-123456",
"sb-456789",
],
imageId: "ami-a27d8fda",
iamInstanceProfile: "iam-profile",
keyName: "my-key.ssh",
securityGroups: ["sg-123456"],
userData: "echo hello world",
enableMonitoring: false,
ebsOptimized: false,
placementTenancy: "default",
metadataOptions: {
httpTokens: "optional",
httpPutResponseHopLimit: 10,
instanceMetadataTags: "enabled",
},
cpuOptions: {
threadsPerCore: 1,
},
instanceTypesOndemand: "m3.2xlarge",
instanceTypesSpots: [
"m3.xlarge",
"m3.2xlarge",
],
instanceTypesPreferredSpots: ["m3.xlarge"],
onDemandTypes: ["c3.large"],
instanceTypesWeights: [
{
instanceType: "m3.xlarge",
weight: 10,
},
{
instanceType: "m3.2xlarge",
weight: 16,
},
],
resourceRequirements: [{
excludedInstanceFamilies: [
"a",
"m",
],
excludedInstanceTypes: ["m3.large"],
excludedInstanceGenerations: [
"1",
"2",
],
requiredGpuMinimum: 1,
requiredGpuMaximum: 16,
requiredMemoryMinimum: 1,
requiredMemoryMaximum: 512,
requiredVcpuMinimum: 1,
requiredVcpuMaximum: 64,
}],
orientation: "balanced",
fallbackToOndemand: false,
cpuCredits: "unlimited",
minimumInstanceLifetime: 12,
waitForCapacity: 5,
waitForCapacityTimeout: 300,
scalingStrategies: [{
terminateAtEndOfBillingHour: true,
terminationPolicy: "default",
}],
scalingUpPolicies: [{
policyName: "Default Scaling Up Policy",
metricName: "DefaultQueuesDepth",
statistic: "average",
unit: "none",
adjustment: "1",
namespace: "custom",
threshold: 100,
period: 60,
evaluationPeriods: 5,
cooldown: 300,
}],
scalingDownPolicies: [{
policyName: "Default Scaling Down Policy",
metricName: "DefaultQueuesDepth",
statistic: "average",
unit: "none",
adjustment: "1",
namespace: "custom",
threshold: 10,
period: 60,
evaluationPeriods: 10,
cooldown: 300,
}],
tags: [
{
key: "Env",
value: "production",
},
{
key: "Name",
value: "default-production",
},
{
key: "Project",
value: "app_v2",
},
],
resourceTagSpecifications: [{
shouldTagEnis: true,
shouldTagVolumes: true,
shouldTagSnapshots: true,
shouldTagAmis: true,
}],
logging: {
"export": {
s3s: [{
id: "di-123456",
}],
},
},
});
import pulumi
import pulumi_spotinst as spotinst
# Create an Elastigroup
default_elastigroup = spotinst.aws.Elastigroup("default-elastigroup",
name="default-elastigroup",
description="created by Pulumi",
product="Linux/UNIX",
max_size=0,
min_size=0,
desired_capacity=0,
capacity_unit="weight",
region="us-west-2",
subnet_ids=[
"sb-123456",
"sb-456789",
],
image_id="ami-a27d8fda",
iam_instance_profile="iam-profile",
key_name="my-key.ssh",
security_groups=["sg-123456"],
user_data="echo hello world",
enable_monitoring=False,
ebs_optimized=False,
placement_tenancy="default",
metadata_options=spotinst.aws.ElastigroupMetadataOptionsArgs(
http_tokens="optional",
http_put_response_hop_limit=10,
instance_metadata_tags="enabled",
),
cpu_options=spotinst.aws.ElastigroupCpuOptionsArgs(
threads_per_core=1,
),
instance_types_ondemand="m3.2xlarge",
instance_types_spots=[
"m3.xlarge",
"m3.2xlarge",
],
instance_types_preferred_spots=["m3.xlarge"],
on_demand_types=["c3.large"],
instance_types_weights=[
spotinst.aws.ElastigroupInstanceTypesWeightArgs(
instance_type="m3.xlarge",
weight=10,
),
spotinst.aws.ElastigroupInstanceTypesWeightArgs(
instance_type="m3.2xlarge",
weight=16,
),
],
resource_requirements=[spotinst.aws.ElastigroupResourceRequirementArgs(
excluded_instance_families=[
"a",
"m",
],
excluded_instance_types=["m3.large"],
excluded_instance_generations=[
"1",
"2",
],
required_gpu_minimum=1,
required_gpu_maximum=16,
required_memory_minimum=1,
required_memory_maximum=512,
required_vcpu_minimum=1,
required_vcpu_maximum=64,
)],
orientation="balanced",
fallback_to_ondemand=False,
cpu_credits="unlimited",
minimum_instance_lifetime=12,
wait_for_capacity=5,
wait_for_capacity_timeout=300,
scaling_strategies=[spotinst.aws.ElastigroupScalingStrategyArgs(
terminate_at_end_of_billing_hour=True,
termination_policy="default",
)],
scaling_up_policies=[spotinst.aws.ElastigroupScalingUpPolicyArgs(
policy_name="Default Scaling Up Policy",
metric_name="DefaultQueuesDepth",
statistic="average",
unit="none",
adjustment="1",
namespace="custom",
threshold=100,
period=60,
evaluation_periods=5,
cooldown=300,
)],
scaling_down_policies=[spotinst.aws.ElastigroupScalingDownPolicyArgs(
policy_name="Default Scaling Down Policy",
metric_name="DefaultQueuesDepth",
statistic="average",
unit="none",
adjustment="1",
namespace="custom",
threshold=10,
period=60,
evaluation_periods=10,
cooldown=300,
)],
tags=[
spotinst.aws.ElastigroupTagArgs(
key="Env",
value="production",
),
spotinst.aws.ElastigroupTagArgs(
key="Name",
value="default-production",
),
spotinst.aws.ElastigroupTagArgs(
key="Project",
value="app_v2",
),
],
resource_tag_specifications=[spotinst.aws.ElastigroupResourceTagSpecificationArgs(
should_tag_enis=True,
should_tag_volumes=True,
should_tag_snapshots=True,
should_tag_amis=True,
)],
logging=spotinst.aws.ElastigroupLoggingArgs(
export=spotinst.aws.ElastigroupLoggingExportArgs(
s3s=[spotinst.aws.ElastigroupLoggingExportS3Args(
id="di-123456",
)],
),
))
package main
import (
"github.com/pulumi/pulumi-spotinst/sdk/v3/go/spotinst/aws"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Create an Elastigroup
_, err := aws.NewElastigroup(ctx, "default-elastigroup", &aws.ElastigroupArgs{
Name: pulumi.String("default-elastigroup"),
Description: pulumi.String("created by Pulumi"),
Product: pulumi.String("Linux/UNIX"),
MaxSize: pulumi.Int(0),
MinSize: pulumi.Int(0),
DesiredCapacity: pulumi.Int(0),
CapacityUnit: pulumi.String("weight"),
Region: pulumi.String("us-west-2"),
SubnetIds: pulumi.StringArray{
pulumi.String("sb-123456"),
pulumi.String("sb-456789"),
},
ImageId: pulumi.String("ami-a27d8fda"),
IamInstanceProfile: pulumi.String("iam-profile"),
KeyName: pulumi.String("my-key.ssh"),
SecurityGroups: pulumi.StringArray{
pulumi.String("sg-123456"),
},
UserData: pulumi.String("echo hello world"),
EnableMonitoring: pulumi.Bool(false),
EbsOptimized: pulumi.Bool(false),
PlacementTenancy: pulumi.String("default"),
MetadataOptions: &aws.ElastigroupMetadataOptionsArgs{
HttpTokens: pulumi.String("optional"),
HttpPutResponseHopLimit: pulumi.Int(10),
InstanceMetadataTags: pulumi.String("enabled"),
},
CpuOptions: &aws.ElastigroupCpuOptionsArgs{
ThreadsPerCore: pulumi.Int(1),
},
InstanceTypesOndemand: pulumi.String("m3.2xlarge"),
InstanceTypesSpots: pulumi.StringArray{
pulumi.String("m3.xlarge"),
pulumi.String("m3.2xlarge"),
},
InstanceTypesPreferredSpots: pulumi.StringArray{
pulumi.String("m3.xlarge"),
},
OnDemandTypes: pulumi.StringArray{
pulumi.String("c3.large"),
},
InstanceTypesWeights: aws.ElastigroupInstanceTypesWeightArray{
&aws.ElastigroupInstanceTypesWeightArgs{
InstanceType: pulumi.String("m3.xlarge"),
Weight: pulumi.Int(10),
},
&aws.ElastigroupInstanceTypesWeightArgs{
InstanceType: pulumi.String("m3.2xlarge"),
Weight: pulumi.Int(16),
},
},
ResourceRequirements: aws.ElastigroupResourceRequirementArray{
&aws.ElastigroupResourceRequirementArgs{
ExcludedInstanceFamilies: pulumi.StringArray{
pulumi.String("a"),
pulumi.String("m"),
},
ExcludedInstanceTypes: pulumi.StringArray{
pulumi.String("m3.large"),
},
ExcludedInstanceGenerations: pulumi.StringArray{
pulumi.String("1"),
pulumi.String("2"),
},
RequiredGpuMinimum: pulumi.Int(1),
RequiredGpuMaximum: pulumi.Int(16),
RequiredMemoryMinimum: pulumi.Int(1),
RequiredMemoryMaximum: pulumi.Int(512),
RequiredVcpuMinimum: pulumi.Int(1),
RequiredVcpuMaximum: pulumi.Int(64),
},
},
Orientation: pulumi.String("balanced"),
FallbackToOndemand: pulumi.Bool(false),
CpuCredits: pulumi.String("unlimited"),
MinimumInstanceLifetime: pulumi.Int(12),
WaitForCapacity: pulumi.Int(5),
WaitForCapacityTimeout: pulumi.Int(300),
ScalingStrategies: aws.ElastigroupScalingStrategyArray{
&aws.ElastigroupScalingStrategyArgs{
TerminateAtEndOfBillingHour: pulumi.Bool(true),
TerminationPolicy: pulumi.String("default"),
},
},
ScalingUpPolicies: aws.ElastigroupScalingUpPolicyArray{
&aws.ElastigroupScalingUpPolicyArgs{
PolicyName: pulumi.String("Default Scaling Up Policy"),
MetricName: pulumi.String("DefaultQueuesDepth"),
Statistic: pulumi.String("average"),
Unit: pulumi.String("none"),
Adjustment: pulumi.String("1"),
Namespace: pulumi.String("custom"),
Threshold: pulumi.Float64(100),
Period: pulumi.Int(60),
EvaluationPeriods: pulumi.Int(5),
Cooldown: pulumi.Int(300),
},
},
ScalingDownPolicies: aws.ElastigroupScalingDownPolicyArray{
&aws.ElastigroupScalingDownPolicyArgs{
PolicyName: pulumi.String("Default Scaling Down Policy"),
MetricName: pulumi.String("DefaultQueuesDepth"),
Statistic: pulumi.String("average"),
Unit: pulumi.String("none"),
Adjustment: pulumi.String("1"),
Namespace: pulumi.String("custom"),
Threshold: pulumi.Float64(10),
Period: pulumi.Int(60),
EvaluationPeriods: pulumi.Int(10),
Cooldown: pulumi.Int(300),
},
},
Tags: aws.ElastigroupTagArray{
&aws.ElastigroupTagArgs{
Key: pulumi.String("Env"),
Value: pulumi.String("production"),
},
&aws.ElastigroupTagArgs{
Key: pulumi.String("Name"),
Value: pulumi.String("default-production"),
},
&aws.ElastigroupTagArgs{
Key: pulumi.String("Project"),
Value: pulumi.String("app_v2"),
},
},
ResourceTagSpecifications: aws.ElastigroupResourceTagSpecificationArray{
&aws.ElastigroupResourceTagSpecificationArgs{
ShouldTagEnis: pulumi.Bool(true),
ShouldTagVolumes: pulumi.Bool(true),
ShouldTagSnapshots: pulumi.Bool(true),
ShouldTagAmis: pulumi.Bool(true),
},
},
Logging: &aws.ElastigroupLoggingArgs{
Export: &aws.ElastigroupLoggingExportArgs{
S3s: aws.ElastigroupLoggingExportS3Array{
&aws.ElastigroupLoggingExportS3Args{
Id: pulumi.String("di-123456"),
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using SpotInst = Pulumi.SpotInst;
return await Deployment.RunAsync(() =>
{
// Create an Elastigroup
var default_elastigroup = new SpotInst.Aws.Elastigroup("default-elastigroup", new()
{
Name = "default-elastigroup",
Description = "created by Pulumi",
Product = "Linux/UNIX",
MaxSize = 0,
MinSize = 0,
DesiredCapacity = 0,
CapacityUnit = "weight",
Region = "us-west-2",
SubnetIds = new[]
{
"sb-123456",
"sb-456789",
},
ImageId = "ami-a27d8fda",
IamInstanceProfile = "iam-profile",
KeyName = "my-key.ssh",
SecurityGroups = new[]
{
"sg-123456",
},
UserData = "echo hello world",
EnableMonitoring = false,
EbsOptimized = false,
PlacementTenancy = "default",
MetadataOptions = new SpotInst.Aws.Inputs.ElastigroupMetadataOptionsArgs
{
HttpTokens = "optional",
HttpPutResponseHopLimit = 10,
InstanceMetadataTags = "enabled",
},
CpuOptions = new SpotInst.Aws.Inputs.ElastigroupCpuOptionsArgs
{
ThreadsPerCore = 1,
},
InstanceTypesOndemand = "m3.2xlarge",
InstanceTypesSpots = new[]
{
"m3.xlarge",
"m3.2xlarge",
},
InstanceTypesPreferredSpots = new[]
{
"m3.xlarge",
},
OnDemandTypes = new[]
{
"c3.large",
},
InstanceTypesWeights = new[]
{
new SpotInst.Aws.Inputs.ElastigroupInstanceTypesWeightArgs
{
InstanceType = "m3.xlarge",
Weight = 10,
},
new SpotInst.Aws.Inputs.ElastigroupInstanceTypesWeightArgs
{
InstanceType = "m3.2xlarge",
Weight = 16,
},
},
ResourceRequirements = new[]
{
new SpotInst.Aws.Inputs.ElastigroupResourceRequirementArgs
{
ExcludedInstanceFamilies = new[]
{
"a",
"m",
},
ExcludedInstanceTypes = new[]
{
"m3.large",
},
ExcludedInstanceGenerations = new[]
{
"1",
"2",
},
RequiredGpuMinimum = 1,
RequiredGpuMaximum = 16,
RequiredMemoryMinimum = 1,
RequiredMemoryMaximum = 512,
RequiredVcpuMinimum = 1,
RequiredVcpuMaximum = 64,
},
},
Orientation = "balanced",
FallbackToOndemand = false,
CpuCredits = "unlimited",
MinimumInstanceLifetime = 12,
WaitForCapacity = 5,
WaitForCapacityTimeout = 300,
ScalingStrategies = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingStrategyArgs
{
TerminateAtEndOfBillingHour = true,
TerminationPolicy = "default",
},
},
ScalingUpPolicies = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingUpPolicyArgs
{
PolicyName = "Default Scaling Up Policy",
MetricName = "DefaultQueuesDepth",
Statistic = "average",
Unit = "none",
Adjustment = "1",
Namespace = "custom",
Threshold = 100,
Period = 60,
EvaluationPeriods = 5,
Cooldown = 300,
},
},
ScalingDownPolicies = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingDownPolicyArgs
{
PolicyName = "Default Scaling Down Policy",
MetricName = "DefaultQueuesDepth",
Statistic = "average",
Unit = "none",
Adjustment = "1",
Namespace = "custom",
Threshold = 10,
Period = 60,
EvaluationPeriods = 10,
Cooldown = 300,
},
},
Tags = new[]
{
new SpotInst.Aws.Inputs.ElastigroupTagArgs
{
Key = "Env",
Value = "production",
},
new SpotInst.Aws.Inputs.ElastigroupTagArgs
{
Key = "Name",
Value = "default-production",
},
new SpotInst.Aws.Inputs.ElastigroupTagArgs
{
Key = "Project",
Value = "app_v2",
},
},
ResourceTagSpecifications = new[]
{
new SpotInst.Aws.Inputs.ElastigroupResourceTagSpecificationArgs
{
ShouldTagEnis = true,
ShouldTagVolumes = true,
ShouldTagSnapshots = true,
ShouldTagAmis = true,
},
},
Logging = new SpotInst.Aws.Inputs.ElastigroupLoggingArgs
{
Export = new SpotInst.Aws.Inputs.ElastigroupLoggingExportArgs
{
S3s = new[]
{
new SpotInst.Aws.Inputs.ElastigroupLoggingExportS3Args
{
Id = "di-123456",
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.spotinst.aws.Elastigroup;
import com.pulumi.spotinst.aws.ElastigroupArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupMetadataOptionsArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupCpuOptionsArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupInstanceTypesWeightArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupResourceRequirementArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupScalingStrategyArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupScalingUpPolicyArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupScalingDownPolicyArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupTagArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupResourceTagSpecificationArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupLoggingArgs;
import com.pulumi.spotinst.aws.inputs.ElastigroupLoggingExportArgs;
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) {
// Create an Elastigroup
var default_elastigroup = new Elastigroup("default-elastigroup", ElastigroupArgs.builder()
.name("default-elastigroup")
.description("created by Pulumi")
.product("Linux/UNIX")
.maxSize(0)
.minSize(0)
.desiredCapacity(0)
.capacityUnit("weight")
.region("us-west-2")
.subnetIds(
"sb-123456",
"sb-456789")
.imageId("ami-a27d8fda")
.iamInstanceProfile("iam-profile")
.keyName("my-key.ssh")
.securityGroups("sg-123456")
.userData("echo hello world")
.enableMonitoring(false)
.ebsOptimized(false)
.placementTenancy("default")
.metadataOptions(ElastigroupMetadataOptionsArgs.builder()
.httpTokens("optional")
.httpPutResponseHopLimit(10)
.instanceMetadataTags("enabled")
.build())
.cpuOptions(ElastigroupCpuOptionsArgs.builder()
.threadsPerCore(1)
.build())
.instanceTypesOndemand("m3.2xlarge")
.instanceTypesSpots(
"m3.xlarge",
"m3.2xlarge")
.instanceTypesPreferredSpots("m3.xlarge")
.onDemandTypes("c3.large")
.instanceTypesWeights(
ElastigroupInstanceTypesWeightArgs.builder()
.instanceType("m3.xlarge")
.weight(10)
.build(),
ElastigroupInstanceTypesWeightArgs.builder()
.instanceType("m3.2xlarge")
.weight(16)
.build())
.resourceRequirements(ElastigroupResourceRequirementArgs.builder()
.excludedInstanceFamilies(
"a",
"m")
.excludedInstanceTypes("m3.large")
.excludedInstanceGenerations(
"1",
"2")
.requiredGpuMinimum(1)
.requiredGpuMaximum(16)
.requiredMemoryMinimum(1)
.requiredMemoryMaximum(512)
.requiredVcpuMinimum(1)
.requiredVcpuMaximum(64)
.build())
.orientation("balanced")
.fallbackToOndemand(false)
.cpuCredits("unlimited")
.minimumInstanceLifetime(12)
.waitForCapacity(5)
.waitForCapacityTimeout(300)
.scalingStrategies(ElastigroupScalingStrategyArgs.builder()
.terminateAtEndOfBillingHour(true)
.terminationPolicy("default")
.build())
.scalingUpPolicies(ElastigroupScalingUpPolicyArgs.builder()
.policyName("Default Scaling Up Policy")
.metricName("DefaultQueuesDepth")
.statistic("average")
.unit("none")
.adjustment(1)
.namespace("custom")
.threshold(100)
.period(60)
.evaluationPeriods(5)
.cooldown(300)
.build())
.scalingDownPolicies(ElastigroupScalingDownPolicyArgs.builder()
.policyName("Default Scaling Down Policy")
.metricName("DefaultQueuesDepth")
.statistic("average")
.unit("none")
.adjustment(1)
.namespace("custom")
.threshold(10)
.period(60)
.evaluationPeriods(10)
.cooldown(300)
.build())
.tags(
ElastigroupTagArgs.builder()
.key("Env")
.value("production")
.build(),
ElastigroupTagArgs.builder()
.key("Name")
.value("default-production")
.build(),
ElastigroupTagArgs.builder()
.key("Project")
.value("app_v2")
.build())
.resourceTagSpecifications(ElastigroupResourceTagSpecificationArgs.builder()
.shouldTagEnis(true)
.shouldTagVolumes(true)
.shouldTagSnapshots(true)
.shouldTagAmis(true)
.build())
.logging(ElastigroupLoggingArgs.builder()
.export(ElastigroupLoggingExportArgs.builder()
.s3s(ElastigroupLoggingExportS3Args.builder()
.id("di-123456")
.build())
.build())
.build())
.build());
}
}
resources:
# Create an Elastigroup
default-elastigroup:
type: spotinst:aws:Elastigroup
properties:
name: default-elastigroup
description: created by Pulumi
product: Linux/UNIX
maxSize: 0
minSize: 0
desiredCapacity: 0
capacityUnit: weight
region: us-west-2
subnetIds:
- sb-123456
- sb-456789
imageId: ami-a27d8fda
iamInstanceProfile: iam-profile
keyName: my-key.ssh
securityGroups:
- sg-123456
userData: echo hello world
enableMonitoring: false
ebsOptimized: false
placementTenancy: default
metadataOptions:
httpTokens: optional
httpPutResponseHopLimit: 10
instanceMetadataTags: enabled
cpuOptions:
threadsPerCore: 1
instanceTypesOndemand: m3.2xlarge
instanceTypesSpots:
- m3.xlarge
- m3.2xlarge
instanceTypesPreferredSpots:
- m3.xlarge
onDemandTypes:
- c3.large
instanceTypesWeights:
- instanceType: m3.xlarge
weight: 10
- instanceType: m3.2xlarge
weight: 16
resourceRequirements:
- excludedInstanceFamilies:
- a
- m
excludedInstanceTypes:
- m3.large
excludedInstanceGenerations:
- '1'
- '2'
requiredGpuMinimum: 1
requiredGpuMaximum: 16
requiredMemoryMinimum: 1
requiredMemoryMaximum: 512
requiredVcpuMinimum: 1
requiredVcpuMaximum: 64
orientation: balanced
fallbackToOndemand: false
cpuCredits: unlimited
minimumInstanceLifetime: 12
waitForCapacity: 5
waitForCapacityTimeout: 300
scalingStrategies:
- terminateAtEndOfBillingHour: true
terminationPolicy: default
scalingUpPolicies:
- policyName: Default Scaling Up Policy
metricName: DefaultQueuesDepth
statistic: average
unit: none
adjustment: 1
namespace: custom
threshold: 100
period: 60
evaluationPeriods: 5
cooldown: 300
scalingDownPolicies:
- policyName: Default Scaling Down Policy
metricName: DefaultQueuesDepth
statistic: average
unit: none
adjustment: 1
namespace: custom
threshold: 10
period: 60
evaluationPeriods: 10
cooldown: 300
tags:
- key: Env
value: production
- key: Name
value: default-production
- key: Project
value: app_v2
resourceTagSpecifications:
- shouldTagEnis: true
shouldTagVolumes: true
shouldTagSnapshots: true
shouldTagAmis: true
logging:
export:
s3s:
- id: di-123456
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,
fallback_to_ondemand: Optional[bool] = None,
orientation: Optional[str] = None,
product: Optional[str] = None,
security_groups: Optional[Sequence[str]] = None,
availability_zones: Optional[Sequence[str]] = None,
block_devices_mode: Optional[str] = None,
capacity_unit: Optional[str] = None,
consider_od_pricing: Optional[bool] = None,
cpu_credits: Optional[str] = None,
cpu_options: Optional[ElastigroupCpuOptionsArgs] = None,
description: Optional[str] = None,
desired_capacity: Optional[int] = None,
draining_timeout: Optional[int] = None,
ebs_block_devices: Optional[Sequence[ElastigroupEbsBlockDeviceArgs]] = None,
ebs_optimized: Optional[bool] = None,
elastic_ips: Optional[Sequence[str]] = None,
elastic_load_balancers: Optional[Sequence[str]] = None,
enable_monitoring: Optional[bool] = None,
ephemeral_block_devices: Optional[Sequence[ElastigroupEphemeralBlockDeviceArgs]] = None,
health_check_grace_period: Optional[int] = None,
health_check_type: Optional[str] = None,
health_check_unhealthy_duration_before_replacement: Optional[int] = None,
iam_instance_profile: Optional[str] = None,
image_id: Optional[str] = None,
images: Optional[Sequence[ElastigroupImageArgs]] = None,
immediate_od_recover_threshold: Optional[int] = None,
instance_types_ondemand: Optional[str] = None,
instance_types_preferred_spots: Optional[Sequence[str]] = None,
instance_types_spots: Optional[Sequence[str]] = None,
instance_types_weights: Optional[Sequence[ElastigroupInstanceTypesWeightArgs]] = None,
integration_beanstalk: Optional[ElastigroupIntegrationBeanstalkArgs] = None,
integration_codedeploy: Optional[ElastigroupIntegrationCodedeployArgs] = None,
integration_docker_swarm: Optional[ElastigroupIntegrationDockerSwarmArgs] = None,
integration_ecs: Optional[ElastigroupIntegrationEcsArgs] = None,
integration_gitlab: Optional[ElastigroupIntegrationGitlabArgs] = None,
integration_kubernetes: Optional[ElastigroupIntegrationKubernetesArgs] = None,
integration_mesosphere: Optional[ElastigroupIntegrationMesosphereArgs] = None,
integration_nomad: Optional[ElastigroupIntegrationNomadArgs] = None,
integration_rancher: Optional[ElastigroupIntegrationRancherArgs] = None,
integration_route53: Optional[ElastigroupIntegrationRoute53Args] = None,
itfs: Optional[Sequence[ElastigroupItfArgs]] = None,
key_name: Optional[str] = None,
lifetime_period: Optional[str] = None,
logging: Optional[ElastigroupLoggingArgs] = None,
max_size: Optional[int] = None,
metadata_options: Optional[ElastigroupMetadataOptionsArgs] = None,
min_size: Optional[int] = None,
minimum_instance_lifetime: Optional[int] = None,
multiple_metrics: Optional[ElastigroupMultipleMetricsArgs] = None,
name: Optional[str] = None,
network_interfaces: Optional[Sequence[ElastigroupNetworkInterfaceArgs]] = None,
on_demand_types: Optional[Sequence[str]] = None,
ondemand_count: Optional[int] = None,
persist_block_devices: Optional[bool] = None,
persist_private_ip: Optional[bool] = None,
persist_root_device: Optional[bool] = None,
placement_tenancy: Optional[str] = None,
preferred_availability_zones: Optional[Sequence[str]] = None,
private_ips: Optional[Sequence[str]] = None,
region: Optional[str] = None,
resource_requirements: Optional[Sequence[ElastigroupResourceRequirementArgs]] = None,
resource_tag_specifications: Optional[Sequence[ElastigroupResourceTagSpecificationArgs]] = None,
revert_to_spot: Optional[ElastigroupRevertToSpotArgs] = None,
scaling_down_policies: Optional[Sequence[ElastigroupScalingDownPolicyArgs]] = None,
scaling_strategies: Optional[Sequence[ElastigroupScalingStrategyArgs]] = None,
scaling_target_policies: Optional[Sequence[ElastigroupScalingTargetPolicyArgs]] = None,
scaling_up_policies: Optional[Sequence[ElastigroupScalingUpPolicyArgs]] = None,
scheduled_tasks: Optional[Sequence[ElastigroupScheduledTaskArgs]] = None,
shutdown_script: Optional[str] = None,
signals: Optional[Sequence[ElastigroupSignalArgs]] = None,
spot_percentage: Optional[int] = None,
stateful_deallocation: Optional[ElastigroupStatefulDeallocationArgs] = None,
stateful_instance_actions: Optional[Sequence[ElastigroupStatefulInstanceActionArgs]] = None,
subnet_ids: Optional[Sequence[str]] = None,
tags: Optional[Sequence[ElastigroupTagArgs]] = None,
target_group_arns: Optional[Sequence[str]] = None,
update_policy: Optional[ElastigroupUpdatePolicyArgs] = None,
user_data: Optional[str] = None,
utilize_commitments: Optional[bool] = None,
utilize_reserved_instances: Optional[bool] = None,
wait_for_capacity: Optional[int] = None,
wait_for_capacity_timeout: 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:aws: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 elastigroupResource = new SpotInst.Aws.Elastigroup("elastigroupResource", new()
{
FallbackToOndemand = false,
Orientation = "string",
Product = "string",
SecurityGroups = new[]
{
"string",
},
AvailabilityZones = new[]
{
"string",
},
BlockDevicesMode = "string",
CapacityUnit = "string",
ConsiderOdPricing = false,
CpuCredits = "string",
CpuOptions = new SpotInst.Aws.Inputs.ElastigroupCpuOptionsArgs
{
ThreadsPerCore = 0,
},
Description = "string",
DesiredCapacity = 0,
DrainingTimeout = 0,
EbsBlockDevices = new[]
{
new SpotInst.Aws.Inputs.ElastigroupEbsBlockDeviceArgs
{
DeviceName = "string",
DeleteOnTermination = false,
Encrypted = false,
Iops = 0,
KmsKeyId = "string",
SnapshotId = "string",
Throughput = 0,
VolumeSize = 0,
VolumeType = "string",
},
},
EbsOptimized = false,
ElasticIps = new[]
{
"string",
},
ElasticLoadBalancers = new[]
{
"string",
},
EnableMonitoring = false,
EphemeralBlockDevices = new[]
{
new SpotInst.Aws.Inputs.ElastigroupEphemeralBlockDeviceArgs
{
DeviceName = "string",
VirtualName = "string",
},
},
HealthCheckGracePeriod = 0,
HealthCheckType = "string",
HealthCheckUnhealthyDurationBeforeReplacement = 0,
IamInstanceProfile = "string",
ImageId = "string",
Images = new[]
{
new SpotInst.Aws.Inputs.ElastigroupImageArgs
{
Images = new[]
{
new SpotInst.Aws.Inputs.ElastigroupImageImageArgs
{
Id = "string",
},
},
},
},
ImmediateOdRecoverThreshold = 0,
InstanceTypesOndemand = "string",
InstanceTypesPreferredSpots = new[]
{
"string",
},
InstanceTypesSpots = new[]
{
"string",
},
InstanceTypesWeights = new[]
{
new SpotInst.Aws.Inputs.ElastigroupInstanceTypesWeightArgs
{
InstanceType = "string",
Weight = 0,
},
},
IntegrationBeanstalk = new SpotInst.Aws.Inputs.ElastigroupIntegrationBeanstalkArgs
{
DeploymentPreferences = new SpotInst.Aws.Inputs.ElastigroupIntegrationBeanstalkDeploymentPreferencesArgs
{
AutomaticRoll = false,
BatchSizePercentage = 0,
GracePeriod = 0,
Strategy = new SpotInst.Aws.Inputs.ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategyArgs
{
Action = "string",
ShouldDrainInstances = false,
},
},
EnvironmentId = "string",
ManagedActions = new SpotInst.Aws.Inputs.ElastigroupIntegrationBeanstalkManagedActionsArgs
{
PlatformUpdate = new SpotInst.Aws.Inputs.ElastigroupIntegrationBeanstalkManagedActionsPlatformUpdateArgs
{
PerformAt = "string",
TimeWindow = "string",
UpdateLevel = "string",
},
},
},
IntegrationCodedeploy = new SpotInst.Aws.Inputs.ElastigroupIntegrationCodedeployArgs
{
CleanupOnFailure = false,
DeploymentGroups = new[]
{
new SpotInst.Aws.Inputs.ElastigroupIntegrationCodedeployDeploymentGroupArgs
{
ApplicationName = "string",
DeploymentGroupName = "string",
},
},
TerminateInstanceOnFailure = false,
},
IntegrationDockerSwarm = new SpotInst.Aws.Inputs.ElastigroupIntegrationDockerSwarmArgs
{
MasterHost = "string",
MasterPort = 0,
AutoscaleCooldown = 0,
AutoscaleDown = new SpotInst.Aws.Inputs.ElastigroupIntegrationDockerSwarmAutoscaleDownArgs
{
EvaluationPeriods = 0,
MaxScaleDownPercentage = 0,
},
AutoscaleHeadroom = new SpotInst.Aws.Inputs.ElastigroupIntegrationDockerSwarmAutoscaleHeadroomArgs
{
CpuPerUnit = 0,
MemoryPerUnit = 0,
NumOfUnits = 0,
},
AutoscaleIsEnabled = false,
},
IntegrationEcs = new SpotInst.Aws.Inputs.ElastigroupIntegrationEcsArgs
{
ClusterName = "string",
AutoscaleAttributes = new[]
{
new SpotInst.Aws.Inputs.ElastigroupIntegrationEcsAutoscaleAttributeArgs
{
Key = "string",
Value = "string",
},
},
AutoscaleCooldown = 0,
AutoscaleDown = new SpotInst.Aws.Inputs.ElastigroupIntegrationEcsAutoscaleDownArgs
{
EvaluationPeriods = 0,
MaxScaleDownPercentage = 0,
},
AutoscaleHeadroom = new SpotInst.Aws.Inputs.ElastigroupIntegrationEcsAutoscaleHeadroomArgs
{
CpuPerUnit = 0,
MemoryPerUnit = 0,
NumOfUnits = 0,
},
AutoscaleIsAutoConfig = false,
AutoscaleIsEnabled = false,
AutoscaleScaleDownNonServiceTasks = false,
Batch = new SpotInst.Aws.Inputs.ElastigroupIntegrationEcsBatchArgs
{
JobQueueNames = new[]
{
"string",
},
},
},
IntegrationGitlab = new SpotInst.Aws.Inputs.ElastigroupIntegrationGitlabArgs
{
Runner = new SpotInst.Aws.Inputs.ElastigroupIntegrationGitlabRunnerArgs
{
IsEnabled = false,
},
},
IntegrationKubernetes = new SpotInst.Aws.Inputs.ElastigroupIntegrationKubernetesArgs
{
ApiServer = "string",
AutoscaleCooldown = 0,
AutoscaleDown = new SpotInst.Aws.Inputs.ElastigroupIntegrationKubernetesAutoscaleDownArgs
{
EvaluationPeriods = 0,
MaxScaleDownPercentage = 0,
},
AutoscaleHeadroom = new SpotInst.Aws.Inputs.ElastigroupIntegrationKubernetesAutoscaleHeadroomArgs
{
CpuPerUnit = 0,
MemoryPerUnit = 0,
NumOfUnits = 0,
},
AutoscaleIsAutoConfig = false,
AutoscaleIsEnabled = false,
AutoscaleLabels = new[]
{
new SpotInst.Aws.Inputs.ElastigroupIntegrationKubernetesAutoscaleLabelArgs
{
Key = "string",
Value = "string",
},
},
ClusterIdentifier = "string",
IntegrationMode = "string",
Token = "string",
},
IntegrationMesosphere = new SpotInst.Aws.Inputs.ElastigroupIntegrationMesosphereArgs
{
ApiServer = "string",
},
IntegrationNomad = new SpotInst.Aws.Inputs.ElastigroupIntegrationNomadArgs
{
MasterHost = "string",
MasterPort = 0,
AclToken = "string",
AutoscaleConstraints = new[]
{
new SpotInst.Aws.Inputs.ElastigroupIntegrationNomadAutoscaleConstraintArgs
{
Key = "string",
Value = "string",
},
},
AutoscaleCooldown = 0,
AutoscaleDown = new SpotInst.Aws.Inputs.ElastigroupIntegrationNomadAutoscaleDownArgs
{
EvaluationPeriods = 0,
},
AutoscaleHeadroom = new SpotInst.Aws.Inputs.ElastigroupIntegrationNomadAutoscaleHeadroomArgs
{
CpuPerUnit = 0,
MemoryPerUnit = 0,
NumOfUnits = 0,
},
AutoscaleIsEnabled = false,
},
IntegrationRancher = new SpotInst.Aws.Inputs.ElastigroupIntegrationRancherArgs
{
AccessKey = "string",
MasterHost = "string",
SecretKey = "string",
Version = "string",
},
IntegrationRoute53 = new SpotInst.Aws.Inputs.ElastigroupIntegrationRoute53Args
{
Domains = new[]
{
new SpotInst.Aws.Inputs.ElastigroupIntegrationRoute53DomainArgs
{
HostedZoneId = "string",
RecordSets = new[]
{
new SpotInst.Aws.Inputs.ElastigroupIntegrationRoute53DomainRecordSetArgs
{
Name = "string",
UsePublicDns = false,
UsePublicIp = false,
},
},
RecordSetType = "string",
SpotinstAcctId = "string",
},
},
},
Itfs = new[]
{
new SpotInst.Aws.Inputs.ElastigroupItfArgs
{
FixedTargetGroups = false,
LoadBalancers = new[]
{
new SpotInst.Aws.Inputs.ElastigroupItfLoadBalancerArgs
{
ListenerRules = new[]
{
new SpotInst.Aws.Inputs.ElastigroupItfLoadBalancerListenerRuleArgs
{
RuleArn = "string",
StaticTargetGroup = new SpotInst.Aws.Inputs.ElastigroupItfLoadBalancerListenerRuleStaticTargetGroupArgs
{
Arn = "string",
Percentage = 0,
},
},
},
LoadBalancerArn = "string",
},
},
TargetGroupConfigs = new[]
{
new SpotInst.Aws.Inputs.ElastigroupItfTargetGroupConfigArgs
{
Port = 0,
HealthCheckPath = "string",
VpcId = "string",
Protocol = "string",
Matchers = new[]
{
new SpotInst.Aws.Inputs.ElastigroupItfTargetGroupConfigMatcherArgs
{
GrpcCode = "string",
HttpCode = "string",
},
},
HealthyThresholdCount = 0,
HealthCheckIntervalSeconds = 0,
HealthCheckTimeoutSeconds = 0,
HealthCheckProtocol = "string",
ProtocolVersion = "string",
Tags = new[]
{
new SpotInst.Aws.Inputs.ElastigroupItfTargetGroupConfigTagArgs
{
TagKey = "string",
TagValue = "string",
},
},
UnhealthyThresholdCount = 0,
HealthCheckPort = "string",
},
},
WeightStrategy = "string",
DefaultStaticTargetGroup = new SpotInst.Aws.Inputs.ElastigroupItfDefaultStaticTargetGroupArgs
{
Arn = "string",
Percentage = 0,
},
MigrationHealthinessThreshold = 0,
},
},
KeyName = "string",
LifetimePeriod = "string",
Logging = new SpotInst.Aws.Inputs.ElastigroupLoggingArgs
{
Export = new SpotInst.Aws.Inputs.ElastigroupLoggingExportArgs
{
S3s = new[]
{
new SpotInst.Aws.Inputs.ElastigroupLoggingExportS3Args
{
Id = "string",
},
},
},
},
MaxSize = 0,
MetadataOptions = new SpotInst.Aws.Inputs.ElastigroupMetadataOptionsArgs
{
HttpTokens = "string",
HttpPutResponseHopLimit = 0,
InstanceMetadataTags = "string",
},
MinSize = 0,
MinimumInstanceLifetime = 0,
MultipleMetrics = new SpotInst.Aws.Inputs.ElastigroupMultipleMetricsArgs
{
Expressions = new[]
{
new SpotInst.Aws.Inputs.ElastigroupMultipleMetricsExpressionArgs
{
Expression = "string",
Name = "string",
},
},
Metrics = new[]
{
new SpotInst.Aws.Inputs.ElastigroupMultipleMetricsMetricArgs
{
MetricName = "string",
Name = "string",
Namespace = "string",
Dimensions = new[]
{
new SpotInst.Aws.Inputs.ElastigroupMultipleMetricsMetricDimensionArgs
{
Name = "string",
Value = "string",
},
},
ExtendedStatistic = "string",
Statistic = "string",
Unit = "string",
},
},
},
Name = "string",
NetworkInterfaces = new[]
{
new SpotInst.Aws.Inputs.ElastigroupNetworkInterfaceArgs
{
DeviceIndex = "string",
AssociateIpv6Address = false,
AssociatePublicIpAddress = false,
DeleteOnTermination = false,
Description = "string",
NetworkInterfaceId = "string",
PrivateIpAddress = "string",
SecondaryPrivateIpAddressCount = "string",
},
},
OnDemandTypes = new[]
{
"string",
},
OndemandCount = 0,
PersistBlockDevices = false,
PersistPrivateIp = false,
PersistRootDevice = false,
PlacementTenancy = "string",
PreferredAvailabilityZones = new[]
{
"string",
},
PrivateIps = new[]
{
"string",
},
Region = "string",
ResourceRequirements = new[]
{
new SpotInst.Aws.Inputs.ElastigroupResourceRequirementArgs
{
RequiredMemoryMaximum = 0,
RequiredMemoryMinimum = 0,
RequiredVcpuMaximum = 0,
RequiredVcpuMinimum = 0,
ExcludedInstanceFamilies = new[]
{
"string",
},
ExcludedInstanceGenerations = new[]
{
"string",
},
ExcludedInstanceTypes = new[]
{
"string",
},
RequiredGpuMaximum = 0,
RequiredGpuMinimum = 0,
},
},
ResourceTagSpecifications = new[]
{
new SpotInst.Aws.Inputs.ElastigroupResourceTagSpecificationArgs
{
ShouldTagAmis = false,
ShouldTagEnis = false,
ShouldTagSnapshots = false,
ShouldTagVolumes = false,
},
},
RevertToSpot = new SpotInst.Aws.Inputs.ElastigroupRevertToSpotArgs
{
PerformAt = "string",
TimeWindows = new[]
{
"string",
},
},
ScalingDownPolicies = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingDownPolicyArgs
{
MetricName = "string",
PolicyName = "string",
Namespace = "string",
Minimum = "string",
Operator = "string",
IsEnabled = false,
MaxTargetCapacity = "string",
Maximum = "string",
Dimensions = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingDownPolicyDimensionArgs
{
Name = "string",
Value = "string",
},
},
MinTargetCapacity = "string",
ActionType = "string",
Cooldown = 0,
EvaluationPeriods = 0,
Period = 0,
Adjustment = "string",
Source = "string",
Statistic = "string",
StepAdjustments = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingDownPolicyStepAdjustmentArgs
{
Action = new SpotInst.Aws.Inputs.ElastigroupScalingDownPolicyStepAdjustmentActionArgs
{
Type = "string",
Adjustment = "string",
MaxTargetCapacity = "string",
Maximum = "string",
MinTargetCapacity = "string",
Minimum = "string",
Target = "string",
},
Threshold = 0,
},
},
Target = "string",
Threshold = 0,
Unit = "string",
},
},
ScalingStrategies = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingStrategyArgs
{
TerminateAtEndOfBillingHour = false,
TerminationPolicy = "string",
},
},
ScalingTargetPolicies = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingTargetPolicyArgs
{
MetricName = "string",
Target = 0,
PolicyName = "string",
Namespace = "string",
Period = 0,
MaxCapacityPerScale = "string",
Cooldown = 0,
EvaluationPeriods = 0,
PredictiveMode = "string",
Source = "string",
Statistic = "string",
Dimensions = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingTargetPolicyDimensionArgs
{
Name = "string",
Value = "string",
},
},
Unit = "string",
},
},
ScalingUpPolicies = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingUpPolicyArgs
{
MetricName = "string",
PolicyName = "string",
Namespace = "string",
Minimum = "string",
Operator = "string",
IsEnabled = false,
MaxTargetCapacity = "string",
Maximum = "string",
Dimensions = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingUpPolicyDimensionArgs
{
Name = "string",
Value = "string",
},
},
MinTargetCapacity = "string",
ActionType = "string",
Cooldown = 0,
EvaluationPeriods = 0,
Period = 0,
Adjustment = "string",
Source = "string",
Statistic = "string",
StepAdjustments = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScalingUpPolicyStepAdjustmentArgs
{
Action = new SpotInst.Aws.Inputs.ElastigroupScalingUpPolicyStepAdjustmentActionArgs
{
Type = "string",
Adjustment = "string",
MaxTargetCapacity = "string",
Maximum = "string",
MinTargetCapacity = "string",
Minimum = "string",
Target = "string",
},
Threshold = 0,
},
},
Target = "string",
Threshold = 0,
Unit = "string",
},
},
ScheduledTasks = new[]
{
new SpotInst.Aws.Inputs.ElastigroupScheduledTaskArgs
{
TaskType = "string",
IsEnabled = false,
MinCapacity = "string",
CronExpression = "string",
Frequency = "string",
GracePeriod = "string",
Adjustment = "string",
MaxCapacity = "string",
BatchSizePercentage = "string",
ScaleMaxCapacity = "string",
ScaleMinCapacity = "string",
ScaleTargetCapacity = "string",
StartTime = "string",
TargetCapacity = "string",
AdjustmentPercentage = "string",
},
},
ShutdownScript = "string",
Signals = new[]
{
new SpotInst.Aws.Inputs.ElastigroupSignalArgs
{
Name = "string",
Timeout = 0,
},
},
SpotPercentage = 0,
StatefulDeallocation = new SpotInst.Aws.Inputs.ElastigroupStatefulDeallocationArgs
{
ShouldDeleteImages = false,
ShouldDeleteNetworkInterfaces = false,
ShouldDeleteSnapshots = false,
ShouldDeleteVolumes = false,
},
StatefulInstanceActions = new[]
{
new SpotInst.Aws.Inputs.ElastigroupStatefulInstanceActionArgs
{
StatefulInstanceId = "string",
Type = "string",
},
},
SubnetIds = new[]
{
"string",
},
Tags = new[]
{
new SpotInst.Aws.Inputs.ElastigroupTagArgs
{
Key = "string",
Value = "string",
},
},
TargetGroupArns = new[]
{
"string",
},
UpdatePolicy = new SpotInst.Aws.Inputs.ElastigroupUpdatePolicyArgs
{
ShouldResumeStateful = false,
ShouldRoll = false,
AutoApplyTags = false,
RollConfig = new SpotInst.Aws.Inputs.ElastigroupUpdatePolicyRollConfigArgs
{
BatchSizePercentage = 0,
GracePeriod = 0,
HealthCheckType = "string",
Strategy = new SpotInst.Aws.Inputs.ElastigroupUpdatePolicyRollConfigStrategyArgs
{
Action = "string",
BatchMinHealthyPercentage = 0,
OnFailure = new SpotInst.Aws.Inputs.ElastigroupUpdatePolicyRollConfigStrategyOnFailureArgs
{
ActionType = "string",
BatchNum = 0,
DrainingTimeout = 0,
ShouldDecrementTargetCapacity = false,
ShouldHandleAllBatches = false,
},
ShouldDrainInstances = false,
},
WaitForRollPercentage = 0,
WaitForRollTimeout = 0,
},
},
UserData = "string",
UtilizeCommitments = false,
UtilizeReservedInstances = false,
WaitForCapacity = 0,
WaitForCapacityTimeout = 0,
});
example, err := aws.NewElastigroup(ctx, "elastigroupResource", &aws.ElastigroupArgs{
FallbackToOndemand: pulumi.Bool(false),
Orientation: pulumi.String("string"),
Product: pulumi.String("string"),
SecurityGroups: pulumi.StringArray{
pulumi.String("string"),
},
AvailabilityZones: pulumi.StringArray{
pulumi.String("string"),
},
BlockDevicesMode: pulumi.String("string"),
CapacityUnit: pulumi.String("string"),
ConsiderOdPricing: pulumi.Bool(false),
CpuCredits: pulumi.String("string"),
CpuOptions: &aws.ElastigroupCpuOptionsArgs{
ThreadsPerCore: pulumi.Int(0),
},
Description: pulumi.String("string"),
DesiredCapacity: pulumi.Int(0),
DrainingTimeout: pulumi.Int(0),
EbsBlockDevices: aws.ElastigroupEbsBlockDeviceArray{
&aws.ElastigroupEbsBlockDeviceArgs{
DeviceName: pulumi.String("string"),
DeleteOnTermination: pulumi.Bool(false),
Encrypted: pulumi.Bool(false),
Iops: pulumi.Int(0),
KmsKeyId: pulumi.String("string"),
SnapshotId: pulumi.String("string"),
Throughput: pulumi.Int(0),
VolumeSize: pulumi.Int(0),
VolumeType: pulumi.String("string"),
},
},
EbsOptimized: pulumi.Bool(false),
ElasticIps: pulumi.StringArray{
pulumi.String("string"),
},
ElasticLoadBalancers: pulumi.StringArray{
pulumi.String("string"),
},
EnableMonitoring: pulumi.Bool(false),
EphemeralBlockDevices: aws.ElastigroupEphemeralBlockDeviceArray{
&aws.ElastigroupEphemeralBlockDeviceArgs{
DeviceName: pulumi.String("string"),
VirtualName: pulumi.String("string"),
},
},
HealthCheckGracePeriod: pulumi.Int(0),
HealthCheckType: pulumi.String("string"),
HealthCheckUnhealthyDurationBeforeReplacement: pulumi.Int(0),
IamInstanceProfile: pulumi.String("string"),
ImageId: pulumi.String("string"),
Images: aws.ElastigroupImageArray{
&aws.ElastigroupImageArgs{
Images: aws.ElastigroupImageImageArray{
&aws.ElastigroupImageImageArgs{
Id: pulumi.String("string"),
},
},
},
},
ImmediateOdRecoverThreshold: pulumi.Int(0),
InstanceTypesOndemand: pulumi.String("string"),
InstanceTypesPreferredSpots: pulumi.StringArray{
pulumi.String("string"),
},
InstanceTypesSpots: pulumi.StringArray{
pulumi.String("string"),
},
InstanceTypesWeights: aws.ElastigroupInstanceTypesWeightArray{
&aws.ElastigroupInstanceTypesWeightArgs{
InstanceType: pulumi.String("string"),
Weight: pulumi.Int(0),
},
},
IntegrationBeanstalk: &aws.ElastigroupIntegrationBeanstalkArgs{
DeploymentPreferences: &aws.ElastigroupIntegrationBeanstalkDeploymentPreferencesArgs{
AutomaticRoll: pulumi.Bool(false),
BatchSizePercentage: pulumi.Int(0),
GracePeriod: pulumi.Int(0),
Strategy: &aws.ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategyArgs{
Action: pulumi.String("string"),
ShouldDrainInstances: pulumi.Bool(false),
},
},
EnvironmentId: pulumi.String("string"),
ManagedActions: &aws.ElastigroupIntegrationBeanstalkManagedActionsArgs{
PlatformUpdate: &aws.ElastigroupIntegrationBeanstalkManagedActionsPlatformUpdateArgs{
PerformAt: pulumi.String("string"),
TimeWindow: pulumi.String("string"),
UpdateLevel: pulumi.String("string"),
},
},
},
IntegrationCodedeploy: &aws.ElastigroupIntegrationCodedeployArgs{
CleanupOnFailure: pulumi.Bool(false),
DeploymentGroups: aws.ElastigroupIntegrationCodedeployDeploymentGroupArray{
&aws.ElastigroupIntegrationCodedeployDeploymentGroupArgs{
ApplicationName: pulumi.String("string"),
DeploymentGroupName: pulumi.String("string"),
},
},
TerminateInstanceOnFailure: pulumi.Bool(false),
},
IntegrationDockerSwarm: &aws.ElastigroupIntegrationDockerSwarmArgs{
MasterHost: pulumi.String("string"),
MasterPort: pulumi.Int(0),
AutoscaleCooldown: pulumi.Int(0),
AutoscaleDown: &aws.ElastigroupIntegrationDockerSwarmAutoscaleDownArgs{
EvaluationPeriods: pulumi.Int(0),
MaxScaleDownPercentage: pulumi.Float64(0),
},
AutoscaleHeadroom: &aws.ElastigroupIntegrationDockerSwarmAutoscaleHeadroomArgs{
CpuPerUnit: pulumi.Int(0),
MemoryPerUnit: pulumi.Int(0),
NumOfUnits: pulumi.Int(0),
},
AutoscaleIsEnabled: pulumi.Bool(false),
},
IntegrationEcs: &aws.ElastigroupIntegrationEcsArgs{
ClusterName: pulumi.String("string"),
AutoscaleAttributes: aws.ElastigroupIntegrationEcsAutoscaleAttributeArray{
&aws.ElastigroupIntegrationEcsAutoscaleAttributeArgs{
Key: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
AutoscaleCooldown: pulumi.Int(0),
AutoscaleDown: &aws.ElastigroupIntegrationEcsAutoscaleDownArgs{
EvaluationPeriods: pulumi.Int(0),
MaxScaleDownPercentage: pulumi.Float64(0),
},
AutoscaleHeadroom: &aws.ElastigroupIntegrationEcsAutoscaleHeadroomArgs{
CpuPerUnit: pulumi.Int(0),
MemoryPerUnit: pulumi.Int(0),
NumOfUnits: pulumi.Int(0),
},
AutoscaleIsAutoConfig: pulumi.Bool(false),
AutoscaleIsEnabled: pulumi.Bool(false),
AutoscaleScaleDownNonServiceTasks: pulumi.Bool(false),
Batch: &aws.ElastigroupIntegrationEcsBatchArgs{
JobQueueNames: pulumi.StringArray{
pulumi.String("string"),
},
},
},
IntegrationGitlab: &aws.ElastigroupIntegrationGitlabArgs{
Runner: &aws.ElastigroupIntegrationGitlabRunnerArgs{
IsEnabled: pulumi.Bool(false),
},
},
IntegrationKubernetes: &aws.ElastigroupIntegrationKubernetesArgs{
ApiServer: pulumi.String("string"),
AutoscaleCooldown: pulumi.Int(0),
AutoscaleDown: &aws.ElastigroupIntegrationKubernetesAutoscaleDownArgs{
EvaluationPeriods: pulumi.Int(0),
MaxScaleDownPercentage: pulumi.Float64(0),
},
AutoscaleHeadroom: &aws.ElastigroupIntegrationKubernetesAutoscaleHeadroomArgs{
CpuPerUnit: pulumi.Int(0),
MemoryPerUnit: pulumi.Int(0),
NumOfUnits: pulumi.Int(0),
},
AutoscaleIsAutoConfig: pulumi.Bool(false),
AutoscaleIsEnabled: pulumi.Bool(false),
AutoscaleLabels: aws.ElastigroupIntegrationKubernetesAutoscaleLabelArray{
&aws.ElastigroupIntegrationKubernetesAutoscaleLabelArgs{
Key: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
ClusterIdentifier: pulumi.String("string"),
IntegrationMode: pulumi.String("string"),
Token: pulumi.String("string"),
},
IntegrationMesosphere: &aws.ElastigroupIntegrationMesosphereArgs{
ApiServer: pulumi.String("string"),
},
IntegrationNomad: &aws.ElastigroupIntegrationNomadArgs{
MasterHost: pulumi.String("string"),
MasterPort: pulumi.Int(0),
AclToken: pulumi.String("string"),
AutoscaleConstraints: aws.ElastigroupIntegrationNomadAutoscaleConstraintArray{
&aws.ElastigroupIntegrationNomadAutoscaleConstraintArgs{
Key: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
AutoscaleCooldown: pulumi.Int(0),
AutoscaleDown: &aws.ElastigroupIntegrationNomadAutoscaleDownArgs{
EvaluationPeriods: pulumi.Int(0),
},
AutoscaleHeadroom: &aws.ElastigroupIntegrationNomadAutoscaleHeadroomArgs{
CpuPerUnit: pulumi.Int(0),
MemoryPerUnit: pulumi.Int(0),
NumOfUnits: pulumi.Int(0),
},
AutoscaleIsEnabled: pulumi.Bool(false),
},
IntegrationRancher: &aws.ElastigroupIntegrationRancherArgs{
AccessKey: pulumi.String("string"),
MasterHost: pulumi.String("string"),
SecretKey: pulumi.String("string"),
Version: pulumi.String("string"),
},
IntegrationRoute53: &aws.ElastigroupIntegrationRoute53Args{
Domains: aws.ElastigroupIntegrationRoute53DomainArray{
&aws.ElastigroupIntegrationRoute53DomainArgs{
HostedZoneId: pulumi.String("string"),
RecordSets: aws.ElastigroupIntegrationRoute53DomainRecordSetArray{
&aws.ElastigroupIntegrationRoute53DomainRecordSetArgs{
Name: pulumi.String("string"),
UsePublicDns: pulumi.Bool(false),
UsePublicIp: pulumi.Bool(false),
},
},
RecordSetType: pulumi.String("string"),
SpotinstAcctId: pulumi.String("string"),
},
},
},
Itfs: aws.ElastigroupItfArray{
&aws.ElastigroupItfArgs{
FixedTargetGroups: pulumi.Bool(false),
LoadBalancers: aws.ElastigroupItfLoadBalancerArray{
&aws.ElastigroupItfLoadBalancerArgs{
ListenerRules: aws.ElastigroupItfLoadBalancerListenerRuleArray{
&aws.ElastigroupItfLoadBalancerListenerRuleArgs{
RuleArn: pulumi.String("string"),
StaticTargetGroup: &aws.ElastigroupItfLoadBalancerListenerRuleStaticTargetGroupArgs{
Arn: pulumi.String("string"),
Percentage: pulumi.Float64(0),
},
},
},
LoadBalancerArn: pulumi.String("string"),
},
},
TargetGroupConfigs: aws.ElastigroupItfTargetGroupConfigArray{
&aws.ElastigroupItfTargetGroupConfigArgs{
Port: pulumi.Int(0),
HealthCheckPath: pulumi.String("string"),
VpcId: pulumi.String("string"),
Protocol: pulumi.String("string"),
Matchers: aws.ElastigroupItfTargetGroupConfigMatcherArray{
&aws.ElastigroupItfTargetGroupConfigMatcherArgs{
GrpcCode: pulumi.String("string"),
HttpCode: pulumi.String("string"),
},
},
HealthyThresholdCount: pulumi.Int(0),
HealthCheckIntervalSeconds: pulumi.Int(0),
HealthCheckTimeoutSeconds: pulumi.Int(0),
HealthCheckProtocol: pulumi.String("string"),
ProtocolVersion: pulumi.String("string"),
Tags: aws.ElastigroupItfTargetGroupConfigTagArray{
&aws.ElastigroupItfTargetGroupConfigTagArgs{
TagKey: pulumi.String("string"),
TagValue: pulumi.String("string"),
},
},
UnhealthyThresholdCount: pulumi.Int(0),
HealthCheckPort: pulumi.String("string"),
},
},
WeightStrategy: pulumi.String("string"),
DefaultStaticTargetGroup: &aws.ElastigroupItfDefaultStaticTargetGroupArgs{
Arn: pulumi.String("string"),
Percentage: pulumi.Float64(0),
},
MigrationHealthinessThreshold: pulumi.Int(0),
},
},
KeyName: pulumi.String("string"),
LifetimePeriod: pulumi.String("string"),
Logging: &aws.ElastigroupLoggingArgs{
Export: &aws.ElastigroupLoggingExportArgs{
S3s: aws.ElastigroupLoggingExportS3Array{
&aws.ElastigroupLoggingExportS3Args{
Id: pulumi.String("string"),
},
},
},
},
MaxSize: pulumi.Int(0),
MetadataOptions: &aws.ElastigroupMetadataOptionsArgs{
HttpTokens: pulumi.String("string"),
HttpPutResponseHopLimit: pulumi.Int(0),
InstanceMetadataTags: pulumi.String("string"),
},
MinSize: pulumi.Int(0),
MinimumInstanceLifetime: pulumi.Int(0),
MultipleMetrics: &aws.ElastigroupMultipleMetricsArgs{
Expressions: aws.ElastigroupMultipleMetricsExpressionArray{
&aws.ElastigroupMultipleMetricsExpressionArgs{
Expression: pulumi.String("string"),
Name: pulumi.String("string"),
},
},
Metrics: aws.ElastigroupMultipleMetricsMetricArray{
&aws.ElastigroupMultipleMetricsMetricArgs{
MetricName: pulumi.String("string"),
Name: pulumi.String("string"),
Namespace: pulumi.String("string"),
Dimensions: aws.ElastigroupMultipleMetricsMetricDimensionArray{
&aws.ElastigroupMultipleMetricsMetricDimensionArgs{
Name: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
ExtendedStatistic: pulumi.String("string"),
Statistic: pulumi.String("string"),
Unit: pulumi.String("string"),
},
},
},
Name: pulumi.String("string"),
NetworkInterfaces: aws.ElastigroupNetworkInterfaceArray{
&aws.ElastigroupNetworkInterfaceArgs{
DeviceIndex: pulumi.String("string"),
AssociateIpv6Address: pulumi.Bool(false),
AssociatePublicIpAddress: pulumi.Bool(false),
DeleteOnTermination: pulumi.Bool(false),
Description: pulumi.String("string"),
NetworkInterfaceId: pulumi.String("string"),
PrivateIpAddress: pulumi.String("string"),
SecondaryPrivateIpAddressCount: pulumi.String("string"),
},
},
OnDemandTypes: pulumi.StringArray{
pulumi.String("string"),
},
OndemandCount: pulumi.Int(0),
PersistBlockDevices: pulumi.Bool(false),
PersistPrivateIp: pulumi.Bool(false),
PersistRootDevice: pulumi.Bool(false),
PlacementTenancy: pulumi.String("string"),
PreferredAvailabilityZones: pulumi.StringArray{
pulumi.String("string"),
},
PrivateIps: pulumi.StringArray{
pulumi.String("string"),
},
Region: pulumi.String("string"),
ResourceRequirements: aws.ElastigroupResourceRequirementArray{
&aws.ElastigroupResourceRequirementArgs{
RequiredMemoryMaximum: pulumi.Int(0),
RequiredMemoryMinimum: pulumi.Int(0),
RequiredVcpuMaximum: pulumi.Int(0),
RequiredVcpuMinimum: pulumi.Int(0),
ExcludedInstanceFamilies: pulumi.StringArray{
pulumi.String("string"),
},
ExcludedInstanceGenerations: pulumi.StringArray{
pulumi.String("string"),
},
ExcludedInstanceTypes: pulumi.StringArray{
pulumi.String("string"),
},
RequiredGpuMaximum: pulumi.Int(0),
RequiredGpuMinimum: pulumi.Int(0),
},
},
ResourceTagSpecifications: aws.ElastigroupResourceTagSpecificationArray{
&aws.ElastigroupResourceTagSpecificationArgs{
ShouldTagAmis: pulumi.Bool(false),
ShouldTagEnis: pulumi.Bool(false),
ShouldTagSnapshots: pulumi.Bool(false),
ShouldTagVolumes: pulumi.Bool(false),
},
},
RevertToSpot: &aws.ElastigroupRevertToSpotArgs{
PerformAt: pulumi.String("string"),
TimeWindows: pulumi.StringArray{
pulumi.String("string"),
},
},
ScalingDownPolicies: aws.ElastigroupScalingDownPolicyArray{
&aws.ElastigroupScalingDownPolicyArgs{
MetricName: pulumi.String("string"),
PolicyName: pulumi.String("string"),
Namespace: pulumi.String("string"),
Minimum: pulumi.String("string"),
Operator: pulumi.String("string"),
IsEnabled: pulumi.Bool(false),
MaxTargetCapacity: pulumi.String("string"),
Maximum: pulumi.String("string"),
Dimensions: aws.ElastigroupScalingDownPolicyDimensionArray{
&aws.ElastigroupScalingDownPolicyDimensionArgs{
Name: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
MinTargetCapacity: pulumi.String("string"),
ActionType: pulumi.String("string"),
Cooldown: pulumi.Int(0),
EvaluationPeriods: pulumi.Int(0),
Period: pulumi.Int(0),
Adjustment: pulumi.String("string"),
Source: pulumi.String("string"),
Statistic: pulumi.String("string"),
StepAdjustments: aws.ElastigroupScalingDownPolicyStepAdjustmentArray{
&aws.ElastigroupScalingDownPolicyStepAdjustmentArgs{
Action: &aws.ElastigroupScalingDownPolicyStepAdjustmentActionArgs{
Type: pulumi.String("string"),
Adjustment: pulumi.String("string"),
MaxTargetCapacity: pulumi.String("string"),
Maximum: pulumi.String("string"),
MinTargetCapacity: pulumi.String("string"),
Minimum: pulumi.String("string"),
Target: pulumi.String("string"),
},
Threshold: pulumi.Int(0),
},
},
Target: pulumi.String("string"),
Threshold: pulumi.Float64(0),
Unit: pulumi.String("string"),
},
},
ScalingStrategies: aws.ElastigroupScalingStrategyArray{
&aws.ElastigroupScalingStrategyArgs{
TerminateAtEndOfBillingHour: pulumi.Bool(false),
TerminationPolicy: pulumi.String("string"),
},
},
ScalingTargetPolicies: aws.ElastigroupScalingTargetPolicyArray{
&aws.ElastigroupScalingTargetPolicyArgs{
MetricName: pulumi.String("string"),
Target: pulumi.Float64(0),
PolicyName: pulumi.String("string"),
Namespace: pulumi.String("string"),
Period: pulumi.Int(0),
MaxCapacityPerScale: pulumi.String("string"),
Cooldown: pulumi.Int(0),
EvaluationPeriods: pulumi.Int(0),
PredictiveMode: pulumi.String("string"),
Source: pulumi.String("string"),
Statistic: pulumi.String("string"),
Dimensions: aws.ElastigroupScalingTargetPolicyDimensionArray{
&aws.ElastigroupScalingTargetPolicyDimensionArgs{
Name: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
Unit: pulumi.String("string"),
},
},
ScalingUpPolicies: aws.ElastigroupScalingUpPolicyArray{
&aws.ElastigroupScalingUpPolicyArgs{
MetricName: pulumi.String("string"),
PolicyName: pulumi.String("string"),
Namespace: pulumi.String("string"),
Minimum: pulumi.String("string"),
Operator: pulumi.String("string"),
IsEnabled: pulumi.Bool(false),
MaxTargetCapacity: pulumi.String("string"),
Maximum: pulumi.String("string"),
Dimensions: aws.ElastigroupScalingUpPolicyDimensionArray{
&aws.ElastigroupScalingUpPolicyDimensionArgs{
Name: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
MinTargetCapacity: pulumi.String("string"),
ActionType: pulumi.String("string"),
Cooldown: pulumi.Int(0),
EvaluationPeriods: pulumi.Int(0),
Period: pulumi.Int(0),
Adjustment: pulumi.String("string"),
Source: pulumi.String("string"),
Statistic: pulumi.String("string"),
StepAdjustments: aws.ElastigroupScalingUpPolicyStepAdjustmentArray{
&aws.ElastigroupScalingUpPolicyStepAdjustmentArgs{
Action: &aws.ElastigroupScalingUpPolicyStepAdjustmentActionArgs{
Type: pulumi.String("string"),
Adjustment: pulumi.String("string"),
MaxTargetCapacity: pulumi.String("string"),
Maximum: pulumi.String("string"),
MinTargetCapacity: pulumi.String("string"),
Minimum: pulumi.String("string"),
Target: pulumi.String("string"),
},
Threshold: pulumi.Int(0),
},
},
Target: pulumi.String("string"),
Threshold: pulumi.Float64(0),
Unit: pulumi.String("string"),
},
},
ScheduledTasks: aws.ElastigroupScheduledTaskArray{
&aws.ElastigroupScheduledTaskArgs{
TaskType: pulumi.String("string"),
IsEnabled: pulumi.Bool(false),
MinCapacity: pulumi.String("string"),
CronExpression: pulumi.String("string"),
Frequency: pulumi.String("string"),
GracePeriod: pulumi.String("string"),
Adjustment: pulumi.String("string"),
MaxCapacity: pulumi.String("string"),
BatchSizePercentage: pulumi.String("string"),
ScaleMaxCapacity: pulumi.String("string"),
ScaleMinCapacity: pulumi.String("string"),
ScaleTargetCapacity: pulumi.String("string"),
StartTime: pulumi.String("string"),
TargetCapacity: pulumi.String("string"),
AdjustmentPercentage: pulumi.String("string"),
},
},
ShutdownScript: pulumi.String("string"),
Signals: aws.ElastigroupSignalArray{
&aws.ElastigroupSignalArgs{
Name: pulumi.String("string"),
Timeout: pulumi.Int(0),
},
},
SpotPercentage: pulumi.Int(0),
StatefulDeallocation: &aws.ElastigroupStatefulDeallocationArgs{
ShouldDeleteImages: pulumi.Bool(false),
ShouldDeleteNetworkInterfaces: pulumi.Bool(false),
ShouldDeleteSnapshots: pulumi.Bool(false),
ShouldDeleteVolumes: pulumi.Bool(false),
},
StatefulInstanceActions: aws.ElastigroupStatefulInstanceActionArray{
&aws.ElastigroupStatefulInstanceActionArgs{
StatefulInstanceId: pulumi.String("string"),
Type: pulumi.String("string"),
},
},
SubnetIds: pulumi.StringArray{
pulumi.String("string"),
},
Tags: aws.ElastigroupTagArray{
&aws.ElastigroupTagArgs{
Key: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
TargetGroupArns: pulumi.StringArray{
pulumi.String("string"),
},
UpdatePolicy: &aws.ElastigroupUpdatePolicyArgs{
ShouldResumeStateful: pulumi.Bool(false),
ShouldRoll: pulumi.Bool(false),
AutoApplyTags: pulumi.Bool(false),
RollConfig: &aws.ElastigroupUpdatePolicyRollConfigArgs{
BatchSizePercentage: pulumi.Int(0),
GracePeriod: pulumi.Int(0),
HealthCheckType: pulumi.String("string"),
Strategy: &aws.ElastigroupUpdatePolicyRollConfigStrategyArgs{
Action: pulumi.String("string"),
BatchMinHealthyPercentage: pulumi.Int(0),
OnFailure: &aws.ElastigroupUpdatePolicyRollConfigStrategyOnFailureArgs{
ActionType: pulumi.String("string"),
BatchNum: pulumi.Int(0),
DrainingTimeout: pulumi.Int(0),
ShouldDecrementTargetCapacity: pulumi.Bool(false),
ShouldHandleAllBatches: pulumi.Bool(false),
},
ShouldDrainInstances: pulumi.Bool(false),
},
WaitForRollPercentage: pulumi.Float64(0),
WaitForRollTimeout: pulumi.Int(0),
},
},
UserData: pulumi.String("string"),
UtilizeCommitments: pulumi.Bool(false),
UtilizeReservedInstances: pulumi.Bool(false),
WaitForCapacity: pulumi.Int(0),
WaitForCapacityTimeout: pulumi.Int(0),
})
var elastigroupResource = new Elastigroup("elastigroupResource", ElastigroupArgs.builder()
.fallbackToOndemand(false)
.orientation("string")
.product("string")
.securityGroups("string")
.availabilityZones("string")
.blockDevicesMode("string")
.capacityUnit("string")
.considerOdPricing(false)
.cpuCredits("string")
.cpuOptions(ElastigroupCpuOptionsArgs.builder()
.threadsPerCore(0)
.build())
.description("string")
.desiredCapacity(0)
.drainingTimeout(0)
.ebsBlockDevices(ElastigroupEbsBlockDeviceArgs.builder()
.deviceName("string")
.deleteOnTermination(false)
.encrypted(false)
.iops(0)
.kmsKeyId("string")
.snapshotId("string")
.throughput(0)
.volumeSize(0)
.volumeType("string")
.build())
.ebsOptimized(false)
.elasticIps("string")
.elasticLoadBalancers("string")
.enableMonitoring(false)
.ephemeralBlockDevices(ElastigroupEphemeralBlockDeviceArgs.builder()
.deviceName("string")
.virtualName("string")
.build())
.healthCheckGracePeriod(0)
.healthCheckType("string")
.healthCheckUnhealthyDurationBeforeReplacement(0)
.iamInstanceProfile("string")
.imageId("string")
.images(ElastigroupImageArgs.builder()
.images(ElastigroupImageImageArgs.builder()
.id("string")
.build())
.build())
.immediateOdRecoverThreshold(0)
.instanceTypesOndemand("string")
.instanceTypesPreferredSpots("string")
.instanceTypesSpots("string")
.instanceTypesWeights(ElastigroupInstanceTypesWeightArgs.builder()
.instanceType("string")
.weight(0)
.build())
.integrationBeanstalk(ElastigroupIntegrationBeanstalkArgs.builder()
.deploymentPreferences(ElastigroupIntegrationBeanstalkDeploymentPreferencesArgs.builder()
.automaticRoll(false)
.batchSizePercentage(0)
.gracePeriod(0)
.strategy(ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategyArgs.builder()
.action("string")
.shouldDrainInstances(false)
.build())
.build())
.environmentId("string")
.managedActions(ElastigroupIntegrationBeanstalkManagedActionsArgs.builder()
.platformUpdate(ElastigroupIntegrationBeanstalkManagedActionsPlatformUpdateArgs.builder()
.performAt("string")
.timeWindow("string")
.updateLevel("string")
.build())
.build())
.build())
.integrationCodedeploy(ElastigroupIntegrationCodedeployArgs.builder()
.cleanupOnFailure(false)
.deploymentGroups(ElastigroupIntegrationCodedeployDeploymentGroupArgs.builder()
.applicationName("string")
.deploymentGroupName("string")
.build())
.terminateInstanceOnFailure(false)
.build())
.integrationDockerSwarm(ElastigroupIntegrationDockerSwarmArgs.builder()
.masterHost("string")
.masterPort(0)
.autoscaleCooldown(0)
.autoscaleDown(ElastigroupIntegrationDockerSwarmAutoscaleDownArgs.builder()
.evaluationPeriods(0)
.maxScaleDownPercentage(0)
.build())
.autoscaleHeadroom(ElastigroupIntegrationDockerSwarmAutoscaleHeadroomArgs.builder()
.cpuPerUnit(0)
.memoryPerUnit(0)
.numOfUnits(0)
.build())
.autoscaleIsEnabled(false)
.build())
.integrationEcs(ElastigroupIntegrationEcsArgs.builder()
.clusterName("string")
.autoscaleAttributes(ElastigroupIntegrationEcsAutoscaleAttributeArgs.builder()
.key("string")
.value("string")
.build())
.autoscaleCooldown(0)
.autoscaleDown(ElastigroupIntegrationEcsAutoscaleDownArgs.builder()
.evaluationPeriods(0)
.maxScaleDownPercentage(0)
.build())
.autoscaleHeadroom(ElastigroupIntegrationEcsAutoscaleHeadroomArgs.builder()
.cpuPerUnit(0)
.memoryPerUnit(0)
.numOfUnits(0)
.build())
.autoscaleIsAutoConfig(false)
.autoscaleIsEnabled(false)
.autoscaleScaleDownNonServiceTasks(false)
.batch(ElastigroupIntegrationEcsBatchArgs.builder()
.jobQueueNames("string")
.build())
.build())
.integrationGitlab(ElastigroupIntegrationGitlabArgs.builder()
.runner(ElastigroupIntegrationGitlabRunnerArgs.builder()
.isEnabled(false)
.build())
.build())
.integrationKubernetes(ElastigroupIntegrationKubernetesArgs.builder()
.apiServer("string")
.autoscaleCooldown(0)
.autoscaleDown(ElastigroupIntegrationKubernetesAutoscaleDownArgs.builder()
.evaluationPeriods(0)
.maxScaleDownPercentage(0)
.build())
.autoscaleHeadroom(ElastigroupIntegrationKubernetesAutoscaleHeadroomArgs.builder()
.cpuPerUnit(0)
.memoryPerUnit(0)
.numOfUnits(0)
.build())
.autoscaleIsAutoConfig(false)
.autoscaleIsEnabled(false)
.autoscaleLabels(ElastigroupIntegrationKubernetesAutoscaleLabelArgs.builder()
.key("string")
.value("string")
.build())
.clusterIdentifier("string")
.integrationMode("string")
.token("string")
.build())
.integrationMesosphere(ElastigroupIntegrationMesosphereArgs.builder()
.apiServer("string")
.build())
.integrationNomad(ElastigroupIntegrationNomadArgs.builder()
.masterHost("string")
.masterPort(0)
.aclToken("string")
.autoscaleConstraints(ElastigroupIntegrationNomadAutoscaleConstraintArgs.builder()
.key("string")
.value("string")
.build())
.autoscaleCooldown(0)
.autoscaleDown(ElastigroupIntegrationNomadAutoscaleDownArgs.builder()
.evaluationPeriods(0)
.build())
.autoscaleHeadroom(ElastigroupIntegrationNomadAutoscaleHeadroomArgs.builder()
.cpuPerUnit(0)
.memoryPerUnit(0)
.numOfUnits(0)
.build())
.autoscaleIsEnabled(false)
.build())
.integrationRancher(ElastigroupIntegrationRancherArgs.builder()
.accessKey("string")
.masterHost("string")
.secretKey("string")
.version("string")
.build())
.integrationRoute53(ElastigroupIntegrationRoute53Args.builder()
.domains(ElastigroupIntegrationRoute53DomainArgs.builder()
.hostedZoneId("string")
.recordSets(ElastigroupIntegrationRoute53DomainRecordSetArgs.builder()
.name("string")
.usePublicDns(false)
.usePublicIp(false)
.build())
.recordSetType("string")
.spotinstAcctId("string")
.build())
.build())
.itfs(ElastigroupItfArgs.builder()
.fixedTargetGroups(false)
.loadBalancers(ElastigroupItfLoadBalancerArgs.builder()
.listenerRules(ElastigroupItfLoadBalancerListenerRuleArgs.builder()
.ruleArn("string")
.staticTargetGroup(ElastigroupItfLoadBalancerListenerRuleStaticTargetGroupArgs.builder()
.arn("string")
.percentage(0)
.build())
.build())
.loadBalancerArn("string")
.build())
.targetGroupConfigs(ElastigroupItfTargetGroupConfigArgs.builder()
.port(0)
.healthCheckPath("string")
.vpcId("string")
.protocol("string")
.matchers(ElastigroupItfTargetGroupConfigMatcherArgs.builder()
.grpcCode("string")
.httpCode("string")
.build())
.healthyThresholdCount(0)
.healthCheckIntervalSeconds(0)
.healthCheckTimeoutSeconds(0)
.healthCheckProtocol("string")
.protocolVersion("string")
.tags(ElastigroupItfTargetGroupConfigTagArgs.builder()
.tagKey("string")
.tagValue("string")
.build())
.unhealthyThresholdCount(0)
.healthCheckPort("string")
.build())
.weightStrategy("string")
.defaultStaticTargetGroup(ElastigroupItfDefaultStaticTargetGroupArgs.builder()
.arn("string")
.percentage(0)
.build())
.migrationHealthinessThreshold(0)
.build())
.keyName("string")
.lifetimePeriod("string")
.logging(ElastigroupLoggingArgs.builder()
.export(ElastigroupLoggingExportArgs.builder()
.s3s(ElastigroupLoggingExportS3Args.builder()
.id("string")
.build())
.build())
.build())
.maxSize(0)
.metadataOptions(ElastigroupMetadataOptionsArgs.builder()
.httpTokens("string")
.httpPutResponseHopLimit(0)
.instanceMetadataTags("string")
.build())
.minSize(0)
.minimumInstanceLifetime(0)
.multipleMetrics(ElastigroupMultipleMetricsArgs.builder()
.expressions(ElastigroupMultipleMetricsExpressionArgs.builder()
.expression("string")
.name("string")
.build())
.metrics(ElastigroupMultipleMetricsMetricArgs.builder()
.metricName("string")
.name("string")
.namespace("string")
.dimensions(ElastigroupMultipleMetricsMetricDimensionArgs.builder()
.name("string")
.value("string")
.build())
.extendedStatistic("string")
.statistic("string")
.unit("string")
.build())
.build())
.name("string")
.networkInterfaces(ElastigroupNetworkInterfaceArgs.builder()
.deviceIndex("string")
.associateIpv6Address(false)
.associatePublicIpAddress(false)
.deleteOnTermination(false)
.description("string")
.networkInterfaceId("string")
.privateIpAddress("string")
.secondaryPrivateIpAddressCount("string")
.build())
.onDemandTypes("string")
.ondemandCount(0)
.persistBlockDevices(false)
.persistPrivateIp(false)
.persistRootDevice(false)
.placementTenancy("string")
.preferredAvailabilityZones("string")
.privateIps("string")
.region("string")
.resourceRequirements(ElastigroupResourceRequirementArgs.builder()
.requiredMemoryMaximum(0)
.requiredMemoryMinimum(0)
.requiredVcpuMaximum(0)
.requiredVcpuMinimum(0)
.excludedInstanceFamilies("string")
.excludedInstanceGenerations("string")
.excludedInstanceTypes("string")
.requiredGpuMaximum(0)
.requiredGpuMinimum(0)
.build())
.resourceTagSpecifications(ElastigroupResourceTagSpecificationArgs.builder()
.shouldTagAmis(false)
.shouldTagEnis(false)
.shouldTagSnapshots(false)
.shouldTagVolumes(false)
.build())
.revertToSpot(ElastigroupRevertToSpotArgs.builder()
.performAt("string")
.timeWindows("string")
.build())
.scalingDownPolicies(ElastigroupScalingDownPolicyArgs.builder()
.metricName("string")
.policyName("string")
.namespace("string")
.minimum("string")
.operator("string")
.isEnabled(false)
.maxTargetCapacity("string")
.maximum("string")
.dimensions(ElastigroupScalingDownPolicyDimensionArgs.builder()
.name("string")
.value("string")
.build())
.minTargetCapacity("string")
.actionType("string")
.cooldown(0)
.evaluationPeriods(0)
.period(0)
.adjustment("string")
.source("string")
.statistic("string")
.stepAdjustments(ElastigroupScalingDownPolicyStepAdjustmentArgs.builder()
.action(ElastigroupScalingDownPolicyStepAdjustmentActionArgs.builder()
.type("string")
.adjustment("string")
.maxTargetCapacity("string")
.maximum("string")
.minTargetCapacity("string")
.minimum("string")
.target("string")
.build())
.threshold(0)
.build())
.target("string")
.threshold(0)
.unit("string")
.build())
.scalingStrategies(ElastigroupScalingStrategyArgs.builder()
.terminateAtEndOfBillingHour(false)
.terminationPolicy("string")
.build())
.scalingTargetPolicies(ElastigroupScalingTargetPolicyArgs.builder()
.metricName("string")
.target(0)
.policyName("string")
.namespace("string")
.period(0)
.maxCapacityPerScale("string")
.cooldown(0)
.evaluationPeriods(0)
.predictiveMode("string")
.source("string")
.statistic("string")
.dimensions(ElastigroupScalingTargetPolicyDimensionArgs.builder()
.name("string")
.value("string")
.build())
.unit("string")
.build())
.scalingUpPolicies(ElastigroupScalingUpPolicyArgs.builder()
.metricName("string")
.policyName("string")
.namespace("string")
.minimum("string")
.operator("string")
.isEnabled(false)
.maxTargetCapacity("string")
.maximum("string")
.dimensions(ElastigroupScalingUpPolicyDimensionArgs.builder()
.name("string")
.value("string")
.build())
.minTargetCapacity("string")
.actionType("string")
.cooldown(0)
.evaluationPeriods(0)
.period(0)
.adjustment("string")
.source("string")
.statistic("string")
.stepAdjustments(ElastigroupScalingUpPolicyStepAdjustmentArgs.builder()
.action(ElastigroupScalingUpPolicyStepAdjustmentActionArgs.builder()
.type("string")
.adjustment("string")
.maxTargetCapacity("string")
.maximum("string")
.minTargetCapacity("string")
.minimum("string")
.target("string")
.build())
.threshold(0)
.build())
.target("string")
.threshold(0)
.unit("string")
.build())
.scheduledTasks(ElastigroupScheduledTaskArgs.builder()
.taskType("string")
.isEnabled(false)
.minCapacity("string")
.cronExpression("string")
.frequency("string")
.gracePeriod("string")
.adjustment("string")
.maxCapacity("string")
.batchSizePercentage("string")
.scaleMaxCapacity("string")
.scaleMinCapacity("string")
.scaleTargetCapacity("string")
.startTime("string")
.targetCapacity("string")
.adjustmentPercentage("string")
.build())
.shutdownScript("string")
.signals(ElastigroupSignalArgs.builder()
.name("string")
.timeout(0)
.build())
.spotPercentage(0)
.statefulDeallocation(ElastigroupStatefulDeallocationArgs.builder()
.shouldDeleteImages(false)
.shouldDeleteNetworkInterfaces(false)
.shouldDeleteSnapshots(false)
.shouldDeleteVolumes(false)
.build())
.statefulInstanceActions(ElastigroupStatefulInstanceActionArgs.builder()
.statefulInstanceId("string")
.type("string")
.build())
.subnetIds("string")
.tags(ElastigroupTagArgs.builder()
.key("string")
.value("string")
.build())
.targetGroupArns("string")
.updatePolicy(ElastigroupUpdatePolicyArgs.builder()
.shouldResumeStateful(false)
.shouldRoll(false)
.autoApplyTags(false)
.rollConfig(ElastigroupUpdatePolicyRollConfigArgs.builder()
.batchSizePercentage(0)
.gracePeriod(0)
.healthCheckType("string")
.strategy(ElastigroupUpdatePolicyRollConfigStrategyArgs.builder()
.action("string")
.batchMinHealthyPercentage(0)
.onFailure(ElastigroupUpdatePolicyRollConfigStrategyOnFailureArgs.builder()
.actionType("string")
.batchNum(0)
.drainingTimeout(0)
.shouldDecrementTargetCapacity(false)
.shouldHandleAllBatches(false)
.build())
.shouldDrainInstances(false)
.build())
.waitForRollPercentage(0)
.waitForRollTimeout(0)
.build())
.build())
.userData("string")
.utilizeCommitments(false)
.utilizeReservedInstances(false)
.waitForCapacity(0)
.waitForCapacityTimeout(0)
.build());
elastigroup_resource = spotinst.aws.Elastigroup("elastigroupResource",
fallback_to_ondemand=False,
orientation="string",
product="string",
security_groups=["string"],
availability_zones=["string"],
block_devices_mode="string",
capacity_unit="string",
consider_od_pricing=False,
cpu_credits="string",
cpu_options=spotinst.aws.ElastigroupCpuOptionsArgs(
threads_per_core=0,
),
description="string",
desired_capacity=0,
draining_timeout=0,
ebs_block_devices=[spotinst.aws.ElastigroupEbsBlockDeviceArgs(
device_name="string",
delete_on_termination=False,
encrypted=False,
iops=0,
kms_key_id="string",
snapshot_id="string",
throughput=0,
volume_size=0,
volume_type="string",
)],
ebs_optimized=False,
elastic_ips=["string"],
elastic_load_balancers=["string"],
enable_monitoring=False,
ephemeral_block_devices=[spotinst.aws.ElastigroupEphemeralBlockDeviceArgs(
device_name="string",
virtual_name="string",
)],
health_check_grace_period=0,
health_check_type="string",
health_check_unhealthy_duration_before_replacement=0,
iam_instance_profile="string",
image_id="string",
images=[spotinst.aws.ElastigroupImageArgs(
images=[spotinst.aws.ElastigroupImageImageArgs(
id="string",
)],
)],
immediate_od_recover_threshold=0,
instance_types_ondemand="string",
instance_types_preferred_spots=["string"],
instance_types_spots=["string"],
instance_types_weights=[spotinst.aws.ElastigroupInstanceTypesWeightArgs(
instance_type="string",
weight=0,
)],
integration_beanstalk=spotinst.aws.ElastigroupIntegrationBeanstalkArgs(
deployment_preferences=spotinst.aws.ElastigroupIntegrationBeanstalkDeploymentPreferencesArgs(
automatic_roll=False,
batch_size_percentage=0,
grace_period=0,
strategy=spotinst.aws.ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategyArgs(
action="string",
should_drain_instances=False,
),
),
environment_id="string",
managed_actions=spotinst.aws.ElastigroupIntegrationBeanstalkManagedActionsArgs(
platform_update=spotinst.aws.ElastigroupIntegrationBeanstalkManagedActionsPlatformUpdateArgs(
perform_at="string",
time_window="string",
update_level="string",
),
),
),
integration_codedeploy=spotinst.aws.ElastigroupIntegrationCodedeployArgs(
cleanup_on_failure=False,
deployment_groups=[spotinst.aws.ElastigroupIntegrationCodedeployDeploymentGroupArgs(
application_name="string",
deployment_group_name="string",
)],
terminate_instance_on_failure=False,
),
integration_docker_swarm=spotinst.aws.ElastigroupIntegrationDockerSwarmArgs(
master_host="string",
master_port=0,
autoscale_cooldown=0,
autoscale_down=spotinst.aws.ElastigroupIntegrationDockerSwarmAutoscaleDownArgs(
evaluation_periods=0,
max_scale_down_percentage=0,
),
autoscale_headroom=spotinst.aws.ElastigroupIntegrationDockerSwarmAutoscaleHeadroomArgs(
cpu_per_unit=0,
memory_per_unit=0,
num_of_units=0,
),
autoscale_is_enabled=False,
),
integration_ecs=spotinst.aws.ElastigroupIntegrationEcsArgs(
cluster_name="string",
autoscale_attributes=[spotinst.aws.ElastigroupIntegrationEcsAutoscaleAttributeArgs(
key="string",
value="string",
)],
autoscale_cooldown=0,
autoscale_down=spotinst.aws.ElastigroupIntegrationEcsAutoscaleDownArgs(
evaluation_periods=0,
max_scale_down_percentage=0,
),
autoscale_headroom=spotinst.aws.ElastigroupIntegrationEcsAutoscaleHeadroomArgs(
cpu_per_unit=0,
memory_per_unit=0,
num_of_units=0,
),
autoscale_is_auto_config=False,
autoscale_is_enabled=False,
autoscale_scale_down_non_service_tasks=False,
batch=spotinst.aws.ElastigroupIntegrationEcsBatchArgs(
job_queue_names=["string"],
),
),
integration_gitlab=spotinst.aws.ElastigroupIntegrationGitlabArgs(
runner=spotinst.aws.ElastigroupIntegrationGitlabRunnerArgs(
is_enabled=False,
),
),
integration_kubernetes=spotinst.aws.ElastigroupIntegrationKubernetesArgs(
api_server="string",
autoscale_cooldown=0,
autoscale_down=spotinst.aws.ElastigroupIntegrationKubernetesAutoscaleDownArgs(
evaluation_periods=0,
max_scale_down_percentage=0,
),
autoscale_headroom=spotinst.aws.ElastigroupIntegrationKubernetesAutoscaleHeadroomArgs(
cpu_per_unit=0,
memory_per_unit=0,
num_of_units=0,
),
autoscale_is_auto_config=False,
autoscale_is_enabled=False,
autoscale_labels=[spotinst.aws.ElastigroupIntegrationKubernetesAutoscaleLabelArgs(
key="string",
value="string",
)],
cluster_identifier="string",
integration_mode="string",
token="string",
),
integration_mesosphere=spotinst.aws.ElastigroupIntegrationMesosphereArgs(
api_server="string",
),
integration_nomad=spotinst.aws.ElastigroupIntegrationNomadArgs(
master_host="string",
master_port=0,
acl_token="string",
autoscale_constraints=[spotinst.aws.ElastigroupIntegrationNomadAutoscaleConstraintArgs(
key="string",
value="string",
)],
autoscale_cooldown=0,
autoscale_down=spotinst.aws.ElastigroupIntegrationNomadAutoscaleDownArgs(
evaluation_periods=0,
),
autoscale_headroom=spotinst.aws.ElastigroupIntegrationNomadAutoscaleHeadroomArgs(
cpu_per_unit=0,
memory_per_unit=0,
num_of_units=0,
),
autoscale_is_enabled=False,
),
integration_rancher=spotinst.aws.ElastigroupIntegrationRancherArgs(
access_key="string",
master_host="string",
secret_key="string",
version="string",
),
integration_route53=spotinst.aws.ElastigroupIntegrationRoute53Args(
domains=[spotinst.aws.ElastigroupIntegrationRoute53DomainArgs(
hosted_zone_id="string",
record_sets=[spotinst.aws.ElastigroupIntegrationRoute53DomainRecordSetArgs(
name="string",
use_public_dns=False,
use_public_ip=False,
)],
record_set_type="string",
spotinst_acct_id="string",
)],
),
itfs=[spotinst.aws.ElastigroupItfArgs(
fixed_target_groups=False,
load_balancers=[spotinst.aws.ElastigroupItfLoadBalancerArgs(
listener_rules=[spotinst.aws.ElastigroupItfLoadBalancerListenerRuleArgs(
rule_arn="string",
static_target_group=spotinst.aws.ElastigroupItfLoadBalancerListenerRuleStaticTargetGroupArgs(
arn="string",
percentage=0,
),
)],
load_balancer_arn="string",
)],
target_group_configs=[spotinst.aws.ElastigroupItfTargetGroupConfigArgs(
port=0,
health_check_path="string",
vpc_id="string",
protocol="string",
matchers=[spotinst.aws.ElastigroupItfTargetGroupConfigMatcherArgs(
grpc_code="string",
http_code="string",
)],
healthy_threshold_count=0,
health_check_interval_seconds=0,
health_check_timeout_seconds=0,
health_check_protocol="string",
protocol_version="string",
tags=[spotinst.aws.ElastigroupItfTargetGroupConfigTagArgs(
tag_key="string",
tag_value="string",
)],
unhealthy_threshold_count=0,
health_check_port="string",
)],
weight_strategy="string",
default_static_target_group=spotinst.aws.ElastigroupItfDefaultStaticTargetGroupArgs(
arn="string",
percentage=0,
),
migration_healthiness_threshold=0,
)],
key_name="string",
lifetime_period="string",
logging=spotinst.aws.ElastigroupLoggingArgs(
export=spotinst.aws.ElastigroupLoggingExportArgs(
s3s=[spotinst.aws.ElastigroupLoggingExportS3Args(
id="string",
)],
),
),
max_size=0,
metadata_options=spotinst.aws.ElastigroupMetadataOptionsArgs(
http_tokens="string",
http_put_response_hop_limit=0,
instance_metadata_tags="string",
),
min_size=0,
minimum_instance_lifetime=0,
multiple_metrics=spotinst.aws.ElastigroupMultipleMetricsArgs(
expressions=[spotinst.aws.ElastigroupMultipleMetricsExpressionArgs(
expression="string",
name="string",
)],
metrics=[spotinst.aws.ElastigroupMultipleMetricsMetricArgs(
metric_name="string",
name="string",
namespace="string",
dimensions=[spotinst.aws.ElastigroupMultipleMetricsMetricDimensionArgs(
name="string",
value="string",
)],
extended_statistic="string",
statistic="string",
unit="string",
)],
),
name="string",
network_interfaces=[spotinst.aws.ElastigroupNetworkInterfaceArgs(
device_index="string",
associate_ipv6_address=False,
associate_public_ip_address=False,
delete_on_termination=False,
description="string",
network_interface_id="string",
private_ip_address="string",
secondary_private_ip_address_count="string",
)],
on_demand_types=["string"],
ondemand_count=0,
persist_block_devices=False,
persist_private_ip=False,
persist_root_device=False,
placement_tenancy="string",
preferred_availability_zones=["string"],
private_ips=["string"],
region="string",
resource_requirements=[spotinst.aws.ElastigroupResourceRequirementArgs(
required_memory_maximum=0,
required_memory_minimum=0,
required_vcpu_maximum=0,
required_vcpu_minimum=0,
excluded_instance_families=["string"],
excluded_instance_generations=["string"],
excluded_instance_types=["string"],
required_gpu_maximum=0,
required_gpu_minimum=0,
)],
resource_tag_specifications=[spotinst.aws.ElastigroupResourceTagSpecificationArgs(
should_tag_amis=False,
should_tag_enis=False,
should_tag_snapshots=False,
should_tag_volumes=False,
)],
revert_to_spot=spotinst.aws.ElastigroupRevertToSpotArgs(
perform_at="string",
time_windows=["string"],
),
scaling_down_policies=[spotinst.aws.ElastigroupScalingDownPolicyArgs(
metric_name="string",
policy_name="string",
namespace="string",
minimum="string",
operator="string",
is_enabled=False,
max_target_capacity="string",
maximum="string",
dimensions=[spotinst.aws.ElastigroupScalingDownPolicyDimensionArgs(
name="string",
value="string",
)],
min_target_capacity="string",
action_type="string",
cooldown=0,
evaluation_periods=0,
period=0,
adjustment="string",
source="string",
statistic="string",
step_adjustments=[spotinst.aws.ElastigroupScalingDownPolicyStepAdjustmentArgs(
action=spotinst.aws.ElastigroupScalingDownPolicyStepAdjustmentActionArgs(
type="string",
adjustment="string",
max_target_capacity="string",
maximum="string",
min_target_capacity="string",
minimum="string",
target="string",
),
threshold=0,
)],
target="string",
threshold=0,
unit="string",
)],
scaling_strategies=[spotinst.aws.ElastigroupScalingStrategyArgs(
terminate_at_end_of_billing_hour=False,
termination_policy="string",
)],
scaling_target_policies=[spotinst.aws.ElastigroupScalingTargetPolicyArgs(
metric_name="string",
target=0,
policy_name="string",
namespace="string",
period=0,
max_capacity_per_scale="string",
cooldown=0,
evaluation_periods=0,
predictive_mode="string",
source="string",
statistic="string",
dimensions=[spotinst.aws.ElastigroupScalingTargetPolicyDimensionArgs(
name="string",
value="string",
)],
unit="string",
)],
scaling_up_policies=[spotinst.aws.ElastigroupScalingUpPolicyArgs(
metric_name="string",
policy_name="string",
namespace="string",
minimum="string",
operator="string",
is_enabled=False,
max_target_capacity="string",
maximum="string",
dimensions=[spotinst.aws.ElastigroupScalingUpPolicyDimensionArgs(
name="string",
value="string",
)],
min_target_capacity="string",
action_type="string",
cooldown=0,
evaluation_periods=0,
period=0,
adjustment="string",
source="string",
statistic="string",
step_adjustments=[spotinst.aws.ElastigroupScalingUpPolicyStepAdjustmentArgs(
action=spotinst.aws.ElastigroupScalingUpPolicyStepAdjustmentActionArgs(
type="string",
adjustment="string",
max_target_capacity="string",
maximum="string",
min_target_capacity="string",
minimum="string",
target="string",
),
threshold=0,
)],
target="string",
threshold=0,
unit="string",
)],
scheduled_tasks=[spotinst.aws.ElastigroupScheduledTaskArgs(
task_type="string",
is_enabled=False,
min_capacity="string",
cron_expression="string",
frequency="string",
grace_period="string",
adjustment="string",
max_capacity="string",
batch_size_percentage="string",
scale_max_capacity="string",
scale_min_capacity="string",
scale_target_capacity="string",
start_time="string",
target_capacity="string",
adjustment_percentage="string",
)],
shutdown_script="string",
signals=[spotinst.aws.ElastigroupSignalArgs(
name="string",
timeout=0,
)],
spot_percentage=0,
stateful_deallocation=spotinst.aws.ElastigroupStatefulDeallocationArgs(
should_delete_images=False,
should_delete_network_interfaces=False,
should_delete_snapshots=False,
should_delete_volumes=False,
),
stateful_instance_actions=[spotinst.aws.ElastigroupStatefulInstanceActionArgs(
stateful_instance_id="string",
type="string",
)],
subnet_ids=["string"],
tags=[spotinst.aws.ElastigroupTagArgs(
key="string",
value="string",
)],
target_group_arns=["string"],
update_policy=spotinst.aws.ElastigroupUpdatePolicyArgs(
should_resume_stateful=False,
should_roll=False,
auto_apply_tags=False,
roll_config=spotinst.aws.ElastigroupUpdatePolicyRollConfigArgs(
batch_size_percentage=0,
grace_period=0,
health_check_type="string",
strategy=spotinst.aws.ElastigroupUpdatePolicyRollConfigStrategyArgs(
action="string",
batch_min_healthy_percentage=0,
on_failure=spotinst.aws.ElastigroupUpdatePolicyRollConfigStrategyOnFailureArgs(
action_type="string",
batch_num=0,
draining_timeout=0,
should_decrement_target_capacity=False,
should_handle_all_batches=False,
),
should_drain_instances=False,
),
wait_for_roll_percentage=0,
wait_for_roll_timeout=0,
),
),
user_data="string",
utilize_commitments=False,
utilize_reserved_instances=False,
wait_for_capacity=0,
wait_for_capacity_timeout=0)
const elastigroupResource = new spotinst.aws.Elastigroup("elastigroupResource", {
fallbackToOndemand: false,
orientation: "string",
product: "string",
securityGroups: ["string"],
availabilityZones: ["string"],
blockDevicesMode: "string",
capacityUnit: "string",
considerOdPricing: false,
cpuCredits: "string",
cpuOptions: {
threadsPerCore: 0,
},
description: "string",
desiredCapacity: 0,
drainingTimeout: 0,
ebsBlockDevices: [{
deviceName: "string",
deleteOnTermination: false,
encrypted: false,
iops: 0,
kmsKeyId: "string",
snapshotId: "string",
throughput: 0,
volumeSize: 0,
volumeType: "string",
}],
ebsOptimized: false,
elasticIps: ["string"],
elasticLoadBalancers: ["string"],
enableMonitoring: false,
ephemeralBlockDevices: [{
deviceName: "string",
virtualName: "string",
}],
healthCheckGracePeriod: 0,
healthCheckType: "string",
healthCheckUnhealthyDurationBeforeReplacement: 0,
iamInstanceProfile: "string",
imageId: "string",
images: [{
images: [{
id: "string",
}],
}],
immediateOdRecoverThreshold: 0,
instanceTypesOndemand: "string",
instanceTypesPreferredSpots: ["string"],
instanceTypesSpots: ["string"],
instanceTypesWeights: [{
instanceType: "string",
weight: 0,
}],
integrationBeanstalk: {
deploymentPreferences: {
automaticRoll: false,
batchSizePercentage: 0,
gracePeriod: 0,
strategy: {
action: "string",
shouldDrainInstances: false,
},
},
environmentId: "string",
managedActions: {
platformUpdate: {
performAt: "string",
timeWindow: "string",
updateLevel: "string",
},
},
},
integrationCodedeploy: {
cleanupOnFailure: false,
deploymentGroups: [{
applicationName: "string",
deploymentGroupName: "string",
}],
terminateInstanceOnFailure: false,
},
integrationDockerSwarm: {
masterHost: "string",
masterPort: 0,
autoscaleCooldown: 0,
autoscaleDown: {
evaluationPeriods: 0,
maxScaleDownPercentage: 0,
},
autoscaleHeadroom: {
cpuPerUnit: 0,
memoryPerUnit: 0,
numOfUnits: 0,
},
autoscaleIsEnabled: false,
},
integrationEcs: {
clusterName: "string",
autoscaleAttributes: [{
key: "string",
value: "string",
}],
autoscaleCooldown: 0,
autoscaleDown: {
evaluationPeriods: 0,
maxScaleDownPercentage: 0,
},
autoscaleHeadroom: {
cpuPerUnit: 0,
memoryPerUnit: 0,
numOfUnits: 0,
},
autoscaleIsAutoConfig: false,
autoscaleIsEnabled: false,
autoscaleScaleDownNonServiceTasks: false,
batch: {
jobQueueNames: ["string"],
},
},
integrationGitlab: {
runner: {
isEnabled: false,
},
},
integrationKubernetes: {
apiServer: "string",
autoscaleCooldown: 0,
autoscaleDown: {
evaluationPeriods: 0,
maxScaleDownPercentage: 0,
},
autoscaleHeadroom: {
cpuPerUnit: 0,
memoryPerUnit: 0,
numOfUnits: 0,
},
autoscaleIsAutoConfig: false,
autoscaleIsEnabled: false,
autoscaleLabels: [{
key: "string",
value: "string",
}],
clusterIdentifier: "string",
integrationMode: "string",
token: "string",
},
integrationMesosphere: {
apiServer: "string",
},
integrationNomad: {
masterHost: "string",
masterPort: 0,
aclToken: "string",
autoscaleConstraints: [{
key: "string",
value: "string",
}],
autoscaleCooldown: 0,
autoscaleDown: {
evaluationPeriods: 0,
},
autoscaleHeadroom: {
cpuPerUnit: 0,
memoryPerUnit: 0,
numOfUnits: 0,
},
autoscaleIsEnabled: false,
},
integrationRancher: {
accessKey: "string",
masterHost: "string",
secretKey: "string",
version: "string",
},
integrationRoute53: {
domains: [{
hostedZoneId: "string",
recordSets: [{
name: "string",
usePublicDns: false,
usePublicIp: false,
}],
recordSetType: "string",
spotinstAcctId: "string",
}],
},
itfs: [{
fixedTargetGroups: false,
loadBalancers: [{
listenerRules: [{
ruleArn: "string",
staticTargetGroup: {
arn: "string",
percentage: 0,
},
}],
loadBalancerArn: "string",
}],
targetGroupConfigs: [{
port: 0,
healthCheckPath: "string",
vpcId: "string",
protocol: "string",
matchers: [{
grpcCode: "string",
httpCode: "string",
}],
healthyThresholdCount: 0,
healthCheckIntervalSeconds: 0,
healthCheckTimeoutSeconds: 0,
healthCheckProtocol: "string",
protocolVersion: "string",
tags: [{
tagKey: "string",
tagValue: "string",
}],
unhealthyThresholdCount: 0,
healthCheckPort: "string",
}],
weightStrategy: "string",
defaultStaticTargetGroup: {
arn: "string",
percentage: 0,
},
migrationHealthinessThreshold: 0,
}],
keyName: "string",
lifetimePeriod: "string",
logging: {
"export": {
s3s: [{
id: "string",
}],
},
},
maxSize: 0,
metadataOptions: {
httpTokens: "string",
httpPutResponseHopLimit: 0,
instanceMetadataTags: "string",
},
minSize: 0,
minimumInstanceLifetime: 0,
multipleMetrics: {
expressions: [{
expression: "string",
name: "string",
}],
metrics: [{
metricName: "string",
name: "string",
namespace: "string",
dimensions: [{
name: "string",
value: "string",
}],
extendedStatistic: "string",
statistic: "string",
unit: "string",
}],
},
name: "string",
networkInterfaces: [{
deviceIndex: "string",
associateIpv6Address: false,
associatePublicIpAddress: false,
deleteOnTermination: false,
description: "string",
networkInterfaceId: "string",
privateIpAddress: "string",
secondaryPrivateIpAddressCount: "string",
}],
onDemandTypes: ["string"],
ondemandCount: 0,
persistBlockDevices: false,
persistPrivateIp: false,
persistRootDevice: false,
placementTenancy: "string",
preferredAvailabilityZones: ["string"],
privateIps: ["string"],
region: "string",
resourceRequirements: [{
requiredMemoryMaximum: 0,
requiredMemoryMinimum: 0,
requiredVcpuMaximum: 0,
requiredVcpuMinimum: 0,
excludedInstanceFamilies: ["string"],
excludedInstanceGenerations: ["string"],
excludedInstanceTypes: ["string"],
requiredGpuMaximum: 0,
requiredGpuMinimum: 0,
}],
resourceTagSpecifications: [{
shouldTagAmis: false,
shouldTagEnis: false,
shouldTagSnapshots: false,
shouldTagVolumes: false,
}],
revertToSpot: {
performAt: "string",
timeWindows: ["string"],
},
scalingDownPolicies: [{
metricName: "string",
policyName: "string",
namespace: "string",
minimum: "string",
operator: "string",
isEnabled: false,
maxTargetCapacity: "string",
maximum: "string",
dimensions: [{
name: "string",
value: "string",
}],
minTargetCapacity: "string",
actionType: "string",
cooldown: 0,
evaluationPeriods: 0,
period: 0,
adjustment: "string",
source: "string",
statistic: "string",
stepAdjustments: [{
action: {
type: "string",
adjustment: "string",
maxTargetCapacity: "string",
maximum: "string",
minTargetCapacity: "string",
minimum: "string",
target: "string",
},
threshold: 0,
}],
target: "string",
threshold: 0,
unit: "string",
}],
scalingStrategies: [{
terminateAtEndOfBillingHour: false,
terminationPolicy: "string",
}],
scalingTargetPolicies: [{
metricName: "string",
target: 0,
policyName: "string",
namespace: "string",
period: 0,
maxCapacityPerScale: "string",
cooldown: 0,
evaluationPeriods: 0,
predictiveMode: "string",
source: "string",
statistic: "string",
dimensions: [{
name: "string",
value: "string",
}],
unit: "string",
}],
scalingUpPolicies: [{
metricName: "string",
policyName: "string",
namespace: "string",
minimum: "string",
operator: "string",
isEnabled: false,
maxTargetCapacity: "string",
maximum: "string",
dimensions: [{
name: "string",
value: "string",
}],
minTargetCapacity: "string",
actionType: "string",
cooldown: 0,
evaluationPeriods: 0,
period: 0,
adjustment: "string",
source: "string",
statistic: "string",
stepAdjustments: [{
action: {
type: "string",
adjustment: "string",
maxTargetCapacity: "string",
maximum: "string",
minTargetCapacity: "string",
minimum: "string",
target: "string",
},
threshold: 0,
}],
target: "string",
threshold: 0,
unit: "string",
}],
scheduledTasks: [{
taskType: "string",
isEnabled: false,
minCapacity: "string",
cronExpression: "string",
frequency: "string",
gracePeriod: "string",
adjustment: "string",
maxCapacity: "string",
batchSizePercentage: "string",
scaleMaxCapacity: "string",
scaleMinCapacity: "string",
scaleTargetCapacity: "string",
startTime: "string",
targetCapacity: "string",
adjustmentPercentage: "string",
}],
shutdownScript: "string",
signals: [{
name: "string",
timeout: 0,
}],
spotPercentage: 0,
statefulDeallocation: {
shouldDeleteImages: false,
shouldDeleteNetworkInterfaces: false,
shouldDeleteSnapshots: false,
shouldDeleteVolumes: false,
},
statefulInstanceActions: [{
statefulInstanceId: "string",
type: "string",
}],
subnetIds: ["string"],
tags: [{
key: "string",
value: "string",
}],
targetGroupArns: ["string"],
updatePolicy: {
shouldResumeStateful: false,
shouldRoll: false,
autoApplyTags: false,
rollConfig: {
batchSizePercentage: 0,
gracePeriod: 0,
healthCheckType: "string",
strategy: {
action: "string",
batchMinHealthyPercentage: 0,
onFailure: {
actionType: "string",
batchNum: 0,
drainingTimeout: 0,
shouldDecrementTargetCapacity: false,
shouldHandleAllBatches: false,
},
shouldDrainInstances: false,
},
waitForRollPercentage: 0,
waitForRollTimeout: 0,
},
},
userData: "string",
utilizeCommitments: false,
utilizeReservedInstances: false,
waitForCapacity: 0,
waitForCapacityTimeout: 0,
});
type: spotinst:aws:Elastigroup
properties:
availabilityZones:
- string
blockDevicesMode: string
capacityUnit: string
considerOdPricing: false
cpuCredits: string
cpuOptions:
threadsPerCore: 0
description: string
desiredCapacity: 0
drainingTimeout: 0
ebsBlockDevices:
- deleteOnTermination: false
deviceName: string
encrypted: false
iops: 0
kmsKeyId: string
snapshotId: string
throughput: 0
volumeSize: 0
volumeType: string
ebsOptimized: false
elasticIps:
- string
elasticLoadBalancers:
- string
enableMonitoring: false
ephemeralBlockDevices:
- deviceName: string
virtualName: string
fallbackToOndemand: false
healthCheckGracePeriod: 0
healthCheckType: string
healthCheckUnhealthyDurationBeforeReplacement: 0
iamInstanceProfile: string
imageId: string
images:
- images:
- id: string
immediateOdRecoverThreshold: 0
instanceTypesOndemand: string
instanceTypesPreferredSpots:
- string
instanceTypesSpots:
- string
instanceTypesWeights:
- instanceType: string
weight: 0
integrationBeanstalk:
deploymentPreferences:
automaticRoll: false
batchSizePercentage: 0
gracePeriod: 0
strategy:
action: string
shouldDrainInstances: false
environmentId: string
managedActions:
platformUpdate:
performAt: string
timeWindow: string
updateLevel: string
integrationCodedeploy:
cleanupOnFailure: false
deploymentGroups:
- applicationName: string
deploymentGroupName: string
terminateInstanceOnFailure: false
integrationDockerSwarm:
autoscaleCooldown: 0
autoscaleDown:
evaluationPeriods: 0
maxScaleDownPercentage: 0
autoscaleHeadroom:
cpuPerUnit: 0
memoryPerUnit: 0
numOfUnits: 0
autoscaleIsEnabled: false
masterHost: string
masterPort: 0
integrationEcs:
autoscaleAttributes:
- key: string
value: string
autoscaleCooldown: 0
autoscaleDown:
evaluationPeriods: 0
maxScaleDownPercentage: 0
autoscaleHeadroom:
cpuPerUnit: 0
memoryPerUnit: 0
numOfUnits: 0
autoscaleIsAutoConfig: false
autoscaleIsEnabled: false
autoscaleScaleDownNonServiceTasks: false
batch:
jobQueueNames:
- string
clusterName: string
integrationGitlab:
runner:
isEnabled: false
integrationKubernetes:
apiServer: string
autoscaleCooldown: 0
autoscaleDown:
evaluationPeriods: 0
maxScaleDownPercentage: 0
autoscaleHeadroom:
cpuPerUnit: 0
memoryPerUnit: 0
numOfUnits: 0
autoscaleIsAutoConfig: false
autoscaleIsEnabled: false
autoscaleLabels:
- key: string
value: string
clusterIdentifier: string
integrationMode: string
token: string
integrationMesosphere:
apiServer: string
integrationNomad:
aclToken: string
autoscaleConstraints:
- key: string
value: string
autoscaleCooldown: 0
autoscaleDown:
evaluationPeriods: 0
autoscaleHeadroom:
cpuPerUnit: 0
memoryPerUnit: 0
numOfUnits: 0
autoscaleIsEnabled: false
masterHost: string
masterPort: 0
integrationRancher:
accessKey: string
masterHost: string
secretKey: string
version: string
integrationRoute53:
domains:
- hostedZoneId: string
recordSetType: string
recordSets:
- name: string
usePublicDns: false
usePublicIp: false
spotinstAcctId: string
itfs:
- defaultStaticTargetGroup:
arn: string
percentage: 0
fixedTargetGroups: false
loadBalancers:
- listenerRules:
- ruleArn: string
staticTargetGroup:
arn: string
percentage: 0
loadBalancerArn: string
migrationHealthinessThreshold: 0
targetGroupConfigs:
- healthCheckIntervalSeconds: 0
healthCheckPath: string
healthCheckPort: string
healthCheckProtocol: string
healthCheckTimeoutSeconds: 0
healthyThresholdCount: 0
matchers:
- grpcCode: string
httpCode: string
port: 0
protocol: string
protocolVersion: string
tags:
- tagKey: string
tagValue: string
unhealthyThresholdCount: 0
vpcId: string
weightStrategy: string
keyName: string
lifetimePeriod: string
logging:
export:
s3s:
- id: string
maxSize: 0
metadataOptions:
httpPutResponseHopLimit: 0
httpTokens: string
instanceMetadataTags: string
minSize: 0
minimumInstanceLifetime: 0
multipleMetrics:
expressions:
- expression: string
name: string
metrics:
- dimensions:
- name: string
value: string
extendedStatistic: string
metricName: string
name: string
namespace: string
statistic: string
unit: string
name: string
networkInterfaces:
- associateIpv6Address: false
associatePublicIpAddress: false
deleteOnTermination: false
description: string
deviceIndex: string
networkInterfaceId: string
privateIpAddress: string
secondaryPrivateIpAddressCount: string
onDemandTypes:
- string
ondemandCount: 0
orientation: string
persistBlockDevices: false
persistPrivateIp: false
persistRootDevice: false
placementTenancy: string
preferredAvailabilityZones:
- string
privateIps:
- string
product: string
region: string
resourceRequirements:
- excludedInstanceFamilies:
- string
excludedInstanceGenerations:
- string
excludedInstanceTypes:
- string
requiredGpuMaximum: 0
requiredGpuMinimum: 0
requiredMemoryMaximum: 0
requiredMemoryMinimum: 0
requiredVcpuMaximum: 0
requiredVcpuMinimum: 0
resourceTagSpecifications:
- shouldTagAmis: false
shouldTagEnis: false
shouldTagSnapshots: false
shouldTagVolumes: false
revertToSpot:
performAt: string
timeWindows:
- string
scalingDownPolicies:
- actionType: string
adjustment: string
cooldown: 0
dimensions:
- name: string
value: string
evaluationPeriods: 0
isEnabled: false
maxTargetCapacity: string
maximum: string
metricName: string
minTargetCapacity: string
minimum: string
namespace: string
operator: string
period: 0
policyName: string
source: string
statistic: string
stepAdjustments:
- action:
adjustment: string
maxTargetCapacity: string
maximum: string
minTargetCapacity: string
minimum: string
target: string
type: string
threshold: 0
target: string
threshold: 0
unit: string
scalingStrategies:
- terminateAtEndOfBillingHour: false
terminationPolicy: string
scalingTargetPolicies:
- cooldown: 0
dimensions:
- name: string
value: string
evaluationPeriods: 0
maxCapacityPerScale: string
metricName: string
namespace: string
period: 0
policyName: string
predictiveMode: string
source: string
statistic: string
target: 0
unit: string
scalingUpPolicies:
- actionType: string
adjustment: string
cooldown: 0
dimensions:
- name: string
value: string
evaluationPeriods: 0
isEnabled: false
maxTargetCapacity: string
maximum: string
metricName: string
minTargetCapacity: string
minimum: string
namespace: string
operator: string
period: 0
policyName: string
source: string
statistic: string
stepAdjustments:
- action:
adjustment: string
maxTargetCapacity: string
maximum: string
minTargetCapacity: string
minimum: string
target: string
type: string
threshold: 0
target: string
threshold: 0
unit: string
scheduledTasks:
- adjustment: string
adjustmentPercentage: string
batchSizePercentage: string
cronExpression: string
frequency: string
gracePeriod: string
isEnabled: false
maxCapacity: string
minCapacity: string
scaleMaxCapacity: string
scaleMinCapacity: string
scaleTargetCapacity: string
startTime: string
targetCapacity: string
taskType: string
securityGroups:
- string
shutdownScript: string
signals:
- name: string
timeout: 0
spotPercentage: 0
statefulDeallocation:
shouldDeleteImages: false
shouldDeleteNetworkInterfaces: false
shouldDeleteSnapshots: false
shouldDeleteVolumes: false
statefulInstanceActions:
- statefulInstanceId: string
type: string
subnetIds:
- string
tags:
- key: string
value: string
targetGroupArns:
- string
updatePolicy:
autoApplyTags: false
rollConfig:
batchSizePercentage: 0
gracePeriod: 0
healthCheckType: string
strategy:
action: string
batchMinHealthyPercentage: 0
onFailure:
actionType: string
batchNum: 0
drainingTimeout: 0
shouldDecrementTargetCapacity: false
shouldHandleAllBatches: false
shouldDrainInstances: false
waitForRollPercentage: 0
waitForRollTimeout: 0
shouldResumeStateful: false
shouldRoll: false
userData: string
utilizeCommitments: false
utilizeReservedInstances: false
waitForCapacity: 0
waitForCapacityTimeout: 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
The Elastigroup resource accepts the following input properties:
- Fallback
To boolOndemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- Orientation string
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - Product string
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - Security
Groups List<string> - A list of associated security group IDS.
- Availability
Zones List<string> - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- Block
Devices stringMode - Capacity
Unit string - 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. Valid values:
instance
,weight
. - Consider
Od boolPricing - Cpu
Credits string - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - Cpu
Options Pulumi.Spot Inst. Aws. Inputs. Elastigroup Cpu Options - The CPU options for the instances that are launched within the group:
- Description string
- The group description.
- Desired
Capacity int - The desired number of instances the group should have at any time.
- Draining
Timeout int - 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.
- Ebs
Block List<Pulumi.Devices Spot Inst. Aws. Inputs. Elastigroup Ebs Block Device> - Ebs
Optimized bool - 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.
- Elastic
Ips List<string> - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- Elastic
Load List<string>Balancers - Enable
Monitoring bool - Indicates whether monitoring is enabled for the instance.
- Ephemeral
Block List<Pulumi.Devices Spot Inst. Aws. Inputs. Elastigroup Ephemeral Block Device> - Health
Check intGrace Period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- Health
Check stringType - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - Health
Check intUnhealthy Duration Before Replacement - 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).
- Iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- Image
Id string - The ID of the AMI used to launch the instance.
- Images
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Image> - An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- Immediate
Od intRecover Threshold - Instance
Types stringOndemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- Instance
Types List<string>Preferred Spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- Instance
Types List<string>Spots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- Instance
Types List<Pulumi.Weights Spot Inst. Aws. Inputs. Elastigroup Instance Types Weight> - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- Integration
Beanstalk Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Beanstalk - Integration
Codedeploy Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Codedeploy - Integration
Docker Pulumi.Swarm Spot Inst. Aws. Inputs. Elastigroup Integration Docker Swarm - Integration
Ecs Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Ecs - Integration
Gitlab Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Gitlab - Integration
Kubernetes Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Kubernetes - Integration
Mesosphere Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Mesosphere - Integration
Nomad Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Nomad - Integration
Rancher Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Rancher - Integration
Route53 Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Route53 - Itfs
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Itf> - Key
Name string - The key name that should be used for the instance.
- Lifetime
Period string - Logging
Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Logging - Logging configuration.
- Max
Size int - The maximum number of instances the group should have at any time.
- Metadata
Options Pulumi.Spot Inst. Aws. Inputs. Elastigroup Metadata Options - Data that used to configure or manage the running instances:
- Min
Size int - The minimum number of instances the group should have at any time.
- Minimum
Instance intLifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- Multiple
Metrics Pulumi.Spot Inst. Aws. Inputs. Elastigroup Multiple Metrics - Name string
- The group name.
- Network
Interfaces List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Network Interface> - On
Demand List<string>Types - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- Ondemand
Count int - 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. - Persist
Block boolDevices - Persist
Private boolIp - Persist
Root boolDevice - Placement
Tenancy string - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- Preferred
Availability List<string>Zones - 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
andorientation
value must not be"equalAzDistribution"
. - Private
Ips List<string> - Region string
- 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).
- Resource
Requirements List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Resource Requirement> - Required instance attributes. Instance types will be selected based on these requirements.
- List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Resource Tag Specification> - User will specify which resources should be tagged with group tags.
- Revert
To Pulumi.Spot Spot Inst. Aws. Inputs. Elastigroup Revert To Spot - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- Scaling
Down List<Pulumi.Policies Spot Inst. Aws. Inputs. Elastigroup Scaling Down Policy> - Scaling
Strategies List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Scaling Strategy> - Set termination policy.
- Scaling
Target List<Pulumi.Policies Spot Inst. Aws. Inputs. Elastigroup Scaling Target Policy> - Scaling
Up List<Pulumi.Policies Spot Inst. Aws. Inputs. Elastigroup Scaling Up Policy> - Scheduled
Tasks List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Scheduled Task> - Shutdown
Script string - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- Signals
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Signal> - Spot
Percentage int - The percentage of Spot instances that would spin up from the
desired_capacity
number. - Stateful
Deallocation Pulumi.Spot Inst. Aws. Inputs. Elastigroup Stateful Deallocation - Stateful
Instance List<Pulumi.Actions Spot Inst. Aws. Inputs. Elastigroup Stateful Instance Action> - Subnet
Ids List<string> - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Tag> - A key/value mapping of tags to assign to the resource.
- Target
Group List<string>Arns - Update
Policy Pulumi.Spot Inst. Aws. Inputs. Elastigroup Update Policy - User
Data string - The user data to provide when launching the instance.
- Utilize
Commitments bool - Utilize
Reserved boolInstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- Wait
For intCapacity - 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
. - Wait
For intCapacity Timeout - 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.
- Fallback
To boolOndemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- Orientation string
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - Product string
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - Security
Groups []string - A list of associated security group IDS.
- Availability
Zones []string - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- Block
Devices stringMode - Capacity
Unit string - 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. Valid values:
instance
,weight
. - Consider
Od boolPricing - Cpu
Credits string - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - Cpu
Options ElastigroupCpu Options Args - The CPU options for the instances that are launched within the group:
- Description string
- The group description.
- Desired
Capacity int - The desired number of instances the group should have at any time.
- Draining
Timeout int - 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.
- Ebs
Block []ElastigroupDevices Ebs Block Device Args - Ebs
Optimized bool - 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.
- Elastic
Ips []string - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- Elastic
Load []stringBalancers - Enable
Monitoring bool - Indicates whether monitoring is enabled for the instance.
- Ephemeral
Block []ElastigroupDevices Ephemeral Block Device Args - Health
Check intGrace Period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- Health
Check stringType - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - Health
Check intUnhealthy Duration Before Replacement - 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).
- Iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- Image
Id string - The ID of the AMI used to launch the instance.
- Images
[]Elastigroup
Image Args - An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- Immediate
Od intRecover Threshold - Instance
Types stringOndemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- Instance
Types []stringPreferred Spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- Instance
Types []stringSpots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- Instance
Types []ElastigroupWeights Instance Types Weight Args - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- Integration
Beanstalk ElastigroupIntegration Beanstalk Args - Integration
Codedeploy ElastigroupIntegration Codedeploy Args - Integration
Docker ElastigroupSwarm Integration Docker Swarm Args - Integration
Ecs ElastigroupIntegration Ecs Args - Integration
Gitlab ElastigroupIntegration Gitlab Args - Integration
Kubernetes ElastigroupIntegration Kubernetes Args - Integration
Mesosphere ElastigroupIntegration Mesosphere Args - Integration
Nomad ElastigroupIntegration Nomad Args - Integration
Rancher ElastigroupIntegration Rancher Args - Integration
Route53 ElastigroupIntegration Route53Args - Itfs
[]Elastigroup
Itf Args - Key
Name string - The key name that should be used for the instance.
- Lifetime
Period string - Logging
Elastigroup
Logging Args - Logging configuration.
- Max
Size int - The maximum number of instances the group should have at any time.
- Metadata
Options ElastigroupMetadata Options Args - Data that used to configure or manage the running instances:
- Min
Size int - The minimum number of instances the group should have at any time.
- Minimum
Instance intLifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- Multiple
Metrics ElastigroupMultiple Metrics Args - Name string
- The group name.
- Network
Interfaces []ElastigroupNetwork Interface Args - On
Demand []stringTypes - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- Ondemand
Count int - 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. - Persist
Block boolDevices - Persist
Private boolIp - Persist
Root boolDevice - Placement
Tenancy string - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- Preferred
Availability []stringZones - 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
andorientation
value must not be"equalAzDistribution"
. - Private
Ips []string - Region string
- 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).
- Resource
Requirements []ElastigroupResource Requirement Args - Required instance attributes. Instance types will be selected based on these requirements.
- []Elastigroup
Resource Tag Specification Args - User will specify which resources should be tagged with group tags.
- Revert
To ElastigroupSpot Revert To Spot Args - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- Scaling
Down []ElastigroupPolicies Scaling Down Policy Args - Scaling
Strategies []ElastigroupScaling Strategy Args - Set termination policy.
- Scaling
Target []ElastigroupPolicies Scaling Target Policy Args - Scaling
Up []ElastigroupPolicies Scaling Up Policy Args - Scheduled
Tasks []ElastigroupScheduled Task Args - Shutdown
Script string - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- Signals
[]Elastigroup
Signal Args - Spot
Percentage int - The percentage of Spot instances that would spin up from the
desired_capacity
number. - Stateful
Deallocation ElastigroupStateful Deallocation Args - Stateful
Instance []ElastigroupActions Stateful Instance Action Args - Subnet
Ids []string - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - []Elastigroup
Tag Args - A key/value mapping of tags to assign to the resource.
- Target
Group []stringArns - Update
Policy ElastigroupUpdate Policy Args - User
Data string - The user data to provide when launching the instance.
- Utilize
Commitments bool - Utilize
Reserved boolInstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- Wait
For intCapacity - 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
. - Wait
For intCapacity Timeout - 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.
- fallback
To BooleanOndemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- orientation String
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - product String
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - security
Groups List<String> - A list of associated security group IDS.
- availability
Zones List<String> - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- block
Devices StringMode - capacity
Unit String - 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. Valid values:
instance
,weight
. - consider
Od BooleanPricing - cpu
Credits String - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - cpu
Options ElastigroupCpu Options - The CPU options for the instances that are launched within the group:
- description String
- The group description.
- desired
Capacity Integer - The desired number of instances the group should have at any time.
- draining
Timeout Integer - 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.
- ebs
Block List<ElastigroupDevices Ebs Block Device> - ebs
Optimized Boolean - 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.
- elastic
Ips List<String> - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- elastic
Load List<String>Balancers - enable
Monitoring Boolean - Indicates whether monitoring is enabled for the instance.
- ephemeral
Block List<ElastigroupDevices Ephemeral Block Device> - health
Check IntegerGrace Period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- health
Check StringType - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - health
Check IntegerUnhealthy Duration Before Replacement - 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).
- iam
Instance StringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id String - The ID of the AMI used to launch the instance.
- images
List<Elastigroup
Image> - An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- immediate
Od IntegerRecover Threshold - instance
Types StringOndemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- instance
Types List<String>Preferred Spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- instance
Types List<String>Spots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- instance
Types List<ElastigroupWeights Instance Types Weight> - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- integration
Beanstalk ElastigroupIntegration Beanstalk - integration
Codedeploy ElastigroupIntegration Codedeploy - integration
Docker ElastigroupSwarm Integration Docker Swarm - integration
Ecs ElastigroupIntegration Ecs - integration
Gitlab ElastigroupIntegration Gitlab - integration
Kubernetes ElastigroupIntegration Kubernetes - integration
Mesosphere ElastigroupIntegration Mesosphere - integration
Nomad ElastigroupIntegration Nomad - integration
Rancher ElastigroupIntegration Rancher - integration
Route53 ElastigroupIntegration Route53 - itfs
List<Elastigroup
Itf> - key
Name String - The key name that should be used for the instance.
- lifetime
Period String - logging
Elastigroup
Logging - Logging configuration.
- max
Size Integer - The maximum number of instances the group should have at any time.
- metadata
Options ElastigroupMetadata Options - Data that used to configure or manage the running instances:
- min
Size Integer - The minimum number of instances the group should have at any time.
- minimum
Instance IntegerLifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- multiple
Metrics ElastigroupMultiple Metrics - name String
- The group name.
- network
Interfaces List<ElastigroupNetwork Interface> - on
Demand List<String>Types - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- ondemand
Count Integer - 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. - persist
Block BooleanDevices - persist
Private BooleanIp - persist
Root BooleanDevice - placement
Tenancy String - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- preferred
Availability List<String>Zones - 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
andorientation
value must not be"equalAzDistribution"
. - private
Ips List<String> - region String
- 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).
- resource
Requirements List<ElastigroupResource Requirement> - Required instance attributes. Instance types will be selected based on these requirements.
- List<Elastigroup
Resource Tag Specification> - User will specify which resources should be tagged with group tags.
- revert
To ElastigroupSpot Revert To Spot - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- scaling
Down List<ElastigroupPolicies Scaling Down Policy> - scaling
Strategies List<ElastigroupScaling Strategy> - Set termination policy.
- scaling
Target List<ElastigroupPolicies Scaling Target Policy> - scaling
Up List<ElastigroupPolicies Scaling Up Policy> - scheduled
Tasks List<ElastigroupScheduled Task> - shutdown
Script String - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- signals
List<Elastigroup
Signal> - spot
Percentage Integer - The percentage of Spot instances that would spin up from the
desired_capacity
number. - stateful
Deallocation ElastigroupStateful Deallocation - stateful
Instance List<ElastigroupActions Stateful Instance Action> - subnet
Ids List<String> - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - List<Elastigroup
Tag> - A key/value mapping of tags to assign to the resource.
- target
Group List<String>Arns - update
Policy ElastigroupUpdate Policy - user
Data String - The user data to provide when launching the instance.
- utilize
Commitments Boolean - utilize
Reserved BooleanInstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- wait
For IntegerCapacity - 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
. - wait
For IntegerCapacity Timeout - 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.
- fallback
To booleanOndemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- orientation string
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - product string
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - security
Groups string[] - A list of associated security group IDS.
- availability
Zones string[] - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- block
Devices stringMode - capacity
Unit string - 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. Valid values:
instance
,weight
. - consider
Od booleanPricing - cpu
Credits string - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - cpu
Options ElastigroupCpu Options - The CPU options for the instances that are launched within the group:
- description string
- The group description.
- desired
Capacity number - The desired number of instances the group should have at any time.
- draining
Timeout number - 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.
- ebs
Block ElastigroupDevices Ebs Block Device[] - ebs
Optimized boolean - 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.
- elastic
Ips string[] - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- elastic
Load string[]Balancers - enable
Monitoring boolean - Indicates whether monitoring is enabled for the instance.
- ephemeral
Block ElastigroupDevices Ephemeral Block Device[] - health
Check numberGrace Period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- health
Check stringType - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - health
Check numberUnhealthy Duration Before Replacement - 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).
- iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id string - The ID of the AMI used to launch the instance.
- images
Elastigroup
Image[] - An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- immediate
Od numberRecover Threshold - instance
Types stringOndemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- instance
Types string[]Preferred Spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- instance
Types string[]Spots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- instance
Types ElastigroupWeights Instance Types Weight[] - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- integration
Beanstalk ElastigroupIntegration Beanstalk - integration
Codedeploy ElastigroupIntegration Codedeploy - integration
Docker ElastigroupSwarm Integration Docker Swarm - integration
Ecs ElastigroupIntegration Ecs - integration
Gitlab ElastigroupIntegration Gitlab - integration
Kubernetes ElastigroupIntegration Kubernetes - integration
Mesosphere ElastigroupIntegration Mesosphere - integration
Nomad ElastigroupIntegration Nomad - integration
Rancher ElastigroupIntegration Rancher - integration
Route53 ElastigroupIntegration Route53 - itfs
Elastigroup
Itf[] - key
Name string - The key name that should be used for the instance.
- lifetime
Period string - logging
Elastigroup
Logging - Logging configuration.
- max
Size number - The maximum number of instances the group should have at any time.
- metadata
Options ElastigroupMetadata Options - Data that used to configure or manage the running instances:
- min
Size number - The minimum number of instances the group should have at any time.
- minimum
Instance numberLifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- multiple
Metrics ElastigroupMultiple Metrics - name string
- The group name.
- network
Interfaces ElastigroupNetwork Interface[] - on
Demand string[]Types - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- ondemand
Count number - 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. - persist
Block booleanDevices - persist
Private booleanIp - persist
Root booleanDevice - placement
Tenancy string - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- preferred
Availability string[]Zones - 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
andorientation
value must not be"equalAzDistribution"
. - private
Ips string[] - region string
- 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).
- resource
Requirements ElastigroupResource Requirement[] - Required instance attributes. Instance types will be selected based on these requirements.
- Elastigroup
Resource Tag Specification[] - User will specify which resources should be tagged with group tags.
- revert
To ElastigroupSpot Revert To Spot - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- scaling
Down ElastigroupPolicies Scaling Down Policy[] - scaling
Strategies ElastigroupScaling Strategy[] - Set termination policy.
- scaling
Target ElastigroupPolicies Scaling Target Policy[] - scaling
Up ElastigroupPolicies Scaling Up Policy[] - scheduled
Tasks ElastigroupScheduled Task[] - shutdown
Script string - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- signals
Elastigroup
Signal[] - spot
Percentage number - The percentage of Spot instances that would spin up from the
desired_capacity
number. - stateful
Deallocation ElastigroupStateful Deallocation - stateful
Instance ElastigroupActions Stateful Instance Action[] - subnet
Ids string[] - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - Elastigroup
Tag[] - A key/value mapping of tags to assign to the resource.
- target
Group string[]Arns - update
Policy ElastigroupUpdate Policy - user
Data string - The user data to provide when launching the instance.
- utilize
Commitments boolean - utilize
Reserved booleanInstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- wait
For numberCapacity - 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
. - wait
For numberCapacity Timeout - 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.
- fallback_
to_ boolondemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- orientation str
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - product str
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - security_
groups Sequence[str] - A list of associated security group IDS.
- availability_
zones Sequence[str] - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- block_
devices_ strmode - capacity_
unit str - 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. Valid values:
instance
,weight
. - consider_
od_ boolpricing - cpu_
credits str - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - cpu_
options ElastigroupCpu Options Args - The CPU options for the instances that are launched within the group:
- description str
- The group description.
- desired_
capacity int - The desired number of instances the group should have at any time.
- draining_
timeout int - 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.
- ebs_
block_ Sequence[Elastigroupdevices Ebs Block Device Args] - ebs_
optimized bool - 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.
- elastic_
ips Sequence[str] - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- elastic_
load_ Sequence[str]balancers - enable_
monitoring bool - Indicates whether monitoring is enabled for the instance.
- ephemeral_
block_ Sequence[Elastigroupdevices Ephemeral Block Device Args] - health_
check_ intgrace_ period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- health_
check_ strtype - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - health_
check_ intunhealthy_ duration_ before_ replacement - 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).
- iam_
instance_ strprofile - The ARN or name of an IAM instance profile to associate with launched instances.
- image_
id str - The ID of the AMI used to launch the instance.
- images
Sequence[Elastigroup
Image Args] - An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- immediate_
od_ intrecover_ threshold - instance_
types_ strondemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- instance_
types_ Sequence[str]preferred_ spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- instance_
types_ Sequence[str]spots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- instance_
types_ Sequence[Elastigroupweights Instance Types Weight Args] - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- integration_
beanstalk ElastigroupIntegration Beanstalk Args - integration_
codedeploy ElastigroupIntegration Codedeploy Args - integration_
docker_ Elastigroupswarm Integration Docker Swarm Args - integration_
ecs ElastigroupIntegration Ecs Args - integration_
gitlab ElastigroupIntegration Gitlab Args - integration_
kubernetes ElastigroupIntegration Kubernetes Args - integration_
mesosphere ElastigroupIntegration Mesosphere Args - integration_
nomad ElastigroupIntegration Nomad Args - integration_
rancher ElastigroupIntegration Rancher Args - integration_
route53 ElastigroupIntegration Route53Args - itfs
Sequence[Elastigroup
Itf Args] - key_
name str - The key name that should be used for the instance.
- lifetime_
period str - logging
Elastigroup
Logging Args - Logging configuration.
- max_
size int - The maximum number of instances the group should have at any time.
- metadata_
options ElastigroupMetadata Options Args - Data that used to configure or manage the running instances:
- min_
size int - The minimum number of instances the group should have at any time.
- minimum_
instance_ intlifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- multiple_
metrics ElastigroupMultiple Metrics Args - name str
- The group name.
- network_
interfaces Sequence[ElastigroupNetwork Interface Args] - on_
demand_ Sequence[str]types - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- ondemand_
count int - 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. - persist_
block_ booldevices - persist_
private_ boolip - persist_
root_ booldevice - placement_
tenancy str - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- preferred_
availability_ Sequence[str]zones - 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
andorientation
value must not be"equalAzDistribution"
. - private_
ips Sequence[str] - region str
- 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).
- resource_
requirements Sequence[ElastigroupResource Requirement Args] - Required instance attributes. Instance types will be selected based on these requirements.
- resource_
tag_ Sequence[Elastigroupspecifications Resource Tag Specification Args] - User will specify which resources should be tagged with group tags.
- revert_
to_ Elastigroupspot Revert To Spot Args - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- scaling_
down_ Sequence[Elastigrouppolicies Scaling Down Policy Args] - scaling_
strategies Sequence[ElastigroupScaling Strategy Args] - Set termination policy.
- scaling_
target_ Sequence[Elastigrouppolicies Scaling Target Policy Args] - scaling_
up_ Sequence[Elastigrouppolicies Scaling Up Policy Args] - scheduled_
tasks Sequence[ElastigroupScheduled Task Args] - shutdown_
script str - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- signals
Sequence[Elastigroup
Signal Args] - spot_
percentage int - The percentage of Spot instances that would spin up from the
desired_capacity
number. - stateful_
deallocation ElastigroupStateful Deallocation Args - stateful_
instance_ Sequence[Elastigroupactions Stateful Instance Action Args] - subnet_
ids Sequence[str] - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - Sequence[Elastigroup
Tag Args] - A key/value mapping of tags to assign to the resource.
- target_
group_ Sequence[str]arns - update_
policy ElastigroupUpdate Policy Args - user_
data str - The user data to provide when launching the instance.
- utilize_
commitments bool - utilize_
reserved_ boolinstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- wait_
for_ intcapacity - 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
. - wait_
for_ intcapacity_ timeout - 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.
- fallback
To BooleanOndemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- orientation String
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - product String
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - security
Groups List<String> - A list of associated security group IDS.
- availability
Zones List<String> - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- block
Devices StringMode - capacity
Unit String - 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. Valid values:
instance
,weight
. - consider
Od BooleanPricing - cpu
Credits String - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - cpu
Options Property Map - The CPU options for the instances that are launched within the group:
- description String
- The group description.
- desired
Capacity Number - The desired number of instances the group should have at any time.
- draining
Timeout Number - 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.
- ebs
Block List<Property Map>Devices - ebs
Optimized Boolean - 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.
- elastic
Ips List<String> - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- elastic
Load List<String>Balancers - enable
Monitoring Boolean - Indicates whether monitoring is enabled for the instance.
- ephemeral
Block List<Property Map>Devices - health
Check NumberGrace Period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- health
Check StringType - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - health
Check NumberUnhealthy Duration Before Replacement - 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).
- iam
Instance StringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id String - The ID of the AMI used to launch the instance.
- images List<Property Map>
- An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- immediate
Od NumberRecover Threshold - instance
Types StringOndemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- instance
Types List<String>Preferred Spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- instance
Types List<String>Spots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- instance
Types List<Property Map>Weights - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- integration
Beanstalk Property Map - integration
Codedeploy Property Map - integration
Docker Property MapSwarm - integration
Ecs Property Map - integration
Gitlab Property Map - integration
Kubernetes Property Map - integration
Mesosphere Property Map - integration
Nomad Property Map - integration
Rancher Property Map - integration
Route53 Property Map - itfs List<Property Map>
- key
Name String - The key name that should be used for the instance.
- lifetime
Period String - logging Property Map
- Logging configuration.
- max
Size Number - The maximum number of instances the group should have at any time.
- metadata
Options Property Map - Data that used to configure or manage the running instances:
- min
Size Number - The minimum number of instances the group should have at any time.
- minimum
Instance NumberLifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- multiple
Metrics Property Map - name String
- The group name.
- network
Interfaces List<Property Map> - on
Demand List<String>Types - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- ondemand
Count Number - 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. - persist
Block BooleanDevices - persist
Private BooleanIp - persist
Root BooleanDevice - placement
Tenancy String - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- preferred
Availability List<String>Zones - 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
andorientation
value must not be"equalAzDistribution"
. - private
Ips List<String> - region String
- 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).
- resource
Requirements List<Property Map> - Required instance attributes. Instance types will be selected based on these requirements.
- List<Property Map>
- User will specify which resources should be tagged with group tags.
- revert
To Property MapSpot - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- scaling
Down List<Property Map>Policies - scaling
Strategies List<Property Map> - Set termination policy.
- scaling
Target List<Property Map>Policies - scaling
Up List<Property Map>Policies - scheduled
Tasks List<Property Map> - shutdown
Script String - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- signals List<Property Map>
- spot
Percentage Number - The percentage of Spot instances that would spin up from the
desired_capacity
number. - stateful
Deallocation Property Map - stateful
Instance List<Property Map>Actions - subnet
Ids List<String> - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - List<Property Map>
- A key/value mapping of tags to assign to the resource.
- target
Group List<String>Arns - update
Policy Property Map - user
Data String - The user data to provide when launching the instance.
- utilize
Commitments Boolean - utilize
Reserved BooleanInstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- wait
For NumberCapacity - 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
. - wait
For NumberCapacity Timeout - 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.
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,
availability_zones: Optional[Sequence[str]] = None,
block_devices_mode: Optional[str] = None,
capacity_unit: Optional[str] = None,
consider_od_pricing: Optional[bool] = None,
cpu_credits: Optional[str] = None,
cpu_options: Optional[ElastigroupCpuOptionsArgs] = None,
description: Optional[str] = None,
desired_capacity: Optional[int] = None,
draining_timeout: Optional[int] = None,
ebs_block_devices: Optional[Sequence[ElastigroupEbsBlockDeviceArgs]] = None,
ebs_optimized: Optional[bool] = None,
elastic_ips: Optional[Sequence[str]] = None,
elastic_load_balancers: Optional[Sequence[str]] = None,
enable_monitoring: Optional[bool] = None,
ephemeral_block_devices: Optional[Sequence[ElastigroupEphemeralBlockDeviceArgs]] = None,
fallback_to_ondemand: Optional[bool] = None,
health_check_grace_period: Optional[int] = None,
health_check_type: Optional[str] = None,
health_check_unhealthy_duration_before_replacement: Optional[int] = None,
iam_instance_profile: Optional[str] = None,
image_id: Optional[str] = None,
images: Optional[Sequence[ElastigroupImageArgs]] = None,
immediate_od_recover_threshold: Optional[int] = None,
instance_types_ondemand: Optional[str] = None,
instance_types_preferred_spots: Optional[Sequence[str]] = None,
instance_types_spots: Optional[Sequence[str]] = None,
instance_types_weights: Optional[Sequence[ElastigroupInstanceTypesWeightArgs]] = None,
integration_beanstalk: Optional[ElastigroupIntegrationBeanstalkArgs] = None,
integration_codedeploy: Optional[ElastigroupIntegrationCodedeployArgs] = None,
integration_docker_swarm: Optional[ElastigroupIntegrationDockerSwarmArgs] = None,
integration_ecs: Optional[ElastigroupIntegrationEcsArgs] = None,
integration_gitlab: Optional[ElastigroupIntegrationGitlabArgs] = None,
integration_kubernetes: Optional[ElastigroupIntegrationKubernetesArgs] = None,
integration_mesosphere: Optional[ElastigroupIntegrationMesosphereArgs] = None,
integration_nomad: Optional[ElastigroupIntegrationNomadArgs] = None,
integration_rancher: Optional[ElastigroupIntegrationRancherArgs] = None,
integration_route53: Optional[ElastigroupIntegrationRoute53Args] = None,
itfs: Optional[Sequence[ElastigroupItfArgs]] = None,
key_name: Optional[str] = None,
lifetime_period: Optional[str] = None,
logging: Optional[ElastigroupLoggingArgs] = None,
max_size: Optional[int] = None,
metadata_options: Optional[ElastigroupMetadataOptionsArgs] = None,
min_size: Optional[int] = None,
minimum_instance_lifetime: Optional[int] = None,
multiple_metrics: Optional[ElastigroupMultipleMetricsArgs] = None,
name: Optional[str] = None,
network_interfaces: Optional[Sequence[ElastigroupNetworkInterfaceArgs]] = None,
on_demand_types: Optional[Sequence[str]] = None,
ondemand_count: Optional[int] = None,
orientation: Optional[str] = None,
persist_block_devices: Optional[bool] = None,
persist_private_ip: Optional[bool] = None,
persist_root_device: Optional[bool] = None,
placement_tenancy: Optional[str] = None,
preferred_availability_zones: Optional[Sequence[str]] = None,
private_ips: Optional[Sequence[str]] = None,
product: Optional[str] = None,
region: Optional[str] = None,
resource_requirements: Optional[Sequence[ElastigroupResourceRequirementArgs]] = None,
resource_tag_specifications: Optional[Sequence[ElastigroupResourceTagSpecificationArgs]] = None,
revert_to_spot: Optional[ElastigroupRevertToSpotArgs] = None,
scaling_down_policies: Optional[Sequence[ElastigroupScalingDownPolicyArgs]] = None,
scaling_strategies: Optional[Sequence[ElastigroupScalingStrategyArgs]] = None,
scaling_target_policies: Optional[Sequence[ElastigroupScalingTargetPolicyArgs]] = None,
scaling_up_policies: Optional[Sequence[ElastigroupScalingUpPolicyArgs]] = None,
scheduled_tasks: Optional[Sequence[ElastigroupScheduledTaskArgs]] = None,
security_groups: Optional[Sequence[str]] = None,
shutdown_script: Optional[str] = None,
signals: Optional[Sequence[ElastigroupSignalArgs]] = None,
spot_percentage: Optional[int] = None,
stateful_deallocation: Optional[ElastigroupStatefulDeallocationArgs] = None,
stateful_instance_actions: Optional[Sequence[ElastigroupStatefulInstanceActionArgs]] = None,
subnet_ids: Optional[Sequence[str]] = None,
tags: Optional[Sequence[ElastigroupTagArgs]] = None,
target_group_arns: Optional[Sequence[str]] = None,
update_policy: Optional[ElastigroupUpdatePolicyArgs] = None,
user_data: Optional[str] = None,
utilize_commitments: Optional[bool] = None,
utilize_reserved_instances: Optional[bool] = None,
wait_for_capacity: Optional[int] = None,
wait_for_capacity_timeout: Optional[int] = None) -> Elastigroup
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)
public static Elastigroup get(String name, Output<String> id, ElastigroupState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Availability
Zones List<string> - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- Block
Devices stringMode - Capacity
Unit string - 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. Valid values:
instance
,weight
. - Consider
Od boolPricing - Cpu
Credits string - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - Cpu
Options Pulumi.Spot Inst. Aws. Inputs. Elastigroup Cpu Options - The CPU options for the instances that are launched within the group:
- Description string
- The group description.
- Desired
Capacity int - The desired number of instances the group should have at any time.
- Draining
Timeout int - 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.
- Ebs
Block List<Pulumi.Devices Spot Inst. Aws. Inputs. Elastigroup Ebs Block Device> - Ebs
Optimized bool - 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.
- Elastic
Ips List<string> - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- Elastic
Load List<string>Balancers - Enable
Monitoring bool - Indicates whether monitoring is enabled for the instance.
- Ephemeral
Block List<Pulumi.Devices Spot Inst. Aws. Inputs. Elastigroup Ephemeral Block Device> - Fallback
To boolOndemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- Health
Check intGrace Period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- Health
Check stringType - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - Health
Check intUnhealthy Duration Before Replacement - 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).
- Iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- Image
Id string - The ID of the AMI used to launch the instance.
- Images
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Image> - An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- Immediate
Od intRecover Threshold - Instance
Types stringOndemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- Instance
Types List<string>Preferred Spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- Instance
Types List<string>Spots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- Instance
Types List<Pulumi.Weights Spot Inst. Aws. Inputs. Elastigroup Instance Types Weight> - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- Integration
Beanstalk Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Beanstalk - Integration
Codedeploy Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Codedeploy - Integration
Docker Pulumi.Swarm Spot Inst. Aws. Inputs. Elastigroup Integration Docker Swarm - Integration
Ecs Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Ecs - Integration
Gitlab Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Gitlab - Integration
Kubernetes Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Kubernetes - Integration
Mesosphere Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Mesosphere - Integration
Nomad Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Nomad - Integration
Rancher Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Rancher - Integration
Route53 Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Route53 - Itfs
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Itf> - Key
Name string - The key name that should be used for the instance.
- Lifetime
Period string - Logging
Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Logging - Logging configuration.
- Max
Size int - The maximum number of instances the group should have at any time.
- Metadata
Options Pulumi.Spot Inst. Aws. Inputs. Elastigroup Metadata Options - Data that used to configure or manage the running instances:
- Min
Size int - The minimum number of instances the group should have at any time.
- Minimum
Instance intLifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- Multiple
Metrics Pulumi.Spot Inst. Aws. Inputs. Elastigroup Multiple Metrics - Name string
- The group name.
- Network
Interfaces List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Network Interface> - On
Demand List<string>Types - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- Ondemand
Count int - 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. - Orientation string
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - Persist
Block boolDevices - Persist
Private boolIp - Persist
Root boolDevice - Placement
Tenancy string - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- Preferred
Availability List<string>Zones - 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
andorientation
value must not be"equalAzDistribution"
. - Private
Ips List<string> - Product string
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - Region string
- 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).
- Resource
Requirements List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Resource Requirement> - Required instance attributes. Instance types will be selected based on these requirements.
- List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Resource Tag Specification> - User will specify which resources should be tagged with group tags.
- Revert
To Pulumi.Spot Spot Inst. Aws. Inputs. Elastigroup Revert To Spot - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- Scaling
Down List<Pulumi.Policies Spot Inst. Aws. Inputs. Elastigroup Scaling Down Policy> - Scaling
Strategies List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Scaling Strategy> - Set termination policy.
- Scaling
Target List<Pulumi.Policies Spot Inst. Aws. Inputs. Elastigroup Scaling Target Policy> - Scaling
Up List<Pulumi.Policies Spot Inst. Aws. Inputs. Elastigroup Scaling Up Policy> - Scheduled
Tasks List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Scheduled Task> - Security
Groups List<string> - A list of associated security group IDS.
- Shutdown
Script string - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- Signals
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Signal> - Spot
Percentage int - The percentage of Spot instances that would spin up from the
desired_capacity
number. - Stateful
Deallocation Pulumi.Spot Inst. Aws. Inputs. Elastigroup Stateful Deallocation - Stateful
Instance List<Pulumi.Actions Spot Inst. Aws. Inputs. Elastigroup Stateful Instance Action> - Subnet
Ids List<string> - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Tag> - A key/value mapping of tags to assign to the resource.
- Target
Group List<string>Arns - Update
Policy Pulumi.Spot Inst. Aws. Inputs. Elastigroup Update Policy - User
Data string - The user data to provide when launching the instance.
- Utilize
Commitments bool - Utilize
Reserved boolInstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- Wait
For intCapacity - 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
. - Wait
For intCapacity Timeout - 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.
- Availability
Zones []string - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- Block
Devices stringMode - Capacity
Unit string - 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. Valid values:
instance
,weight
. - Consider
Od boolPricing - Cpu
Credits string - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - Cpu
Options ElastigroupCpu Options Args - The CPU options for the instances that are launched within the group:
- Description string
- The group description.
- Desired
Capacity int - The desired number of instances the group should have at any time.
- Draining
Timeout int - 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.
- Ebs
Block []ElastigroupDevices Ebs Block Device Args - Ebs
Optimized bool - 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.
- Elastic
Ips []string - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- Elastic
Load []stringBalancers - Enable
Monitoring bool - Indicates whether monitoring is enabled for the instance.
- Ephemeral
Block []ElastigroupDevices Ephemeral Block Device Args - Fallback
To boolOndemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- Health
Check intGrace Period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- Health
Check stringType - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - Health
Check intUnhealthy Duration Before Replacement - 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).
- Iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- Image
Id string - The ID of the AMI used to launch the instance.
- Images
[]Elastigroup
Image Args - An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- Immediate
Od intRecover Threshold - Instance
Types stringOndemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- Instance
Types []stringPreferred Spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- Instance
Types []stringSpots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- Instance
Types []ElastigroupWeights Instance Types Weight Args - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- Integration
Beanstalk ElastigroupIntegration Beanstalk Args - Integration
Codedeploy ElastigroupIntegration Codedeploy Args - Integration
Docker ElastigroupSwarm Integration Docker Swarm Args - Integration
Ecs ElastigroupIntegration Ecs Args - Integration
Gitlab ElastigroupIntegration Gitlab Args - Integration
Kubernetes ElastigroupIntegration Kubernetes Args - Integration
Mesosphere ElastigroupIntegration Mesosphere Args - Integration
Nomad ElastigroupIntegration Nomad Args - Integration
Rancher ElastigroupIntegration Rancher Args - Integration
Route53 ElastigroupIntegration Route53Args - Itfs
[]Elastigroup
Itf Args - Key
Name string - The key name that should be used for the instance.
- Lifetime
Period string - Logging
Elastigroup
Logging Args - Logging configuration.
- Max
Size int - The maximum number of instances the group should have at any time.
- Metadata
Options ElastigroupMetadata Options Args - Data that used to configure or manage the running instances:
- Min
Size int - The minimum number of instances the group should have at any time.
- Minimum
Instance intLifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- Multiple
Metrics ElastigroupMultiple Metrics Args - Name string
- The group name.
- Network
Interfaces []ElastigroupNetwork Interface Args - On
Demand []stringTypes - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- Ondemand
Count int - 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. - Orientation string
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - Persist
Block boolDevices - Persist
Private boolIp - Persist
Root boolDevice - Placement
Tenancy string - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- Preferred
Availability []stringZones - 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
andorientation
value must not be"equalAzDistribution"
. - Private
Ips []string - Product string
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - Region string
- 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).
- Resource
Requirements []ElastigroupResource Requirement Args - Required instance attributes. Instance types will be selected based on these requirements.
- []Elastigroup
Resource Tag Specification Args - User will specify which resources should be tagged with group tags.
- Revert
To ElastigroupSpot Revert To Spot Args - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- Scaling
Down []ElastigroupPolicies Scaling Down Policy Args - Scaling
Strategies []ElastigroupScaling Strategy Args - Set termination policy.
- Scaling
Target []ElastigroupPolicies Scaling Target Policy Args - Scaling
Up []ElastigroupPolicies Scaling Up Policy Args - Scheduled
Tasks []ElastigroupScheduled Task Args - Security
Groups []string - A list of associated security group IDS.
- Shutdown
Script string - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- Signals
[]Elastigroup
Signal Args - Spot
Percentage int - The percentage of Spot instances that would spin up from the
desired_capacity
number. - Stateful
Deallocation ElastigroupStateful Deallocation Args - Stateful
Instance []ElastigroupActions Stateful Instance Action Args - Subnet
Ids []string - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - []Elastigroup
Tag Args - A key/value mapping of tags to assign to the resource.
- Target
Group []stringArns - Update
Policy ElastigroupUpdate Policy Args - User
Data string - The user data to provide when launching the instance.
- Utilize
Commitments bool - Utilize
Reserved boolInstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- Wait
For intCapacity - 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
. - Wait
For intCapacity Timeout - 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.
- availability
Zones List<String> - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- block
Devices StringMode - capacity
Unit String - 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. Valid values:
instance
,weight
. - consider
Od BooleanPricing - cpu
Credits String - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - cpu
Options ElastigroupCpu Options - The CPU options for the instances that are launched within the group:
- description String
- The group description.
- desired
Capacity Integer - The desired number of instances the group should have at any time.
- draining
Timeout Integer - 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.
- ebs
Block List<ElastigroupDevices Ebs Block Device> - ebs
Optimized Boolean - 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.
- elastic
Ips List<String> - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- elastic
Load List<String>Balancers - enable
Monitoring Boolean - Indicates whether monitoring is enabled for the instance.
- ephemeral
Block List<ElastigroupDevices Ephemeral Block Device> - fallback
To BooleanOndemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- health
Check IntegerGrace Period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- health
Check StringType - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - health
Check IntegerUnhealthy Duration Before Replacement - 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).
- iam
Instance StringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id String - The ID of the AMI used to launch the instance.
- images
List<Elastigroup
Image> - An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- immediate
Od IntegerRecover Threshold - instance
Types StringOndemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- instance
Types List<String>Preferred Spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- instance
Types List<String>Spots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- instance
Types List<ElastigroupWeights Instance Types Weight> - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- integration
Beanstalk ElastigroupIntegration Beanstalk - integration
Codedeploy ElastigroupIntegration Codedeploy - integration
Docker ElastigroupSwarm Integration Docker Swarm - integration
Ecs ElastigroupIntegration Ecs - integration
Gitlab ElastigroupIntegration Gitlab - integration
Kubernetes ElastigroupIntegration Kubernetes - integration
Mesosphere ElastigroupIntegration Mesosphere - integration
Nomad ElastigroupIntegration Nomad - integration
Rancher ElastigroupIntegration Rancher - integration
Route53 ElastigroupIntegration Route53 - itfs
List<Elastigroup
Itf> - key
Name String - The key name that should be used for the instance.
- lifetime
Period String - logging
Elastigroup
Logging - Logging configuration.
- max
Size Integer - The maximum number of instances the group should have at any time.
- metadata
Options ElastigroupMetadata Options - Data that used to configure or manage the running instances:
- min
Size Integer - The minimum number of instances the group should have at any time.
- minimum
Instance IntegerLifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- multiple
Metrics ElastigroupMultiple Metrics - name String
- The group name.
- network
Interfaces List<ElastigroupNetwork Interface> - on
Demand List<String>Types - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- ondemand
Count Integer - 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. - orientation String
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - persist
Block BooleanDevices - persist
Private BooleanIp - persist
Root BooleanDevice - placement
Tenancy String - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- preferred
Availability List<String>Zones - 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
andorientation
value must not be"equalAzDistribution"
. - private
Ips List<String> - product String
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - region String
- 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).
- resource
Requirements List<ElastigroupResource Requirement> - Required instance attributes. Instance types will be selected based on these requirements.
- List<Elastigroup
Resource Tag Specification> - User will specify which resources should be tagged with group tags.
- revert
To ElastigroupSpot Revert To Spot - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- scaling
Down List<ElastigroupPolicies Scaling Down Policy> - scaling
Strategies List<ElastigroupScaling Strategy> - Set termination policy.
- scaling
Target List<ElastigroupPolicies Scaling Target Policy> - scaling
Up List<ElastigroupPolicies Scaling Up Policy> - scheduled
Tasks List<ElastigroupScheduled Task> - security
Groups List<String> - A list of associated security group IDS.
- shutdown
Script String - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- signals
List<Elastigroup
Signal> - spot
Percentage Integer - The percentage of Spot instances that would spin up from the
desired_capacity
number. - stateful
Deallocation ElastigroupStateful Deallocation - stateful
Instance List<ElastigroupActions Stateful Instance Action> - subnet
Ids List<String> - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - List<Elastigroup
Tag> - A key/value mapping of tags to assign to the resource.
- target
Group List<String>Arns - update
Policy ElastigroupUpdate Policy - user
Data String - The user data to provide when launching the instance.
- utilize
Commitments Boolean - utilize
Reserved BooleanInstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- wait
For IntegerCapacity - 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
. - wait
For IntegerCapacity Timeout - 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.
- availability
Zones string[] - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- block
Devices stringMode - capacity
Unit string - 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. Valid values:
instance
,weight
. - consider
Od booleanPricing - cpu
Credits string - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - cpu
Options ElastigroupCpu Options - The CPU options for the instances that are launched within the group:
- description string
- The group description.
- desired
Capacity number - The desired number of instances the group should have at any time.
- draining
Timeout number - 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.
- ebs
Block ElastigroupDevices Ebs Block Device[] - ebs
Optimized boolean - 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.
- elastic
Ips string[] - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- elastic
Load string[]Balancers - enable
Monitoring boolean - Indicates whether monitoring is enabled for the instance.
- ephemeral
Block ElastigroupDevices Ephemeral Block Device[] - fallback
To booleanOndemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- health
Check numberGrace Period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- health
Check stringType - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - health
Check numberUnhealthy Duration Before Replacement - 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).
- iam
Instance stringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id string - The ID of the AMI used to launch the instance.
- images
Elastigroup
Image[] - An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- immediate
Od numberRecover Threshold - instance
Types stringOndemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- instance
Types string[]Preferred Spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- instance
Types string[]Spots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- instance
Types ElastigroupWeights Instance Types Weight[] - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- integration
Beanstalk ElastigroupIntegration Beanstalk - integration
Codedeploy ElastigroupIntegration Codedeploy - integration
Docker ElastigroupSwarm Integration Docker Swarm - integration
Ecs ElastigroupIntegration Ecs - integration
Gitlab ElastigroupIntegration Gitlab - integration
Kubernetes ElastigroupIntegration Kubernetes - integration
Mesosphere ElastigroupIntegration Mesosphere - integration
Nomad ElastigroupIntegration Nomad - integration
Rancher ElastigroupIntegration Rancher - integration
Route53 ElastigroupIntegration Route53 - itfs
Elastigroup
Itf[] - key
Name string - The key name that should be used for the instance.
- lifetime
Period string - logging
Elastigroup
Logging - Logging configuration.
- max
Size number - The maximum number of instances the group should have at any time.
- metadata
Options ElastigroupMetadata Options - Data that used to configure or manage the running instances:
- min
Size number - The minimum number of instances the group should have at any time.
- minimum
Instance numberLifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- multiple
Metrics ElastigroupMultiple Metrics - name string
- The group name.
- network
Interfaces ElastigroupNetwork Interface[] - on
Demand string[]Types - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- ondemand
Count number - 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. - orientation string
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - persist
Block booleanDevices - persist
Private booleanIp - persist
Root booleanDevice - placement
Tenancy string - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- preferred
Availability string[]Zones - 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
andorientation
value must not be"equalAzDistribution"
. - private
Ips string[] - product string
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - region string
- 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).
- resource
Requirements ElastigroupResource Requirement[] - Required instance attributes. Instance types will be selected based on these requirements.
- Elastigroup
Resource Tag Specification[] - User will specify which resources should be tagged with group tags.
- revert
To ElastigroupSpot Revert To Spot - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- scaling
Down ElastigroupPolicies Scaling Down Policy[] - scaling
Strategies ElastigroupScaling Strategy[] - Set termination policy.
- scaling
Target ElastigroupPolicies Scaling Target Policy[] - scaling
Up ElastigroupPolicies Scaling Up Policy[] - scheduled
Tasks ElastigroupScheduled Task[] - security
Groups string[] - A list of associated security group IDS.
- shutdown
Script string - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- signals
Elastigroup
Signal[] - spot
Percentage number - The percentage of Spot instances that would spin up from the
desired_capacity
number. - stateful
Deallocation ElastigroupStateful Deallocation - stateful
Instance ElastigroupActions Stateful Instance Action[] - subnet
Ids string[] - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - Elastigroup
Tag[] - A key/value mapping of tags to assign to the resource.
- target
Group string[]Arns - update
Policy ElastigroupUpdate Policy - user
Data string - The user data to provide when launching the instance.
- utilize
Commitments boolean - utilize
Reserved booleanInstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- wait
For numberCapacity - 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
. - wait
For numberCapacity Timeout - 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.
- availability_
zones Sequence[str] - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- block_
devices_ strmode - capacity_
unit str - 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. Valid values:
instance
,weight
. - consider_
od_ boolpricing - cpu_
credits str - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - cpu_
options ElastigroupCpu Options Args - The CPU options for the instances that are launched within the group:
- description str
- The group description.
- desired_
capacity int - The desired number of instances the group should have at any time.
- draining_
timeout int - 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.
- ebs_
block_ Sequence[Elastigroupdevices Ebs Block Device Args] - ebs_
optimized bool - 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.
- elastic_
ips Sequence[str] - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- elastic_
load_ Sequence[str]balancers - enable_
monitoring bool - Indicates whether monitoring is enabled for the instance.
- ephemeral_
block_ Sequence[Elastigroupdevices Ephemeral Block Device Args] - fallback_
to_ boolondemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- health_
check_ intgrace_ period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- health_
check_ strtype - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - health_
check_ intunhealthy_ duration_ before_ replacement - 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).
- iam_
instance_ strprofile - The ARN or name of an IAM instance profile to associate with launched instances.
- image_
id str - The ID of the AMI used to launch the instance.
- images
Sequence[Elastigroup
Image Args] - An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- immediate_
od_ intrecover_ threshold - instance_
types_ strondemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- instance_
types_ Sequence[str]preferred_ spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- instance_
types_ Sequence[str]spots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- instance_
types_ Sequence[Elastigroupweights Instance Types Weight Args] - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- integration_
beanstalk ElastigroupIntegration Beanstalk Args - integration_
codedeploy ElastigroupIntegration Codedeploy Args - integration_
docker_ Elastigroupswarm Integration Docker Swarm Args - integration_
ecs ElastigroupIntegration Ecs Args - integration_
gitlab ElastigroupIntegration Gitlab Args - integration_
kubernetes ElastigroupIntegration Kubernetes Args - integration_
mesosphere ElastigroupIntegration Mesosphere Args - integration_
nomad ElastigroupIntegration Nomad Args - integration_
rancher ElastigroupIntegration Rancher Args - integration_
route53 ElastigroupIntegration Route53Args - itfs
Sequence[Elastigroup
Itf Args] - key_
name str - The key name that should be used for the instance.
- lifetime_
period str - logging
Elastigroup
Logging Args - Logging configuration.
- max_
size int - The maximum number of instances the group should have at any time.
- metadata_
options ElastigroupMetadata Options Args - Data that used to configure or manage the running instances:
- min_
size int - The minimum number of instances the group should have at any time.
- minimum_
instance_ intlifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- multiple_
metrics ElastigroupMultiple Metrics Args - name str
- The group name.
- network_
interfaces Sequence[ElastigroupNetwork Interface Args] - on_
demand_ Sequence[str]types - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- ondemand_
count int - 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. - orientation str
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - persist_
block_ booldevices - persist_
private_ boolip - persist_
root_ booldevice - placement_
tenancy str - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- preferred_
availability_ Sequence[str]zones - 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
andorientation
value must not be"equalAzDistribution"
. - private_
ips Sequence[str] - product str
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - region str
- 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).
- resource_
requirements Sequence[ElastigroupResource Requirement Args] - Required instance attributes. Instance types will be selected based on these requirements.
- resource_
tag_ Sequence[Elastigroupspecifications Resource Tag Specification Args] - User will specify which resources should be tagged with group tags.
- revert_
to_ Elastigroupspot Revert To Spot Args - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- scaling_
down_ Sequence[Elastigrouppolicies Scaling Down Policy Args] - scaling_
strategies Sequence[ElastigroupScaling Strategy Args] - Set termination policy.
- scaling_
target_ Sequence[Elastigrouppolicies Scaling Target Policy Args] - scaling_
up_ Sequence[Elastigrouppolicies Scaling Up Policy Args] - scheduled_
tasks Sequence[ElastigroupScheduled Task Args] - security_
groups Sequence[str] - A list of associated security group IDS.
- shutdown_
script str - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- signals
Sequence[Elastigroup
Signal Args] - spot_
percentage int - The percentage of Spot instances that would spin up from the
desired_capacity
number. - stateful_
deallocation ElastigroupStateful Deallocation Args - stateful_
instance_ Sequence[Elastigroupactions Stateful Instance Action Args] - subnet_
ids Sequence[str] - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - Sequence[Elastigroup
Tag Args] - A key/value mapping of tags to assign to the resource.
- target_
group_ Sequence[str]arns - update_
policy ElastigroupUpdate Policy Args - user_
data str - The user data to provide when launching the instance.
- utilize_
commitments bool - utilize_
reserved_ boolinstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- wait_
for_ intcapacity - 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
. - wait_
for_ intcapacity_ timeout - 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.
- availability
Zones List<String> - List of Strings of availability zones. When this parameter is set,
subnet_ids
should be left unused. Note:availability_zones
naming syntax follows the conventionavailability-zone:subnet:placement-group-name
. For example, to set an AZ inus-east-1
with subnetsubnet-123456
and placement groupClusterI03
, you would set:availability_zones = ["us-east-1a:subnet-123456:ClusterI03"]
- block
Devices StringMode - capacity
Unit String - 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. Valid values:
instance
,weight
. - consider
Od BooleanPricing - cpu
Credits String - Controls how T3 instances are launched. Valid values:
standard
,unlimited
. - cpu
Options Property Map - The CPU options for the instances that are launched within the group:
- description String
- The group description.
- desired
Capacity Number - The desired number of instances the group should have at any time.
- draining
Timeout Number - 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.
- ebs
Block List<Property Map>Devices - ebs
Optimized Boolean - 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.
- elastic
Ips List<String> - A list of AWS Elastic IP allocation IDs to associate to the group instances.
- elastic
Load List<String>Balancers - enable
Monitoring Boolean - Indicates whether monitoring is enabled for the instance.
- ephemeral
Block List<Property Map>Devices - fallback
To BooleanOndemand - In a case of no Spot instances available, Elastigroup will launch on-demand instances instead.
- health
Check NumberGrace Period - The amount of time, in seconds, after the instance has launched to starts and check its health.
- health
Check StringType - The service that will perform health checks for the instance. Valid values:
"ELB"
,"HCS"
,"TARGET_GROUP"
,"EC2"
,"K8S_NODE"
,"NOMAD_NODE"
,"ECS_CLUSTER_INSTANCE"
. - health
Check NumberUnhealthy Duration Before Replacement - 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).
- iam
Instance StringProfile - The ARN or name of an IAM instance profile to associate with launched instances.
- image
Id String - The ID of the AMI used to launch the instance.
- images List<Property Map>
- An array of image objects. Note: Elastigroup can be configured with either imageId or images, but not both.
- immediate
Od NumberRecover Threshold - instance
Types StringOndemand - The type of instance determines your instance's CPU capacity, memory and storage (e.g., m1.small, c1.xlarge).
- instance
Types List<String>Preferred Spots - Prioritize a subset of spot instance types. Must be a subset of the selected spot instance types.
- instance
Types List<String>Spots - One or more instance types. Note: Cannot be defined if 'resourceRequirements' is defined.
- instance
Types List<Property Map>Weights - List of weights per instance type for weighted groups. Each object in the list should have the following attributes:
- integration
Beanstalk Property Map - integration
Codedeploy Property Map - integration
Docker Property MapSwarm - integration
Ecs Property Map - integration
Gitlab Property Map - integration
Kubernetes Property Map - integration
Mesosphere Property Map - integration
Nomad Property Map - integration
Rancher Property Map - integration
Route53 Property Map - itfs List<Property Map>
- key
Name String - The key name that should be used for the instance.
- lifetime
Period String - logging Property Map
- Logging configuration.
- max
Size Number - The maximum number of instances the group should have at any time.
- metadata
Options Property Map - Data that used to configure or manage the running instances:
- min
Size Number - The minimum number of instances the group should have at any time.
- minimum
Instance NumberLifetime - Defines the preferred minimum instance lifetime in hours. Markets which comply with this preference will be prioritized. Optional values: 1, 3, 6, 12, 24.
- multiple
Metrics Property Map - name String
- The group name.
- network
Interfaces List<Property Map> - on
Demand List<String>Types - Available ondemand instance types. Note: Either ondemand or onDemandTypes must be defined, but not both.
- ondemand
Count Number - 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. - orientation String
- Select a prediction strategy. Valid values:
balanced
,costOriented
,equalAzDistribution
,availabilityOriented
. You can read more in our documentation. - persist
Block BooleanDevices - persist
Private BooleanIp - persist
Root BooleanDevice - placement
Tenancy String - Enable dedicated tenancy. Note: There is a flat hourly fee for each region in which dedicated tenancy is used. Valid values: "default", "dedicated" .
- preferred
Availability List<String>Zones - 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
andorientation
value must not be"equalAzDistribution"
. - private
Ips List<String> - product String
- Operation system type. Valid values:
"Linux/UNIX"
,"SUSE Linux"
,"Windows"
. For EC2 Classic instances:"Linux/UNIX (Amazon VPC)"
,"SUSE Linux (Amazon VPC)"
,"Windows (Amazon VPC)"
. - region String
- 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).
- resource
Requirements List<Property Map> - Required instance attributes. Instance types will be selected based on these requirements.
- List<Property Map>
- User will specify which resources should be tagged with group tags.
- revert
To Property MapSpot - Hold settings for strategy correction – replacing On-Demand for Spot instances. Supported Values:
"never"
,"always"
,"timeWindow"
- scaling
Down List<Property Map>Policies - scaling
Strategies List<Property Map> - Set termination policy.
- scaling
Target List<Property Map>Policies - scaling
Up List<Property Map>Policies - scheduled
Tasks List<Property Map> - security
Groups List<String> - A list of associated security group IDS.
- shutdown
Script String - The Base64-encoded shutdown script that executes prior to instance termination, for more information please see: Shutdown Script
- signals List<Property Map>
- spot
Percentage Number - The percentage of Spot instances that would spin up from the
desired_capacity
number. - stateful
Deallocation Property Map - stateful
Instance List<Property Map>Actions - subnet
Ids List<String> - List of Strings of subnet identifiers.
Note: When this parameter is set,
availability_zones
should be left unused. - List<Property Map>
- A key/value mapping of tags to assign to the resource.
- target
Group List<String>Arns - update
Policy Property Map - user
Data String - The user data to provide when launching the instance.
- utilize
Commitments Boolean - utilize
Reserved BooleanInstances - In a case of any available reserved instances, Elastigroup will utilize them first before purchasing Spot instances.
- wait
For NumberCapacity - 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
. - wait
For NumberCapacity Timeout - 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.
Supporting Types
ElastigroupCpuOptions, ElastigroupCpuOptionsArgs
- Threads
Per intCore - The ability to define the number of threads per core in instances that allow this.
- Threads
Per intCore - The ability to define the number of threads per core in instances that allow this.
- threads
Per IntegerCore - The ability to define the number of threads per core in instances that allow this.
- threads
Per numberCore - The ability to define the number of threads per core in instances that allow this.
- threads_
per_ intcore - The ability to define the number of threads per core in instances that allow this.
- threads
Per NumberCore - The ability to define the number of threads per core in instances that allow this.
ElastigroupEbsBlockDevice, ElastigroupEbsBlockDeviceArgs
- Device
Name string - The name of the device to mount.
- Delete
On boolTermination - Whether the volume should be destroyed on instance termination.
- Encrypted bool
- Enables EBS encryption on the volume.
- Iops int
- The amount of provisioned IOPS. This must be set with a
volume_type
of"io1"
. - Kms
Key stringId - ID for a user managed CMK under which the EBS Volume is encrypted
- Snapshot
Id string - The Snapshot ID to mount.
- Throughput int
The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3.Modifying any
ebs_block_device
currently requires resource replacement.Usage:
- Volume
Size int - The size of the volume in gigabytes.
- Volume
Type string - The type of volume. Can be
"standard"
,"gp2"
,"gp3"
,"io1"
,"st1"
or"sc1"
.
- Device
Name string - The name of the device to mount.
- Delete
On boolTermination - Whether the volume should be destroyed on instance termination.
- Encrypted bool
- Enables EBS encryption on the volume.
- Iops int
- The amount of provisioned IOPS. This must be set with a
volume_type
of"io1"
. - Kms
Key stringId - ID for a user managed CMK under which the EBS Volume is encrypted
- Snapshot
Id string - The Snapshot ID to mount.
- Throughput int
The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3.Modifying any
ebs_block_device
currently requires resource replacement.Usage:
- Volume
Size int - The size of the volume in gigabytes.
- Volume
Type string - The type of volume. Can be
"standard"
,"gp2"
,"gp3"
,"io1"
,"st1"
or"sc1"
.
- device
Name String - The name of the device to mount.
- delete
On BooleanTermination - Whether the volume should be destroyed on instance termination.
- encrypted Boolean
- Enables EBS encryption on the volume.
- iops Integer
- The amount of provisioned IOPS. This must be set with a
volume_type
of"io1"
. - kms
Key StringId - ID for a user managed CMK under which the EBS Volume is encrypted
- snapshot
Id String - The Snapshot ID to mount.
- throughput Integer
The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3.Modifying any
ebs_block_device
currently requires resource replacement.Usage:
- volume
Size Integer - The size of the volume in gigabytes.
- volume
Type String - The type of volume. Can be
"standard"
,"gp2"
,"gp3"
,"io1"
,"st1"
or"sc1"
.
- device
Name string - The name of the device to mount.
- delete
On booleanTermination - Whether the volume should be destroyed on instance termination.
- encrypted boolean
- Enables EBS encryption on the volume.
- iops number
- The amount of provisioned IOPS. This must be set with a
volume_type
of"io1"
. - kms
Key stringId - ID for a user managed CMK under which the EBS Volume is encrypted
- snapshot
Id string - The Snapshot ID to mount.
- throughput number
The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3.Modifying any
ebs_block_device
currently requires resource replacement.Usage:
- volume
Size number - The size of the volume in gigabytes.
- volume
Type string - The type of volume. Can be
"standard"
,"gp2"
,"gp3"
,"io1"
,"st1"
or"sc1"
.
- device_
name str - The name of the device to mount.
- delete_
on_ booltermination - Whether the volume should be destroyed on instance termination.
- encrypted bool
- Enables EBS encryption on the volume.
- iops int
- The amount of provisioned IOPS. This must be set with a
volume_type
of"io1"
. - kms_
key_ strid - ID for a user managed CMK under which the EBS Volume is encrypted
- snapshot_
id str - The Snapshot ID to mount.
- throughput int
The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3.Modifying any
ebs_block_device
currently requires resource replacement.Usage:
- volume_
size int - The size of the volume in gigabytes.
- volume_
type str - The type of volume. Can be
"standard"
,"gp2"
,"gp3"
,"io1"
,"st1"
or"sc1"
.
- device
Name String - The name of the device to mount.
- delete
On BooleanTermination - Whether the volume should be destroyed on instance termination.
- encrypted Boolean
- Enables EBS encryption on the volume.
- iops Number
- The amount of provisioned IOPS. This must be set with a
volume_type
of"io1"
. - kms
Key StringId - ID for a user managed CMK under which the EBS Volume is encrypted
- snapshot
Id String - The Snapshot ID to mount.
- throughput Number
The amount of data transferred to or from a storage device per second, you can use this param just in a case that
volume_type
= gp3.Modifying any
ebs_block_device
currently requires resource replacement.Usage:
- volume
Size Number - The size of the volume in gigabytes.
- volume
Type String - The type of volume. Can be
"standard"
,"gp2"
,"gp3"
,"io1"
,"st1"
or"sc1"
.
ElastigroupEphemeralBlockDevice, ElastigroupEphemeralBlockDeviceArgs
- Device
Name string - The name of the block device to mount on the instance.
- Virtual
Name string The Instance Store Device Name (e.g.
"ephemeral0"
).Usage:
- Device
Name string - The name of the block device to mount on the instance.
- Virtual
Name string The Instance Store Device Name (e.g.
"ephemeral0"
).Usage:
- device
Name String - The name of the block device to mount on the instance.
- virtual
Name String The Instance Store Device Name (e.g.
"ephemeral0"
).Usage:
- device
Name string - The name of the block device to mount on the instance.
- virtual
Name string The Instance Store Device Name (e.g.
"ephemeral0"
).Usage:
- device_
name str - The name of the block device to mount on the instance.
- virtual_
name str The Instance Store Device Name (e.g.
"ephemeral0"
).Usage:
- device
Name String - The name of the block device to mount on the instance.
- virtual
Name String The Instance Store Device Name (e.g.
"ephemeral0"
).Usage:
ElastigroupImage, ElastigroupImageArgs
ElastigroupImageImage, ElastigroupImageImageArgs
- Id string
- The group ID.
- Id string
- The group ID.
- id String
- The group ID.
- id string
- The group ID.
- id str
- The group ID.
- id String
- The group ID.
ElastigroupInstanceTypesWeight, ElastigroupInstanceTypesWeightArgs
- Instance
Type string - Name of instance type (String).
- Weight int
- Weight per instance type (Integer).
- Instance
Type string - Name of instance type (String).
- Weight int
- Weight per instance type (Integer).
- instance
Type String - Name of instance type (String).
- weight Integer
- Weight per instance type (Integer).
- instance
Type string - Name of instance type (String).
- weight number
- Weight per instance type (Integer).
- instance_
type str - Name of instance type (String).
- weight int
- Weight per instance type (Integer).
- instance
Type String - Name of instance type (String).
- weight Number
- Weight per instance type (Integer).
ElastigroupIntegrationBeanstalk, ElastigroupIntegrationBeanstalkArgs
ElastigroupIntegrationBeanstalkDeploymentPreferences, ElastigroupIntegrationBeanstalkDeploymentPreferencesArgs
- automatic
Roll Boolean - batch
Size NumberPercentage - grace
Period Number - strategy Property Map
ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategy, ElastigroupIntegrationBeanstalkDeploymentPreferencesStrategyArgs
- Action string
- Should
Drain boolInstances
- Action string
- Should
Drain boolInstances
- action String
- should
Drain BooleanInstances
- action string
- should
Drain booleanInstances
- action str
- should_
drain_ boolinstances
- action String
- should
Drain BooleanInstances
ElastigroupIntegrationBeanstalkManagedActions, ElastigroupIntegrationBeanstalkManagedActionsArgs
ElastigroupIntegrationBeanstalkManagedActionsPlatformUpdate, ElastigroupIntegrationBeanstalkManagedActionsPlatformUpdateArgs
- Perform
At string - Time
Window string - Update
Level string
- Perform
At string - Time
Window string - Update
Level string
- perform
At String - time
Window String - update
Level String
- perform
At string - time
Window string - update
Level string
- perform_
at str - time_
window str - update_
level str
- perform
At String - time
Window String - update
Level String
ElastigroupIntegrationCodedeploy, ElastigroupIntegrationCodedeployArgs
ElastigroupIntegrationCodedeployDeploymentGroup, ElastigroupIntegrationCodedeployDeploymentGroupArgs
- Application
Name string - Deployment
Group stringName
- Application
Name string - Deployment
Group stringName
- application
Name String - deployment
Group StringName
- application
Name string - deployment
Group stringName
- application
Name String - deployment
Group StringName
ElastigroupIntegrationDockerSwarm, ElastigroupIntegrationDockerSwarmArgs
- master
Host String - master
Port Number - autoscale
Cooldown Number - autoscale
Down Property Map - autoscale
Headroom Property Map - autoscale
Is BooleanEnabled
ElastigroupIntegrationDockerSwarmAutoscaleDown, ElastigroupIntegrationDockerSwarmAutoscaleDownArgs
- Evaluation
Periods int - Max
Scale doubleDown Percentage
- Evaluation
Periods int - Max
Scale float64Down Percentage
- evaluation
Periods Integer - max
Scale DoubleDown Percentage
- evaluation
Periods number - max
Scale numberDown Percentage
- evaluation
Periods Number - max
Scale NumberDown Percentage
ElastigroupIntegrationDockerSwarmAutoscaleHeadroom, ElastigroupIntegrationDockerSwarmAutoscaleHeadroomArgs
- Cpu
Per intUnit - Memory
Per intUnit - Num
Of intUnits
- Cpu
Per intUnit - Memory
Per intUnit - Num
Of intUnits
- cpu
Per IntegerUnit - memory
Per IntegerUnit - num
Of IntegerUnits
- cpu
Per numberUnit - memory
Per numberUnit - num
Of numberUnits
- cpu_
per_ intunit - memory_
per_ intunit - num_
of_ intunits
- cpu
Per NumberUnit - memory
Per NumberUnit - num
Of NumberUnits
ElastigroupIntegrationEcs, ElastigroupIntegrationEcsArgs
- Cluster
Name string - Autoscale
Attributes List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Ecs Autoscale Attribute> - Autoscale
Cooldown int - Autoscale
Down Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Ecs Autoscale Down - Autoscale
Headroom Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Ecs Autoscale Headroom - Autoscale
Is boolAuto Config - Autoscale
Is boolEnabled - Autoscale
Scale boolDown Non Service Tasks - Batch
Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Integration Ecs Batch
- Cluster
Name string - Autoscale
Attributes []ElastigroupIntegration Ecs Autoscale Attribute - Autoscale
Cooldown int - Autoscale
Down ElastigroupIntegration Ecs Autoscale Down - Autoscale
Headroom ElastigroupIntegration Ecs Autoscale Headroom - Autoscale
Is boolAuto Config - Autoscale
Is boolEnabled - Autoscale
Scale boolDown Non Service Tasks - Batch
Elastigroup
Integration Ecs Batch
- cluster
Name String - autoscale
Attributes List<ElastigroupIntegration Ecs Autoscale Attribute> - autoscale
Cooldown Integer - autoscale
Down ElastigroupIntegration Ecs Autoscale Down - autoscale
Headroom ElastigroupIntegration Ecs Autoscale Headroom - autoscale
Is BooleanAuto Config - autoscale
Is BooleanEnabled - autoscale
Scale BooleanDown Non Service Tasks - batch
Elastigroup
Integration Ecs Batch
- cluster
Name string - autoscale
Attributes ElastigroupIntegration Ecs Autoscale Attribute[] - autoscale
Cooldown number - autoscale
Down ElastigroupIntegration Ecs Autoscale Down - autoscale
Headroom ElastigroupIntegration Ecs Autoscale Headroom - autoscale
Is booleanAuto Config - autoscale
Is booleanEnabled - autoscale
Scale booleanDown Non Service Tasks - batch
Elastigroup
Integration Ecs Batch
- cluster_
name str - autoscale_
attributes Sequence[ElastigroupIntegration Ecs Autoscale Attribute] - autoscale_
cooldown int - autoscale_
down ElastigroupIntegration Ecs Autoscale Down - autoscale_
headroom ElastigroupIntegration Ecs Autoscale Headroom - autoscale_
is_ boolauto_ config - autoscale_
is_ boolenabled - autoscale_
scale_ booldown_ non_ service_ tasks - batch
Elastigroup
Integration Ecs Batch
ElastigroupIntegrationEcsAutoscaleAttribute, ElastigroupIntegrationEcsAutoscaleAttributeArgs
ElastigroupIntegrationEcsAutoscaleDown, ElastigroupIntegrationEcsAutoscaleDownArgs
- Evaluation
Periods int - Max
Scale doubleDown Percentage
- Evaluation
Periods int - Max
Scale float64Down Percentage
- evaluation
Periods Integer - max
Scale DoubleDown Percentage
- evaluation
Periods number - max
Scale numberDown Percentage
- evaluation
Periods Number - max
Scale NumberDown Percentage
ElastigroupIntegrationEcsAutoscaleHeadroom, ElastigroupIntegrationEcsAutoscaleHeadroomArgs
- Cpu
Per intUnit - Memory
Per intUnit - Num
Of intUnits
- Cpu
Per intUnit - Memory
Per intUnit - Num
Of intUnits
- cpu
Per IntegerUnit - memory
Per IntegerUnit - num
Of IntegerUnits
- cpu
Per numberUnit - memory
Per numberUnit - num
Of numberUnits
- cpu_
per_ intunit - memory_
per_ intunit - num_
of_ intunits
- cpu
Per NumberUnit - memory
Per NumberUnit - num
Of NumberUnits
ElastigroupIntegrationEcsBatch, ElastigroupIntegrationEcsBatchArgs
- Job
Queue List<string>Names
- Job
Queue []stringNames
- job
Queue List<String>Names
- job
Queue string[]Names
- job_
queue_ Sequence[str]names
- job
Queue List<String>Names
ElastigroupIntegrationGitlab, ElastigroupIntegrationGitlabArgs
ElastigroupIntegrationGitlabRunner, ElastigroupIntegrationGitlabRunnerArgs
- Is
Enabled bool
- Is
Enabled bool
- is
Enabled Boolean
- is
Enabled boolean
- is_
enabled bool
- is
Enabled Boolean
ElastigroupIntegrationKubernetes, ElastigroupIntegrationKubernetesArgs
- Api
Server string - Autoscale
Cooldown int - Autoscale
Down Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Kubernetes Autoscale Down - Autoscale
Headroom Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Kubernetes Autoscale Headroom - Autoscale
Is boolAuto Config - Autoscale
Is boolEnabled - Autoscale
Labels List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Kubernetes Autoscale Label> - Cluster
Identifier string - Integration
Mode string - Token string
- Api
Server string - Autoscale
Cooldown int - Autoscale
Down ElastigroupIntegration Kubernetes Autoscale Down - Autoscale
Headroom ElastigroupIntegration Kubernetes Autoscale Headroom - Autoscale
Is boolAuto Config - Autoscale
Is boolEnabled - Autoscale
Labels []ElastigroupIntegration Kubernetes Autoscale Label - Cluster
Identifier string - Integration
Mode string - Token string
- api
Server String - autoscale
Cooldown Integer - autoscale
Down ElastigroupIntegration Kubernetes Autoscale Down - autoscale
Headroom ElastigroupIntegration Kubernetes Autoscale Headroom - autoscale
Is BooleanAuto Config - autoscale
Is BooleanEnabled - autoscale
Labels List<ElastigroupIntegration Kubernetes Autoscale Label> - cluster
Identifier String - integration
Mode String - token String
- api
Server string - autoscale
Cooldown number - autoscale
Down ElastigroupIntegration Kubernetes Autoscale Down - autoscale
Headroom ElastigroupIntegration Kubernetes Autoscale Headroom - autoscale
Is booleanAuto Config - autoscale
Is booleanEnabled - autoscale
Labels ElastigroupIntegration Kubernetes Autoscale Label[] - cluster
Identifier string - integration
Mode string - token string
- api_
server str - autoscale_
cooldown int - autoscale_
down ElastigroupIntegration Kubernetes Autoscale Down - autoscale_
headroom ElastigroupIntegration Kubernetes Autoscale Headroom - autoscale_
is_ boolauto_ config - autoscale_
is_ boolenabled - autoscale_
labels Sequence[ElastigroupIntegration Kubernetes Autoscale Label] - cluster_
identifier str - integration_
mode str - token str
- api
Server String - autoscale
Cooldown Number - autoscale
Down Property Map - autoscale
Headroom Property Map - autoscale
Is BooleanAuto Config - autoscale
Is BooleanEnabled - autoscale
Labels List<Property Map> - cluster
Identifier String - integration
Mode String - token String
ElastigroupIntegrationKubernetesAutoscaleDown, ElastigroupIntegrationKubernetesAutoscaleDownArgs
- Evaluation
Periods int - Max
Scale doubleDown Percentage
- Evaluation
Periods int - Max
Scale float64Down Percentage
- evaluation
Periods Integer - max
Scale DoubleDown Percentage
- evaluation
Periods number - max
Scale numberDown Percentage
- evaluation
Periods Number - max
Scale NumberDown Percentage
ElastigroupIntegrationKubernetesAutoscaleHeadroom, ElastigroupIntegrationKubernetesAutoscaleHeadroomArgs
- Cpu
Per intUnit - Memory
Per intUnit - Num
Of intUnits
- Cpu
Per intUnit - Memory
Per intUnit - Num
Of intUnits
- cpu
Per IntegerUnit - memory
Per IntegerUnit - num
Of IntegerUnits
- cpu
Per numberUnit - memory
Per numberUnit - num
Of numberUnits
- cpu_
per_ intunit - memory_
per_ intunit - num_
of_ intunits
- cpu
Per NumberUnit - memory
Per NumberUnit - num
Of NumberUnits
ElastigroupIntegrationKubernetesAutoscaleLabel, ElastigroupIntegrationKubernetesAutoscaleLabelArgs
ElastigroupIntegrationMesosphere, ElastigroupIntegrationMesosphereArgs
- Api
Server string
- Api
Server string
- api
Server String
- api
Server string
- api_
server str
- api
Server String
ElastigroupIntegrationNomad, ElastigroupIntegrationNomadArgs
- Master
Host string - Master
Port int - Acl
Token string - Autoscale
Constraints List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Nomad Autoscale Constraint> - Autoscale
Cooldown int - Autoscale
Down Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Nomad Autoscale Down - Autoscale
Headroom Pulumi.Spot Inst. Aws. Inputs. Elastigroup Integration Nomad Autoscale Headroom - Autoscale
Is boolEnabled
- master
Host String - master
Port Number - acl
Token String - autoscale
Constraints List<Property Map> - autoscale
Cooldown Number - autoscale
Down Property Map - autoscale
Headroom Property Map - autoscale
Is BooleanEnabled
ElastigroupIntegrationNomadAutoscaleConstraint, ElastigroupIntegrationNomadAutoscaleConstraintArgs
ElastigroupIntegrationNomadAutoscaleDown, ElastigroupIntegrationNomadAutoscaleDownArgs
- evaluation
Periods Integer
- evaluation
Periods number
- evaluation
Periods Number
ElastigroupIntegrationNomadAutoscaleHeadroom, ElastigroupIntegrationNomadAutoscaleHeadroomArgs
- Cpu
Per intUnit - Memory
Per intUnit - Num
Of intUnits
- Cpu
Per intUnit - Memory
Per intUnit - Num
Of intUnits
- cpu
Per IntegerUnit - memory
Per IntegerUnit - num
Of IntegerUnits
- cpu
Per numberUnit - memory
Per numberUnit - num
Of numberUnits
- cpu_
per_ intunit - memory_
per_ intunit - num_
of_ intunits
- cpu
Per NumberUnit - memory
Per NumberUnit - num
Of NumberUnits
ElastigroupIntegrationRancher, ElastigroupIntegrationRancherArgs
- Access
Key string - Master
Host string - Secret
Key string - Version string
- Access
Key string - Master
Host string - Secret
Key string - Version string
- access
Key String - master
Host String - secret
Key String - version String
- access
Key string - master
Host string - secret
Key string - version string
- access_
key str - master_
host str - secret_
key str - version str
- access
Key String - master
Host String - secret
Key String - version String
ElastigroupIntegrationRoute53, ElastigroupIntegrationRoute53Args
ElastigroupIntegrationRoute53Domain, ElastigroupIntegrationRoute53DomainArgs
- hosted
Zone StringId - record
Sets List<Property Map> - record
Set StringType - spotinst
Acct StringId
ElastigroupIntegrationRoute53DomainRecordSet, ElastigroupIntegrationRoute53DomainRecordSetArgs
- Name string
- The group name.
- Use
Public boolDns - Use
Public boolIp
- Name string
- The group name.
- Use
Public boolDns - Use
Public boolIp
- name String
- The group name.
- use
Public BooleanDns - use
Public BooleanIp
- name string
- The group name.
- use
Public booleanDns - use
Public booleanIp
- name str
- The group name.
- use_
public_ booldns - use_
public_ boolip
- name String
- The group name.
- use
Public BooleanDns - use
Public BooleanIp
ElastigroupItf, ElastigroupItfArgs
- Fixed
Target boolGroups - Load
Balancers List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Itf Load Balancer> - Target
Group List<Pulumi.Configs Spot Inst. Aws. Inputs. Elastigroup Itf Target Group Config> - Weight
Strategy string - Default
Static Pulumi.Target Group Spot Inst. Aws. Inputs. Elastigroup Itf Default Static Target Group - Migration
Healthiness intThreshold
ElastigroupItfDefaultStaticTargetGroup, ElastigroupItfDefaultStaticTargetGroupArgs
- Arn string
- Percentage double
- Arn string
- Percentage float64
- arn String
- percentage Double
- arn string
- percentage number
- arn str
- percentage float
- arn String
- percentage Number
ElastigroupItfLoadBalancer, ElastigroupItfLoadBalancerArgs
ElastigroupItfLoadBalancerListenerRule, ElastigroupItfLoadBalancerListenerRuleArgs
ElastigroupItfLoadBalancerListenerRuleStaticTargetGroup, ElastigroupItfLoadBalancerListenerRuleStaticTargetGroupArgs
- Arn string
- Percentage double
- Arn string
- Percentage float64
- arn String
- percentage Double
- arn string
- percentage number
- arn str
- percentage float
- arn String
- percentage Number
ElastigroupItfTargetGroupConfig, ElastigroupItfTargetGroupConfigArgs
- Health
Check stringPath - Port int
- Protocol string
- Vpc
Id string - Health
Check intInterval Seconds - Health
Check stringPort - Health
Check stringProtocol - Health
Check intTimeout Seconds - Healthy
Threshold intCount - Matchers
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Itf Target Group Config Matcher> - Protocol
Version string - List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Itf Target Group Config Tag> - A key/value mapping of tags to assign to the resource.
- Unhealthy
Threshold intCount
- Health
Check stringPath - Port int
- Protocol string
- Vpc
Id string - Health
Check intInterval Seconds - Health
Check stringPort - Health
Check stringProtocol - Health
Check intTimeout Seconds - Healthy
Threshold intCount - Matchers
[]Elastigroup
Itf Target Group Config Matcher - Protocol
Version string - []Elastigroup
Itf Target Group Config Tag - A key/value mapping of tags to assign to the resource.
- Unhealthy
Threshold intCount
- health
Check StringPath - port Integer
- protocol String
- vpc
Id String - health
Check IntegerInterval Seconds - health
Check StringPort - health
Check StringProtocol - health
Check IntegerTimeout Seconds - healthy
Threshold IntegerCount - matchers
List<Elastigroup
Itf Target Group Config Matcher> - protocol
Version String - List<Elastigroup
Itf Target Group Config Tag> - A key/value mapping of tags to assign to the resource.
- unhealthy
Threshold IntegerCount
- health
Check stringPath - port number
- protocol string
- vpc
Id string - health
Check numberInterval Seconds - health
Check stringPort - health
Check stringProtocol - health
Check numberTimeout Seconds - healthy
Threshold numberCount - matchers
Elastigroup
Itf Target Group Config Matcher[] - protocol
Version string - Elastigroup
Itf Target Group Config Tag[] - A key/value mapping of tags to assign to the resource.
- unhealthy
Threshold numberCount
- health_
check_ strpath - port int
- protocol str
- vpc_
id str - health_
check_ intinterval_ seconds - health_
check_ strport - health_
check_ strprotocol - health_
check_ inttimeout_ seconds - healthy_
threshold_ intcount - matchers
Sequence[Elastigroup
Itf Target Group Config Matcher] - protocol_
version str - Sequence[Elastigroup
Itf Target Group Config Tag] - A key/value mapping of tags to assign to the resource.
- unhealthy_
threshold_ intcount
- health
Check StringPath - port Number
- protocol String
- vpc
Id String - health
Check NumberInterval Seconds - health
Check StringPort - health
Check StringProtocol - health
Check NumberTimeout Seconds - healthy
Threshold NumberCount - matchers List<Property Map>
- protocol
Version String - List<Property Map>
- A key/value mapping of tags to assign to the resource.
- unhealthy
Threshold NumberCount
ElastigroupItfTargetGroupConfigMatcher, ElastigroupItfTargetGroupConfigMatcherArgs
ElastigroupItfTargetGroupConfigTag, ElastigroupItfTargetGroupConfigTagArgs
ElastigroupLogging, ElastigroupLoggingArgs
- Export
Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Logging Export - Logging Export configuration.
- Export
Elastigroup
Logging Export - Logging Export configuration.
- export
Elastigroup
Logging Export - Logging Export configuration.
- export
Elastigroup
Logging Export - Logging Export configuration.
- export
Elastigroup
Logging Export - Logging Export configuration.
- export Property Map
- Logging Export configuration.
ElastigroupLoggingExport, ElastigroupLoggingExportArgs
- S3s
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Logging Export S3> - Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
- S3s
[]Elastigroup
Logging Export S3 - Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
- s3s
List<Elastigroup
Logging Export S3> - Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
- s3s
Elastigroup
Logging Export S3[] - Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
- s3s
Sequence[Elastigroup
Logging Export S3] - Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
- s3s List<Property Map>
- Exports your cluster's logs to the S3 bucket and subdir configured on the S3 data integration given.
ElastigroupLoggingExportS3, ElastigroupLoggingExportS3Args
- Id string
- The identifier of The S3 data integration to export the logs to.
- Id string
- The identifier of The S3 data integration to export the logs to.
- id String
- The identifier of The S3 data integration to export the logs to.
- id string
- The identifier of The S3 data integration to export the logs to.
- id str
- The identifier of The S3 data integration to export the logs to.
- id String
- The identifier of The S3 data integration to export the logs to.
ElastigroupMetadataOptions, ElastigroupMetadataOptionsArgs
- Http
Tokens string - The state of token usage for your instance metadata requests. Valid values:
optional
orrequired
. - Http
Put intResponse Hop Limit - The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from
1
to64
. - string
- Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
- Http
Tokens string - The state of token usage for your instance metadata requests. Valid values:
optional
orrequired
. - Http
Put intResponse Hop Limit - The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from
1
to64
. - string
- Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
- http
Tokens String - The state of token usage for your instance metadata requests. Valid values:
optional
orrequired
. - http
Put IntegerResponse Hop Limit - The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from
1
to64
. - String
- Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
- http
Tokens string - The state of token usage for your instance metadata requests. Valid values:
optional
orrequired
. - http
Put numberResponse Hop Limit - The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from
1
to64
. - string
- Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
- http_
tokens str - The state of token usage for your instance metadata requests. Valid values:
optional
orrequired
. - http_
put_ intresponse_ hop_ limit - The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from
1
to64
. - str
- Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
- http
Tokens String - The state of token usage for your instance metadata requests. Valid values:
optional
orrequired
. - http
Put NumberResponse Hop Limit - The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Valid values: Integers from
1
to64
. - String
- Indicates whether access to instance tags from the instance metadata is enabled or disabled. Can’t be null.
ElastigroupMultipleMetrics, ElastigroupMultipleMetricsArgs
ElastigroupMultipleMetricsExpression, ElastigroupMultipleMetricsExpressionArgs
- Expression string
- Name string
- The group name.
- Expression string
- Name string
- The group name.
- expression String
- name String
- The group name.
- expression string
- name string
- The group name.
- expression str
- name str
- The group name.
- expression String
- name String
- The group name.
ElastigroupMultipleMetricsMetric, ElastigroupMultipleMetricsMetricArgs
- Metric
Name string - Name string
- The group name.
- Namespace string
- Dimensions
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Multiple Metrics Metric Dimension> - Extended
Statistic string - Statistic string
- Unit string
- Metric
Name string - Name string
- The group name.
- Namespace string
- Dimensions
[]Elastigroup
Multiple Metrics Metric Dimension - Extended
Statistic string - Statistic string
- Unit string
- metric
Name String - name String
- The group name.
- namespace String
- dimensions
List<Elastigroup
Multiple Metrics Metric Dimension> - extended
Statistic String - statistic String
- unit String
- metric
Name string - name string
- The group name.
- namespace string
- dimensions
Elastigroup
Multiple Metrics Metric Dimension[] - extended
Statistic string - statistic string
- unit string
- metric_
name str - name str
- The group name.
- namespace str
- dimensions
Sequence[Elastigroup
Multiple Metrics Metric Dimension] - extended_
statistic str - statistic str
- unit str
- metric
Name String - name String
- The group name.
- namespace String
- dimensions List<Property Map>
- extended
Statistic String - statistic String
- unit String
ElastigroupMultipleMetricsMetricDimension, ElastigroupMultipleMetricsMetricDimensionArgs
ElastigroupNetworkInterface, ElastigroupNetworkInterfaceArgs
- Device
Index string - The index of the device on the instance for the network interface attachment.
- Associate
Ipv6Address bool Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.
Usage:
- Associate
Public boolIp Address - Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
- Delete
On boolTermination - If set to true, the interface is deleted when the instance is terminated.
- Description string
- The description of the network interface.
- Network
Interface stringId - The ID of the network interface.
- Private
Ip stringAddress - The private IP address of the network interface.
- Secondary
Private stringIp Address Count - The number of secondary private IP addresses.
- Device
Index string - The index of the device on the instance for the network interface attachment.
- Associate
Ipv6Address bool Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.
Usage:
- Associate
Public boolIp Address - Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
- Delete
On boolTermination - If set to true, the interface is deleted when the instance is terminated.
- Description string
- The description of the network interface.
- Network
Interface stringId - The ID of the network interface.
- Private
Ip stringAddress - The private IP address of the network interface.
- Secondary
Private stringIp Address Count - The number of secondary private IP addresses.
- device
Index String - The index of the device on the instance for the network interface attachment.
- associate
Ipv6Address Boolean Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.
Usage:
- associate
Public BooleanIp Address - Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
- delete
On BooleanTermination - If set to true, the interface is deleted when the instance is terminated.
- description String
- The description of the network interface.
- network
Interface StringId - The ID of the network interface.
- private
Ip StringAddress - The private IP address of the network interface.
- secondary
Private StringIp Address Count - The number of secondary private IP addresses.
- device
Index string - The index of the device on the instance for the network interface attachment.
- associate
Ipv6Address boolean Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.
Usage:
- associate
Public booleanIp Address - Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
- delete
On booleanTermination - If set to true, the interface is deleted when the instance is terminated.
- description string
- The description of the network interface.
- network
Interface stringId - The ID of the network interface.
- private
Ip stringAddress - The private IP address of the network interface.
- secondary
Private stringIp Address Count - The number of secondary private IP addresses.
- device_
index str - The index of the device on the instance for the network interface attachment.
- associate_
ipv6_ booladdress Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.
Usage:
- associate_
public_ boolip_ address - Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
- delete_
on_ booltermination - If set to true, the interface is deleted when the instance is terminated.
- description str
- The description of the network interface.
- network_
interface_ strid - The ID of the network interface.
- private_
ip_ straddress - The private IP address of the network interface.
- secondary_
private_ strip_ address_ count - The number of secondary private IP addresses.
- device
Index String - The index of the device on the instance for the network interface attachment.
- associate
Ipv6Address Boolean Indicates whether to assign IPV6 addresses to your instance. Requires a subnet with IPV6 CIDR block ranges.
Usage:
- associate
Public BooleanIp Address - Indicates whether to assign a public IP address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one.
- delete
On BooleanTermination - If set to true, the interface is deleted when the instance is terminated.
- description String
- The description of the network interface.
- network
Interface StringId - The ID of the network interface.
- private
Ip StringAddress - The private IP address of the network interface.
- secondary
Private StringIp Address Count - The number of secondary private IP addresses.
ElastigroupResourceRequirement, ElastigroupResourceRequirementArgs
- Required
Memory intMaximum - Required maximum instance memory (<=512)
- Required
Memory intMinimum - Required minimum instance memory (>=1)
- Required
Vcpu intMaximum - Required maximum instance vCPU (<=64)
- Required
Vcpu intMinimum - Required minimum instance vCPU (>=1)
- Excluded
Instance List<string>Families - Instance families to exclude
- Excluded
Instance List<string>Generations - Instance generations to exclude
- Excluded
Instance List<string>Types - Instance types to exclude
- Required
Gpu intMaximum - Required maximum instance GPU (<=16)
- Required
Gpu intMinimum - Required minimum instance GPU (>=1)
- Required
Memory intMaximum - Required maximum instance memory (<=512)
- Required
Memory intMinimum - Required minimum instance memory (>=1)
- Required
Vcpu intMaximum - Required maximum instance vCPU (<=64)
- Required
Vcpu intMinimum - Required minimum instance vCPU (>=1)
- Excluded
Instance []stringFamilies - Instance families to exclude
- Excluded
Instance []stringGenerations - Instance generations to exclude
- Excluded
Instance []stringTypes - Instance types to exclude
- Required
Gpu intMaximum - Required maximum instance GPU (<=16)
- Required
Gpu intMinimum - Required minimum instance GPU (>=1)
- required
Memory IntegerMaximum - Required maximum instance memory (<=512)
- required
Memory IntegerMinimum - Required minimum instance memory (>=1)
- required
Vcpu IntegerMaximum - Required maximum instance vCPU (<=64)
- required
Vcpu IntegerMinimum - Required minimum instance vCPU (>=1)
- excluded
Instance List<String>Families - Instance families to exclude
- excluded
Instance List<String>Generations - Instance generations to exclude
- excluded
Instance List<String>Types - Instance types to exclude
- required
Gpu IntegerMaximum - Required maximum instance GPU (<=16)
- required
Gpu IntegerMinimum - Required minimum instance GPU (>=1)
- required
Memory numberMaximum - Required maximum instance memory (<=512)
- required
Memory numberMinimum - Required minimum instance memory (>=1)
- required
Vcpu numberMaximum - Required maximum instance vCPU (<=64)
- required
Vcpu numberMinimum - Required minimum instance vCPU (>=1)
- excluded
Instance string[]Families - Instance families to exclude
- excluded
Instance string[]Generations - Instance generations to exclude
- excluded
Instance string[]Types - Instance types to exclude
- required
Gpu numberMaximum - Required maximum instance GPU (<=16)
- required
Gpu numberMinimum - Required minimum instance GPU (>=1)
- required_
memory_ intmaximum - Required maximum instance memory (<=512)
- required_
memory_ intminimum - Required minimum instance memory (>=1)
- required_
vcpu_ intmaximum - Required maximum instance vCPU (<=64)
- required_
vcpu_ intminimum - Required minimum instance vCPU (>=1)
- excluded_
instance_ Sequence[str]families - Instance families to exclude
- excluded_
instance_ Sequence[str]generations - Instance generations to exclude
- excluded_
instance_ Sequence[str]types - Instance types to exclude
- required_
gpu_ intmaximum - Required maximum instance GPU (<=16)
- required_
gpu_ intminimum - Required minimum instance GPU (>=1)
- required
Memory NumberMaximum - Required maximum instance memory (<=512)
- required
Memory NumberMinimum - Required minimum instance memory (>=1)
- required
Vcpu NumberMaximum - Required maximum instance vCPU (<=64)
- required
Vcpu NumberMinimum - Required minimum instance vCPU (>=1)
- excluded
Instance List<String>Families - Instance families to exclude
- excluded
Instance List<String>Generations - Instance generations to exclude
- excluded
Instance List<String>Types - Instance types to exclude
- required
Gpu NumberMaximum - Required maximum instance GPU (<=16)
- required
Gpu NumberMinimum - Required minimum instance GPU (>=1)
ElastigroupResourceTagSpecification, ElastigroupResourceTagSpecificationArgs
- Should
Tag boolAmis - Tag specification for AMI resources.
- Should
Tag boolEnis - Tag specification for ENI resources.
- bool
- Tag specification for Snapshot resources.
- Should
Tag boolVolumes - Tag specification for Volume resources.
- Should
Tag boolAmis - Tag specification for AMI resources.
- Should
Tag boolEnis - Tag specification for ENI resources.
- bool
- Tag specification for Snapshot resources.
- Should
Tag boolVolumes - Tag specification for Volume resources.
- should
Tag BooleanAmis - Tag specification for AMI resources.
- should
Tag BooleanEnis - Tag specification for ENI resources.
- Boolean
- Tag specification for Snapshot resources.
- should
Tag BooleanVolumes - Tag specification for Volume resources.
- should
Tag booleanAmis - Tag specification for AMI resources.
- should
Tag booleanEnis - Tag specification for ENI resources.
- boolean
- Tag specification for Snapshot resources.
- should
Tag booleanVolumes - Tag specification for Volume resources.
- should_
tag_ boolamis - Tag specification for AMI resources.
- should_
tag_ boolenis - Tag specification for ENI resources.
- should_
tag_ boolsnapshots - Tag specification for Snapshot resources.
- should_
tag_ boolvolumes - Tag specification for Volume resources.
- should
Tag BooleanAmis - Tag specification for AMI resources.
- should
Tag BooleanEnis - Tag specification for ENI resources.
- Boolean
- Tag specification for Snapshot resources.
- should
Tag BooleanVolumes - Tag specification for Volume resources.
ElastigroupRevertToSpot, ElastigroupRevertToSpotArgs
- Perform
At string - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
- Time
Windows List<string> - Specify a list of time windows for to execute revertToSpot strategy. Time window format:
ddd:hh:mm-ddd:hh:mm
. Example:Mon:03:00-Wed:02:30
- Perform
At string - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
- Time
Windows []string - Specify a list of time windows for to execute revertToSpot strategy. Time window format:
ddd:hh:mm-ddd:hh:mm
. Example:Mon:03:00-Wed:02:30
- perform
At String - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
- time
Windows List<String> - Specify a list of time windows for to execute revertToSpot strategy. Time window format:
ddd:hh:mm-ddd:hh:mm
. Example:Mon:03:00-Wed:02:30
- perform
At string - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
- time
Windows string[] - Specify a list of time windows for to execute revertToSpot strategy. Time window format:
ddd:hh:mm-ddd:hh:mm
. Example:Mon:03:00-Wed:02:30
- perform_
at str - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
- time_
windows Sequence[str] - Specify a list of time windows for to execute revertToSpot strategy. Time window format:
ddd:hh:mm-ddd:hh:mm
. Example:Mon:03:00-Wed:02:30
- perform
At String - In the event of a fallback to On-Demand instances, select the time period to revert back to Spot. Supported Arguments – always (default), timeWindow, never. For timeWindow or never to be valid the group must have availabilityOriented OR persistence defined.
- time
Windows List<String> - Specify a list of time windows for to execute revertToSpot strategy. Time window format:
ddd:hh:mm-ddd:hh:mm
. Example:Mon:03:00-Wed:02:30
ElastigroupScalingDownPolicy, ElastigroupScalingDownPolicyArgs
- Metric
Name string - The name of the metric, with or without spaces.
- Namespace string
- The namespace for the alarm's associated metric.
- Policy
Name string - The name of the policy.
- Action
Type string - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - Adjustment string
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- Cooldown int
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- Dimensions
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Scaling Down Policy Dimension> - A list of dimensions describing qualities of the metric.
- Evaluation
Periods int - The number of periods over which data is compared to the specified threshold.
- Is
Enabled bool - Specifies whether the scaling policy described in this block is enabled.
- Max
Target stringCapacity - . The number of the desired target (and maximum) capacity
- Maximum string
- The maximal number of instances to have in the group.
- Min
Target stringCapacity - Minimum string
- The minimal number of instances to have in the group.
- Operator string
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - Period int
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- Source string
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - Statistic string
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- Step
Adjustments List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Scaling Down Policy Step Adjustment> - Target string
- The target number of instances to have in the group.
- Threshold double
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - Unit string
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- Metric
Name string - The name of the metric, with or without spaces.
- Namespace string
- The namespace for the alarm's associated metric.
- Policy
Name string - The name of the policy.
- Action
Type string - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - Adjustment string
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- Cooldown int
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- Dimensions
[]Elastigroup
Scaling Down Policy Dimension - A list of dimensions describing qualities of the metric.
- Evaluation
Periods int - The number of periods over which data is compared to the specified threshold.
- Is
Enabled bool - Specifies whether the scaling policy described in this block is enabled.
- Max
Target stringCapacity - . The number of the desired target (and maximum) capacity
- Maximum string
- The maximal number of instances to have in the group.
- Min
Target stringCapacity - Minimum string
- The minimal number of instances to have in the group.
- Operator string
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - Period int
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- Source string
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - Statistic string
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- Step
Adjustments []ElastigroupScaling Down Policy Step Adjustment - Target string
- The target number of instances to have in the group.
- Threshold float64
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - Unit string
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric
Name String - The name of the metric, with or without spaces.
- namespace String
- The namespace for the alarm's associated metric.
- policy
Name String - The name of the policy.
- action
Type String - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - adjustment String
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- cooldown Integer
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions
List<Elastigroup
Scaling Down Policy Dimension> - A list of dimensions describing qualities of the metric.
- evaluation
Periods Integer - The number of periods over which data is compared to the specified threshold.
- is
Enabled Boolean - Specifies whether the scaling policy described in this block is enabled.
- max
Target StringCapacity - . The number of the desired target (and maximum) capacity
- maximum String
- The maximal number of instances to have in the group.
- min
Target StringCapacity - minimum String
- The minimal number of instances to have in the group.
- operator String
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - period Integer
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- source String
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic String
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- step
Adjustments List<ElastigroupScaling Down Policy Step Adjustment> - target String
- The target number of instances to have in the group.
- threshold Double
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - unit String
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric
Name string - The name of the metric, with or without spaces.
- namespace string
- The namespace for the alarm's associated metric.
- policy
Name string - The name of the policy.
- action
Type string - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - adjustment string
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- cooldown number
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions
Elastigroup
Scaling Down Policy Dimension[] - A list of dimensions describing qualities of the metric.
- evaluation
Periods number - The number of periods over which data is compared to the specified threshold.
- is
Enabled boolean - Specifies whether the scaling policy described in this block is enabled.
- max
Target stringCapacity - . The number of the desired target (and maximum) capacity
- maximum string
- The maximal number of instances to have in the group.
- min
Target stringCapacity - minimum string
- The minimal number of instances to have in the group.
- operator string
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - period number
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- source string
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic string
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- step
Adjustments ElastigroupScaling Down Policy Step Adjustment[] - target string
- The target number of instances to have in the group.
- threshold number
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - unit string
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric_
name str - The name of the metric, with or without spaces.
- namespace str
- The namespace for the alarm's associated metric.
- policy_
name str - The name of the policy.
- action_
type str - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - adjustment str
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- cooldown int
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions
Sequence[Elastigroup
Scaling Down Policy Dimension] - A list of dimensions describing qualities of the metric.
- evaluation_
periods int - The number of periods over which data is compared to the specified threshold.
- is_
enabled bool - Specifies whether the scaling policy described in this block is enabled.
- max_
target_ strcapacity - . The number of the desired target (and maximum) capacity
- maximum str
- The maximal number of instances to have in the group.
- min_
target_ strcapacity - minimum str
- The minimal number of instances to have in the group.
- operator str
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - period int
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- source str
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic str
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- step_
adjustments Sequence[ElastigroupScaling Down Policy Step Adjustment] - target str
- The target number of instances to have in the group.
- threshold float
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - unit str
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric
Name String - The name of the metric, with or without spaces.
- namespace String
- The namespace for the alarm's associated metric.
- policy
Name String - The name of the policy.
- action
Type String - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - adjustment String
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- cooldown Number
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions List<Property Map>
- A list of dimensions describing qualities of the metric.
- evaluation
Periods Number - The number of periods over which data is compared to the specified threshold.
- is
Enabled Boolean - Specifies whether the scaling policy described in this block is enabled.
- max
Target StringCapacity - . The number of the desired target (and maximum) capacity
- maximum String
- The maximal number of instances to have in the group.
- min
Target StringCapacity - minimum String
- The minimal number of instances to have in the group.
- operator String
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - period Number
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- source String
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic String
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- step
Adjustments List<Property Map> - target String
- The target number of instances to have in the group.
- threshold Number
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - unit String
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
ElastigroupScalingDownPolicyDimension, ElastigroupScalingDownPolicyDimensionArgs
ElastigroupScalingDownPolicyStepAdjustment, ElastigroupScalingDownPolicyStepAdjustmentArgs
- action Property Map
- threshold Number
ElastigroupScalingDownPolicyStepAdjustmentAction, ElastigroupScalingDownPolicyStepAdjustmentActionArgs
- Type string
- Adjustment string
- Max
Target stringCapacity - Maximum string
- Min
Target stringCapacity - Minimum string
- Target string
- Type string
- Adjustment string
- Max
Target stringCapacity - Maximum string
- Min
Target stringCapacity - Minimum string
- Target string
- type String
- adjustment String
- max
Target StringCapacity - maximum String
- min
Target StringCapacity - minimum String
- target String
- type string
- adjustment string
- max
Target stringCapacity - maximum string
- min
Target stringCapacity - minimum string
- target string
- type str
- adjustment str
- max_
target_ strcapacity - maximum str
- min_
target_ strcapacity - minimum str
- target str
- type String
- adjustment String
- max
Target StringCapacity - maximum String
- min
Target StringCapacity - minimum String
- target String
ElastigroupScalingStrategy, ElastigroupScalingStrategyArgs
- Terminate
At boolEnd Of Billing Hour - Specify whether to terminate instances at the end of each billing hour.
- Termination
Policy string - Determines whether to terminate the newest instances when performing a scaling action. Valid values:
"default"
,"newestInstance"
.
- Terminate
At boolEnd Of Billing Hour - Specify whether to terminate instances at the end of each billing hour.
- Termination
Policy string - Determines whether to terminate the newest instances when performing a scaling action. Valid values:
"default"
,"newestInstance"
.
- terminate
At BooleanEnd Of Billing Hour - Specify whether to terminate instances at the end of each billing hour.
- termination
Policy String - Determines whether to terminate the newest instances when performing a scaling action. Valid values:
"default"
,"newestInstance"
.
- terminate
At booleanEnd Of Billing Hour - Specify whether to terminate instances at the end of each billing hour.
- termination
Policy string - Determines whether to terminate the newest instances when performing a scaling action. Valid values:
"default"
,"newestInstance"
.
- terminate_
at_ boolend_ of_ billing_ hour - Specify whether to terminate instances at the end of each billing hour.
- termination_
policy str - Determines whether to terminate the newest instances when performing a scaling action. Valid values:
"default"
,"newestInstance"
.
- terminate
At BooleanEnd Of Billing Hour - Specify whether to terminate instances at the end of each billing hour.
- termination
Policy String - Determines whether to terminate the newest instances when performing a scaling action. Valid values:
"default"
,"newestInstance"
.
ElastigroupScalingTargetPolicy, ElastigroupScalingTargetPolicyArgs
- Metric
Name string - String, the name of the metric, with or without spaces.
- Namespace string
- String, the namespace for the alarm's associated metric.
- Policy
Name string - String, the name of the policy.
- Target double
- The target number of instances to have in the group.
- Cooldown int
- Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- Dimensions
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Scaling Target Policy Dimension> - A list of dimensions describing qualities of the metric.
- Evaluation
Periods int - The number of periods over which data is compared to the specified threshold.
- Max
Capacity stringPer Scale String, restrict the maximal number of instances which can be added in each scale-up action.
scaling_target_policies
support predictive scaling:- Period int
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- Predictive
Mode string Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values:
FORECAST_AND_SCALE
,FORECAST_ONLY
.Usage:
- Source string
- String, the source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - Statistic string
- String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- Unit string
- String, tThe unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- Metric
Name string - String, the name of the metric, with or without spaces.
- Namespace string
- String, the namespace for the alarm's associated metric.
- Policy
Name string - String, the name of the policy.
- Target float64
- The target number of instances to have in the group.
- Cooldown int
- Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- Dimensions
[]Elastigroup
Scaling Target Policy Dimension - A list of dimensions describing qualities of the metric.
- Evaluation
Periods int - The number of periods over which data is compared to the specified threshold.
- Max
Capacity stringPer Scale String, restrict the maximal number of instances which can be added in each scale-up action.
scaling_target_policies
support predictive scaling:- Period int
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- Predictive
Mode string Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values:
FORECAST_AND_SCALE
,FORECAST_ONLY
.Usage:
- Source string
- String, the source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - Statistic string
- String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- Unit string
- String, tThe unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric
Name String - String, the name of the metric, with or without spaces.
- namespace String
- String, the namespace for the alarm's associated metric.
- policy
Name String - String, the name of the policy.
- target Double
- The target number of instances to have in the group.
- cooldown Integer
- Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions
List<Elastigroup
Scaling Target Policy Dimension> - A list of dimensions describing qualities of the metric.
- evaluation
Periods Integer - The number of periods over which data is compared to the specified threshold.
- max
Capacity StringPer Scale String, restrict the maximal number of instances which can be added in each scale-up action.
scaling_target_policies
support predictive scaling:- period Integer
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- predictive
Mode String Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values:
FORECAST_AND_SCALE
,FORECAST_ONLY
.Usage:
- source String
- String, the source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic String
- String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- unit String
- String, tThe unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric
Name string - String, the name of the metric, with or without spaces.
- namespace string
- String, the namespace for the alarm's associated metric.
- policy
Name string - String, the name of the policy.
- target number
- The target number of instances to have in the group.
- cooldown number
- Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions
Elastigroup
Scaling Target Policy Dimension[] - A list of dimensions describing qualities of the metric.
- evaluation
Periods number - The number of periods over which data is compared to the specified threshold.
- max
Capacity stringPer Scale String, restrict the maximal number of instances which can be added in each scale-up action.
scaling_target_policies
support predictive scaling:- period number
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- predictive
Mode string Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values:
FORECAST_AND_SCALE
,FORECAST_ONLY
.Usage:
- source string
- String, the source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic string
- String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- unit string
- String, tThe unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric_
name str - String, the name of the metric, with or without spaces.
- namespace str
- String, the namespace for the alarm's associated metric.
- policy_
name str - String, the name of the policy.
- target float
- The target number of instances to have in the group.
- cooldown int
- Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions
Sequence[Elastigroup
Scaling Target Policy Dimension] - A list of dimensions describing qualities of the metric.
- evaluation_
periods int - The number of periods over which data is compared to the specified threshold.
- max_
capacity_ strper_ scale String, restrict the maximal number of instances which can be added in each scale-up action.
scaling_target_policies
support predictive scaling:- period int
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- predictive_
mode str Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values:
FORECAST_AND_SCALE
,FORECAST_ONLY
.Usage:
- source str
- String, the source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic str
- String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- unit str
- String, tThe unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric
Name String - String, the name of the metric, with or without spaces.
- namespace String
- String, the namespace for the alarm's associated metric.
- policy
Name String - String, the name of the policy.
- target Number
- The target number of instances to have in the group.
- cooldown Number
- Integer the amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions List<Property Map>
- A list of dimensions describing qualities of the metric.
- evaluation
Periods Number - The number of periods over which data is compared to the specified threshold.
- max
Capacity StringPer Scale String, restrict the maximal number of instances which can be added in each scale-up action.
scaling_target_policies
support predictive scaling:- period Number
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- predictive
Mode String Start a metric prediction process to determine the expected target metric value within the next two days. See Predictive Autoscaling documentation for more info. Valid values:
FORECAST_AND_SCALE
,FORECAST_ONLY
.Usage:
- source String
- String, the source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic String
- String, the metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- unit String
- String, tThe unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
ElastigroupScalingTargetPolicyDimension, ElastigroupScalingTargetPolicyDimensionArgs
ElastigroupScalingUpPolicy, ElastigroupScalingUpPolicyArgs
- Metric
Name string - The name of the metric, with or without spaces.
- Namespace string
- The namespace for the alarm's associated metric.
- Policy
Name string - The name of the policy.
- Action
Type string - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - Adjustment string
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- Cooldown int
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- Dimensions
List<Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Scaling Up Policy Dimension> - A list of dimensions describing qualities of the metric.
- Evaluation
Periods int - The number of periods over which data is compared to the specified threshold.
- Is
Enabled bool - Specifies whether the scaling policy described in this block is enabled.
- Max
Target stringCapacity - Maximum string
- The maximal number of instances to have in the group.
- Min
Target stringCapacity - . The number of the desired target (and minimum) capacity
- Minimum string
- The minimal number of instances to have in the group.
- Operator string
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - Period int
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- Source string
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - Statistic string
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- Step
Adjustments List<Pulumi.Spot Inst. Aws. Inputs. Elastigroup Scaling Up Policy Step Adjustment> - Target string
- The target number of instances to have in the group.
- Threshold double
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - Unit string
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- Metric
Name string - The name of the metric, with or without spaces.
- Namespace string
- The namespace for the alarm's associated metric.
- Policy
Name string - The name of the policy.
- Action
Type string - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - Adjustment string
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- Cooldown int
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- Dimensions
[]Elastigroup
Scaling Up Policy Dimension - A list of dimensions describing qualities of the metric.
- Evaluation
Periods int - The number of periods over which data is compared to the specified threshold.
- Is
Enabled bool - Specifies whether the scaling policy described in this block is enabled.
- Max
Target stringCapacity - Maximum string
- The maximal number of instances to have in the group.
- Min
Target stringCapacity - . The number of the desired target (and minimum) capacity
- Minimum string
- The minimal number of instances to have in the group.
- Operator string
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - Period int
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- Source string
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - Statistic string
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- Step
Adjustments []ElastigroupScaling Up Policy Step Adjustment - Target string
- The target number of instances to have in the group.
- Threshold float64
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - Unit string
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric
Name String - The name of the metric, with or without spaces.
- namespace String
- The namespace for the alarm's associated metric.
- policy
Name String - The name of the policy.
- action
Type String - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - adjustment String
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- cooldown Integer
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions
List<Elastigroup
Scaling Up Policy Dimension> - A list of dimensions describing qualities of the metric.
- evaluation
Periods Integer - The number of periods over which data is compared to the specified threshold.
- is
Enabled Boolean - Specifies whether the scaling policy described in this block is enabled.
- max
Target StringCapacity - maximum String
- The maximal number of instances to have in the group.
- min
Target StringCapacity - . The number of the desired target (and minimum) capacity
- minimum String
- The minimal number of instances to have in the group.
- operator String
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - period Integer
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- source String
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic String
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- step
Adjustments List<ElastigroupScaling Up Policy Step Adjustment> - target String
- The target number of instances to have in the group.
- threshold Double
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - unit String
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric
Name string - The name of the metric, with or without spaces.
- namespace string
- The namespace for the alarm's associated metric.
- policy
Name string - The name of the policy.
- action
Type string - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - adjustment string
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- cooldown number
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions
Elastigroup
Scaling Up Policy Dimension[] - A list of dimensions describing qualities of the metric.
- evaluation
Periods number - The number of periods over which data is compared to the specified threshold.
- is
Enabled boolean - Specifies whether the scaling policy described in this block is enabled.
- max
Target stringCapacity - maximum string
- The maximal number of instances to have in the group.
- min
Target stringCapacity - . The number of the desired target (and minimum) capacity
- minimum string
- The minimal number of instances to have in the group.
- operator string
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - period number
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- source string
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic string
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- step
Adjustments ElastigroupScaling Up Policy Step Adjustment[] - target string
- The target number of instances to have in the group.
- threshold number
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - unit string
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric_
name str - The name of the metric, with or without spaces.
- namespace str
- The namespace for the alarm's associated metric.
- policy_
name str - The name of the policy.
- action_
type str - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - adjustment str
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- cooldown int
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions
Sequence[Elastigroup
Scaling Up Policy Dimension] - A list of dimensions describing qualities of the metric.
- evaluation_
periods int - The number of periods over which data is compared to the specified threshold.
- is_
enabled bool - Specifies whether the scaling policy described in this block is enabled.
- max_
target_ strcapacity - maximum str
- The maximal number of instances to have in the group.
- min_
target_ strcapacity - . The number of the desired target (and minimum) capacity
- minimum str
- The minimal number of instances to have in the group.
- operator str
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - period int
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- source str
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic str
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- step_
adjustments Sequence[ElastigroupScaling Up Policy Step Adjustment] - target str
- The target number of instances to have in the group.
- threshold float
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - unit str
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
- metric
Name String - The name of the metric, with or without spaces.
- namespace String
- The namespace for the alarm's associated metric.
- policy
Name String - The name of the policy.
- action
Type String - The type of action to perform for scaling. Valid values:
"adjustment"
,"percentageAdjustment"
,"setMaxTarget"
,"setMinTarget"
,"updateCapacity"
. If astep_adjustment
object is defined, then it cannot be specified. - adjustment String
- The number of instances to add/remove to/from the target capacity when scale is needed. Can be used as advanced expression for scaling of instances to add/remove to/from the target capacity when scale is needed. You can see more information here: Advanced expression. Example value:
"MAX(currCapacity / 5, value * 10)"
- cooldown Number
- The amount of time, in seconds, after a scaling activity completes and before the next scaling activity can start. If this parameter is not specified, the default cooldown period for the group applies.
- dimensions List<Property Map>
- A list of dimensions describing qualities of the metric.
- evaluation
Periods Number - The number of periods over which data is compared to the specified threshold.
- is
Enabled Boolean - Specifies whether the scaling policy described in this block is enabled.
- max
Target StringCapacity - maximum String
- The maximal number of instances to have in the group.
- min
Target StringCapacity - . The number of the desired target (and minimum) capacity
- minimum String
- The minimal number of instances to have in the group.
- operator String
- The operator to use in order to determine if the scaling policy is applicable. Valid values:
"gt"
,"gte"
,"lt"
,"lte"
. - period Number
- The granularity, in seconds, of the returned datapoints. Period must be at least 60 seconds and must be a multiple of 60.
- source String
- The source of the metric. Valid values:
"cloudWatch"
,"spectrum"
. - statistic String
- The metric statistics to return. For information about specific statistics go to Statistics in the Amazon CloudWatch Developer Guide.
- step
Adjustments List<Property Map> - target String
- The target number of instances to have in the group.
- threshold Number
- The value against which the specified statistic is compared. If a
step_adjustment
object is defined, then it cannot be specified. - unit String
- The unit for the alarm's associated metric. Valid values:
"percent
,"seconds"
,"microseconds"
,"milliseconds"
,"bytes"
,"kilobytes"
,"megabytes"
,"gigabytes"
,"terabytes"
,"bits"
,"kilobits"
,"megabits"
,"gigabits"
,"terabits"
,"count"
,"bytes/second"
,"kilobytes/second"
,"megabytes/second"
,"gigabytes/second"
,"terabytes/second"
,"bits/second"
,"kilobits/second"
,"megabits/second"
,"gigabits/second"
,"terabits/second"
,"count/second"
,"none"
.
ElastigroupScalingUpPolicyDimension, ElastigroupScalingUpPolicyDimensionArgs
ElastigroupScalingUpPolicyStepAdjustment, ElastigroupScalingUpPolicyStepAdjustmentArgs
- action Property Map
- threshold Number
ElastigroupScalingUpPolicyStepAdjustmentAction, ElastigroupScalingUpPolicyStepAdjustmentActionArgs
- Type string
- Adjustment string
- Max
Target stringCapacity - Maximum string
- Min
Target stringCapacity - Minimum string
- Target string
- Type string
- Adjustment string
- Max
Target stringCapacity - Maximum string
- Min
Target stringCapacity - Minimum string
- Target string
- type String
- adjustment String
- max
Target StringCapacity - maximum String
- min
Target StringCapacity - minimum String
- target String
- type string
- adjustment string
- max
Target stringCapacity - maximum string
- min
Target stringCapacity - minimum string
- target string
- type str
- adjustment str
- max_
target_ strcapacity - maximum str
- min_
target_ strcapacity - minimum str
- target str
- type String
- adjustment String
- max
Target StringCapacity - maximum String
- min
Target StringCapacity - minimum String
- target String
ElastigroupScheduledTask, ElastigroupScheduledTaskArgs
- Task
Type string - The task type to run. Supported task types are:
"scale"
,"backup_ami"
,"roll"
,"scaleUp"
,"percentageScaleUp"
,"scaleDown"
,"percentageScaleDown"
,"statefulUpdateCapacity"
. - Adjustment string
- The number of instances to add or remove.
- Adjustment
Percentage string The percentage of instances to add or remove.
Usage:
- Batch
Size stringPercentage - The percentage size of each batch in the scheduled deployment roll.
- Cron
Expression string - A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- Frequency string
- The recurrence frequency to run this task. Supported values are
"hourly"
,"daily"
,"weekly"
and"continuous"
. - Grace
Period string - The period of time (seconds) to wait before checking a batch's health after it's deployment.
- Is
Enabled bool - Setting the task to being enabled or disabled.
- Max
Capacity string - The maximum number of instances the group should have.
- Min
Capacity string - The minimum number of instances the group should have.
- Scale
Max stringCapacity - The maximum number of instances the group should have.
- Scale
Min stringCapacity - The minimum number of instances the group should have.
- Scale
Target stringCapacity - The desired number of instances the group should have.
- Start
Time string - Set a start time for one time tasks.
- Target
Capacity string - The desired number of instances the group should have.
- Task
Type string - The task type to run. Supported task types are:
"scale"
,"backup_ami"
,"roll"
,"scaleUp"
,"percentageScaleUp"
,"scaleDown"
,"percentageScaleDown"
,"statefulUpdateCapacity"
. - Adjustment string
- The number of instances to add or remove.
- Adjustment
Percentage string The percentage of instances to add or remove.
Usage:
- Batch
Size stringPercentage - The percentage size of each batch in the scheduled deployment roll.
- Cron
Expression string - A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- Frequency string
- The recurrence frequency to run this task. Supported values are
"hourly"
,"daily"
,"weekly"
and"continuous"
. - Grace
Period string - The period of time (seconds) to wait before checking a batch's health after it's deployment.
- Is
Enabled bool - Setting the task to being enabled or disabled.
- Max
Capacity string - The maximum number of instances the group should have.
- Min
Capacity string - The minimum number of instances the group should have.
- Scale
Max stringCapacity - The maximum number of instances the group should have.
- Scale
Min stringCapacity - The minimum number of instances the group should have.
- Scale
Target stringCapacity - The desired number of instances the group should have.
- Start
Time string - Set a start time for one time tasks.
- Target
Capacity string - The desired number of instances the group should have.
- task
Type String - The task type to run. Supported task types are:
"scale"
,"backup_ami"
,"roll"
,"scaleUp"
,"percentageScaleUp"
,"scaleDown"
,"percentageScaleDown"
,"statefulUpdateCapacity"
. - adjustment String
- The number of instances to add or remove.
- adjustment
Percentage String The percentage of instances to add or remove.
Usage:
- batch
Size StringPercentage - The percentage size of each batch in the scheduled deployment roll.
- cron
Expression String - A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- frequency String
- The recurrence frequency to run this task. Supported values are
"hourly"
,"daily"
,"weekly"
and"continuous"
. - grace
Period String - The period of time (seconds) to wait before checking a batch's health after it's deployment.
- is
Enabled Boolean - Setting the task to being enabled or disabled.
- max
Capacity String - The maximum number of instances the group should have.
- min
Capacity String - The minimum number of instances the group should have.
- scale
Max StringCapacity - The maximum number of instances the group should have.
- scale
Min StringCapacity - The minimum number of instances the group should have.
- scale
Target StringCapacity - The desired number of instances the group should have.
- start
Time String - Set a start time for one time tasks.
- target
Capacity String - The desired number of instances the group should have.
- task
Type string - The task type to run. Supported task types are:
"scale"
,"backup_ami"
,"roll"
,"scaleUp"
,"percentageScaleUp"
,"scaleDown"
,"percentageScaleDown"
,"statefulUpdateCapacity"
. - adjustment string
- The number of instances to add or remove.
- adjustment
Percentage string The percentage of instances to add or remove.
Usage:
- batch
Size stringPercentage - The percentage size of each batch in the scheduled deployment roll.
- cron
Expression string - A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- frequency string
- The recurrence frequency to run this task. Supported values are
"hourly"
,"daily"
,"weekly"
and"continuous"
. - grace
Period string - The period of time (seconds) to wait before checking a batch's health after it's deployment.
- is
Enabled boolean - Setting the task to being enabled or disabled.
- max
Capacity string - The maximum number of instances the group should have.
- min
Capacity string - The minimum number of instances the group should have.
- scale
Max stringCapacity - The maximum number of instances the group should have.
- scale
Min stringCapacity - The minimum number of instances the group should have.
- scale
Target stringCapacity - The desired number of instances the group should have.
- start
Time string - Set a start time for one time tasks.
- target
Capacity string - The desired number of instances the group should have.
- task_
type str - The task type to run. Supported task types are:
"scale"
,"backup_ami"
,"roll"
,"scaleUp"
,"percentageScaleUp"
,"scaleDown"
,"percentageScaleDown"
,"statefulUpdateCapacity"
. - adjustment str
- The number of instances to add or remove.
- adjustment_
percentage str The percentage of instances to add or remove.
Usage:
- batch_
size_ strpercentage - The percentage size of each batch in the scheduled deployment roll.
- cron_
expression str - A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- frequency str
- The recurrence frequency to run this task. Supported values are
"hourly"
,"daily"
,"weekly"
and"continuous"
. - grace_
period str - The period of time (seconds) to wait before checking a batch's health after it's deployment.
- is_
enabled bool - Setting the task to being enabled or disabled.
- max_
capacity str - The maximum number of instances the group should have.
- min_
capacity str - The minimum number of instances the group should have.
- scale_
max_ strcapacity - The maximum number of instances the group should have.
- scale_
min_ strcapacity - The minimum number of instances the group should have.
- scale_
target_ strcapacity - The desired number of instances the group should have.
- start_
time str - Set a start time for one time tasks.
- target_
capacity str - The desired number of instances the group should have.
- task
Type String - The task type to run. Supported task types are:
"scale"
,"backup_ami"
,"roll"
,"scaleUp"
,"percentageScaleUp"
,"scaleDown"
,"percentageScaleDown"
,"statefulUpdateCapacity"
. - adjustment String
- The number of instances to add or remove.
- adjustment
Percentage String The percentage of instances to add or remove.
Usage:
- batch
Size StringPercentage - The percentage size of each batch in the scheduled deployment roll.
- cron
Expression String - A valid cron expression. The cron is running in UTC time zone and is in Unix cron format.
- frequency String
- The recurrence frequency to run this task. Supported values are
"hourly"
,"daily"
,"weekly"
and"continuous"
. - grace
Period String - The period of time (seconds) to wait before checking a batch's health after it's deployment.
- is
Enabled Boolean - Setting the task to being enabled or disabled.
- max
Capacity String - The maximum number of instances the group should have.
- min
Capacity String - The minimum number of instances the group should have.
- scale
Max StringCapacity - The maximum number of instances the group should have.
- scale
Min StringCapacity - The minimum number of instances the group should have.
- scale
Target StringCapacity - The desired number of instances the group should have.
- start
Time String - Set a start time for one time tasks.
- target
Capacity String - The desired number of instances the group should have.
ElastigroupSignal, ElastigroupSignalArgs
ElastigroupStatefulDeallocation, ElastigroupStatefulDeallocationArgs
- Should
Delete boolImages - For stateful groups: remove persistent images.
- Should
Delete boolNetwork Interfaces - For stateful groups: remove network interfaces.
- Should
Delete boolSnapshots For stateful groups: remove snapshots.
Usage:
- Should
Delete boolVolumes - For stateful groups: remove persistent volumes.
- Should
Delete boolImages - For stateful groups: remove persistent images.
- Should
Delete boolNetwork Interfaces - For stateful groups: remove network interfaces.
- Should
Delete boolSnapshots For stateful groups: remove snapshots.
Usage:
- Should
Delete boolVolumes - For stateful groups: remove persistent volumes.
- should
Delete BooleanImages - For stateful groups: remove persistent images.
- should
Delete BooleanNetwork Interfaces - For stateful groups: remove network interfaces.
- should
Delete BooleanSnapshots For stateful groups: remove snapshots.
Usage:
- should
Delete BooleanVolumes - For stateful groups: remove persistent volumes.
- should
Delete booleanImages - For stateful groups: remove persistent images.
- should
Delete booleanNetwork Interfaces - For stateful groups: remove network interfaces.
- should
Delete booleanSnapshots For stateful groups: remove snapshots.
Usage:
- should
Delete booleanVolumes - For stateful groups: remove persistent volumes.
- should_
delete_ boolimages - For stateful groups: remove persistent images.
- should_
delete_ boolnetwork_ interfaces - For stateful groups: remove network interfaces.
- should_
delete_ boolsnapshots For stateful groups: remove snapshots.
Usage:
- should_
delete_ boolvolumes - For stateful groups: remove persistent volumes.
- should
Delete BooleanImages - For stateful groups: remove persistent images.
- should
Delete BooleanNetwork Interfaces - For stateful groups: remove network interfaces.
- should
Delete BooleanSnapshots For stateful groups: remove snapshots.
Usage:
- should
Delete BooleanVolumes - For stateful groups: remove persistent volumes.
ElastigroupStatefulInstanceAction, ElastigroupStatefulInstanceActionArgs
- Stateful
Instance stringId - String, Stateful Instance ID on which the action should be performed.
- Type string
String, Action type. Supported action types:
pause
,resume
,recycle
,deallocate
.Usage:
- Stateful
Instance stringId - String, Stateful Instance ID on which the action should be performed.
- Type string
String, Action type. Supported action types:
pause
,resume
,recycle
,deallocate
.Usage:
- stateful
Instance StringId - String, Stateful Instance ID on which the action should be performed.
- type String
String, Action type. Supported action types:
pause
,resume
,recycle
,deallocate
.Usage:
- stateful
Instance stringId - String, Stateful Instance ID on which the action should be performed.
- type string
String, Action type. Supported action types:
pause
,resume
,recycle
,deallocate
.Usage:
- stateful_
instance_ strid - String, Stateful Instance ID on which the action should be performed.
- type str
String, Action type. Supported action types:
pause
,resume
,recycle
,deallocate
.Usage:
- stateful
Instance StringId - String, Stateful Instance ID on which the action should be performed.
- type String
String, Action type. Supported action types:
pause
,resume
,recycle
,deallocate
.Usage:
ElastigroupTag, ElastigroupTagArgs
ElastigroupUpdatePolicy, ElastigroupUpdatePolicyArgs
- Should
Resume boolStateful - This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
- Should
Roll bool - Sets the enablement of the roll option.
- bool
- Enables updates to tags without rolling the group when set to
true
. - Roll
Config Pulumi.Spot Inst. Aws. Inputs. Elastigroup Update Policy Roll Config - While used, you can control whether the group should perform a deployment after an update to the configuration.
- Should
Resume boolStateful - This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
- Should
Roll bool - Sets the enablement of the roll option.
- bool
- Enables updates to tags without rolling the group when set to
true
. - Roll
Config ElastigroupUpdate Policy Roll Config - While used, you can control whether the group should perform a deployment after an update to the configuration.
- should
Resume BooleanStateful - This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
- should
Roll Boolean - Sets the enablement of the roll option.
- Boolean
- Enables updates to tags without rolling the group when set to
true
. - roll
Config ElastigroupUpdate Policy Roll Config - While used, you can control whether the group should perform a deployment after an update to the configuration.
- should
Resume booleanStateful - This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
- should
Roll boolean - Sets the enablement of the roll option.
- boolean
- Enables updates to tags without rolling the group when set to
true
. - roll
Config ElastigroupUpdate Policy Roll Config - While used, you can control whether the group should perform a deployment after an update to the configuration.
- should_
resume_ boolstateful - This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
- should_
roll bool - Sets the enablement of the roll option.
- bool
- Enables updates to tags without rolling the group when set to
true
. - roll_
config ElastigroupUpdate Policy Roll Config - While used, you can control whether the group should perform a deployment after an update to the configuration.
- should
Resume BooleanStateful - This will apply resuming action for Stateful instances in the Elastigroup upon scale up or capacity changes. Example usage will be for Elastigroups that will have scheduling rules to set a target capacity of 0 instances in the night and automatically restore the same state of the instances in the morning.
- should
Roll Boolean - Sets the enablement of the roll option.
- Boolean
- Enables updates to tags without rolling the group when set to
true
. - roll
Config Property Map - While used, you can control whether the group should perform a deployment after an update to the configuration.
ElastigroupUpdatePolicyRollConfig, ElastigroupUpdatePolicyRollConfigArgs
- Batch
Size intPercentage - Sets the percentage of the instances to deploy in each batch.
- Grace
Period int - Sets the grace period for new instances to become healthy.
- Health
Check stringType - Sets the health check type to use. Valid values:
"EC2"
,"ECS_CLUSTER_INSTANCE"
,"ELB"
,"HCS"
,"TARGET_GROUP"
,"NONE"
. - Strategy
Pulumi.
Spot Inst. Aws. Inputs. Elastigroup Update Policy Roll Config Strategy - Strategy parameters
- Wait
For doubleRoll Percentage - For use with
should_roll
. Sets minimum % of roll required to complete before continuing the plan. Required ifwait_for_roll_timeout
is set. - Wait
For intRoll Timeout - For use with
should_roll
. Sets how long to wait for the deployed % of a roll to exceedwait_for_roll_percentage
before continuing the plan. Required ifwait_for_roll_percentage
is set.
- Batch
Size intPercentage - Sets the percentage of the instances to deploy in each batch.
- Grace
Period int - Sets the grace period for new instances to become healthy.
- Health
Check stringType - Sets the health check type to use. Valid values:
"EC2"
,"ECS_CLUSTER_INSTANCE"
,"ELB"
,"HCS"
,"TARGET_GROUP"
,"NONE"
. - Strategy
Elastigroup
Update Policy Roll Config Strategy - Strategy parameters
- Wait
For float64Roll Percentage - For use with
should_roll
. Sets minimum % of roll required to complete before continuing the plan. Required ifwait_for_roll_timeout
is set. - Wait
For intRoll Timeout - For use with
should_roll
. Sets how long to wait for the deployed % of a roll to exceedwait_for_roll_percentage
before continuing the plan. Required ifwait_for_roll_percentage
is set.
- batch
Size IntegerPercentage - Sets the percentage of the instances to deploy in each batch.
- grace
Period Integer - Sets the grace period for new instances to become healthy.
- health
Check StringType - Sets the health check type to use. Valid values:
"EC2"
,"ECS_CLUSTER_INSTANCE"
,"ELB"
,"HCS"
,"TARGET_GROUP"
,"NONE"
. - strategy
Elastigroup
Update Policy Roll Config Strategy - Strategy parameters
- wait
For DoubleRoll Percentage - For use with
should_roll
. Sets minimum % of roll required to complete before continuing the plan. Required ifwait_for_roll_timeout
is set. - wait
For IntegerRoll Timeout - For use with
should_roll
. Sets how long to wait for the deployed % of a roll to exceedwait_for_roll_percentage
before continuing the plan. Required ifwait_for_roll_percentage
is set.
- batch
Size numberPercentage - Sets the percentage of the instances to deploy in each batch.
- grace
Period number - Sets the grace period for new instances to become healthy.
- health
Check stringType - Sets the health check type to use. Valid values:
"EC2"
,"ECS_CLUSTER_INSTANCE"
,"ELB"
,"HCS"
,"TARGET_GROUP"
,"NONE"
. - strategy
Elastigroup
Update Policy Roll Config Strategy - Strategy parameters
- wait
For numberRoll Percentage - For use with
should_roll
. Sets minimum % of roll required to complete before continuing the plan. Required ifwait_for_roll_timeout
is set. - wait
For numberRoll Timeout - For use with
should_roll
. Sets how long to wait for the deployed % of a roll to exceedwait_for_roll_percentage
before continuing the plan. Required ifwait_for_roll_percentage
is set.
- batch_
size_ intpercentage - Sets the percentage of the instances to deploy in each batch.
- grace_
period int - Sets the grace period for new instances to become healthy.
- health_
check_ strtype - Sets the health check type to use. Valid values:
"EC2"
,"ECS_CLUSTER_INSTANCE"
,"ELB"
,"HCS"
,"TARGET_GROUP"
,"NONE"
. - strategy
Elastigroup
Update Policy Roll Config Strategy - Strategy parameters
- wait_
for_ floatroll_ percentage - For use with
should_roll
. Sets minimum % of roll required to complete before continuing the plan. Required ifwait_for_roll_timeout
is set. - wait_
for_ introll_ timeout - For use with
should_roll
. Sets how long to wait for the deployed % of a roll to exceedwait_for_roll_percentage
before continuing the plan. Required ifwait_for_roll_percentage
is set.
- batch
Size NumberPercentage - Sets the percentage of the instances to deploy in each batch.
- grace
Period Number - Sets the grace period for new instances to become healthy.
- health
Check StringType - Sets the health check type to use. Valid values:
"EC2"
,"ECS_CLUSTER_INSTANCE"
,"ELB"
,"HCS"
,"TARGET_GROUP"
,"NONE"
. - strategy Property Map
- Strategy parameters
- wait
For NumberRoll Percentage - For use with
should_roll
. Sets minimum % of roll required to complete before continuing the plan. Required ifwait_for_roll_timeout
is set. - wait
For NumberRoll Timeout - For use with
should_roll
. Sets how long to wait for the deployed % of a roll to exceedwait_for_roll_percentage
before continuing the plan. Required ifwait_for_roll_percentage
is set.
ElastigroupUpdatePolicyRollConfigStrategy, ElastigroupUpdatePolicyRollConfigStrategyArgs
- Action string
- Action to take. Valid values:
REPLACE_SERVER
,RESTART_SERVER
. - Batch
Min intHealthy Percentage - Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range
1
-100
. - On
Failure Pulumi.Spot Inst. Aws. Inputs. Elastigroup Update Policy Roll Config Strategy On Failure - Set detach options to the deployment.
- Should
Drain boolInstances - Specify whether to drain incoming TCP connections before terminating a server.
- Action string
- Action to take. Valid values:
REPLACE_SERVER
,RESTART_SERVER
. - Batch
Min intHealthy Percentage - Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range
1
-100
. - On
Failure ElastigroupUpdate Policy Roll Config Strategy On Failure - Set detach options to the deployment.
- Should
Drain boolInstances - Specify whether to drain incoming TCP connections before terminating a server.
- action String
- Action to take. Valid values:
REPLACE_SERVER
,RESTART_SERVER
. - batch
Min IntegerHealthy Percentage - Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range
1
-100
. - on
Failure ElastigroupUpdate Policy Roll Config Strategy On Failure - Set detach options to the deployment.
- should
Drain BooleanInstances - Specify whether to drain incoming TCP connections before terminating a server.
- action string
- Action to take. Valid values:
REPLACE_SERVER
,RESTART_SERVER
. - batch
Min numberHealthy Percentage - Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range
1
-100
. - on
Failure ElastigroupUpdate Policy Roll Config Strategy On Failure - Set detach options to the deployment.
- should
Drain booleanInstances - Specify whether to drain incoming TCP connections before terminating a server.
- action str
- Action to take. Valid values:
REPLACE_SERVER
,RESTART_SERVER
. - batch_
min_ inthealthy_ percentage - Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range
1
-100
. - on_
failure ElastigroupUpdate Policy Roll Config Strategy On Failure - Set detach options to the deployment.
- should_
drain_ boolinstances - Specify whether to drain incoming TCP connections before terminating a server.
- action String
- Action to take. Valid values:
REPLACE_SERVER
,RESTART_SERVER
. - batch
Min NumberHealthy Percentage - Indicates the threshold of minimum healthy instances in single batch. If the amount of healthy instances in single batch is under the threshold, the deployment will fail. Range
1
-100
. - on
Failure Property Map - Set detach options to the deployment.
- should
Drain BooleanInstances - Specify whether to drain incoming TCP connections before terminating a server.
ElastigroupUpdatePolicyRollConfigStrategyOnFailure, ElastigroupUpdatePolicyRollConfigStrategyOnFailureArgs
- Action
Type string - Sets the action that will take place, Accepted values are:
DETACH_OLD
,DETACH_NEW
. - Batch
Num int - Draining
Timeout int - Indicates (in seconds) the timeout to wait until instance are detached.
- Should
Decrement boolTarget Capacity - Decrementing the group target capacity after detaching the instances.
- Should
Handle boolAll Batches - Indicator if the action should apply to all batches of the deployment or only the latest batch.
- Action
Type string - Sets the action that will take place, Accepted values are:
DETACH_OLD
,DETACH_NEW
. - Batch
Num int - Draining
Timeout int - Indicates (in seconds) the timeout to wait until instance are detached.
- Should
Decrement boolTarget Capacity - Decrementing the group target capacity after detaching the instances.
- Should
Handle boolAll Batches - Indicator if the action should apply to all batches of the deployment or only the latest batch.
- action
Type String - Sets the action that will take place, Accepted values are:
DETACH_OLD
,DETACH_NEW
. - batch
Num Integer - draining
Timeout Integer - Indicates (in seconds) the timeout to wait until instance are detached.
- should
Decrement BooleanTarget Capacity - Decrementing the group target capacity after detaching the instances.
- should
Handle BooleanAll Batches - Indicator if the action should apply to all batches of the deployment or only the latest batch.
- action
Type string - Sets the action that will take place, Accepted values are:
DETACH_OLD
,DETACH_NEW
. - batch
Num number - draining
Timeout number - Indicates (in seconds) the timeout to wait until instance are detached.
- should
Decrement booleanTarget Capacity - Decrementing the group target capacity after detaching the instances.
- should
Handle booleanAll Batches - Indicator if the action should apply to all batches of the deployment or only the latest batch.
- action_
type str - Sets the action that will take place, Accepted values are:
DETACH_OLD
,DETACH_NEW
. - batch_
num int - draining_
timeout int - Indicates (in seconds) the timeout to wait until instance are detached.
- should_
decrement_ booltarget_ capacity - Decrementing the group target capacity after detaching the instances.
- should_
handle_ boolall_ batches - Indicator if the action should apply to all batches of the deployment or only the latest batch.
- action
Type String - Sets the action that will take place, Accepted values are:
DETACH_OLD
,DETACH_NEW
. - batch
Num Number - draining
Timeout Number - Indicates (in seconds) the timeout to wait until instance are detached.
- should
Decrement BooleanTarget Capacity - Decrementing the group target capacity after detaching the instances.
- should
Handle BooleanAll Batches - Indicator if the action should apply to all batches of the deployment or only the latest batch.
Package Details
- Repository
- Spotinst pulumi/pulumi-spotinst
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
spotinst
Terraform Provider.