published on Thursday, Sep 10, 2026 by Pulumi
published on Thursday, Sep 10, 2026 by Pulumi
Provides an ECS cluster capacity provider. More information can be found on the ECS Developer Guide.
NOTE: Associating an ECS Capacity Provider to an Auto Scaling Group will automatically add the
AmazonECSManagedtag to the Auto Scaling Group. This tag should be included in theaws.autoscaling.Groupresource configuration to prevent the provider from removing it in subsequent executions as well as ensuring theAmazonECSManagedtag is propagated to all EC2 Instances in the Auto Scaling Group ifminSizeis above 0 on creation. Any EC2 Instances in the Auto Scaling Group without this tag must be manually be updated, otherwise they may cause unexpected scaling behavior and metrics.
NOTE: You must specify exactly one of
autoScalingGroupProviderormanagedInstancesProvider. When usingmanagedInstancesProvider, theclusterparameter is required. When usingautoScalingGroupProvider, theclusterparameter must not be set.
NOTE: AWS cannot delete a capacity provider that is still associated with a cluster through
aws.ecs.ClusterCapacityProviders. When a change forces replacement, add areplaceTriggeredBylifecycle rule to theaws.ecs.ClusterCapacityProvidersresource so the association is recreated before the old capacity provider is deleted.
Example Usage
Auto Scaling Group Provider
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.autoscaling.Group("example", {tags: [{
key: "AmazonECSManaged",
value: "true",
propagateAtLaunch: true,
}]});
const exampleCapacityProvider = new aws.ecs.CapacityProvider("example", {
autoScalingGroupProvider: {
managedScaling: {
maximumScalingStepSize: 1000,
minimumScalingStepSize: 1,
status: "ENABLED",
targetCapacity: 10,
},
autoScalingGroupArn: example.arn,
managedTerminationProtection: "ENABLED",
},
name: "example",
});
import pulumi
import pulumi_aws as aws
example = aws.autoscaling.Group("example", tags=[{
"key": "AmazonECSManaged",
"value": "true",
"propagate_at_launch": True,
}])
example_capacity_provider = aws.ecs.CapacityProvider("example",
auto_scaling_group_provider={
"managed_scaling": {
"maximum_scaling_step_size": 1000,
"minimum_scaling_step_size": 1,
"status": "ENABLED",
"target_capacity": 10,
},
"auto_scaling_group_arn": example.arn,
"managed_termination_protection": "ENABLED",
},
name="example")
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/autoscaling"
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := autoscaling.NewGroup(ctx, "example", &autoscaling.GroupArgs{
Tags: autoscaling.GroupTagArray{
&autoscaling.GroupTagArgs{
Key: pulumi.String("AmazonECSManaged"),
Value: pulumi.String("true"),
PropagateAtLaunch: pulumi.Bool(true),
},
},
})
if err != nil {
return err
}
_, err = ecs.NewCapacityProvider(ctx, "example", &ecs.CapacityProviderArgs{
AutoScalingGroupProvider: &ecs.CapacityProviderAutoScalingGroupProviderArgs{
ManagedScaling: &ecs.CapacityProviderAutoScalingGroupProviderManagedScalingArgs{
MaximumScalingStepSize: pulumi.Int(1000),
MinimumScalingStepSize: pulumi.Int(1),
Status: pulumi.String("ENABLED"),
TargetCapacity: pulumi.Int(10),
},
AutoScalingGroupArn: example.Arn,
ManagedTerminationProtection: pulumi.String("ENABLED"),
},
Name: pulumi.String("example"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.AutoScaling.Group("example", new()
{
Tags = new[]
{
new Aws.AutoScaling.Inputs.GroupTagArgs
{
Key = "AmazonECSManaged",
Value = "true",
PropagateAtLaunch = true,
},
},
});
var exampleCapacityProvider = new Aws.Ecs.CapacityProvider("example", new()
{
AutoScalingGroupProvider = new Aws.Ecs.Inputs.CapacityProviderAutoScalingGroupProviderArgs
{
ManagedScaling = new Aws.Ecs.Inputs.CapacityProviderAutoScalingGroupProviderManagedScalingArgs
{
MaximumScalingStepSize = 1000,
MinimumScalingStepSize = 1,
Status = "ENABLED",
TargetCapacity = 10,
},
AutoScalingGroupArn = example.Arn,
ManagedTerminationProtection = "ENABLED",
},
Name = "example",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.autoscaling.Group;
import com.pulumi.aws.autoscaling.GroupArgs;
import com.pulumi.aws.autoscaling.inputs.GroupTagArgs;
import com.pulumi.aws.ecs.CapacityProvider;
import com.pulumi.aws.ecs.CapacityProviderArgs;
import com.pulumi.aws.ecs.inputs.CapacityProviderAutoScalingGroupProviderArgs;
import com.pulumi.aws.ecs.inputs.CapacityProviderAutoScalingGroupProviderManagedScalingArgs;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new Group("example", GroupArgs.builder()
.tags(GroupTagArgs.builder()
.key("AmazonECSManaged")
.value("true")
.propagateAtLaunch(true)
.build())
.build());
var exampleCapacityProvider = new CapacityProvider("exampleCapacityProvider", CapacityProviderArgs.builder()
.autoScalingGroupProvider(CapacityProviderAutoScalingGroupProviderArgs.builder()
.managedScaling(CapacityProviderAutoScalingGroupProviderManagedScalingArgs.builder()
.maximumScalingStepSize(1000)
.minimumScalingStepSize(1)
.status("ENABLED")
.targetCapacity(10)
.build())
.autoScalingGroupArn(example.arn())
.managedTerminationProtection("ENABLED")
.build())
.name("example")
.build());
}
}
resources:
example:
type: aws:autoscaling:Group
properties:
tags:
- key: AmazonECSManaged
value: true
propagateAtLaunch: true
exampleCapacityProvider:
type: aws:ecs:CapacityProvider
name: example
properties:
autoScalingGroupProvider:
managedScaling:
maximumScalingStepSize: 1000
minimumScalingStepSize: 1
status: ENABLED
targetCapacity: 10
autoScalingGroupArn: ${example.arn}
managedTerminationProtection: ENABLED
name: example
pulumi {
required_providers {
aws = {
source = "pulumi/aws"
}
}
}
resource "aws_autoscaling_group" "example" {
tags {
key = "AmazonECSManaged"
value = true
propagate_at_launch = true
}
}
resource "aws_ecs_capacityprovider" "example" {
auto_scaling_group_provider = {
managed_scaling = {
maximum_scaling_step_size = 1000
minimum_scaling_step_size = 1
status = "ENABLED"
target_capacity = 10
}
auto_scaling_group_arn = aws_autoscaling_group.example.arn
managed_termination_protection = "ENABLED"
}
name = "example"
}
Managed Instances Provider
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.ecs.CapacityProvider("example", {
managedInstancesProvider: {
instanceLaunchTemplate: {
networkConfiguration: {
subnets: [exampleAwsSubnet.id],
securityGroups: [exampleAwsSecurityGroup.id],
},
storageConfiguration: {
storageSizeGib: 30,
},
instanceRequirements: {
memoryMib: {
min: 1024,
max: 8192,
},
vcpuCount: {
min: 1,
max: 4,
},
instanceGenerations: ["current"],
cpuManufacturers: [
"intel",
"amd",
],
},
ec2InstanceProfileArn: ecsInstance.arn,
monitoring: "DETAILED",
},
infrastructureRoleArn: ecsInfrastructure.arn,
propagateTags: "CAPACITY_PROVIDER",
},
name: "example",
cluster: "my-cluster",
});
import pulumi
import pulumi_aws as aws
example = aws.ecs.CapacityProvider("example",
managed_instances_provider={
"instance_launch_template": {
"network_configuration": {
"subnets": [example_aws_subnet["id"]],
"security_groups": [example_aws_security_group["id"]],
},
"storage_configuration": {
"storage_size_gib": 30,
},
"instance_requirements": {
"memory_mib": {
"min": 1024,
"max": 8192,
},
"vcpu_count": {
"min": 1,
"max": 4,
},
"instance_generations": ["current"],
"cpu_manufacturers": [
"intel",
"amd",
],
},
"ec2_instance_profile_arn": ecs_instance["arn"],
"monitoring": "DETAILED",
},
"infrastructure_role_arn": ecs_infrastructure["arn"],
"propagate_tags": "CAPACITY_PROVIDER",
},
name="example",
cluster="my-cluster")
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/ecs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := ecs.NewCapacityProvider(ctx, "example", &ecs.CapacityProviderArgs{
ManagedInstancesProvider: &ecs.CapacityProviderManagedInstancesProviderArgs{
InstanceLaunchTemplate: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateArgs{
NetworkConfiguration: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateNetworkConfigurationArgs{
Subnets: pulumi.StringArray{
exampleAwsSubnet.Id,
},
SecurityGroups: pulumi.StringArray{
exampleAwsSecurityGroup.Id,
},
},
StorageConfiguration: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateStorageConfigurationArgs{
StorageSizeGib: pulumi.Int(30),
},
InstanceRequirements: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsArgs{
MemoryMib: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryMibArgs{
Min: pulumi.Int(1024),
Max: pulumi.Int(8192),
},
VcpuCount: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsVcpuCountArgs{
Min: pulumi.Int(1),
Max: pulumi.Int(4),
},
InstanceGenerations: pulumi.StringArray{
pulumi.String("current"),
},
CpuManufacturers: pulumi.StringArray{
pulumi.String("intel"),
pulumi.String("amd"),
},
},
Ec2InstanceProfileArn: pulumi.Any(ecsInstance.Arn),
Monitoring: pulumi.String("DETAILED"),
},
InfrastructureRoleArn: pulumi.Any(ecsInfrastructure.Arn),
PropagateTags: pulumi.String("CAPACITY_PROVIDER"),
},
Name: pulumi.String("example"),
Cluster: pulumi.String("my-cluster"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.Ecs.CapacityProvider("example", new()
{
ManagedInstancesProvider = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderArgs
{
InstanceLaunchTemplate = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateArgs
{
NetworkConfiguration = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateNetworkConfigurationArgs
{
Subnets = new[]
{
exampleAwsSubnet.Id,
},
SecurityGroups = new[]
{
exampleAwsSecurityGroup.Id,
},
},
StorageConfiguration = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateStorageConfigurationArgs
{
StorageSizeGib = 30,
},
InstanceRequirements = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsArgs
{
MemoryMib = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryMibArgs
{
Min = 1024,
Max = 8192,
},
VcpuCount = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsVcpuCountArgs
{
Min = 1,
Max = 4,
},
InstanceGenerations = new[]
{
"current",
},
CpuManufacturers = new[]
{
"intel",
"amd",
},
},
Ec2InstanceProfileArn = ecsInstance.Arn,
Monitoring = "DETAILED",
},
InfrastructureRoleArn = ecsInfrastructure.Arn,
PropagateTags = "CAPACITY_PROVIDER",
},
Name = "example",
Cluster = "my-cluster",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ecs.CapacityProvider;
import com.pulumi.aws.ecs.CapacityProviderArgs;
import com.pulumi.aws.ecs.inputs.CapacityProviderManagedInstancesProviderArgs;
import com.pulumi.aws.ecs.inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateArgs;
import com.pulumi.aws.ecs.inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateNetworkConfigurationArgs;
import com.pulumi.aws.ecs.inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateStorageConfigurationArgs;
import com.pulumi.aws.ecs.inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsArgs;
import com.pulumi.aws.ecs.inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryMibArgs;
import com.pulumi.aws.ecs.inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsVcpuCountArgs;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new CapacityProvider("example", CapacityProviderArgs.builder()
.managedInstancesProvider(CapacityProviderManagedInstancesProviderArgs.builder()
.instanceLaunchTemplate(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateArgs.builder()
.networkConfiguration(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateNetworkConfigurationArgs.builder()
.subnets(exampleAwsSubnet.id())
.securityGroups(exampleAwsSecurityGroup.id())
.build())
.storageConfiguration(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateStorageConfigurationArgs.builder()
.storageSizeGib(30)
.build())
.instanceRequirements(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsArgs.builder()
.memoryMib(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryMibArgs.builder()
.min(1024)
.max(8192)
.build())
.vcpuCount(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsVcpuCountArgs.builder()
.min(1)
.max(4)
.build())
.instanceGenerations("current")
.cpuManufacturers(
"intel",
"amd")
.build())
.ec2InstanceProfileArn(ecsInstance.arn())
.monitoring("DETAILED")
.build())
.infrastructureRoleArn(ecsInfrastructure.arn())
.propagateTags("CAPACITY_PROVIDER")
.build())
.name("example")
.cluster("my-cluster")
.build());
}
}
resources:
example:
type: aws:ecs:CapacityProvider
properties:
managedInstancesProvider:
instanceLaunchTemplate:
networkConfiguration:
subnets:
- ${exampleAwsSubnet.id}
securityGroups:
- ${exampleAwsSecurityGroup.id}
storageConfiguration:
storageSizeGib: 30
instanceRequirements:
memoryMib:
min: 1024
max: 8192
vcpuCount:
min: 1
max: 4
instanceGenerations:
- current
cpuManufacturers:
- intel
- amd
ec2InstanceProfileArn: ${ecsInstance.arn}
monitoring: DETAILED
infrastructureRoleArn: ${ecsInfrastructure.arn}
propagateTags: CAPACITY_PROVIDER
name: example
cluster: my-cluster
pulumi {
required_providers {
aws = {
source = "pulumi/aws"
}
}
}
resource "aws_ecs_capacityprovider" "example" {
managed_instances_provider = {
instance_launch_template = {
network_configuration = {
subnets = [exampleAwsSubnet.id]
security_groups = [exampleAwsSecurityGroup.id]
}
storage_configuration = {
storage_size_gib = 30
}
instance_requirements = {
memory_mib = {
min = 1024
max = 8192
}
vcpu_count = {
min = 1
max = 4
}
instance_generations = ["current"]
cpu_manufacturers = ["intel", "amd"]
}
ec2_instance_profile_arn = ecsInstance.arn
monitoring = "DETAILED"
}
infrastructure_role_arn = ecsInfrastructure.arn
propagate_tags = "CAPACITY_PROVIDER"
}
name = "example"
cluster = "my-cluster"
}
Create CapacityProvider Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new CapacityProvider(name: string, args?: CapacityProviderArgs, opts?: CustomResourceOptions);@overload
def CapacityProvider(resource_name: str,
args: Optional[CapacityProviderArgs] = None,
opts: Optional[ResourceOptions] = None)
@overload
def CapacityProvider(resource_name: str,
opts: Optional[ResourceOptions] = None,
auto_scaling_group_provider: Optional[CapacityProviderAutoScalingGroupProviderArgs] = None,
cluster: Optional[str] = None,
managed_instances_provider: Optional[CapacityProviderManagedInstancesProviderArgs] = None,
name: Optional[str] = None,
region: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None)func NewCapacityProvider(ctx *Context, name string, args *CapacityProviderArgs, opts ...ResourceOption) (*CapacityProvider, error)public CapacityProvider(string name, CapacityProviderArgs? args = null, CustomResourceOptions? opts = null)
public CapacityProvider(String name, CapacityProviderArgs args)
public CapacityProvider(String name, CapacityProviderArgs args, CustomResourceOptions options)
type: aws:ecs:CapacityProvider
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "aws_ecs_capacity_provider" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args CapacityProviderArgs
- 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 CapacityProviderArgs
- 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 CapacityProviderArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args CapacityProviderArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args CapacityProviderArgs
- 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 capacityProviderResource = new Aws.Ecs.CapacityProvider("capacityProviderResource", new()
{
AutoScalingGroupProvider = new Aws.Ecs.Inputs.CapacityProviderAutoScalingGroupProviderArgs
{
AutoScalingGroupArn = "string",
ManagedDraining = "string",
ManagedScaling = new Aws.Ecs.Inputs.CapacityProviderAutoScalingGroupProviderManagedScalingArgs
{
InstanceWarmupPeriod = 0,
MaximumScalingStepSize = 0,
MinimumScalingStepSize = 0,
Status = "string",
TargetCapacity = 0,
},
ManagedTerminationProtection = "string",
},
Cluster = "string",
ManagedInstancesProvider = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderArgs
{
InfrastructureRoleArn = "string",
InstanceLaunchTemplate = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateArgs
{
Ec2InstanceProfileArn = "string",
NetworkConfiguration = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateNetworkConfigurationArgs
{
Subnets = new[]
{
"string",
},
SecurityGroups = new[]
{
"string",
},
},
CapacityOptionType = "string",
CapacityReservations = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateCapacityReservationsArgs
{
ReservationGroupArn = "string",
ReservationPreference = "string",
},
InstanceRequirements = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsArgs
{
MemoryMib = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryMibArgs
{
Min = 0,
Max = 0,
},
VcpuCount = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsVcpuCountArgs
{
Min = 0,
Max = 0,
},
LocalStorage = "string",
LocalStorageTypes = new[]
{
"string",
},
AcceleratorTypes = new[]
{
"string",
},
AllowedInstanceTypes = new[]
{
"string",
},
BareMetal = "string",
BaselineEbsBandwidthMbps = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsArgs
{
Max = 0,
Min = 0,
},
BurstablePerformance = "string",
CpuManufacturers = new[]
{
"string",
},
ExcludedInstanceTypes = new[]
{
"string",
},
MaxSpotPriceAsPercentageOfOptimalOnDemandPrice = 0,
AcceleratorTotalMemoryMib = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsAcceleratorTotalMemoryMibArgs
{
Max = 0,
Min = 0,
},
AcceleratorCount = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsAcceleratorCountArgs
{
Max = 0,
Min = 0,
},
InstanceGenerations = new[]
{
"string",
},
MemoryGibPerVcpu = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryGibPerVcpuArgs
{
Max = 0.0,
Min = 0.0,
},
AcceleratorNames = new[]
{
"string",
},
NetworkBandwidthGbps = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsNetworkBandwidthGbpsArgs
{
Max = 0.0,
Min = 0.0,
},
NetworkInterfaceCount = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsNetworkInterfaceCountArgs
{
Max = 0,
Min = 0,
},
OnDemandMaxPricePercentageOverLowestPrice = 0,
RequireHibernateSupport = false,
SpotMaxPricePercentageOverLowestPrice = 0,
TotalLocalStorageGb = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsTotalLocalStorageGbArgs
{
Max = 0.0,
Min = 0.0,
},
AcceleratorManufacturers = new[]
{
"string",
},
},
LocalStorageConfiguration = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateLocalStorageConfigurationArgs
{
UseLocalStorage = false,
},
Monitoring = "string",
StorageConfiguration = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateStorageConfigurationArgs
{
StorageSizeGib = 0,
},
},
AutoRepairConfiguration = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderAutoRepairConfigurationArgs
{
ActionsStatus = "string",
},
InfrastructureOptimization = new Aws.Ecs.Inputs.CapacityProviderManagedInstancesProviderInfrastructureOptimizationArgs
{
ScaleInAfter = 0,
},
PropagateTags = "string",
},
Name = "string",
Region = "string",
Tags =
{
{ "string", "string" },
},
});
example, err := ecs.NewCapacityProvider(ctx, "capacityProviderResource", &ecs.CapacityProviderArgs{
AutoScalingGroupProvider: &ecs.CapacityProviderAutoScalingGroupProviderArgs{
AutoScalingGroupArn: pulumi.String("string"),
ManagedDraining: pulumi.String("string"),
ManagedScaling: &ecs.CapacityProviderAutoScalingGroupProviderManagedScalingArgs{
InstanceWarmupPeriod: pulumi.Int(0),
MaximumScalingStepSize: pulumi.Int(0),
MinimumScalingStepSize: pulumi.Int(0),
Status: pulumi.String("string"),
TargetCapacity: pulumi.Int(0),
},
ManagedTerminationProtection: pulumi.String("string"),
},
Cluster: pulumi.String("string"),
ManagedInstancesProvider: &ecs.CapacityProviderManagedInstancesProviderArgs{
InfrastructureRoleArn: pulumi.String("string"),
InstanceLaunchTemplate: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateArgs{
Ec2InstanceProfileArn: pulumi.String("string"),
NetworkConfiguration: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateNetworkConfigurationArgs{
Subnets: pulumi.StringArray{
pulumi.String("string"),
},
SecurityGroups: pulumi.StringArray{
pulumi.String("string"),
},
},
CapacityOptionType: pulumi.String("string"),
CapacityReservations: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateCapacityReservationsArgs{
ReservationGroupArn: pulumi.String("string"),
ReservationPreference: pulumi.String("string"),
},
InstanceRequirements: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsArgs{
MemoryMib: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryMibArgs{
Min: pulumi.Int(0),
Max: pulumi.Int(0),
},
VcpuCount: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsVcpuCountArgs{
Min: pulumi.Int(0),
Max: pulumi.Int(0),
},
LocalStorage: pulumi.String("string"),
LocalStorageTypes: pulumi.StringArray{
pulumi.String("string"),
},
AcceleratorTypes: pulumi.StringArray{
pulumi.String("string"),
},
AllowedInstanceTypes: pulumi.StringArray{
pulumi.String("string"),
},
BareMetal: pulumi.String("string"),
BaselineEbsBandwidthMbps: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsArgs{
Max: pulumi.Int(0),
Min: pulumi.Int(0),
},
BurstablePerformance: pulumi.String("string"),
CpuManufacturers: pulumi.StringArray{
pulumi.String("string"),
},
ExcludedInstanceTypes: pulumi.StringArray{
pulumi.String("string"),
},
MaxSpotPriceAsPercentageOfOptimalOnDemandPrice: pulumi.Int(0),
AcceleratorTotalMemoryMib: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsAcceleratorTotalMemoryMibArgs{
Max: pulumi.Int(0),
Min: pulumi.Int(0),
},
AcceleratorCount: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsAcceleratorCountArgs{
Max: pulumi.Int(0),
Min: pulumi.Int(0),
},
InstanceGenerations: pulumi.StringArray{
pulumi.String("string"),
},
MemoryGibPerVcpu: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryGibPerVcpuArgs{
Max: pulumi.Float64(0),
Min: pulumi.Float64(0),
},
AcceleratorNames: pulumi.StringArray{
pulumi.String("string"),
},
NetworkBandwidthGbps: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsNetworkBandwidthGbpsArgs{
Max: pulumi.Float64(0),
Min: pulumi.Float64(0),
},
NetworkInterfaceCount: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsNetworkInterfaceCountArgs{
Max: pulumi.Int(0),
Min: pulumi.Int(0),
},
OnDemandMaxPricePercentageOverLowestPrice: pulumi.Int(0),
RequireHibernateSupport: pulumi.Bool(false),
SpotMaxPricePercentageOverLowestPrice: pulumi.Int(0),
TotalLocalStorageGb: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsTotalLocalStorageGbArgs{
Max: pulumi.Float64(0),
Min: pulumi.Float64(0),
},
AcceleratorManufacturers: pulumi.StringArray{
pulumi.String("string"),
},
},
LocalStorageConfiguration: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateLocalStorageConfigurationArgs{
UseLocalStorage: pulumi.Bool(false),
},
Monitoring: pulumi.String("string"),
StorageConfiguration: &ecs.CapacityProviderManagedInstancesProviderInstanceLaunchTemplateStorageConfigurationArgs{
StorageSizeGib: pulumi.Int(0),
},
},
AutoRepairConfiguration: &ecs.CapacityProviderManagedInstancesProviderAutoRepairConfigurationArgs{
ActionsStatus: pulumi.String("string"),
},
InfrastructureOptimization: &ecs.CapacityProviderManagedInstancesProviderInfrastructureOptimizationArgs{
ScaleInAfter: pulumi.Int(0),
},
PropagateTags: pulumi.String("string"),
},
Name: pulumi.String("string"),
Region: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
})
resource "aws_ecs_capacity_provider" "capacityProviderResource" {
lifecycle {
create_before_destroy = true
}
auto_scaling_group_provider = {
auto_scaling_group_arn = "string"
managed_draining = "string"
managed_scaling = {
instance_warmup_period = 0
maximum_scaling_step_size = 0
minimum_scaling_step_size = 0
status = "string"
target_capacity = 0
}
managed_termination_protection = "string"
}
cluster = "string"
managed_instances_provider = {
infrastructure_role_arn = "string"
instance_launch_template = {
ec2_instance_profile_arn = "string"
network_configuration = {
subnets = ["string"]
security_groups = ["string"]
}
capacity_option_type = "string"
capacity_reservations = {
reservation_group_arn = "string"
reservation_preference = "string"
}
instance_requirements = {
memory_mib = {
min = 0
max = 0
}
vcpu_count = {
min = 0
max = 0
}
local_storage = "string"
local_storage_types = ["string"]
accelerator_types = ["string"]
allowed_instance_types = ["string"]
bare_metal = "string"
baseline_ebs_bandwidth_mbps = {
max = 0
min = 0
}
burstable_performance = "string"
cpu_manufacturers = ["string"]
excluded_instance_types = ["string"]
max_spot_price_as_percentage_of_optimal_on_demand_price = 0
accelerator_total_memory_mib = {
max = 0
min = 0
}
accelerator_count = {
max = 0
min = 0
}
instance_generations = ["string"]
memory_gib_per_vcpu = {
max = 0
min = 0
}
accelerator_names = ["string"]
network_bandwidth_gbps = {
max = 0
min = 0
}
network_interface_count = {
max = 0
min = 0
}
on_demand_max_price_percentage_over_lowest_price = 0
require_hibernate_support = false
spot_max_price_percentage_over_lowest_price = 0
total_local_storage_gb = {
max = 0
min = 0
}
accelerator_manufacturers = ["string"]
}
local_storage_configuration = {
use_local_storage = false
}
monitoring = "string"
storage_configuration = {
storage_size_gib = 0
}
}
auto_repair_configuration = {
actions_status = "string"
}
infrastructure_optimization = {
scale_in_after = 0
}
propagate_tags = "string"
}
name = "string"
region = "string"
tags = {
"string" = "string"
}
}
var capacityProviderResource = new com.pulumi.aws.ecs.CapacityProvider("capacityProviderResource", com.pulumi.aws.ecs.CapacityProviderArgs.builder()
.autoScalingGroupProvider(CapacityProviderAutoScalingGroupProviderArgs.builder()
.autoScalingGroupArn("string")
.managedDraining("string")
.managedScaling(CapacityProviderAutoScalingGroupProviderManagedScalingArgs.builder()
.instanceWarmupPeriod(0)
.maximumScalingStepSize(0)
.minimumScalingStepSize(0)
.status("string")
.targetCapacity(0)
.build())
.managedTerminationProtection("string")
.build())
.cluster("string")
.managedInstancesProvider(CapacityProviderManagedInstancesProviderArgs.builder()
.infrastructureRoleArn("string")
.instanceLaunchTemplate(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateArgs.builder()
.ec2InstanceProfileArn("string")
.networkConfiguration(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateNetworkConfigurationArgs.builder()
.subnets("string")
.securityGroups("string")
.build())
.capacityOptionType("string")
.capacityReservations(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateCapacityReservationsArgs.builder()
.reservationGroupArn("string")
.reservationPreference("string")
.build())
.instanceRequirements(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsArgs.builder()
.memoryMib(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryMibArgs.builder()
.min(0)
.max(0)
.build())
.vcpuCount(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsVcpuCountArgs.builder()
.min(0)
.max(0)
.build())
.localStorage("string")
.localStorageTypes("string")
.acceleratorTypes("string")
.allowedInstanceTypes("string")
.bareMetal("string")
.baselineEbsBandwidthMbps(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsArgs.builder()
.max(0)
.min(0)
.build())
.burstablePerformance("string")
.cpuManufacturers("string")
.excludedInstanceTypes("string")
.maxSpotPriceAsPercentageOfOptimalOnDemandPrice(0)
.acceleratorTotalMemoryMib(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsAcceleratorTotalMemoryMibArgs.builder()
.max(0)
.min(0)
.build())
.acceleratorCount(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsAcceleratorCountArgs.builder()
.max(0)
.min(0)
.build())
.instanceGenerations("string")
.memoryGibPerVcpu(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryGibPerVcpuArgs.builder()
.max(0.0)
.min(0.0)
.build())
.acceleratorNames("string")
.networkBandwidthGbps(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsNetworkBandwidthGbpsArgs.builder()
.max(0.0)
.min(0.0)
.build())
.networkInterfaceCount(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsNetworkInterfaceCountArgs.builder()
.max(0)
.min(0)
.build())
.onDemandMaxPricePercentageOverLowestPrice(0)
.requireHibernateSupport(false)
.spotMaxPricePercentageOverLowestPrice(0)
.totalLocalStorageGb(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsTotalLocalStorageGbArgs.builder()
.max(0.0)
.min(0.0)
.build())
.acceleratorManufacturers("string")
.build())
.localStorageConfiguration(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateLocalStorageConfigurationArgs.builder()
.useLocalStorage(false)
.build())
.monitoring("string")
.storageConfiguration(CapacityProviderManagedInstancesProviderInstanceLaunchTemplateStorageConfigurationArgs.builder()
.storageSizeGib(0)
.build())
.build())
.autoRepairConfiguration(CapacityProviderManagedInstancesProviderAutoRepairConfigurationArgs.builder()
.actionsStatus("string")
.build())
.infrastructureOptimization(CapacityProviderManagedInstancesProviderInfrastructureOptimizationArgs.builder()
.scaleInAfter(0)
.build())
.propagateTags("string")
.build())
.name("string")
.region("string")
.tags(Map.of("string", "string"))
.build());
capacity_provider_resource = aws.ecs.CapacityProvider("capacityProviderResource",
auto_scaling_group_provider={
"auto_scaling_group_arn": "string",
"managed_draining": "string",
"managed_scaling": {
"instance_warmup_period": 0,
"maximum_scaling_step_size": 0,
"minimum_scaling_step_size": 0,
"status": "string",
"target_capacity": 0,
},
"managed_termination_protection": "string",
},
cluster="string",
managed_instances_provider={
"infrastructure_role_arn": "string",
"instance_launch_template": {
"ec2_instance_profile_arn": "string",
"network_configuration": {
"subnets": ["string"],
"security_groups": ["string"],
},
"capacity_option_type": "string",
"capacity_reservations": {
"reservation_group_arn": "string",
"reservation_preference": "string",
},
"instance_requirements": {
"memory_mib": {
"min": 0,
"max": 0,
},
"vcpu_count": {
"min": 0,
"max": 0,
},
"local_storage": "string",
"local_storage_types": ["string"],
"accelerator_types": ["string"],
"allowed_instance_types": ["string"],
"bare_metal": "string",
"baseline_ebs_bandwidth_mbps": {
"max": 0,
"min": 0,
},
"burstable_performance": "string",
"cpu_manufacturers": ["string"],
"excluded_instance_types": ["string"],
"max_spot_price_as_percentage_of_optimal_on_demand_price": 0,
"accelerator_total_memory_mib": {
"max": 0,
"min": 0,
},
"accelerator_count": {
"max": 0,
"min": 0,
},
"instance_generations": ["string"],
"memory_gib_per_vcpu": {
"max": float(0),
"min": float(0),
},
"accelerator_names": ["string"],
"network_bandwidth_gbps": {
"max": float(0),
"min": float(0),
},
"network_interface_count": {
"max": 0,
"min": 0,
},
"on_demand_max_price_percentage_over_lowest_price": 0,
"require_hibernate_support": False,
"spot_max_price_percentage_over_lowest_price": 0,
"total_local_storage_gb": {
"max": float(0),
"min": float(0),
},
"accelerator_manufacturers": ["string"],
},
"local_storage_configuration": {
"use_local_storage": False,
},
"monitoring": "string",
"storage_configuration": {
"storage_size_gib": 0,
},
},
"auto_repair_configuration": {
"actions_status": "string",
},
"infrastructure_optimization": {
"scale_in_after": 0,
},
"propagate_tags": "string",
},
name="string",
region="string",
tags={
"string": "string",
})
const capacityProviderResource = new aws.ecs.CapacityProvider("capacityProviderResource", {
autoScalingGroupProvider: {
autoScalingGroupArn: "string",
managedDraining: "string",
managedScaling: {
instanceWarmupPeriod: 0,
maximumScalingStepSize: 0,
minimumScalingStepSize: 0,
status: "string",
targetCapacity: 0,
},
managedTerminationProtection: "string",
},
cluster: "string",
managedInstancesProvider: {
infrastructureRoleArn: "string",
instanceLaunchTemplate: {
ec2InstanceProfileArn: "string",
networkConfiguration: {
subnets: ["string"],
securityGroups: ["string"],
},
capacityOptionType: "string",
capacityReservations: {
reservationGroupArn: "string",
reservationPreference: "string",
},
instanceRequirements: {
memoryMib: {
min: 0,
max: 0,
},
vcpuCount: {
min: 0,
max: 0,
},
localStorage: "string",
localStorageTypes: ["string"],
acceleratorTypes: ["string"],
allowedInstanceTypes: ["string"],
bareMetal: "string",
baselineEbsBandwidthMbps: {
max: 0,
min: 0,
},
burstablePerformance: "string",
cpuManufacturers: ["string"],
excludedInstanceTypes: ["string"],
maxSpotPriceAsPercentageOfOptimalOnDemandPrice: 0,
acceleratorTotalMemoryMib: {
max: 0,
min: 0,
},
acceleratorCount: {
max: 0,
min: 0,
},
instanceGenerations: ["string"],
memoryGibPerVcpu: {
max: 0,
min: 0,
},
acceleratorNames: ["string"],
networkBandwidthGbps: {
max: 0,
min: 0,
},
networkInterfaceCount: {
max: 0,
min: 0,
},
onDemandMaxPricePercentageOverLowestPrice: 0,
requireHibernateSupport: false,
spotMaxPricePercentageOverLowestPrice: 0,
totalLocalStorageGb: {
max: 0,
min: 0,
},
acceleratorManufacturers: ["string"],
},
localStorageConfiguration: {
useLocalStorage: false,
},
monitoring: "string",
storageConfiguration: {
storageSizeGib: 0,
},
},
autoRepairConfiguration: {
actionsStatus: "string",
},
infrastructureOptimization: {
scaleInAfter: 0,
},
propagateTags: "string",
},
name: "string",
region: "string",
tags: {
string: "string",
},
});
type: aws:ecs:CapacityProvider
properties:
autoScalingGroupProvider:
autoScalingGroupArn: string
managedDraining: string
managedScaling:
instanceWarmupPeriod: 0
maximumScalingStepSize: 0
minimumScalingStepSize: 0
status: string
targetCapacity: 0
managedTerminationProtection: string
cluster: string
managedInstancesProvider:
autoRepairConfiguration:
actionsStatus: string
infrastructureOptimization:
scaleInAfter: 0
infrastructureRoleArn: string
instanceLaunchTemplate:
capacityOptionType: string
capacityReservations:
reservationGroupArn: string
reservationPreference: string
ec2InstanceProfileArn: string
instanceRequirements:
acceleratorCount:
max: 0
min: 0
acceleratorManufacturers:
- string
acceleratorNames:
- string
acceleratorTotalMemoryMib:
max: 0
min: 0
acceleratorTypes:
- string
allowedInstanceTypes:
- string
bareMetal: string
baselineEbsBandwidthMbps:
max: 0
min: 0
burstablePerformance: string
cpuManufacturers:
- string
excludedInstanceTypes:
- string
instanceGenerations:
- string
localStorage: string
localStorageTypes:
- string
maxSpotPriceAsPercentageOfOptimalOnDemandPrice: 0
memoryGibPerVcpu:
max: 0
min: 0
memoryMib:
max: 0
min: 0
networkBandwidthGbps:
max: 0
min: 0
networkInterfaceCount:
max: 0
min: 0
onDemandMaxPricePercentageOverLowestPrice: 0
requireHibernateSupport: false
spotMaxPricePercentageOverLowestPrice: 0
totalLocalStorageGb:
max: 0
min: 0
vcpuCount:
max: 0
min: 0
localStorageConfiguration:
useLocalStorage: false
monitoring: string
networkConfiguration:
securityGroups:
- string
subnets:
- string
storageConfiguration:
storageSizeGib: 0
propagateTags: string
name: string
region: string
tags:
string: string
CapacityProvider Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The CapacityProvider resource accepts the following input properties:
- Auto
Scaling CapacityGroup Provider Provider Auto Scaling Group Provider - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - Cluster string
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - Managed
Instances CapacityProvider Provider Managed Instances Provider - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - Name string
- Name of the capacity provider.
- Region string
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- Dictionary<string, string>
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- Auto
Scaling CapacityGroup Provider Provider Auto Scaling Group Provider Args - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - Cluster string
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - Managed
Instances CapacityProvider Provider Managed Instances Provider Args - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - Name string
- Name of the capacity provider.
- Region string
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- map[string]string
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- auto_
scaling_ objectgroup_ provider - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - cluster string
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - managed_
instances_ objectprovider - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - name string
- Name of the capacity provider.
- region string
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- map(string)
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- auto
Scaling CapacityGroup Provider Provider Auto Scaling Group Provider - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - cluster String
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - managed
Instances CapacityProvider Provider Managed Instances Provider - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - name String
- Name of the capacity provider.
- region String
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- Map<String,String>
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- auto
Scaling CapacityGroup Provider Provider Auto Scaling Group Provider - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - cluster string
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - managed
Instances CapacityProvider Provider Managed Instances Provider - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - name string
- Name of the capacity provider.
- region string
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- {[key: string]: string}
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- auto_
scaling_ Capacitygroup_ provider Provider Auto Scaling Group Provider Args - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - cluster str
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - managed_
instances_ Capacityprovider Provider Managed Instances Provider Args - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - name str
- Name of the capacity provider.
- region str
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- Mapping[str, str]
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
- auto
Scaling Property MapGroup Provider - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - cluster String
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - managed
Instances Property MapProvider - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - name String
- Name of the capacity provider.
- region String
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- Map<String>
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level.
Outputs
All input properties are implicitly available as output properties. Additionally, the CapacityProvider resource produces the following output properties:
Look up Existing CapacityProvider Resource
Get an existing CapacityProvider 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?: CapacityProviderState, opts?: CustomResourceOptions): CapacityProvider@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
arn: Optional[str] = None,
auto_scaling_group_provider: Optional[CapacityProviderAutoScalingGroupProviderArgs] = None,
cluster: Optional[str] = None,
managed_instances_provider: Optional[CapacityProviderManagedInstancesProviderArgs] = None,
name: Optional[str] = None,
region: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
tags_all: Optional[Mapping[str, str]] = None) -> CapacityProviderfunc GetCapacityProvider(ctx *Context, name string, id IDInput, state *CapacityProviderState, opts ...ResourceOption) (*CapacityProvider, error)public static CapacityProvider Get(string name, Input<string> id, CapacityProviderState? state, CustomResourceOptions? opts = null)public static CapacityProvider get(String name, Output<String> id, CapacityProviderState state, CustomResourceOptions options)resources: _: type: aws:ecs:CapacityProvider get: id: ${id}import {
to = aws_ecs_capacity_provider.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Arn string
- ARN that identifies the capacity provider.
- Auto
Scaling CapacityGroup Provider Provider Auto Scaling Group Provider - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - Cluster string
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - Managed
Instances CapacityProvider Provider Managed Instances Provider - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - Name string
- Name of the capacity provider.
- Region string
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- Dictionary<string, string>
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Dictionary<string, string>
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- Arn string
- ARN that identifies the capacity provider.
- Auto
Scaling CapacityGroup Provider Provider Auto Scaling Group Provider Args - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - Cluster string
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - Managed
Instances CapacityProvider Provider Managed Instances Provider Args - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - Name string
- Name of the capacity provider.
- Region string
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- map[string]string
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - map[string]string
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- arn string
- ARN that identifies the capacity provider.
- auto_
scaling_ objectgroup_ provider - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - cluster string
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - managed_
instances_ objectprovider - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - name string
- Name of the capacity provider.
- region string
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- map(string)
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - map(string)
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- arn String
- ARN that identifies the capacity provider.
- auto
Scaling CapacityGroup Provider Provider Auto Scaling Group Provider - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - cluster String
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - managed
Instances CapacityProvider Provider Managed Instances Provider - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - name String
- Name of the capacity provider.
- region String
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- Map<String,String>
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String,String>
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- arn string
- ARN that identifies the capacity provider.
- auto
Scaling CapacityGroup Provider Provider Auto Scaling Group Provider - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - cluster string
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - managed
Instances CapacityProvider Provider Managed Instances Provider - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - name string
- Name of the capacity provider.
- region string
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- {[key: string]: string}
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - {[key: string]: string}
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- arn str
- ARN that identifies the capacity provider.
- auto_
scaling_ Capacitygroup_ provider Provider Auto Scaling Group Provider Args - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - cluster str
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - managed_
instances_ Capacityprovider Provider Managed Instances Provider Args - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - name str
- Name of the capacity provider.
- region str
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- Mapping[str, str]
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Mapping[str, str]
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
- arn String
- ARN that identifies the capacity provider.
- auto
Scaling Property MapGroup Provider - Configuration block for the provider for the ECS auto scaling group. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - cluster String
- Name of the ECS cluster. Required when using
managedInstancesProvider. Must not be set when usingautoScalingGroupProvider. - managed
Instances Property MapProvider - Configuration block for the managed instances provider. Detailed below. Exactly one of
autoScalingGroupProviderormanagedInstancesProvidermust be specified. - name String
- Name of the capacity provider.
- region String
- Region where this resource will be managed. Defaults to the Region set in the provider configuration.
- Map<String>
- Key-value map of resource tags. If configured with a provider
defaultTagsconfiguration block present, tags with matching keys will overwrite those defined at the provider-level. - Map<String>
- Map of tags assigned to the resource, including those inherited from the provider
defaultTagsconfiguration block.
Supporting Types
CapacityProviderAutoScalingGroupProvider, CapacityProviderAutoScalingGroupProviderArgs
- Auto
Scaling stringGroup Arn - ARN of the associated auto scaling group.
- Managed
Draining string - Enables or disables a graceful shutdown of instances without disturbing workloads. Valid values are
ENABLEDandDISABLED. The default value isENABLEDwhen a capacity provider is created. - Managed
Scaling CapacityProvider Auto Scaling Group Provider Managed Scaling - Configuration block defining the parameters of the auto scaling. Detailed below.
- Managed
Termination stringProtection - Enables or disables container-aware termination of instances in the auto scaling group when scale-in happens. Valid values are
ENABLEDandDISABLED.
- Auto
Scaling stringGroup Arn - ARN of the associated auto scaling group.
- Managed
Draining string - Enables or disables a graceful shutdown of instances without disturbing workloads. Valid values are
ENABLEDandDISABLED. The default value isENABLEDwhen a capacity provider is created. - Managed
Scaling CapacityProvider Auto Scaling Group Provider Managed Scaling - Configuration block defining the parameters of the auto scaling. Detailed below.
- Managed
Termination stringProtection - Enables or disables container-aware termination of instances in the auto scaling group when scale-in happens. Valid values are
ENABLEDandDISABLED.
- auto_
scaling_ stringgroup_ arn - ARN of the associated auto scaling group.
- managed_
draining string - Enables or disables a graceful shutdown of instances without disturbing workloads. Valid values are
ENABLEDandDISABLED. The default value isENABLEDwhen a capacity provider is created. - managed_
scaling object - Configuration block defining the parameters of the auto scaling. Detailed below.
- managed_
termination_ stringprotection - Enables or disables container-aware termination of instances in the auto scaling group when scale-in happens. Valid values are
ENABLEDandDISABLED.
- auto
Scaling StringGroup Arn - ARN of the associated auto scaling group.
- managed
Draining String - Enables or disables a graceful shutdown of instances without disturbing workloads. Valid values are
ENABLEDandDISABLED. The default value isENABLEDwhen a capacity provider is created. - managed
Scaling CapacityProvider Auto Scaling Group Provider Managed Scaling - Configuration block defining the parameters of the auto scaling. Detailed below.
- managed
Termination StringProtection - Enables or disables container-aware termination of instances in the auto scaling group when scale-in happens. Valid values are
ENABLEDandDISABLED.
- auto
Scaling stringGroup Arn - ARN of the associated auto scaling group.
- managed
Draining string - Enables or disables a graceful shutdown of instances without disturbing workloads. Valid values are
ENABLEDandDISABLED. The default value isENABLEDwhen a capacity provider is created. - managed
Scaling CapacityProvider Auto Scaling Group Provider Managed Scaling - Configuration block defining the parameters of the auto scaling. Detailed below.
- managed
Termination stringProtection - Enables or disables container-aware termination of instances in the auto scaling group when scale-in happens. Valid values are
ENABLEDandDISABLED.
- auto_
scaling_ strgroup_ arn - ARN of the associated auto scaling group.
- managed_
draining str - Enables or disables a graceful shutdown of instances without disturbing workloads. Valid values are
ENABLEDandDISABLED. The default value isENABLEDwhen a capacity provider is created. - managed_
scaling CapacityProvider Auto Scaling Group Provider Managed Scaling - Configuration block defining the parameters of the auto scaling. Detailed below.
- managed_
termination_ strprotection - Enables or disables container-aware termination of instances in the auto scaling group when scale-in happens. Valid values are
ENABLEDandDISABLED.
- auto
Scaling StringGroup Arn - ARN of the associated auto scaling group.
- managed
Draining String - Enables or disables a graceful shutdown of instances without disturbing workloads. Valid values are
ENABLEDandDISABLED. The default value isENABLEDwhen a capacity provider is created. - managed
Scaling Property Map - Configuration block defining the parameters of the auto scaling. Detailed below.
- managed
Termination StringProtection - Enables or disables container-aware termination of instances in the auto scaling group when scale-in happens. Valid values are
ENABLEDandDISABLED.
CapacityProviderAutoScalingGroupProviderManagedScaling, CapacityProviderAutoScalingGroupProviderManagedScalingArgs
- Instance
Warmup intPeriod Period of time, in seconds, after a newly launched Amazon EC2 instance can contribute to CloudWatch metrics for Auto Scaling group. If this parameter is omitted, the default value of 300 seconds is used.
For more information on how the instance warmup period contributes to managed scale-out behavior, see Control the instances Amazon ECS terminates in the Amazon Elastic Container Service Developer Guide.
- Maximum
Scaling intStep Size - Maximum step adjustment size. A number between 1 and 10,000.
- Minimum
Scaling intStep Size - Minimum step adjustment size. A number between 1 and 10,000.
- Status string
- Whether auto scaling is managed by ECS. Valid values are
ENABLEDandDISABLED. - Target
Capacity int - Target utilization for the capacity provider. A number between 1 and 100.
- Instance
Warmup intPeriod Period of time, in seconds, after a newly launched Amazon EC2 instance can contribute to CloudWatch metrics for Auto Scaling group. If this parameter is omitted, the default value of 300 seconds is used.
For more information on how the instance warmup period contributes to managed scale-out behavior, see Control the instances Amazon ECS terminates in the Amazon Elastic Container Service Developer Guide.
- Maximum
Scaling intStep Size - Maximum step adjustment size. A number between 1 and 10,000.
- Minimum
Scaling intStep Size - Minimum step adjustment size. A number between 1 and 10,000.
- Status string
- Whether auto scaling is managed by ECS. Valid values are
ENABLEDandDISABLED. - Target
Capacity int - Target utilization for the capacity provider. A number between 1 and 100.
- instance_
warmup_ numberperiod Period of time, in seconds, after a newly launched Amazon EC2 instance can contribute to CloudWatch metrics for Auto Scaling group. If this parameter is omitted, the default value of 300 seconds is used.
For more information on how the instance warmup period contributes to managed scale-out behavior, see Control the instances Amazon ECS terminates in the Amazon Elastic Container Service Developer Guide.
- maximum_
scaling_ numberstep_ size - Maximum step adjustment size. A number between 1 and 10,000.
- minimum_
scaling_ numberstep_ size - Minimum step adjustment size. A number between 1 and 10,000.
- status string
- Whether auto scaling is managed by ECS. Valid values are
ENABLEDandDISABLED. - target_
capacity number - Target utilization for the capacity provider. A number between 1 and 100.
- instance
Warmup IntegerPeriod Period of time, in seconds, after a newly launched Amazon EC2 instance can contribute to CloudWatch metrics for Auto Scaling group. If this parameter is omitted, the default value of 300 seconds is used.
For more information on how the instance warmup period contributes to managed scale-out behavior, see Control the instances Amazon ECS terminates in the Amazon Elastic Container Service Developer Guide.
- maximum
Scaling IntegerStep Size - Maximum step adjustment size. A number between 1 and 10,000.
- minimum
Scaling IntegerStep Size - Minimum step adjustment size. A number between 1 and 10,000.
- status String
- Whether auto scaling is managed by ECS. Valid values are
ENABLEDandDISABLED. - target
Capacity Integer - Target utilization for the capacity provider. A number between 1 and 100.
- instance
Warmup numberPeriod Period of time, in seconds, after a newly launched Amazon EC2 instance can contribute to CloudWatch metrics for Auto Scaling group. If this parameter is omitted, the default value of 300 seconds is used.
For more information on how the instance warmup period contributes to managed scale-out behavior, see Control the instances Amazon ECS terminates in the Amazon Elastic Container Service Developer Guide.
- maximum
Scaling numberStep Size - Maximum step adjustment size. A number between 1 and 10,000.
- minimum
Scaling numberStep Size - Minimum step adjustment size. A number between 1 and 10,000.
- status string
- Whether auto scaling is managed by ECS. Valid values are
ENABLEDandDISABLED. - target
Capacity number - Target utilization for the capacity provider. A number between 1 and 100.
- instance_
warmup_ intperiod Period of time, in seconds, after a newly launched Amazon EC2 instance can contribute to CloudWatch metrics for Auto Scaling group. If this parameter is omitted, the default value of 300 seconds is used.
For more information on how the instance warmup period contributes to managed scale-out behavior, see Control the instances Amazon ECS terminates in the Amazon Elastic Container Service Developer Guide.
- maximum_
scaling_ intstep_ size - Maximum step adjustment size. A number between 1 and 10,000.
- minimum_
scaling_ intstep_ size - Minimum step adjustment size. A number between 1 and 10,000.
- status str
- Whether auto scaling is managed by ECS. Valid values are
ENABLEDandDISABLED. - target_
capacity int - Target utilization for the capacity provider. A number between 1 and 100.
- instance
Warmup NumberPeriod Period of time, in seconds, after a newly launched Amazon EC2 instance can contribute to CloudWatch metrics for Auto Scaling group. If this parameter is omitted, the default value of 300 seconds is used.
For more information on how the instance warmup period contributes to managed scale-out behavior, see Control the instances Amazon ECS terminates in the Amazon Elastic Container Service Developer Guide.
- maximum
Scaling NumberStep Size - Maximum step adjustment size. A number between 1 and 10,000.
- minimum
Scaling NumberStep Size - Minimum step adjustment size. A number between 1 and 10,000.
- status String
- Whether auto scaling is managed by ECS. Valid values are
ENABLEDandDISABLED. - target
Capacity Number - Target utilization for the capacity provider. A number between 1 and 100.
CapacityProviderManagedInstancesProvider, CapacityProviderManagedInstancesProviderArgs
- Infrastructure
Role stringArn - ARN of the infrastructure role that Amazon ECS uses to manage instances on your behalf. This role must have permissions to launch, terminate, and manage Amazon EC2 instances, as well as access to other AWS services required for Amazon ECS Managed Instances functionality. For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide.
- Instance
Launch CapacityTemplate Provider Managed Instances Provider Instance Launch Template - Launch template configuration that specifies how Amazon ECS should launch Amazon EC2 instances. This includes the instance profile, network configuration, storage settings, and instance requirements for attribute-based instance type selection. For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide. Detailed below.
- Auto
Repair CapacityConfiguration Provider Managed Instances Provider Auto Repair Configuration - Configuration block for the auto repair configuration. Detailed below.
- Infrastructure
Optimization CapacityProvider Managed Instances Provider Infrastructure Optimization - Configuration block for how Amazon ECS Managed Instances optimizes the infrastructure in your capacity provider, including whether to turn optimization on or off and how long to delay optimizing idle EC2 instances. Detailed below.
- string
- Whether to propagate tags from the capacity provider to the Amazon ECS Managed Instances. When enabled, tags applied to the capacity provider are automatically applied to all instances launched by this provider. Valid values are
CAPACITY_PROVIDERandNONE.
- Infrastructure
Role stringArn - ARN of the infrastructure role that Amazon ECS uses to manage instances on your behalf. This role must have permissions to launch, terminate, and manage Amazon EC2 instances, as well as access to other AWS services required for Amazon ECS Managed Instances functionality. For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide.
- Instance
Launch CapacityTemplate Provider Managed Instances Provider Instance Launch Template - Launch template configuration that specifies how Amazon ECS should launch Amazon EC2 instances. This includes the instance profile, network configuration, storage settings, and instance requirements for attribute-based instance type selection. For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide. Detailed below.
- Auto
Repair CapacityConfiguration Provider Managed Instances Provider Auto Repair Configuration - Configuration block for the auto repair configuration. Detailed below.
- Infrastructure
Optimization CapacityProvider Managed Instances Provider Infrastructure Optimization - Configuration block for how Amazon ECS Managed Instances optimizes the infrastructure in your capacity provider, including whether to turn optimization on or off and how long to delay optimizing idle EC2 instances. Detailed below.
- string
- Whether to propagate tags from the capacity provider to the Amazon ECS Managed Instances. When enabled, tags applied to the capacity provider are automatically applied to all instances launched by this provider. Valid values are
CAPACITY_PROVIDERandNONE.
- infrastructure_
role_ stringarn - ARN of the infrastructure role that Amazon ECS uses to manage instances on your behalf. This role must have permissions to launch, terminate, and manage Amazon EC2 instances, as well as access to other AWS services required for Amazon ECS Managed Instances functionality. For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide.
- instance_
launch_ objecttemplate - Launch template configuration that specifies how Amazon ECS should launch Amazon EC2 instances. This includes the instance profile, network configuration, storage settings, and instance requirements for attribute-based instance type selection. For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide. Detailed below.
- auto_
repair_ objectconfiguration - Configuration block for the auto repair configuration. Detailed below.
- infrastructure_
optimization object - Configuration block for how Amazon ECS Managed Instances optimizes the infrastructure in your capacity provider, including whether to turn optimization on or off and how long to delay optimizing idle EC2 instances. Detailed below.
- string
- Whether to propagate tags from the capacity provider to the Amazon ECS Managed Instances. When enabled, tags applied to the capacity provider are automatically applied to all instances launched by this provider. Valid values are
CAPACITY_PROVIDERandNONE.
- infrastructure
Role StringArn - ARN of the infrastructure role that Amazon ECS uses to manage instances on your behalf. This role must have permissions to launch, terminate, and manage Amazon EC2 instances, as well as access to other AWS services required for Amazon ECS Managed Instances functionality. For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide.
- instance
Launch CapacityTemplate Provider Managed Instances Provider Instance Launch Template - Launch template configuration that specifies how Amazon ECS should launch Amazon EC2 instances. This includes the instance profile, network configuration, storage settings, and instance requirements for attribute-based instance type selection. For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide. Detailed below.
- auto
Repair CapacityConfiguration Provider Managed Instances Provider Auto Repair Configuration - Configuration block for the auto repair configuration. Detailed below.
- infrastructure
Optimization CapacityProvider Managed Instances Provider Infrastructure Optimization - Configuration block for how Amazon ECS Managed Instances optimizes the infrastructure in your capacity provider, including whether to turn optimization on or off and how long to delay optimizing idle EC2 instances. Detailed below.
- String
- Whether to propagate tags from the capacity provider to the Amazon ECS Managed Instances. When enabled, tags applied to the capacity provider are automatically applied to all instances launched by this provider. Valid values are
CAPACITY_PROVIDERandNONE.
- infrastructure
Role stringArn - ARN of the infrastructure role that Amazon ECS uses to manage instances on your behalf. This role must have permissions to launch, terminate, and manage Amazon EC2 instances, as well as access to other AWS services required for Amazon ECS Managed Instances functionality. For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide.
- instance
Launch CapacityTemplate Provider Managed Instances Provider Instance Launch Template - Launch template configuration that specifies how Amazon ECS should launch Amazon EC2 instances. This includes the instance profile, network configuration, storage settings, and instance requirements for attribute-based instance type selection. For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide. Detailed below.
- auto
Repair CapacityConfiguration Provider Managed Instances Provider Auto Repair Configuration - Configuration block for the auto repair configuration. Detailed below.
- infrastructure
Optimization CapacityProvider Managed Instances Provider Infrastructure Optimization - Configuration block for how Amazon ECS Managed Instances optimizes the infrastructure in your capacity provider, including whether to turn optimization on or off and how long to delay optimizing idle EC2 instances. Detailed below.
- string
- Whether to propagate tags from the capacity provider to the Amazon ECS Managed Instances. When enabled, tags applied to the capacity provider are automatically applied to all instances launched by this provider. Valid values are
CAPACITY_PROVIDERandNONE.
- infrastructure_
role_ strarn - ARN of the infrastructure role that Amazon ECS uses to manage instances on your behalf. This role must have permissions to launch, terminate, and manage Amazon EC2 instances, as well as access to other AWS services required for Amazon ECS Managed Instances functionality. For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide.
- instance_
launch_ Capacitytemplate Provider Managed Instances Provider Instance Launch Template - Launch template configuration that specifies how Amazon ECS should launch Amazon EC2 instances. This includes the instance profile, network configuration, storage settings, and instance requirements for attribute-based instance type selection. For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide. Detailed below.
- auto_
repair_ Capacityconfiguration Provider Managed Instances Provider Auto Repair Configuration - Configuration block for the auto repair configuration. Detailed below.
- infrastructure_
optimization CapacityProvider Managed Instances Provider Infrastructure Optimization - Configuration block for how Amazon ECS Managed Instances optimizes the infrastructure in your capacity provider, including whether to turn optimization on or off and how long to delay optimizing idle EC2 instances. Detailed below.
- str
- Whether to propagate tags from the capacity provider to the Amazon ECS Managed Instances. When enabled, tags applied to the capacity provider are automatically applied to all instances launched by this provider. Valid values are
CAPACITY_PROVIDERandNONE.
- infrastructure
Role StringArn - ARN of the infrastructure role that Amazon ECS uses to manage instances on your behalf. This role must have permissions to launch, terminate, and manage Amazon EC2 instances, as well as access to other AWS services required for Amazon ECS Managed Instances functionality. For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide.
- instance
Launch Property MapTemplate - Launch template configuration that specifies how Amazon ECS should launch Amazon EC2 instances. This includes the instance profile, network configuration, storage settings, and instance requirements for attribute-based instance type selection. For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide. Detailed below.
- auto
Repair Property MapConfiguration - Configuration block for the auto repair configuration. Detailed below.
- infrastructure
Optimization Property Map - Configuration block for how Amazon ECS Managed Instances optimizes the infrastructure in your capacity provider, including whether to turn optimization on or off and how long to delay optimizing idle EC2 instances. Detailed below.
- String
- Whether to propagate tags from the capacity provider to the Amazon ECS Managed Instances. When enabled, tags applied to the capacity provider are automatically applied to all instances launched by this provider. Valid values are
CAPACITY_PROVIDERandNONE.
CapacityProviderManagedInstancesProviderAutoRepairConfiguration, CapacityProviderManagedInstancesProviderAutoRepairConfigurationArgs
- Actions
Status string - Whether to use Amazon ECS managed auto repair. Valid values are
ENABLEDandDISABLED.
- Actions
Status string - Whether to use Amazon ECS managed auto repair. Valid values are
ENABLEDandDISABLED.
- actions_
status string - Whether to use Amazon ECS managed auto repair. Valid values are
ENABLEDandDISABLED.
- actions
Status String - Whether to use Amazon ECS managed auto repair. Valid values are
ENABLEDandDISABLED.
- actions
Status string - Whether to use Amazon ECS managed auto repair. Valid values are
ENABLEDandDISABLED.
- actions_
status str - Whether to use Amazon ECS managed auto repair. Valid values are
ENABLEDandDISABLED.
- actions
Status String - Whether to use Amazon ECS managed auto repair. Valid values are
ENABLEDandDISABLED.
CapacityProviderManagedInstancesProviderInfrastructureOptimization, CapacityProviderManagedInstancesProviderInfrastructureOptimizationArgs
- Scale
In intAfter - Number of seconds Amazon ECS Managed Instances waits before optimizing EC2 instances that have become idle or underutilized. A longer delay increases the likelihood of placing new tasks on idle instances, reducing startup time. A shorter delay helps reduce infrastructure costs by optimizing idle instances more quickly. Valid values are
-1to disable automatic infrastructure optimization,0to3600(inclusive) to specify the number of seconds to wait before optimizing instances, or leave unset (null) to use the default optimization behavior.
- Scale
In intAfter - Number of seconds Amazon ECS Managed Instances waits before optimizing EC2 instances that have become idle or underutilized. A longer delay increases the likelihood of placing new tasks on idle instances, reducing startup time. A shorter delay helps reduce infrastructure costs by optimizing idle instances more quickly. Valid values are
-1to disable automatic infrastructure optimization,0to3600(inclusive) to specify the number of seconds to wait before optimizing instances, or leave unset (null) to use the default optimization behavior.
- scale_
in_ numberafter - Number of seconds Amazon ECS Managed Instances waits before optimizing EC2 instances that have become idle or underutilized. A longer delay increases the likelihood of placing new tasks on idle instances, reducing startup time. A shorter delay helps reduce infrastructure costs by optimizing idle instances more quickly. Valid values are
-1to disable automatic infrastructure optimization,0to3600(inclusive) to specify the number of seconds to wait before optimizing instances, or leave unset (null) to use the default optimization behavior.
- scale
In IntegerAfter - Number of seconds Amazon ECS Managed Instances waits before optimizing EC2 instances that have become idle or underutilized. A longer delay increases the likelihood of placing new tasks on idle instances, reducing startup time. A shorter delay helps reduce infrastructure costs by optimizing idle instances more quickly. Valid values are
-1to disable automatic infrastructure optimization,0to3600(inclusive) to specify the number of seconds to wait before optimizing instances, or leave unset (null) to use the default optimization behavior.
- scale
In numberAfter - Number of seconds Amazon ECS Managed Instances waits before optimizing EC2 instances that have become idle or underutilized. A longer delay increases the likelihood of placing new tasks on idle instances, reducing startup time. A shorter delay helps reduce infrastructure costs by optimizing idle instances more quickly. Valid values are
-1to disable automatic infrastructure optimization,0to3600(inclusive) to specify the number of seconds to wait before optimizing instances, or leave unset (null) to use the default optimization behavior.
- scale_
in_ intafter - Number of seconds Amazon ECS Managed Instances waits before optimizing EC2 instances that have become idle or underutilized. A longer delay increases the likelihood of placing new tasks on idle instances, reducing startup time. A shorter delay helps reduce infrastructure costs by optimizing idle instances more quickly. Valid values are
-1to disable automatic infrastructure optimization,0to3600(inclusive) to specify the number of seconds to wait before optimizing instances, or leave unset (null) to use the default optimization behavior.
- scale
In NumberAfter - Number of seconds Amazon ECS Managed Instances waits before optimizing EC2 instances that have become idle or underutilized. A longer delay increases the likelihood of placing new tasks on idle instances, reducing startup time. A shorter delay helps reduce infrastructure costs by optimizing idle instances more quickly. Valid values are
-1to disable automatic infrastructure optimization,0to3600(inclusive) to specify the number of seconds to wait before optimizing instances, or leave unset (null) to use the default optimization behavior.
CapacityProviderManagedInstancesProviderInstanceLaunchTemplate, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateArgs
- Ec2Instance
Profile stringArn - ARN of the instance profile that Amazon ECS applies to Amazon ECS Managed Instances. This instance profile must include the necessary permissions for your tasks to access AWS services and resources. For more information, see Amazon ECS instance profile for Managed Instances in the Amazon ECS Developer Guide.
- Network
Configuration CapacityProvider Managed Instances Provider Instance Launch Template Network Configuration - Network configuration for Amazon ECS Managed Instances. This specifies the subnets and security groups that instances use for network connectivity. Detailed below.
- Capacity
Option stringType - Purchasing option for the EC2 instances used in the capacity provider. Determines whether to use On-Demand, Spot, or Capacity Reservation instances. Valid values are
ON_DEMAND,SPOT, andRESERVED. Defaults toON_DEMANDwhen not specified. Changing this value will trigger replacement of the capacity provider. For more information, see Amazon EC2 billing and purchasing options in the Amazon EC2 User Guide. - Capacity
Reservations CapacityProvider Managed Instances Provider Instance Launch Template Capacity Reservations - Capacity Reservation configuration used to launch instances. Required when
capacityOptionTypeisRESERVED. Detailed below. - Instance
Requirements CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements - Instance requirements. You can specify the instance types and instance requirements such as vCPU count, memory, network performance, and accelerator specifications. Amazon ECS automatically selects the instances that match the specified criteria. Detailed below.
- Local
Storage CapacityConfiguration Provider Managed Instances Provider Instance Launch Template Local Storage Configuration - Configuration block for the local storage settings applied to Amazon ECS Managed Instances. Detailed below.
- Monitoring string
- CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring. By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see Detailed monitoring for Amazon ECS Managed Instances in the Amazon ECS Developer Guide. Valid values are
BASICandDETAILED. - Storage
Configuration CapacityProvider Managed Instances Provider Instance Launch Template Storage Configuration - Storage configuration for Amazon ECS Managed Instances. This defines the root volume size and type for the instances. Detailed below.
- Ec2Instance
Profile stringArn - ARN of the instance profile that Amazon ECS applies to Amazon ECS Managed Instances. This instance profile must include the necessary permissions for your tasks to access AWS services and resources. For more information, see Amazon ECS instance profile for Managed Instances in the Amazon ECS Developer Guide.
- Network
Configuration CapacityProvider Managed Instances Provider Instance Launch Template Network Configuration - Network configuration for Amazon ECS Managed Instances. This specifies the subnets and security groups that instances use for network connectivity. Detailed below.
- Capacity
Option stringType - Purchasing option for the EC2 instances used in the capacity provider. Determines whether to use On-Demand, Spot, or Capacity Reservation instances. Valid values are
ON_DEMAND,SPOT, andRESERVED. Defaults toON_DEMANDwhen not specified. Changing this value will trigger replacement of the capacity provider. For more information, see Amazon EC2 billing and purchasing options in the Amazon EC2 User Guide. - Capacity
Reservations CapacityProvider Managed Instances Provider Instance Launch Template Capacity Reservations - Capacity Reservation configuration used to launch instances. Required when
capacityOptionTypeisRESERVED. Detailed below. - Instance
Requirements CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements - Instance requirements. You can specify the instance types and instance requirements such as vCPU count, memory, network performance, and accelerator specifications. Amazon ECS automatically selects the instances that match the specified criteria. Detailed below.
- Local
Storage CapacityConfiguration Provider Managed Instances Provider Instance Launch Template Local Storage Configuration - Configuration block for the local storage settings applied to Amazon ECS Managed Instances. Detailed below.
- Monitoring string
- CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring. By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see Detailed monitoring for Amazon ECS Managed Instances in the Amazon ECS Developer Guide. Valid values are
BASICandDETAILED. - Storage
Configuration CapacityProvider Managed Instances Provider Instance Launch Template Storage Configuration - Storage configuration for Amazon ECS Managed Instances. This defines the root volume size and type for the instances. Detailed below.
- ec2_
instance_ stringprofile_ arn - ARN of the instance profile that Amazon ECS applies to Amazon ECS Managed Instances. This instance profile must include the necessary permissions for your tasks to access AWS services and resources. For more information, see Amazon ECS instance profile for Managed Instances in the Amazon ECS Developer Guide.
- network_
configuration object - Network configuration for Amazon ECS Managed Instances. This specifies the subnets and security groups that instances use for network connectivity. Detailed below.
- capacity_
option_ stringtype - Purchasing option for the EC2 instances used in the capacity provider. Determines whether to use On-Demand, Spot, or Capacity Reservation instances. Valid values are
ON_DEMAND,SPOT, andRESERVED. Defaults toON_DEMANDwhen not specified. Changing this value will trigger replacement of the capacity provider. For more information, see Amazon EC2 billing and purchasing options in the Amazon EC2 User Guide. - capacity_
reservations object - Capacity Reservation configuration used to launch instances. Required when
capacityOptionTypeisRESERVED. Detailed below. - instance_
requirements object - Instance requirements. You can specify the instance types and instance requirements such as vCPU count, memory, network performance, and accelerator specifications. Amazon ECS automatically selects the instances that match the specified criteria. Detailed below.
- local_
storage_ objectconfiguration - Configuration block for the local storage settings applied to Amazon ECS Managed Instances. Detailed below.
- monitoring string
- CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring. By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see Detailed monitoring for Amazon ECS Managed Instances in the Amazon ECS Developer Guide. Valid values are
BASICandDETAILED. - storage_
configuration object - Storage configuration for Amazon ECS Managed Instances. This defines the root volume size and type for the instances. Detailed below.
- ec2Instance
Profile StringArn - ARN of the instance profile that Amazon ECS applies to Amazon ECS Managed Instances. This instance profile must include the necessary permissions for your tasks to access AWS services and resources. For more information, see Amazon ECS instance profile for Managed Instances in the Amazon ECS Developer Guide.
- network
Configuration CapacityProvider Managed Instances Provider Instance Launch Template Network Configuration - Network configuration for Amazon ECS Managed Instances. This specifies the subnets and security groups that instances use for network connectivity. Detailed below.
- capacity
Option StringType - Purchasing option for the EC2 instances used in the capacity provider. Determines whether to use On-Demand, Spot, or Capacity Reservation instances. Valid values are
ON_DEMAND,SPOT, andRESERVED. Defaults toON_DEMANDwhen not specified. Changing this value will trigger replacement of the capacity provider. For more information, see Amazon EC2 billing and purchasing options in the Amazon EC2 User Guide. - capacity
Reservations CapacityProvider Managed Instances Provider Instance Launch Template Capacity Reservations - Capacity Reservation configuration used to launch instances. Required when
capacityOptionTypeisRESERVED. Detailed below. - instance
Requirements CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements - Instance requirements. You can specify the instance types and instance requirements such as vCPU count, memory, network performance, and accelerator specifications. Amazon ECS automatically selects the instances that match the specified criteria. Detailed below.
- local
Storage CapacityConfiguration Provider Managed Instances Provider Instance Launch Template Local Storage Configuration - Configuration block for the local storage settings applied to Amazon ECS Managed Instances. Detailed below.
- monitoring String
- CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring. By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see Detailed monitoring for Amazon ECS Managed Instances in the Amazon ECS Developer Guide. Valid values are
BASICandDETAILED. - storage
Configuration CapacityProvider Managed Instances Provider Instance Launch Template Storage Configuration - Storage configuration for Amazon ECS Managed Instances. This defines the root volume size and type for the instances. Detailed below.
- ec2Instance
Profile stringArn - ARN of the instance profile that Amazon ECS applies to Amazon ECS Managed Instances. This instance profile must include the necessary permissions for your tasks to access AWS services and resources. For more information, see Amazon ECS instance profile for Managed Instances in the Amazon ECS Developer Guide.
- network
Configuration CapacityProvider Managed Instances Provider Instance Launch Template Network Configuration - Network configuration for Amazon ECS Managed Instances. This specifies the subnets and security groups that instances use for network connectivity. Detailed below.
- capacity
Option stringType - Purchasing option for the EC2 instances used in the capacity provider. Determines whether to use On-Demand, Spot, or Capacity Reservation instances. Valid values are
ON_DEMAND,SPOT, andRESERVED. Defaults toON_DEMANDwhen not specified. Changing this value will trigger replacement of the capacity provider. For more information, see Amazon EC2 billing and purchasing options in the Amazon EC2 User Guide. - capacity
Reservations CapacityProvider Managed Instances Provider Instance Launch Template Capacity Reservations - Capacity Reservation configuration used to launch instances. Required when
capacityOptionTypeisRESERVED. Detailed below. - instance
Requirements CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements - Instance requirements. You can specify the instance types and instance requirements such as vCPU count, memory, network performance, and accelerator specifications. Amazon ECS automatically selects the instances that match the specified criteria. Detailed below.
- local
Storage CapacityConfiguration Provider Managed Instances Provider Instance Launch Template Local Storage Configuration - Configuration block for the local storage settings applied to Amazon ECS Managed Instances. Detailed below.
- monitoring string
- CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring. By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see Detailed monitoring for Amazon ECS Managed Instances in the Amazon ECS Developer Guide. Valid values are
BASICandDETAILED. - storage
Configuration CapacityProvider Managed Instances Provider Instance Launch Template Storage Configuration - Storage configuration for Amazon ECS Managed Instances. This defines the root volume size and type for the instances. Detailed below.
- ec2_
instance_ strprofile_ arn - ARN of the instance profile that Amazon ECS applies to Amazon ECS Managed Instances. This instance profile must include the necessary permissions for your tasks to access AWS services and resources. For more information, see Amazon ECS instance profile for Managed Instances in the Amazon ECS Developer Guide.
- network_
configuration CapacityProvider Managed Instances Provider Instance Launch Template Network Configuration - Network configuration for Amazon ECS Managed Instances. This specifies the subnets and security groups that instances use for network connectivity. Detailed below.
- capacity_
option_ strtype - Purchasing option for the EC2 instances used in the capacity provider. Determines whether to use On-Demand, Spot, or Capacity Reservation instances. Valid values are
ON_DEMAND,SPOT, andRESERVED. Defaults toON_DEMANDwhen not specified. Changing this value will trigger replacement of the capacity provider. For more information, see Amazon EC2 billing and purchasing options in the Amazon EC2 User Guide. - capacity_
reservations CapacityProvider Managed Instances Provider Instance Launch Template Capacity Reservations - Capacity Reservation configuration used to launch instances. Required when
capacityOptionTypeisRESERVED. Detailed below. - instance_
requirements CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements - Instance requirements. You can specify the instance types and instance requirements such as vCPU count, memory, network performance, and accelerator specifications. Amazon ECS automatically selects the instances that match the specified criteria. Detailed below.
- local_
storage_ Capacityconfiguration Provider Managed Instances Provider Instance Launch Template Local Storage Configuration - Configuration block for the local storage settings applied to Amazon ECS Managed Instances. Detailed below.
- monitoring str
- CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring. By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see Detailed monitoring for Amazon ECS Managed Instances in the Amazon ECS Developer Guide. Valid values are
BASICandDETAILED. - storage_
configuration CapacityProvider Managed Instances Provider Instance Launch Template Storage Configuration - Storage configuration for Amazon ECS Managed Instances. This defines the root volume size and type for the instances. Detailed below.
- ec2Instance
Profile StringArn - ARN of the instance profile that Amazon ECS applies to Amazon ECS Managed Instances. This instance profile must include the necessary permissions for your tasks to access AWS services and resources. For more information, see Amazon ECS instance profile for Managed Instances in the Amazon ECS Developer Guide.
- network
Configuration Property Map - Network configuration for Amazon ECS Managed Instances. This specifies the subnets and security groups that instances use for network connectivity. Detailed below.
- capacity
Option StringType - Purchasing option for the EC2 instances used in the capacity provider. Determines whether to use On-Demand, Spot, or Capacity Reservation instances. Valid values are
ON_DEMAND,SPOT, andRESERVED. Defaults toON_DEMANDwhen not specified. Changing this value will trigger replacement of the capacity provider. For more information, see Amazon EC2 billing and purchasing options in the Amazon EC2 User Guide. - capacity
Reservations Property Map - Capacity Reservation configuration used to launch instances. Required when
capacityOptionTypeisRESERVED. Detailed below. - instance
Requirements Property Map - Instance requirements. You can specify the instance types and instance requirements such as vCPU count, memory, network performance, and accelerator specifications. Amazon ECS automatically selects the instances that match the specified criteria. Detailed below.
- local
Storage Property MapConfiguration - Configuration block for the local storage settings applied to Amazon ECS Managed Instances. Detailed below.
- monitoring String
- CloudWatch provides two categories of monitoring: basic monitoring and detailed monitoring. By default, your managed instance is configured for basic monitoring. You can optionally enable detailed monitoring to help you more quickly identify and act on operational issues. You can enable or turn off detailed monitoring at launch or when the managed instance is running or stopped. For more information, see Detailed monitoring for Amazon ECS Managed Instances in the Amazon ECS Developer Guide. Valid values are
BASICandDETAILED. - storage
Configuration Property Map - Storage configuration for Amazon ECS Managed Instances. This defines the root volume size and type for the instances. Detailed below.
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateCapacityReservations, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateCapacityReservationsArgs
- Reservation
Group stringArn - ARN of the Capacity Reservation resource group in which to run instances. Can only be set when
reservationPreferenceisRESERVATIONS_ONLY. - Reservation
Preference string - Preference for when Capacity Reservations should be used. Valid values are
RESERVATIONS_ONLY,RESERVATIONS_FIRST, andRESERVATIONS_EXCLUDED.instanceRequirementsmust be provided when set toRESERVATIONS_ONLYorRESERVATIONS_FIRST.
- Reservation
Group stringArn - ARN of the Capacity Reservation resource group in which to run instances. Can only be set when
reservationPreferenceisRESERVATIONS_ONLY. - Reservation
Preference string - Preference for when Capacity Reservations should be used. Valid values are
RESERVATIONS_ONLY,RESERVATIONS_FIRST, andRESERVATIONS_EXCLUDED.instanceRequirementsmust be provided when set toRESERVATIONS_ONLYorRESERVATIONS_FIRST.
- reservation_
group_ stringarn - ARN of the Capacity Reservation resource group in which to run instances. Can only be set when
reservationPreferenceisRESERVATIONS_ONLY. - reservation_
preference string - Preference for when Capacity Reservations should be used. Valid values are
RESERVATIONS_ONLY,RESERVATIONS_FIRST, andRESERVATIONS_EXCLUDED.instanceRequirementsmust be provided when set toRESERVATIONS_ONLYorRESERVATIONS_FIRST.
- reservation
Group StringArn - ARN of the Capacity Reservation resource group in which to run instances. Can only be set when
reservationPreferenceisRESERVATIONS_ONLY. - reservation
Preference String - Preference for when Capacity Reservations should be used. Valid values are
RESERVATIONS_ONLY,RESERVATIONS_FIRST, andRESERVATIONS_EXCLUDED.instanceRequirementsmust be provided when set toRESERVATIONS_ONLYorRESERVATIONS_FIRST.
- reservation
Group stringArn - ARN of the Capacity Reservation resource group in which to run instances. Can only be set when
reservationPreferenceisRESERVATIONS_ONLY. - reservation
Preference string - Preference for when Capacity Reservations should be used. Valid values are
RESERVATIONS_ONLY,RESERVATIONS_FIRST, andRESERVATIONS_EXCLUDED.instanceRequirementsmust be provided when set toRESERVATIONS_ONLYorRESERVATIONS_FIRST.
- reservation_
group_ strarn - ARN of the Capacity Reservation resource group in which to run instances. Can only be set when
reservationPreferenceisRESERVATIONS_ONLY. - reservation_
preference str - Preference for when Capacity Reservations should be used. Valid values are
RESERVATIONS_ONLY,RESERVATIONS_FIRST, andRESERVATIONS_EXCLUDED.instanceRequirementsmust be provided when set toRESERVATIONS_ONLYorRESERVATIONS_FIRST.
- reservation
Group StringArn - ARN of the Capacity Reservation resource group in which to run instances. Can only be set when
reservationPreferenceisRESERVATIONS_ONLY. - reservation
Preference String - Preference for when Capacity Reservations should be used. Valid values are
RESERVATIONS_ONLY,RESERVATIONS_FIRST, andRESERVATIONS_EXCLUDED.instanceRequirementsmust be provided when set toRESERVATIONS_ONLYorRESERVATIONS_FIRST.
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirements, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsArgs
- Memory
Mib CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Memory Mib - Minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range. Detailed below.
- Vcpu
Count CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Vcpu Count - Minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range. Detailed below.
- Accelerator
Count CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Accelerator Count - Minimum and maximum number of accelerators for the instance types. This is used when you need instances with specific numbers of GPUs or other accelerators. Detailed below.
- Accelerator
Manufacturers List<string> - Accelerator manufacturers to include. You can specify
nvidia,amd,amazon-web-services,xilinx, orhabanadepending on your accelerator requirements. Valid values areamazon-web-services,amd,nvidia,xilinx,habana. - Accelerator
Names List<string> - Specific accelerator names to include. For example, you can specify
a100,v100,k80, or other specific accelerator models. Valid values area100,inferentia,k520,k80,m60,radeon-pro-v520,t4,vu9p,v100,a10g,h100,t4g. - Accelerator
Total CapacityMemory Mib Provider Managed Instances Provider Instance Launch Template Instance Requirements Accelerator Total Memory Mib - Minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory. Detailed below.
- Accelerator
Types List<string> - Accelerator types to include. You can specify
gpufor GPUs,fpgafor field programmable gate arrays, orinferencefor machine learning inference accelerators. Valid values aregpu,fpga,inference. - Allowed
Instance List<string>Types - Instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified. Maximum of 400 instance types. You can specify instance type patterns using wildcards (e.g.,
m5.*). - Bare
Metal string - Whether to include bare metal instance types. Set to
includedto allow bare metal instances,excludedto exclude them, orrequiredto use only bare metal instances. Valid values areincluded,excluded,required. - Baseline
Ebs CapacityBandwidth Mbps Provider Managed Instances Provider Instance Launch Template Instance Requirements Baseline Ebs Bandwidth Mbps - Minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements. Detailed below.
- Burstable
Performance string - Whether to include burstable performance instance types (T2, T3, T3a, T4g). Set to
includedto allow burstable instances,excludedto exclude them, orrequiredto use only burstable instances. Valid values areincluded,excluded,required. - Cpu
Manufacturers List<string> - CPU manufacturers to include or exclude. You can specify
intel,amd, oramazon-web-servicesto control which CPU types are used for your workloads. Valid values areintel,amd,amazon-web-services. - Excluded
Instance List<string>Types - Instance types to exclude from selection. Use this to prevent Amazon ECS from selecting specific instance types that may not be suitable for your workloads. Maximum of 400 instance types.
- Instance
Generations List<string> - Instance generations to include. You can specify
currentto use the latest generation instances, orpreviousto include previous generation instances for cost optimization. Valid values arecurrent,previous. - Local
Storage string - Whether to include instance types with local storage. Set to
includedto allow local storage,excludedto exclude it, orrequiredto use only instances with local storage. Valid values areincluded,excluded,required. - Local
Storage List<string>Types - Local storage types to include. You can specify
hddfor hard disk drives,ssdfor solid state drives, or both. Valid values arehdd,ssd. - Max
Spot intPrice As Percentage Of Optimal On Demand Price - Maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.
- Memory
Gib CapacityPer Vcpu Provider Managed Instances Provider Instance Launch Template Instance Requirements Memory Gib Per Vcpu - Minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads. Detailed below.
- Network
Bandwidth CapacityGbps Provider Managed Instances Provider Instance Launch Template Instance Requirements Network Bandwidth Gbps - Minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput. Detailed below.
- Network
Interface CapacityCount Provider Managed Instances Provider Instance Launch Template Instance Requirements Network Interface Count - Minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces. Detailed below.
- On
Demand intMax Price Percentage Over Lowest Price - Price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon ECS selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
- Require
Hibernate boolSupport - Whether the instance types must support hibernation. When set to
true, only instance types that support hibernation are selected. - Spot
Max intPrice Percentage Over Lowest Price - Maximum price for Spot instances as a percentage over the lowest priced On-Demand instance. This helps control Spot instance costs while maintaining access to capacity.
- Total
Local CapacityStorage Gb Provider Managed Instances Provider Instance Launch Template Instance Requirements Total Local Storage Gb - Minimum and maximum total local storage in gigabytes (GB) for instance types with local storage. Detailed below.
- Memory
Mib CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Memory Mib - Minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range. Detailed below.
- Vcpu
Count CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Vcpu Count - Minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range. Detailed below.
- Accelerator
Count CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Accelerator Count - Minimum and maximum number of accelerators for the instance types. This is used when you need instances with specific numbers of GPUs or other accelerators. Detailed below.
- Accelerator
Manufacturers []string - Accelerator manufacturers to include. You can specify
nvidia,amd,amazon-web-services,xilinx, orhabanadepending on your accelerator requirements. Valid values areamazon-web-services,amd,nvidia,xilinx,habana. - Accelerator
Names []string - Specific accelerator names to include. For example, you can specify
a100,v100,k80, or other specific accelerator models. Valid values area100,inferentia,k520,k80,m60,radeon-pro-v520,t4,vu9p,v100,a10g,h100,t4g. - Accelerator
Total CapacityMemory Mib Provider Managed Instances Provider Instance Launch Template Instance Requirements Accelerator Total Memory Mib - Minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory. Detailed below.
- Accelerator
Types []string - Accelerator types to include. You can specify
gpufor GPUs,fpgafor field programmable gate arrays, orinferencefor machine learning inference accelerators. Valid values aregpu,fpga,inference. - Allowed
Instance []stringTypes - Instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified. Maximum of 400 instance types. You can specify instance type patterns using wildcards (e.g.,
m5.*). - Bare
Metal string - Whether to include bare metal instance types. Set to
includedto allow bare metal instances,excludedto exclude them, orrequiredto use only bare metal instances. Valid values areincluded,excluded,required. - Baseline
Ebs CapacityBandwidth Mbps Provider Managed Instances Provider Instance Launch Template Instance Requirements Baseline Ebs Bandwidth Mbps - Minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements. Detailed below.
- Burstable
Performance string - Whether to include burstable performance instance types (T2, T3, T3a, T4g). Set to
includedto allow burstable instances,excludedto exclude them, orrequiredto use only burstable instances. Valid values areincluded,excluded,required. - Cpu
Manufacturers []string - CPU manufacturers to include or exclude. You can specify
intel,amd, oramazon-web-servicesto control which CPU types are used for your workloads. Valid values areintel,amd,amazon-web-services. - Excluded
Instance []stringTypes - Instance types to exclude from selection. Use this to prevent Amazon ECS from selecting specific instance types that may not be suitable for your workloads. Maximum of 400 instance types.
- Instance
Generations []string - Instance generations to include. You can specify
currentto use the latest generation instances, orpreviousto include previous generation instances for cost optimization. Valid values arecurrent,previous. - Local
Storage string - Whether to include instance types with local storage. Set to
includedto allow local storage,excludedto exclude it, orrequiredto use only instances with local storage. Valid values areincluded,excluded,required. - Local
Storage []stringTypes - Local storage types to include. You can specify
hddfor hard disk drives,ssdfor solid state drives, or both. Valid values arehdd,ssd. - Max
Spot intPrice As Percentage Of Optimal On Demand Price - Maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.
- Memory
Gib CapacityPer Vcpu Provider Managed Instances Provider Instance Launch Template Instance Requirements Memory Gib Per Vcpu - Minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads. Detailed below.
- Network
Bandwidth CapacityGbps Provider Managed Instances Provider Instance Launch Template Instance Requirements Network Bandwidth Gbps - Minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput. Detailed below.
- Network
Interface CapacityCount Provider Managed Instances Provider Instance Launch Template Instance Requirements Network Interface Count - Minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces. Detailed below.
- On
Demand intMax Price Percentage Over Lowest Price - Price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon ECS selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
- Require
Hibernate boolSupport - Whether the instance types must support hibernation. When set to
true, only instance types that support hibernation are selected. - Spot
Max intPrice Percentage Over Lowest Price - Maximum price for Spot instances as a percentage over the lowest priced On-Demand instance. This helps control Spot instance costs while maintaining access to capacity.
- Total
Local CapacityStorage Gb Provider Managed Instances Provider Instance Launch Template Instance Requirements Total Local Storage Gb - Minimum and maximum total local storage in gigabytes (GB) for instance types with local storage. Detailed below.
- memory_
mib object - Minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range. Detailed below.
- vcpu_
count object - Minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range. Detailed below.
- accelerator_
count object - Minimum and maximum number of accelerators for the instance types. This is used when you need instances with specific numbers of GPUs or other accelerators. Detailed below.
- accelerator_
manufacturers list(string) - Accelerator manufacturers to include. You can specify
nvidia,amd,amazon-web-services,xilinx, orhabanadepending on your accelerator requirements. Valid values areamazon-web-services,amd,nvidia,xilinx,habana. - accelerator_
names list(string) - Specific accelerator names to include. For example, you can specify
a100,v100,k80, or other specific accelerator models. Valid values area100,inferentia,k520,k80,m60,radeon-pro-v520,t4,vu9p,v100,a10g,h100,t4g. - accelerator_
total_ objectmemory_ mib - Minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory. Detailed below.
- accelerator_
types list(string) - Accelerator types to include. You can specify
gpufor GPUs,fpgafor field programmable gate arrays, orinferencefor machine learning inference accelerators. Valid values aregpu,fpga,inference. - allowed_
instance_ list(string)types - Instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified. Maximum of 400 instance types. You can specify instance type patterns using wildcards (e.g.,
m5.*). - bare_
metal string - Whether to include bare metal instance types. Set to
includedto allow bare metal instances,excludedto exclude them, orrequiredto use only bare metal instances. Valid values areincluded,excluded,required. - baseline_
ebs_ objectbandwidth_ mbps - Minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements. Detailed below.
- burstable_
performance string - Whether to include burstable performance instance types (T2, T3, T3a, T4g). Set to
includedto allow burstable instances,excludedto exclude them, orrequiredto use only burstable instances. Valid values areincluded,excluded,required. - cpu_
manufacturers list(string) - CPU manufacturers to include or exclude. You can specify
intel,amd, oramazon-web-servicesto control which CPU types are used for your workloads. Valid values areintel,amd,amazon-web-services. - excluded_
instance_ list(string)types - Instance types to exclude from selection. Use this to prevent Amazon ECS from selecting specific instance types that may not be suitable for your workloads. Maximum of 400 instance types.
- instance_
generations list(string) - Instance generations to include. You can specify
currentto use the latest generation instances, orpreviousto include previous generation instances for cost optimization. Valid values arecurrent,previous. - local_
storage string - Whether to include instance types with local storage. Set to
includedto allow local storage,excludedto exclude it, orrequiredto use only instances with local storage. Valid values areincluded,excluded,required. - local_
storage_ list(string)types - Local storage types to include. You can specify
hddfor hard disk drives,ssdfor solid state drives, or both. Valid values arehdd,ssd. - max_
spot_ numberprice_ as_ percentage_ of_ optimal_ on_ demand_ price - Maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.
- memory_
gib_ objectper_ vcpu - Minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads. Detailed below.
- network_
bandwidth_ objectgbps - Minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput. Detailed below.
- network_
interface_ objectcount - Minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces. Detailed below.
- on_
demand_ numbermax_ price_ percentage_ over_ lowest_ price - Price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon ECS selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
- require_
hibernate_ boolsupport - Whether the instance types must support hibernation. When set to
true, only instance types that support hibernation are selected. - spot_
max_ numberprice_ percentage_ over_ lowest_ price - Maximum price for Spot instances as a percentage over the lowest priced On-Demand instance. This helps control Spot instance costs while maintaining access to capacity.
- total_
local_ objectstorage_ gb - Minimum and maximum total local storage in gigabytes (GB) for instance types with local storage. Detailed below.
- memory
Mib CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Memory Mib - Minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range. Detailed below.
- vcpu
Count CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Vcpu Count - Minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range. Detailed below.
- accelerator
Count CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Accelerator Count - Minimum and maximum number of accelerators for the instance types. This is used when you need instances with specific numbers of GPUs or other accelerators. Detailed below.
- accelerator
Manufacturers List<String> - Accelerator manufacturers to include. You can specify
nvidia,amd,amazon-web-services,xilinx, orhabanadepending on your accelerator requirements. Valid values areamazon-web-services,amd,nvidia,xilinx,habana. - accelerator
Names List<String> - Specific accelerator names to include. For example, you can specify
a100,v100,k80, or other specific accelerator models. Valid values area100,inferentia,k520,k80,m60,radeon-pro-v520,t4,vu9p,v100,a10g,h100,t4g. - accelerator
Total CapacityMemory Mib Provider Managed Instances Provider Instance Launch Template Instance Requirements Accelerator Total Memory Mib - Minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory. Detailed below.
- accelerator
Types List<String> - Accelerator types to include. You can specify
gpufor GPUs,fpgafor field programmable gate arrays, orinferencefor machine learning inference accelerators. Valid values aregpu,fpga,inference. - allowed
Instance List<String>Types - Instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified. Maximum of 400 instance types. You can specify instance type patterns using wildcards (e.g.,
m5.*). - bare
Metal String - Whether to include bare metal instance types. Set to
includedto allow bare metal instances,excludedto exclude them, orrequiredto use only bare metal instances. Valid values areincluded,excluded,required. - baseline
Ebs CapacityBandwidth Mbps Provider Managed Instances Provider Instance Launch Template Instance Requirements Baseline Ebs Bandwidth Mbps - Minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements. Detailed below.
- burstable
Performance String - Whether to include burstable performance instance types (T2, T3, T3a, T4g). Set to
includedto allow burstable instances,excludedto exclude them, orrequiredto use only burstable instances. Valid values areincluded,excluded,required. - cpu
Manufacturers List<String> - CPU manufacturers to include or exclude. You can specify
intel,amd, oramazon-web-servicesto control which CPU types are used for your workloads. Valid values areintel,amd,amazon-web-services. - excluded
Instance List<String>Types - Instance types to exclude from selection. Use this to prevent Amazon ECS from selecting specific instance types that may not be suitable for your workloads. Maximum of 400 instance types.
- instance
Generations List<String> - Instance generations to include. You can specify
currentto use the latest generation instances, orpreviousto include previous generation instances for cost optimization. Valid values arecurrent,previous. - local
Storage String - Whether to include instance types with local storage. Set to
includedto allow local storage,excludedto exclude it, orrequiredto use only instances with local storage. Valid values areincluded,excluded,required. - local
Storage List<String>Types - Local storage types to include. You can specify
hddfor hard disk drives,ssdfor solid state drives, or both. Valid values arehdd,ssd. - max
Spot IntegerPrice As Percentage Of Optimal On Demand Price - Maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.
- memory
Gib CapacityPer Vcpu Provider Managed Instances Provider Instance Launch Template Instance Requirements Memory Gib Per Vcpu - Minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads. Detailed below.
- network
Bandwidth CapacityGbps Provider Managed Instances Provider Instance Launch Template Instance Requirements Network Bandwidth Gbps - Minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput. Detailed below.
- network
Interface CapacityCount Provider Managed Instances Provider Instance Launch Template Instance Requirements Network Interface Count - Minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces. Detailed below.
- on
Demand IntegerMax Price Percentage Over Lowest Price - Price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon ECS selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
- require
Hibernate BooleanSupport - Whether the instance types must support hibernation. When set to
true, only instance types that support hibernation are selected. - spot
Max IntegerPrice Percentage Over Lowest Price - Maximum price for Spot instances as a percentage over the lowest priced On-Demand instance. This helps control Spot instance costs while maintaining access to capacity.
- total
Local CapacityStorage Gb Provider Managed Instances Provider Instance Launch Template Instance Requirements Total Local Storage Gb - Minimum and maximum total local storage in gigabytes (GB) for instance types with local storage. Detailed below.
- memory
Mib CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Memory Mib - Minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range. Detailed below.
- vcpu
Count CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Vcpu Count - Minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range. Detailed below.
- accelerator
Count CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Accelerator Count - Minimum and maximum number of accelerators for the instance types. This is used when you need instances with specific numbers of GPUs or other accelerators. Detailed below.
- accelerator
Manufacturers string[] - Accelerator manufacturers to include. You can specify
nvidia,amd,amazon-web-services,xilinx, orhabanadepending on your accelerator requirements. Valid values areamazon-web-services,amd,nvidia,xilinx,habana. - accelerator
Names string[] - Specific accelerator names to include. For example, you can specify
a100,v100,k80, or other specific accelerator models. Valid values area100,inferentia,k520,k80,m60,radeon-pro-v520,t4,vu9p,v100,a10g,h100,t4g. - accelerator
Total CapacityMemory Mib Provider Managed Instances Provider Instance Launch Template Instance Requirements Accelerator Total Memory Mib - Minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory. Detailed below.
- accelerator
Types string[] - Accelerator types to include. You can specify
gpufor GPUs,fpgafor field programmable gate arrays, orinferencefor machine learning inference accelerators. Valid values aregpu,fpga,inference. - allowed
Instance string[]Types - Instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified. Maximum of 400 instance types. You can specify instance type patterns using wildcards (e.g.,
m5.*). - bare
Metal string - Whether to include bare metal instance types. Set to
includedto allow bare metal instances,excludedto exclude them, orrequiredto use only bare metal instances. Valid values areincluded,excluded,required. - baseline
Ebs CapacityBandwidth Mbps Provider Managed Instances Provider Instance Launch Template Instance Requirements Baseline Ebs Bandwidth Mbps - Minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements. Detailed below.
- burstable
Performance string - Whether to include burstable performance instance types (T2, T3, T3a, T4g). Set to
includedto allow burstable instances,excludedto exclude them, orrequiredto use only burstable instances. Valid values areincluded,excluded,required. - cpu
Manufacturers string[] - CPU manufacturers to include or exclude. You can specify
intel,amd, oramazon-web-servicesto control which CPU types are used for your workloads. Valid values areintel,amd,amazon-web-services. - excluded
Instance string[]Types - Instance types to exclude from selection. Use this to prevent Amazon ECS from selecting specific instance types that may not be suitable for your workloads. Maximum of 400 instance types.
- instance
Generations string[] - Instance generations to include. You can specify
currentto use the latest generation instances, orpreviousto include previous generation instances for cost optimization. Valid values arecurrent,previous. - local
Storage string - Whether to include instance types with local storage. Set to
includedto allow local storage,excludedto exclude it, orrequiredto use only instances with local storage. Valid values areincluded,excluded,required. - local
Storage string[]Types - Local storage types to include. You can specify
hddfor hard disk drives,ssdfor solid state drives, or both. Valid values arehdd,ssd. - max
Spot numberPrice As Percentage Of Optimal On Demand Price - Maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.
- memory
Gib CapacityPer Vcpu Provider Managed Instances Provider Instance Launch Template Instance Requirements Memory Gib Per Vcpu - Minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads. Detailed below.
- network
Bandwidth CapacityGbps Provider Managed Instances Provider Instance Launch Template Instance Requirements Network Bandwidth Gbps - Minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput. Detailed below.
- network
Interface CapacityCount Provider Managed Instances Provider Instance Launch Template Instance Requirements Network Interface Count - Minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces. Detailed below.
- on
Demand numberMax Price Percentage Over Lowest Price - Price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon ECS selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
- require
Hibernate booleanSupport - Whether the instance types must support hibernation. When set to
true, only instance types that support hibernation are selected. - spot
Max numberPrice Percentage Over Lowest Price - Maximum price for Spot instances as a percentage over the lowest priced On-Demand instance. This helps control Spot instance costs while maintaining access to capacity.
- total
Local CapacityStorage Gb Provider Managed Instances Provider Instance Launch Template Instance Requirements Total Local Storage Gb - Minimum and maximum total local storage in gigabytes (GB) for instance types with local storage. Detailed below.
- memory_
mib CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Memory Mib - Minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range. Detailed below.
- vcpu_
count CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Vcpu Count - Minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range. Detailed below.
- accelerator_
count CapacityProvider Managed Instances Provider Instance Launch Template Instance Requirements Accelerator Count - Minimum and maximum number of accelerators for the instance types. This is used when you need instances with specific numbers of GPUs or other accelerators. Detailed below.
- accelerator_
manufacturers Sequence[str] - Accelerator manufacturers to include. You can specify
nvidia,amd,amazon-web-services,xilinx, orhabanadepending on your accelerator requirements. Valid values areamazon-web-services,amd,nvidia,xilinx,habana. - accelerator_
names Sequence[str] - Specific accelerator names to include. For example, you can specify
a100,v100,k80, or other specific accelerator models. Valid values area100,inferentia,k520,k80,m60,radeon-pro-v520,t4,vu9p,v100,a10g,h100,t4g. - accelerator_
total_ Capacitymemory_ mib Provider Managed Instances Provider Instance Launch Template Instance Requirements Accelerator Total Memory Mib - Minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory. Detailed below.
- accelerator_
types Sequence[str] - Accelerator types to include. You can specify
gpufor GPUs,fpgafor field programmable gate arrays, orinferencefor machine learning inference accelerators. Valid values aregpu,fpga,inference. - allowed_
instance_ Sequence[str]types - Instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified. Maximum of 400 instance types. You can specify instance type patterns using wildcards (e.g.,
m5.*). - bare_
metal str - Whether to include bare metal instance types. Set to
includedto allow bare metal instances,excludedto exclude them, orrequiredto use only bare metal instances. Valid values areincluded,excluded,required. - baseline_
ebs_ Capacitybandwidth_ mbps Provider Managed Instances Provider Instance Launch Template Instance Requirements Baseline Ebs Bandwidth Mbps - Minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements. Detailed below.
- burstable_
performance str - Whether to include burstable performance instance types (T2, T3, T3a, T4g). Set to
includedto allow burstable instances,excludedto exclude them, orrequiredto use only burstable instances. Valid values areincluded,excluded,required. - cpu_
manufacturers Sequence[str] - CPU manufacturers to include or exclude. You can specify
intel,amd, oramazon-web-servicesto control which CPU types are used for your workloads. Valid values areintel,amd,amazon-web-services. - excluded_
instance_ Sequence[str]types - Instance types to exclude from selection. Use this to prevent Amazon ECS from selecting specific instance types that may not be suitable for your workloads. Maximum of 400 instance types.
- instance_
generations Sequence[str] - Instance generations to include. You can specify
currentto use the latest generation instances, orpreviousto include previous generation instances for cost optimization. Valid values arecurrent,previous. - local_
storage str - Whether to include instance types with local storage. Set to
includedto allow local storage,excludedto exclude it, orrequiredto use only instances with local storage. Valid values areincluded,excluded,required. - local_
storage_ Sequence[str]types - Local storage types to include. You can specify
hddfor hard disk drives,ssdfor solid state drives, or both. Valid values arehdd,ssd. - max_
spot_ intprice_ as_ percentage_ of_ optimal_ on_ demand_ price - Maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.
- memory_
gib_ Capacityper_ vcpu Provider Managed Instances Provider Instance Launch Template Instance Requirements Memory Gib Per Vcpu - Minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads. Detailed below.
- network_
bandwidth_ Capacitygbps Provider Managed Instances Provider Instance Launch Template Instance Requirements Network Bandwidth Gbps - Minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput. Detailed below.
- network_
interface_ Capacitycount Provider Managed Instances Provider Instance Launch Template Instance Requirements Network Interface Count - Minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces. Detailed below.
- on_
demand_ intmax_ price_ percentage_ over_ lowest_ price - Price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon ECS selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
- require_
hibernate_ boolsupport - Whether the instance types must support hibernation. When set to
true, only instance types that support hibernation are selected. - spot_
max_ intprice_ percentage_ over_ lowest_ price - Maximum price for Spot instances as a percentage over the lowest priced On-Demand instance. This helps control Spot instance costs while maintaining access to capacity.
- total_
local_ Capacitystorage_ gb Provider Managed Instances Provider Instance Launch Template Instance Requirements Total Local Storage Gb - Minimum and maximum total local storage in gigabytes (GB) for instance types with local storage. Detailed below.
- memory
Mib Property Map - Minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range. Detailed below.
- vcpu
Count Property Map - Minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range. Detailed below.
- accelerator
Count Property Map - Minimum and maximum number of accelerators for the instance types. This is used when you need instances with specific numbers of GPUs or other accelerators. Detailed below.
- accelerator
Manufacturers List<String> - Accelerator manufacturers to include. You can specify
nvidia,amd,amazon-web-services,xilinx, orhabanadepending on your accelerator requirements. Valid values areamazon-web-services,amd,nvidia,xilinx,habana. - accelerator
Names List<String> - Specific accelerator names to include. For example, you can specify
a100,v100,k80, or other specific accelerator models. Valid values area100,inferentia,k520,k80,m60,radeon-pro-v520,t4,vu9p,v100,a10g,h100,t4g. - accelerator
Total Property MapMemory Mib - Minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory. Detailed below.
- accelerator
Types List<String> - Accelerator types to include. You can specify
gpufor GPUs,fpgafor field programmable gate arrays, orinferencefor machine learning inference accelerators. Valid values aregpu,fpga,inference. - allowed
Instance List<String>Types - Instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified. Maximum of 400 instance types. You can specify instance type patterns using wildcards (e.g.,
m5.*). - bare
Metal String - Whether to include bare metal instance types. Set to
includedto allow bare metal instances,excludedto exclude them, orrequiredto use only bare metal instances. Valid values areincluded,excluded,required. - baseline
Ebs Property MapBandwidth Mbps - Minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements. Detailed below.
- burstable
Performance String - Whether to include burstable performance instance types (T2, T3, T3a, T4g). Set to
includedto allow burstable instances,excludedto exclude them, orrequiredto use only burstable instances. Valid values areincluded,excluded,required. - cpu
Manufacturers List<String> - CPU manufacturers to include or exclude. You can specify
intel,amd, oramazon-web-servicesto control which CPU types are used for your workloads. Valid values areintel,amd,amazon-web-services. - excluded
Instance List<String>Types - Instance types to exclude from selection. Use this to prevent Amazon ECS from selecting specific instance types that may not be suitable for your workloads. Maximum of 400 instance types.
- instance
Generations List<String> - Instance generations to include. You can specify
currentto use the latest generation instances, orpreviousto include previous generation instances for cost optimization. Valid values arecurrent,previous. - local
Storage String - Whether to include instance types with local storage. Set to
includedto allow local storage,excludedto exclude it, orrequiredto use only instances with local storage. Valid values areincluded,excluded,required. - local
Storage List<String>Types - Local storage types to include. You can specify
hddfor hard disk drives,ssdfor solid state drives, or both. Valid values arehdd,ssd. - max
Spot NumberPrice As Percentage Of Optimal On Demand Price - Maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.
- memory
Gib Property MapPer Vcpu - Minimum and maximum amount of memory per vCPU in gibibytes (GiB). This helps ensure that instance types have the appropriate memory-to-CPU ratio for your workloads. Detailed below.
- network
Bandwidth Property MapGbps - Minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput. Detailed below.
- network
Interface Property MapCount - Minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces. Detailed below.
- on
Demand NumberMax Price Percentage Over Lowest Price - Price protection threshold for On-Demand Instances, as a percentage higher than an identified On-Demand price. The identified On-Demand price is the price of the lowest priced current generation C, M, or R instance type with your specified attributes. When Amazon ECS selects instance types with your attributes, it will exclude instance types whose price exceeds your specified threshold.
- require
Hibernate BooleanSupport - Whether the instance types must support hibernation. When set to
true, only instance types that support hibernation are selected. - spot
Max NumberPrice Percentage Over Lowest Price - Maximum price for Spot instances as a percentage over the lowest priced On-Demand instance. This helps control Spot instance costs while maintaining access to capacity.
- total
Local Property MapStorage Gb - Minimum and maximum total local storage in gigabytes (GB) for instance types with local storage. Detailed below.
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsAcceleratorCount, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsAcceleratorCountArgs
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsAcceleratorTotalMemoryMib, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsAcceleratorTotalMemoryMibArgs
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsBaselineEbsBandwidthMbps, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsArgs
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryGibPerVcpu, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryGibPerVcpuArgs
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryMib, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsMemoryMibArgs
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsNetworkBandwidthGbps, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsNetworkBandwidthGbpsArgs
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsNetworkInterfaceCount, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsNetworkInterfaceCountArgs
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsTotalLocalStorageGb, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsTotalLocalStorageGbArgs
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsVcpuCount, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateInstanceRequirementsVcpuCountArgs
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateLocalStorageConfiguration, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateLocalStorageConfigurationArgs
- Use
Local boolStorage - Whether to use the local storage of the instance for Amazon ECS Managed Instances.
- Use
Local boolStorage - Whether to use the local storage of the instance for Amazon ECS Managed Instances.
- use_
local_ boolstorage - Whether to use the local storage of the instance for Amazon ECS Managed Instances.
- use
Local BooleanStorage - Whether to use the local storage of the instance for Amazon ECS Managed Instances.
- use
Local booleanStorage - Whether to use the local storage of the instance for Amazon ECS Managed Instances.
- use_
local_ boolstorage - Whether to use the local storage of the instance for Amazon ECS Managed Instances.
- use
Local BooleanStorage - Whether to use the local storage of the instance for Amazon ECS Managed Instances.
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateNetworkConfiguration, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateNetworkConfigurationArgs
- Subnets List<string>
- List of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances. Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.
- Security
Groups List<string> - List of security group IDs to apply to Amazon ECS Managed Instances. These security groups control the network traffic allowed to and from the instances.
- Subnets []string
- List of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances. Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.
- Security
Groups []string - List of security group IDs to apply to Amazon ECS Managed Instances. These security groups control the network traffic allowed to and from the instances.
- subnets list(string)
- List of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances. Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.
- security_
groups list(string) - List of security group IDs to apply to Amazon ECS Managed Instances. These security groups control the network traffic allowed to and from the instances.
- subnets List<String>
- List of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances. Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.
- security
Groups List<String> - List of security group IDs to apply to Amazon ECS Managed Instances. These security groups control the network traffic allowed to and from the instances.
- subnets string[]
- List of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances. Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.
- security
Groups string[] - List of security group IDs to apply to Amazon ECS Managed Instances. These security groups control the network traffic allowed to and from the instances.
- subnets Sequence[str]
- List of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances. Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.
- security_
groups Sequence[str] - List of security group IDs to apply to Amazon ECS Managed Instances. These security groups control the network traffic allowed to and from the instances.
- subnets List<String>
- List of subnet IDs where Amazon ECS can launch Amazon ECS Managed Instances. Instances are distributed across the specified subnets for high availability. All subnets must be in the same VPC.
- security
Groups List<String> - List of security group IDs to apply to Amazon ECS Managed Instances. These security groups control the network traffic allowed to and from the instances.
CapacityProviderManagedInstancesProviderInstanceLaunchTemplateStorageConfiguration, CapacityProviderManagedInstancesProviderInstanceLaunchTemplateStorageConfigurationArgs
- Storage
Size intGib - Size of the tasks volume in GiB. Must be at least 1.
- Storage
Size intGib - Size of the tasks volume in GiB. Must be at least 1.
- storage_
size_ numbergib - Size of the tasks volume in GiB. Must be at least 1.
- storage
Size IntegerGib - Size of the tasks volume in GiB. Must be at least 1.
- storage
Size numberGib - Size of the tasks volume in GiB. Must be at least 1.
- storage_
size_ intgib - Size of the tasks volume in GiB. Must be at least 1.
- storage
Size NumberGib - Size of the tasks volume in GiB. Must be at least 1.
Import
Identity Schema
Required
arn(String) ARN of the ECS capacity provider.
Using pulumi import, import ECS Capacity Providers using the arn. For example:
$ pulumi import aws:ecs/capacityProvider:CapacityProvider example arn:aws:ecs:us-west-2:123456789012:capacity-provider/example
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
awsTerraform Provider.
published on Thursday, Sep 10, 2026 by Pulumi