Interface CfnCapacityProviderPropsMixin.ManagedInstancesProviderProperty
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
CfnCapacityProviderPropsMixin.ManagedInstancesProviderProperty.Jsii$Proxy
- Enclosing class:
CfnCapacityProviderPropsMixin
Amazon ECS uses this configuration to automatically launch, manage, and terminate Amazon EC2 instances on your behalf. Managed instances provide access to the full range of Amazon EC2 instance types and features while offloading infrastructure management to AWS .
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.cfnpropertymixins.services.ecs.*;
ManagedInstancesProviderProperty managedInstancesProviderProperty = ManagedInstancesProviderProperty.builder()
.infrastructureOptimization(InfrastructureOptimizationProperty.builder()
.scaleInAfter(123)
.build())
.infrastructureRoleArn("infrastructureRoleArn")
.instanceLaunchTemplate(InstanceLaunchTemplateProperty.builder()
.capacityOptionType("capacityOptionType")
.capacityReservations(CapacityReservationRequestProperty.builder()
.reservationGroupArn("reservationGroupArn")
.reservationPreference("reservationPreference")
.build())
.ec2InstanceProfileArn("ec2InstanceProfileArn")
.fipsEnabled(false)
.instanceRequirements(InstanceRequirementsRequestProperty.builder()
.acceleratorCount(AcceleratorCountRequestProperty.builder()
.max(123)
.min(123)
.build())
.acceleratorManufacturers(List.of("acceleratorManufacturers"))
.acceleratorNames(List.of("acceleratorNames"))
.acceleratorTotalMemoryMiB(AcceleratorTotalMemoryMiBRequestProperty.builder()
.max(123)
.min(123)
.build())
.acceleratorTypes(List.of("acceleratorTypes"))
.allowedInstanceTypes(List.of("allowedInstanceTypes"))
.bareMetal("bareMetal")
.baselineEbsBandwidthMbps(BaselineEbsBandwidthMbpsRequestProperty.builder()
.max(123)
.min(123)
.build())
.burstablePerformance("burstablePerformance")
.cpuManufacturers(List.of("cpuManufacturers"))
.excludedInstanceTypes(List.of("excludedInstanceTypes"))
.instanceGenerations(List.of("instanceGenerations"))
.localStorage("localStorage")
.localStorageTypes(List.of("localStorageTypes"))
.maxSpotPriceAsPercentageOfOptimalOnDemandPrice(123)
.memoryGiBPerVCpu(MemoryGiBPerVCpuRequestProperty.builder()
.max(123)
.min(123)
.build())
.memoryMiB(MemoryMiBRequestProperty.builder()
.max(123)
.min(123)
.build())
.networkBandwidthGbps(NetworkBandwidthGbpsRequestProperty.builder()
.max(123)
.min(123)
.build())
.networkInterfaceCount(NetworkInterfaceCountRequestProperty.builder()
.max(123)
.min(123)
.build())
.onDemandMaxPricePercentageOverLowestPrice(123)
.requireHibernateSupport(false)
.spotMaxPricePercentageOverLowestPrice(123)
.totalLocalStorageGb(TotalLocalStorageGBRequestProperty.builder()
.max(123)
.min(123)
.build())
.vCpuCount(VCpuCountRangeRequestProperty.builder()
.max(123)
.min(123)
.build())
.build())
.monitoring("monitoring")
.networkConfiguration(ManagedInstancesNetworkConfigurationProperty.builder()
.securityGroups(List.of("securityGroups"))
.subnets(List.of("subnets"))
.build())
.storageConfiguration(ManagedInstancesStorageConfigurationProperty.builder()
.storageSizeGiB(123)
.build())
.build())
.propagateTags("propagateTags")
.build();
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic final classstatic final classAn implementation forCfnCapacityProviderPropsMixin.ManagedInstancesProviderProperty -
Method Summary
Modifier and TypeMethodDescriptionbuilder()default ObjectDefines how Amazon ECS Managed Instances optimizes the infrastastructure in your capacity provider.default StringThe Amazon Resource Name (ARN) of the infrastructure role that Amazon ECS assumes to manage instances.default ObjectThe launch template that defines how Amazon ECS launches Amazon ECS Managed Instances.default StringDetermines whether tags from the capacity provider are automatically applied to Amazon ECS Managed Instances.Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getInfrastructureOptimization
Defines how Amazon ECS Managed Instances optimizes the infrastastructure in your capacity provider.Configure it to turn on or off the infrastructure optimization in your capacity provider, and to control the idle or underutilized EC2 instances optimization delay.
Returns union: either
IResolvableorCfnCapacityProviderPropsMixin.InfrastructureOptimizationProperty- See Also:
-
getInfrastructureRoleArn
The Amazon Resource Name (ARN) of the infrastructure role that Amazon ECS assumes to manage instances.This role must include permissions for Amazon EC2 instance lifecycle management, networking, and any additional AWS services required for your workloads.
For more information, see Amazon ECS infrastructure IAM role in the Amazon ECS Developer Guide .
- See Also:
-
getInstanceLaunchTemplate
The launch template that defines how Amazon ECS launches Amazon ECS Managed Instances.This includes the instance profile for your tasks, network and storage configuration, and instance requirements that determine which Amazon EC2 instance types can be used.
For more information, see Store instance launch parameters in Amazon EC2 launch templates in the Amazon EC2 User Guide .
Returns union: either
IResolvableorCfnCapacityProviderPropsMixin.InstanceLaunchTemplateProperty- See Also:
-
getPropagateTags
Determines whether tags from the capacity provider are automatically applied to Amazon ECS Managed Instances.This helps with cost allocation and resource management by ensuring consistent tagging across your infrastructure.
- See Also:
-
builder
@Stability(Stable) static CfnCapacityProviderPropsMixin.ManagedInstancesProviderProperty.Builder builder()
-