/AWS1/CL_ECSINSTREQSREQUEST¶
The instance requirements for attribute-based instance type selection. Instead of specifying exact instance types, you define requirements such as vCPU count, memory size, network performance, and accelerator specifications. Amazon ECS automatically selects Amazon EC2 instance types that match these requirements, providing flexibility and helping to mitigate capacity constraints.
CONSTRUCTOR¶
IMPORTING¶
Required arguments:¶
io_vcpucount TYPE REF TO /AWS1/CL_ECSVCPUCOUNTRANGEREQ /AWS1/CL_ECSVCPUCOUNTRANGEREQ¶
The minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range.
io_memorymib TYPE REF TO /AWS1/CL_ECSMEMORYMIBREQUEST /AWS1/CL_ECSMEMORYMIBREQUEST¶
The minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range.
Optional arguments:¶
it_cpumanufacturers TYPE /AWS1/CL_ECSCPUMANUFACTURERS00=>TT_CPUMANUFACTURERSET TT_CPUMANUFACTURERSET¶
The CPU manufacturers to include or exclude. You can specify
intel,amd, oramazon-web-servicesto control which CPU types are used for your workloads.
io_memorygibpervcpu TYPE REF TO /AWS1/CL_ECSMEMGIBPERVCPUREQ /AWS1/CL_ECSMEMGIBPERVCPUREQ¶
The 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.
it_excludedinstancetypes TYPE /AWS1/CL_ECSEXCLUDEDINSTTYPE00=>TT_EXCLUDEDINSTANCETYPESET TT_EXCLUDEDINSTANCETYPESET¶
The 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.
it_instancegenerations TYPE /AWS1/CL_ECSINSTGENERATIONSE00=>TT_INSTANCEGENERATIONSET TT_INSTANCEGENERATIONSET¶
The instance generations to include. You can specify
currentto use the latest generation instances, orpreviousto include previous generation instances for cost optimization.
iv_spotmaxpricepercageover00 TYPE /AWS1/ECSBOXEDINTEGER /AWS1/ECSBOXEDINTEGER¶
The 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.
iv_ondemmaxpricepercageove00 TYPE /AWS1/ECSBOXEDINTEGER /AWS1/ECSBOXEDINTEGER¶
The 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. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon ECS selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
iv_baremetal TYPE /AWS1/ECSBAREMETAL /AWS1/ECSBAREMETAL¶
Indicates whether to include bare metal instance types. Set to
includedto allow bare metal instances,excludedto exclude them, orrequiredto use only bare metal instances.
iv_burstableperformance TYPE /AWS1/ECSBURSTABLEPERFORMANCE /AWS1/ECSBURSTABLEPERFORMANCE¶
Indicates 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.
iv_requirehibernatesupport TYPE /AWS1/ECSBOXEDBOOLEAN /AWS1/ECSBOXEDBOOLEAN¶
Indicates whether the instance types must support hibernation. When set to
true, only instance types that support hibernation are selected.
io_networkinterfacecount TYPE REF TO /AWS1/CL_ECSNETIFACECOUNTREQ /AWS1/CL_ECSNETIFACECOUNTREQ¶
The minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces.
iv_localstorage TYPE /AWS1/ECSLOCALSTORAGE /AWS1/ECSLOCALSTORAGE¶
Indicates whether to include instance types with local storage. Set to
includedto allow local storage,excludedto exclude it, orrequiredto use only instances with local storage.
it_localstoragetypes TYPE /AWS1/CL_ECSLOCALSTRGTYPESET_W=>TT_LOCALSTORAGETYPESET TT_LOCALSTORAGETYPESET¶
The local storage types to include. You can specify
hddfor hard disk drives,ssdfor solid state drives, or both.
io_totallocalstoragegb TYPE REF TO /AWS1/CL_ECSTOTALLOCALSTRGGB00 /AWS1/CL_ECSTOTALLOCALSTRGGB00¶
The minimum and maximum total local storage in gigabytes (GB) for instance types with local storage.
io_baselineebsbandwidthmbps TYPE REF TO /AWS1/CL_ECSBASELINEEBSBANDW00 /AWS1/CL_ECSBASELINEEBSBANDW00¶
The minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements.
it_acceleratortypes TYPE /AWS1/CL_ECSACCELERATORTYPES00=>TT_ACCELERATORTYPESET TT_ACCELERATORTYPESET¶
The accelerator types to include. You can specify
gpufor graphics processing units,fpgafor field programmable gate arrays, orinferencefor machine learning inference accelerators.
io_acceleratorcount TYPE REF TO /AWS1/CL_ECSACCELERATORCNTREQ /AWS1/CL_ECSACCELERATORCNTREQ¶
The 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.
it_acceleratormanufacturers TYPE /AWS1/CL_ECSACCELERATORMANUF00=>TT_ACCELERATORMANUFACTURERSET TT_ACCELERATORMANUFACTURERSET¶
The accelerator manufacturers to include. You can specify
nvidia,amd,amazon-web-services, orxilinxdepending on your accelerator requirements.
it_acceleratornames TYPE /AWS1/CL_ECSACCELERATORNAMES00=>TT_ACCELERATORNAMESET TT_ACCELERATORNAMESET¶
The specific accelerator names to include. For example, you can specify
a100,v100,k80, or other specific accelerator models.
io_acceleratortotalmemorymib TYPE REF TO /AWS1/CL_ECSACCELERATORTOTAL00 /AWS1/CL_ECSACCELERATORTOTAL00¶
The minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory.
io_networkbandwidthgbps TYPE REF TO /AWS1/CL_ECSNETBANDWIDTHGBPS00 /AWS1/CL_ECSNETBANDWIDTHGBPS00¶
The minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput.
it_allowedinstancetypes TYPE /AWS1/CL_ECSALWDINSTTYPESET_W=>TT_ALLOWEDINSTANCETYPESET TT_ALLOWEDINSTANCETYPESET¶
The instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified.
iv_maxspotpriceaspercageof00 TYPE /AWS1/ECSBOXEDINTEGER /AWS1/ECSBOXEDINTEGER¶
The maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.
Queryable Attributes¶
vCpuCount¶
The minimum and maximum number of vCPUs for the instance types. Amazon ECS selects instance types that have vCPU counts within this range.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_VCPUCOUNT() |
Getter for VCPUCOUNT |
memoryMiB¶
The minimum and maximum amount of memory in mebibytes (MiB) for the instance types. Amazon ECS selects instance types that have memory within this range.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_MEMORYMIB() |
Getter for MEMORYMIB |
cpuManufacturers¶
The CPU manufacturers to include or exclude. You can specify
intel,amd, oramazon-web-servicesto control which CPU types are used for your workloads.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_CPUMANUFACTURERS() |
Getter for CPUMANUFACTURERS, with configurable default |
ASK_CPUMANUFACTURERS() |
Getter for CPUMANUFACTURERS w/ exceptions if field has no va |
HAS_CPUMANUFACTURERS() |
Determine if CPUMANUFACTURERS has a value |
memoryGiBPerVCpu¶
The 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.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_MEMORYGIBPERVCPU() |
Getter for MEMORYGIBPERVCPU |
excludedInstanceTypes¶
The 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.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_EXCLUDEDINSTANCETYPES() |
Getter for EXCLUDEDINSTANCETYPES, with configurable default |
ASK_EXCLUDEDINSTANCETYPES() |
Getter for EXCLUDEDINSTANCETYPES w/ exceptions if field has |
HAS_EXCLUDEDINSTANCETYPES() |
Determine if EXCLUDEDINSTANCETYPES has a value |
instanceGenerations¶
The instance generations to include. You can specify
currentto use the latest generation instances, orpreviousto include previous generation instances for cost optimization.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_INSTANCEGENERATIONS() |
Getter for INSTANCEGENERATIONS, with configurable default |
ASK_INSTANCEGENERATIONS() |
Getter for INSTANCEGENERATIONS w/ exceptions if field has no |
HAS_INSTANCEGENERATIONS() |
Determine if INSTANCEGENERATIONS has a value |
spotMaxPricePercentageOverLowestPrice¶
The 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.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_SPOTMAXPRICEPERCAGEOVE00() |
Getter for SPOTMAXPRICEPERCAGEOVERLOW00, with configurable d |
ASK_SPOTMAXPRICEPERCAGEOVE00() |
Getter for SPOTMAXPRICEPERCAGEOVERLOW00 w/ exceptions if fie |
HAS_SPOTMAXPRICEPERCAGEOVE00() |
Determine if SPOTMAXPRICEPERCAGEOVERLOW00 has a value |
onDemandMaxPricePercentageOverLowestPrice¶
The 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. If no current generation C, M, or R instance type matches your attributes, then the identified price is from either the lowest priced current generation instance types or, failing that, the lowest priced previous generation instance types that match your attributes. When Amazon ECS selects instance types with your attributes, we will exclude instance types whose price exceeds your specified threshold.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_ONDEMMAXPRICEPERCAGEOV00() |
Getter for ONDEMMAXPRICEPERCAGEOVERLO00, with configurable d |
ASK_ONDEMMAXPRICEPERCAGEOV00() |
Getter for ONDEMMAXPRICEPERCAGEOVERLO00 w/ exceptions if fie |
HAS_ONDEMMAXPRICEPERCAGEOV00() |
Determine if ONDEMMAXPRICEPERCAGEOVERLO00 has a value |
bareMetal¶
Indicates whether to include bare metal instance types. Set to
includedto allow bare metal instances,excludedto exclude them, orrequiredto use only bare metal instances.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_BAREMETAL() |
Getter for BAREMETAL, with configurable default |
ASK_BAREMETAL() |
Getter for BAREMETAL w/ exceptions if field has no value |
HAS_BAREMETAL() |
Determine if BAREMETAL has a value |
burstablePerformance¶
Indicates 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.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_BURSTABLEPERFORMANCE() |
Getter for BURSTABLEPERFORMANCE, with configurable default |
ASK_BURSTABLEPERFORMANCE() |
Getter for BURSTABLEPERFORMANCE w/ exceptions if field has n |
HAS_BURSTABLEPERFORMANCE() |
Determine if BURSTABLEPERFORMANCE has a value |
requireHibernateSupport¶
Indicates whether the instance types must support hibernation. When set to
true, only instance types that support hibernation are selected.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_REQUIREHIBERNATESUPPORT() |
Getter for REQUIREHIBERNATESUPPORT, with configurable defaul |
ASK_REQUIREHIBERNATESUPPORT() |
Getter for REQUIREHIBERNATESUPPORT w/ exceptions if field ha |
HAS_REQUIREHIBERNATESUPPORT() |
Determine if REQUIREHIBERNATESUPPORT has a value |
networkInterfaceCount¶
The minimum and maximum number of network interfaces for the instance types. This is useful for workloads that require multiple network interfaces.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_NETWORKINTERFACECOUNT() |
Getter for NETWORKINTERFACECOUNT |
localStorage¶
Indicates whether to include instance types with local storage. Set to
includedto allow local storage,excludedto exclude it, orrequiredto use only instances with local storage.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_LOCALSTORAGE() |
Getter for LOCALSTORAGE, with configurable default |
ASK_LOCALSTORAGE() |
Getter for LOCALSTORAGE w/ exceptions if field has no value |
HAS_LOCALSTORAGE() |
Determine if LOCALSTORAGE has a value |
localStorageTypes¶
The local storage types to include. You can specify
hddfor hard disk drives,ssdfor solid state drives, or both.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_LOCALSTORAGETYPES() |
Getter for LOCALSTORAGETYPES, with configurable default |
ASK_LOCALSTORAGETYPES() |
Getter for LOCALSTORAGETYPES w/ exceptions if field has no v |
HAS_LOCALSTORAGETYPES() |
Determine if LOCALSTORAGETYPES has a value |
totalLocalStorageGB¶
The minimum and maximum total local storage in gigabytes (GB) for instance types with local storage.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_TOTALLOCALSTORAGEGB() |
Getter for TOTALLOCALSTORAGEGB |
baselineEbsBandwidthMbps¶
The minimum and maximum baseline Amazon EBS bandwidth in megabits per second (Mbps). This is important for workloads with high storage I/O requirements.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_BASELINEEBSBANDWIDTHMBPS() |
Getter for BASELINEEBSBANDWIDTHMBPS |
acceleratorTypes¶
The accelerator types to include. You can specify
gpufor graphics processing units,fpgafor field programmable gate arrays, orinferencefor machine learning inference accelerators.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_ACCELERATORTYPES() |
Getter for ACCELERATORTYPES, with configurable default |
ASK_ACCELERATORTYPES() |
Getter for ACCELERATORTYPES w/ exceptions if field has no va |
HAS_ACCELERATORTYPES() |
Determine if ACCELERATORTYPES has a value |
acceleratorCount¶
The 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.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_ACCELERATORCOUNT() |
Getter for ACCELERATORCOUNT |
acceleratorManufacturers¶
The accelerator manufacturers to include. You can specify
nvidia,amd,amazon-web-services, orxilinxdepending on your accelerator requirements.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_ACCELERATORMANUFACTURERS() |
Getter for ACCELERATORMANUFACTURERS, with configurable defau |
ASK_ACCELERATORMANUFACTURERS() |
Getter for ACCELERATORMANUFACTURERS w/ exceptions if field h |
HAS_ACCELERATORMANUFACTURERS() |
Determine if ACCELERATORMANUFACTURERS has a value |
acceleratorNames¶
The specific accelerator names to include. For example, you can specify
a100,v100,k80, or other specific accelerator models.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_ACCELERATORNAMES() |
Getter for ACCELERATORNAMES, with configurable default |
ASK_ACCELERATORNAMES() |
Getter for ACCELERATORNAMES w/ exceptions if field has no va |
HAS_ACCELERATORNAMES() |
Determine if ACCELERATORNAMES has a value |
acceleratorTotalMemoryMiB¶
The minimum and maximum total accelerator memory in mebibytes (MiB). This is important for GPU workloads that require specific amounts of video memory.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_ACCELERATORTOTALMEMMIB() |
Getter for ACCELERATORTOTALMEMORYMIB |
networkBandwidthGbps¶
The minimum and maximum network bandwidth in gigabits per second (Gbps). This is crucial for network-intensive workloads that require high throughput.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_NETWORKBANDWIDTHGBPS() |
Getter for NETWORKBANDWIDTHGBPS |
allowedInstanceTypes¶
The instance types to include in the selection. When specified, Amazon ECS only considers these instance types, subject to the other requirements specified.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_ALLOWEDINSTANCETYPES() |
Getter for ALLOWEDINSTANCETYPES, with configurable default |
ASK_ALLOWEDINSTANCETYPES() |
Getter for ALLOWEDINSTANCETYPES w/ exceptions if field has n |
HAS_ALLOWEDINSTANCETYPES() |
Determine if ALLOWEDINSTANCETYPES has a value |
maxSpotPriceAsPercentageOfOptimalOnDemandPrice¶
The maximum price for Spot instances as a percentage of the optimal On-Demand price. This provides more precise cost control for Spot instance selection.
Accessible with the following methods¶
| Method | Description |
|---|---|
GET_MAXSPOTPRICEASPERCAGEO00() |
Getter for MAXSPOTPRICEASPERCAGEOFOPT00, with configurable d |
ASK_MAXSPOTPRICEASPERCAGEO00() |
Getter for MAXSPOTPRICEASPERCAGEOFOPT00 w/ exceptions if fie |
HAS_MAXSPOTPRICEASPERCAGEO00() |
Determine if MAXSPOTPRICEASPERCAGEOFOPT00 has a value |