LaunchTemplateInstanceRequirementsArgs

data class LaunchTemplateInstanceRequirementsArgs(val acceleratorCount: Output<LaunchTemplateInstanceRequirementsAcceleratorCountArgs>? = null, val acceleratorManufacturers: Output<List<String>>? = null, val acceleratorNames: Output<List<String>>? = null, val acceleratorTotalMemoryMib: Output<LaunchTemplateInstanceRequirementsAcceleratorTotalMemoryMibArgs>? = null, val acceleratorTypes: Output<List<String>>? = null, val allowedInstanceTypes: Output<List<String>>? = null, val bareMetal: Output<String>? = null, val baselineEbsBandwidthMbps: Output<LaunchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsArgs>? = null, val burstablePerformance: Output<String>? = null, val cpuManufacturers: Output<List<String>>? = null, val excludedInstanceTypes: Output<List<String>>? = null, val instanceGenerations: Output<List<String>>? = null, val localStorage: Output<String>? = null, val localStorageTypes: Output<List<String>>? = null, val maxSpotPriceAsPercentageOfOptimalOnDemandPrice: Output<Int>? = null, val memoryGibPerVcpu: Output<LaunchTemplateInstanceRequirementsMemoryGibPerVcpuArgs>? = null, val memoryMib: Output<LaunchTemplateInstanceRequirementsMemoryMibArgs>, val networkBandwidthGbps: Output<LaunchTemplateInstanceRequirementsNetworkBandwidthGbpsArgs>? = null, val networkInterfaceCount: Output<LaunchTemplateInstanceRequirementsNetworkInterfaceCountArgs>? = null, val onDemandMaxPricePercentageOverLowestPrice: Output<Int>? = null, val requireHibernateSupport: Output<Boolean>? = null, val spotMaxPricePercentageOverLowestPrice: Output<Int>? = null, val totalLocalStorageGb: Output<LaunchTemplateInstanceRequirementsTotalLocalStorageGbArgs>? = null, val vcpuCount: Output<LaunchTemplateInstanceRequirementsVcpuCountArgs>) : ConvertibleToJava<LaunchTemplateInstanceRequirementsArgs>

Constructors

Link copied to clipboard
constructor(acceleratorCount: Output<LaunchTemplateInstanceRequirementsAcceleratorCountArgs>? = null, acceleratorManufacturers: Output<List<String>>? = null, acceleratorNames: Output<List<String>>? = null, acceleratorTotalMemoryMib: Output<LaunchTemplateInstanceRequirementsAcceleratorTotalMemoryMibArgs>? = null, acceleratorTypes: Output<List<String>>? = null, allowedInstanceTypes: Output<List<String>>? = null, bareMetal: Output<String>? = null, baselineEbsBandwidthMbps: Output<LaunchTemplateInstanceRequirementsBaselineEbsBandwidthMbpsArgs>? = null, burstablePerformance: Output<String>? = null, cpuManufacturers: Output<List<String>>? = null, excludedInstanceTypes: Output<List<String>>? = null, instanceGenerations: Output<List<String>>? = null, localStorage: Output<String>? = null, localStorageTypes: Output<List<String>>? = null, maxSpotPriceAsPercentageOfOptimalOnDemandPrice: Output<Int>? = null, memoryGibPerVcpu: Output<LaunchTemplateInstanceRequirementsMemoryGibPerVcpuArgs>? = null, memoryMib: Output<LaunchTemplateInstanceRequirementsMemoryMibArgs>, networkBandwidthGbps: Output<LaunchTemplateInstanceRequirementsNetworkBandwidthGbpsArgs>? = null, networkInterfaceCount: Output<LaunchTemplateInstanceRequirementsNetworkInterfaceCountArgs>? = null, onDemandMaxPricePercentageOverLowestPrice: Output<Int>? = null, requireHibernateSupport: Output<Boolean>? = null, spotMaxPricePercentageOverLowestPrice: Output<Int>? = null, totalLocalStorageGb: Output<LaunchTemplateInstanceRequirementsTotalLocalStorageGbArgs>? = null, vcpuCount: Output<LaunchTemplateInstanceRequirementsVcpuCountArgs>)

Properties

Link copied to clipboard

Block describing the minimum and maximum number of accelerators (GPUs, FPGAs, or AWS Inferentia chips). Default is no minimum or maximum.

Link copied to clipboard
val acceleratorManufacturers: Output<List<String>>? = null

List of accelerator manufacturer names. Default is any manufacturer.

Link copied to clipboard
val acceleratorNames: Output<List<String>>? = null

List of accelerator names. Default is any acclerator.

Link copied to clipboard

Block describing the minimum and maximum total memory of the accelerators. Default is no minimum or maximum.

Link copied to clipboard
val acceleratorTypes: Output<List<String>>? = null

List of accelerator types. Default is any accelerator type.

Link copied to clipboard
val allowedInstanceTypes: Output<List<String>>? = null

List of instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes. You can use strings with one or more wild cards, represented by an asterisk (\*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*, you are allowing the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are allowing all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is all instance types.

Link copied to clipboard
val bareMetal: Output<String>? = null

Indicate whether bare metal instace types should be included, excluded, or required. Default is excluded.

Link copied to clipboard

Block describing the minimum and maximum baseline EBS bandwidth, in Mbps. Default is no minimum or maximum.

Link copied to clipboard
val burstablePerformance: Output<String>? = null

Indicate whether burstable performance instance types should be included, excluded, or required. Default is excluded.

Link copied to clipboard
val cpuManufacturers: Output<List<String>>? = null

List of CPU manufacturer names. Default is any manufacturer.

Link copied to clipboard
val excludedInstanceTypes: Output<List<String>>? = null

List of instance types to exclude. You can use strings with one or more wild cards, represented by an asterisk (\*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*. For example, if you specify c5*, you are excluding the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, you are excluding all the M5a instance types, but not the M5n instance types. Maximum of 400 entries in the list; each entry is limited to 30 characters. Default is no excluded instance types.

Link copied to clipboard
val instanceGenerations: Output<List<String>>? = null

List of instance generation names. Default is any generation.

Link copied to clipboard
val localStorage: Output<String>? = null

Indicate whether instance types with local storage volumes are included, excluded, or required. Default is included.

Link copied to clipboard
val localStorageTypes: Output<List<String>>? = null

List of local storage type names. Default any storage type.

The price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, expressed as a percentage higher than the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price is higher than your threshold. The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage. To turn off price protection, specify a high value, such as 999999. Conflicts with spot_max_price_percentage_over_lowest_price

Link copied to clipboard

Block describing the minimum and maximum amount of memory (GiB) per vCPU. Default is no minimum or maximum.

Link copied to clipboard

Block describing the minimum and maximum amount of memory (MiB). Default is no maximum.

Link copied to clipboard

Block describing the minimum and maximum amount of network bandwidth, in gigabits per second (Gbps). Default is no minimum or maximum.

Link copied to clipboard

Block describing the minimum and maximum number of network interfaces. Default is no minimum or maximum.

The price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage higher than the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price is higher than your threshold. The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage. To turn off price protection, specify a high value, such as 999999. Default is 20. If you set DesiredCapacityType to vcpu or memory-mib, the price protection threshold is applied based on the per vCPU or per memory price instead of the per instance price.

Link copied to clipboard
val requireHibernateSupport: Output<Boolean>? = null

Indicate whether instance types must support On-Demand Instance Hibernation, either true or false. Default is false.

Link copied to clipboard

The price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, expressed as a percentage higher than the cheapest M, C, or R instance type with your specified attributes. When Amazon EC2 Auto Scaling selects instance types with your attributes, we will exclude instance types whose price is higher than your threshold. The parameter accepts an integer, which Amazon EC2 Auto Scaling interprets as a percentage. To turn off price protection, specify a high value, such as 999999. Default is 100. Conflicts with max_spot_price_as_percentage_of_optimal_on_demand_price If you set DesiredCapacityType to vcpu or memory-mib, the price protection threshold is applied based on the per vCPU or per memory price instead of the per instance price.

Link copied to clipboard

Block describing the minimum and maximum total local storage (GB). Default is no minimum or maximum.

Link copied to clipboard

Block describing the minimum and maximum number of vCPUs. Default is no maximum.

Functions

Link copied to clipboard
open override fun toJava(): LaunchTemplateInstanceRequirementsArgs