Describes the details of the instance types that are offered in a location. The results can be filtered by the attributes of the instance types.
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
describe-instance-types
is a paginated operation. Multiple API calls may be issued in order to retrieve the entire data set of results. You can disable pagination by providing the --no-paginate
argument.
When using --output text
and the --query
argument on a paginated response, the --query
argument must extract data from the results of the following query expressions: InstanceTypes
describe-instance-types
[--dry-run | --no-dry-run]
[--instance-types <value>]
[--filters <value>]
[--cli-input-json | --cli-input-yaml]
[--starting-token <value>]
[--page-size <value>]
[--max-items <value>]
[--generate-cli-skeleton <value>]
[--cli-auto-prompt <value>]
--dry-run
| --no-dry-run
(boolean)
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is
DryRunOperation
. Otherwise, it isUnauthorizedOperation
.
--instance-types
(list)
The instance types. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide .
(string)
Syntax:
"string" "string" ...
Where valid values are:
t1.micro
t2.nano
t2.micro
t2.small
t2.medium
t2.large
t2.xlarge
t2.2xlarge
t3.nano
t3.micro
t3.small
t3.medium
t3.large
t3.xlarge
t3.2xlarge
t3a.nano
t3a.micro
t3a.small
t3a.medium
t3a.large
t3a.xlarge
t3a.2xlarge
m1.small
m1.medium
m1.large
m1.xlarge
m3.medium
m3.large
m3.xlarge
m3.2xlarge
m4.large
m4.xlarge
m4.2xlarge
m4.4xlarge
m4.10xlarge
m4.16xlarge
m2.xlarge
m2.2xlarge
m2.4xlarge
cr1.8xlarge
r3.large
r3.xlarge
r3.2xlarge
r3.4xlarge
r3.8xlarge
r4.large
r4.xlarge
r4.2xlarge
r4.4xlarge
r4.8xlarge
r4.16xlarge
r5.large
r5.xlarge
r5.2xlarge
r5.4xlarge
r5.8xlarge
r5.12xlarge
r5.16xlarge
r5.24xlarge
r5.metal
r5a.large
r5a.xlarge
r5a.2xlarge
r5a.4xlarge
r5a.8xlarge
r5a.12xlarge
r5a.16xlarge
r5a.24xlarge
r5d.large
r5d.xlarge
r5d.2xlarge
r5d.4xlarge
r5d.8xlarge
r5d.12xlarge
r5d.16xlarge
r5d.24xlarge
r5d.metal
r5ad.large
r5ad.xlarge
r5ad.2xlarge
r5ad.4xlarge
r5ad.8xlarge
r5ad.12xlarge
r5ad.16xlarge
r5ad.24xlarge
r6g.metal
r6g.medium
r6g.large
r6g.xlarge
r6g.2xlarge
r6g.4xlarge
r6g.8xlarge
r6g.12xlarge
r6g.16xlarge
x1.16xlarge
x1.32xlarge
x1e.xlarge
x1e.2xlarge
x1e.4xlarge
x1e.8xlarge
x1e.16xlarge
x1e.32xlarge
i2.xlarge
i2.2xlarge
i2.4xlarge
i2.8xlarge
i3.large
i3.xlarge
i3.2xlarge
i3.4xlarge
i3.8xlarge
i3.16xlarge
i3.metal
i3en.large
i3en.xlarge
i3en.2xlarge
i3en.3xlarge
i3en.6xlarge
i3en.12xlarge
i3en.24xlarge
i3en.metal
hi1.4xlarge
hs1.8xlarge
c1.medium
c1.xlarge
c3.large
c3.xlarge
c3.2xlarge
c3.4xlarge
c3.8xlarge
c4.large
c4.xlarge
c4.2xlarge
c4.4xlarge
c4.8xlarge
c5.large
c5.xlarge
c5.2xlarge
c5.4xlarge
c5.9xlarge
c5.12xlarge
c5.18xlarge
c5.24xlarge
c5.metal
c5a.large
c5a.xlarge
c5a.2xlarge
c5a.4xlarge
c5a.8xlarge
c5a.12xlarge
c5a.16xlarge
c5a.24xlarge
c5d.large
c5d.xlarge
c5d.2xlarge
c5d.4xlarge
c5d.9xlarge
c5d.12xlarge
c5d.18xlarge
c5d.24xlarge
c5d.metal
c5n.large
c5n.xlarge
c5n.2xlarge
c5n.4xlarge
c5n.9xlarge
c5n.18xlarge
c6g.metal
c6g.medium
c6g.large
c6g.xlarge
c6g.2xlarge
c6g.4xlarge
c6g.8xlarge
c6g.12xlarge
c6g.16xlarge
cc1.4xlarge
cc2.8xlarge
g2.2xlarge
g2.8xlarge
g3.4xlarge
g3.8xlarge
g3.16xlarge
g3s.xlarge
g4dn.xlarge
g4dn.2xlarge
g4dn.4xlarge
g4dn.8xlarge
g4dn.12xlarge
g4dn.16xlarge
g4dn.metal
cg1.4xlarge
p2.xlarge
p2.8xlarge
p2.16xlarge
p3.2xlarge
p3.8xlarge
p3.16xlarge
p3dn.24xlarge
d2.xlarge
d2.2xlarge
d2.4xlarge
d2.8xlarge
f1.2xlarge
f1.4xlarge
f1.16xlarge
m5.large
m5.xlarge
m5.2xlarge
m5.4xlarge
m5.8xlarge
m5.12xlarge
m5.16xlarge
m5.24xlarge
m5.metal
m5a.large
m5a.xlarge
m5a.2xlarge
m5a.4xlarge
m5a.8xlarge
m5a.12xlarge
m5a.16xlarge
m5a.24xlarge
m5d.large
m5d.xlarge
m5d.2xlarge
m5d.4xlarge
m5d.8xlarge
m5d.12xlarge
m5d.16xlarge
m5d.24xlarge
m5d.metal
m5ad.large
m5ad.xlarge
m5ad.2xlarge
m5ad.4xlarge
m5ad.8xlarge
m5ad.12xlarge
m5ad.16xlarge
m5ad.24xlarge
h1.2xlarge
h1.4xlarge
h1.8xlarge
h1.16xlarge
z1d.large
z1d.xlarge
z1d.2xlarge
z1d.3xlarge
z1d.6xlarge
z1d.12xlarge
z1d.metal
u-6tb1.metal
u-9tb1.metal
u-12tb1.metal
u-18tb1.metal
u-24tb1.metal
a1.medium
a1.large
a1.xlarge
a1.2xlarge
a1.4xlarge
a1.metal
m5dn.large
m5dn.xlarge
m5dn.2xlarge
m5dn.4xlarge
m5dn.8xlarge
m5dn.12xlarge
m5dn.16xlarge
m5dn.24xlarge
m5n.large
m5n.xlarge
m5n.2xlarge
m5n.4xlarge
m5n.8xlarge
m5n.12xlarge
m5n.16xlarge
m5n.24xlarge
r5dn.large
r5dn.xlarge
r5dn.2xlarge
r5dn.4xlarge
r5dn.8xlarge
r5dn.12xlarge
r5dn.16xlarge
r5dn.24xlarge
r5n.large
r5n.xlarge
r5n.2xlarge
r5n.4xlarge
r5n.8xlarge
r5n.12xlarge
r5n.16xlarge
r5n.24xlarge
inf1.xlarge
inf1.2xlarge
inf1.6xlarge
inf1.24xlarge
m6g.metal
m6g.medium
m6g.large
m6g.xlarge
m6g.2xlarge
m6g.4xlarge
m6g.8xlarge
m6g.12xlarge
m6g.16xlarge
--filters
(list)
One or more filters. Filter names and values are case-sensitive.
auto-recovery-supported
- Indicates whether auto recovery is supported. (true
|false
)
bare-metal
- Indicates whether it is a bare metal instance type. (true
|false
)
burstable-performance-supported
- Indicates whether it is a burstable performance instance type. (true
|false
)
current-generation
- Indicates whether this instance type is the latest generation instance type of an instance family. (true
|false
)
ebs-info.ebs-optimized-info.baseline-bandwidth-in-mbps
- The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.
ebs-info.ebs-optimized-info.baseline-throughput-in-mbps
- The baseline throughput performance for an EBS-optimized instance type, in MBps.
ebs-info.ebs-optimized-info.baseline-iops
- The baseline input/output storage operations per second for an EBS-optimized instance type.
ebs-info.ebs-optimized-info.maximum-bandwidth-in-mbps
- The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.
ebs-info.ebs-optimized-info.maximum-throughput-in-mbps
- The maximum throughput performance for an EBS-optimized instance type, in MBps.
ebs-info.ebs-optimized-info.maximum-iops
- The maximum input/output storage operations per second for an EBS-optimized instance type.
ebs-info.ebs-optimized-support
- Indicates whether the instance type is EBS-optimized. (supported
|unsupported
|default
)
ebs-info.encryption-support
- Indicates whether EBS encryption is supported. (supported
|unsupported
)
ebs-info.nvme-support
- Indicates whether non-volatile memory express (NVMe) is supported or required. (required
|supported
|unsupported
)
free-tier-eligible
- Indicates whether the instance type is eligible to use in the free tier. (true
|false
)
hibernation-supported
- Indicates whether On-Demand hibernation is supported. (true
|false
)
hypervisor
- The hypervisor used. (nitro
|xen
)
instance-storage-info.disk.count
- The number of local disks.
instance-storage-info.disk.size-in-gb
- The storage size of each instance storage disk, in GB.
instance-storage-info.disk.type
- The storage technology for the local instance storage disks. (hdd
|ssd
)
instance-storage-info.total-size-in-gb
- The total amount of storage available from all local instance storage, in GB.
instance-storage-supported
- Indicates whether the instance type has local instance storage. (true
|false
)
memory-info.size-in-mib
- The memory size.
network-info.ena-support
- Indicates whether Elastic Network Adapter (ENA) is supported or required. (required
|supported
|unsupported
)
network-info.efa-supported
- Indicates whether the instance type supports Elastic Fabric Adapter (EFA). (true
|false
)
network-info.ipv4-addresses-per-interface
- The maximum number of private IPv4 addresses per network interface.
network-info.ipv6-addresses-per-interface
- The maximum number of private IPv6 addresses per network interface.
network-info.ipv6-supported
- Indicates whether the instance type supports IPv6. (true
|false
)
network-info.maximum-network-interfaces
- The maximum number of network interfaces per instance.
network-info.network-performance
- Describes the network performance.
processor-info.sustained-clock-speed-in-ghz
- The CPU clock speed, in GHz.
vcpu-info.default-cores
- The default number of cores for the instance type.
vcpu-info.default-threads-per-core
- The default number of threads per core for the instance type.
vcpu-info.default-vcpus
- The default number of vCPUs for the instance type.(structure)
A filter name and value pair that is used to return a more specific list of results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs. The filters supported by a describe operation are documented with the describe operation. For example:
DescribeAvailabilityZones
DescribeImages
DescribeInstances
DescribeKeyPairs
DescribeSecurityGroups
DescribeSnapshots
DescribeSubnets
DescribeTags
DescribeVolumes
DescribeVpcs
Name -> (string)
The name of the filter. Filter names are case-sensitive.
Values -> (list)
The filter values. Filter values are case-sensitive.
(string)
Shorthand Syntax:
Name=string,Values=string,string ...
JSON Syntax:
[
{
"Name": "string",
"Values": ["string", ...]
}
...
]
--cli-input-json
| --cli-input-yaml
(string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton
. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml
.
--starting-token
(string)
A token to specify where to start paginating. This is the
NextToken
from a previously truncated response.For usage examples, see Pagination in the AWS Command Line Interface User Guide .
--page-size
(integer)
The size of each page to get in the AWS service call. This does not affect the number of items returned in the command’s output. Setting a smaller page size results in more calls to the AWS service, retrieving fewer items in each call. This can help prevent the AWS service calls from timing out.
For usage examples, see Pagination in the AWS Command Line Interface User Guide .
--max-items
(integer)
The total number of items to return in the command’s output. If the total number of items available is more than the value specified, a
NextToken
is provided in the command’s output. To resume pagination, provide theNextToken
value in thestarting-token
argument of a subsequent command. Do not use theNextToken
response element directly outside of the AWS CLI.For usage examples, see Pagination in the AWS Command Line Interface User Guide .
--generate-cli-skeleton
(string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input
, prints a sample input JSON that can be used as an argument for --cli-input-json
. Similarly, if provided yaml-input
it will print a sample input YAML that can be used with --cli-input-yaml
. If provided with the value output
, it validates the command inputs and returns a sample output JSON for that command.
--cli-auto-prompt
(boolean)
Automatically prompt for CLI input parameters.
See ‘aws help’ for descriptions of global parameters.
Example 1: To describe an instance type
The following describe-instance-types
example displays details for the specified instance type.
aws ec2 describe-instance-types \
--instance-types t2.micro
Output:
{
"InstanceTypes": [
{
"InstanceType": "t2.micro",
"CurrentGeneration": true,
"FreeTierEligible": true,
"SupportedUsageClasses": [
"on-demand",
"spot"
],
"SupportedRootDeviceTypes": [
"ebs"
],
"BareMetal": false,
"Hypervisor": "xen",
"ProcessorInfo": {
"SupportedArchitectures": [
"i386",
"x86_64"
],
"SustainedClockSpeedInGhz": 2.5
},
"VCpuInfo": {
"DefaultVCpus": 1,
"DefaultCores": 1,
"DefaultThreadsPerCore": 1,
"ValidCores": [
1
],
"ValidThreadsPerCore": [
1
]
},
"MemoryInfo": {
"SizeInMiB": 1024
},
"InstanceStorageSupported": false,
"EbsInfo": {
"EbsOptimizedSupport": "unsupported",
"EncryptionSupport": "supported"
},
"NetworkInfo": {
"NetworkPerformance": "Low to Moderate",
"MaximumNetworkInterfaces": 2,
"Ipv4AddressesPerInterface": 2,
"Ipv6AddressesPerInterface": 2,
"Ipv6Supported": true,
"EnaSupport": "unsupported"
},
"PlacementGroupInfo": {
"SupportedStrategies": [
"partition",
"spread"
]
},
"HibernationSupported": false,
"BurstablePerformanceSupported": true,
"DedicatedHostsSupported": false,
"AutoRecoverySupported": true
}
]
}
Example 2: To filter the available instance types
You can specify a filter to scope the results to instance types that have a specific characteristic. The following describe-instance-types
example lists the instance types that support hibernation.
aws ec2 describe-instance-types --filters Name=hibernation-supported,Values=true --query InstanceTypes[].InstanceType
Output:
[
"m5.8xlarge",
"r3.large",
"c3.8xlarge",
"r5.large",
"m4.4xlarge",
"c4.large",
"m5.xlarge",
"m4.xlarge",
"c3.large",
"c4.8xlarge",
"c4.4xlarge",
"c5.xlarge",
"c5.12xlarge",
"r5.4xlarge",
"c5.4xlarge"
]
InstanceTypes -> (list)
The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide .
(structure)
Describes the instance type.
InstanceType -> (string)
The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide .
CurrentGeneration -> (boolean)
Indicates whether the instance type is a current generation.
FreeTierEligible -> (boolean)
Indicates whether the instance type is eligible for the free tier.
SupportedUsageClasses -> (list)
Indicates whether the instance type is offered for spot or On-Demand.
(string)
SupportedRootDeviceTypes -> (list)
Indicates the supported root device types.
(string)
SupportedVirtualizationTypes -> (list)
The supported virtualization types.
(string)
BareMetal -> (boolean)
Indicates whether the instance is bare metal.
Hypervisor -> (string)
Indicates the hypervisor used for the instance type.
ProcessorInfo -> (structure)
Describes the processor.
SupportedArchitectures -> (list)
A list of architectures supported by the instance type.
(string)
SustainedClockSpeedInGhz -> (double)
The speed of the processor, in GHz.
VCpuInfo -> (structure)
Describes the vCPU configurations for the instance type.
DefaultVCpus -> (integer)
The default number of vCPUs for the instance type.
DefaultCores -> (integer)
The default number of cores for the instance type.
DefaultThreadsPerCore -> (integer)
The default number of threads per core for the instance type.
ValidCores -> (list)
List of the valid number of cores that can be configured for the instance type.
(integer)
ValidThreadsPerCore -> (list)
List of the valid number of threads per core that can be configured for the instance type.
(integer)
MemoryInfo -> (structure)
Describes the memory for the instance type.
SizeInMiB -> (long)
Size of the memory, in MiB.
InstanceStorageSupported -> (boolean)
Indicates whether instance storage is supported.
InstanceStorageInfo -> (structure)
Describes the disks for the instance type.
TotalSizeInGB -> (long)
The total size of the disks, in GB.
Disks -> (list)
Array describing the disks that are available for the instance type.
(structure)
Describes the disk.
SizeInGB -> (long)
The size of the disk in GB.
Count -> (integer)
The number of disks with this configuration.
Type -> (string)
The type of disk.
EbsInfo -> (structure)
Describes the Amazon EBS settings for the instance type.
EbsOptimizedSupport -> (string)
Indicates that the instance type is Amazon EBS-optimized. For more information, see Amazon EBS-Optimized Instances in Amazon EC2 User Guide for Linux Instances .
EncryptionSupport -> (string)
Indicates whether Amazon EBS encryption is supported.
EbsOptimizedInfo -> (structure)
Describes the optimized EBS performance for the instance type.
BaselineBandwidthInMbps -> (integer)
The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.
BaselineThroughputInMBps -> (double)
The baseline throughput performance for an EBS-optimized instance type, in MBps.
BaselineIops -> (integer)
The baseline input/output storage operations per seconds for an EBS-optimized instance type.
MaximumBandwidthInMbps -> (integer)
The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.
MaximumThroughputInMBps -> (double)
The maximum throughput performance for an EBS-optimized instance type, in MBps.
MaximumIops -> (integer)
The maximum input/output storage operations per second for an EBS-optimized instance type.
NvmeSupport -> (string)
Indicates whether non-volatile memory express (NVMe) is supported.
NetworkInfo -> (structure)
Describes the network settings for the instance type.
NetworkPerformance -> (string)
Describes the network performance.
MaximumNetworkInterfaces -> (integer)
The maximum number of network interfaces for the instance type.
Ipv4AddressesPerInterface -> (integer)
The maximum number of IPv4 addresses per network interface.
Ipv6AddressesPerInterface -> (integer)
The maximum number of IPv6 addresses per network interface.
Ipv6Supported -> (boolean)
Indicates whether IPv6 is supported.
EnaSupport -> (string)
Indicates whether Elastic Network Adapter (ENA) is supported.
EfaSupported -> (boolean)
Indicates whether Elastic Fabric Adapter (EFA) is supported.
GpuInfo -> (structure)
Describes the GPU accelerator settings for the instance type.
Gpus -> (list)
Describes the GPU accelerators for the instance type.
(structure)
Describes the GPU accelerators for the instance type.
Name -> (string)
The name of the GPU accelerator.
Manufacturer -> (string)
The manufacturer of the GPU accelerator.
Count -> (integer)
The number of GPUs for the instance type.
MemoryInfo -> (structure)
Describes the memory available to the GPU accelerator.
SizeInMiB -> (integer)
The size (in MiB) for the memory available to the GPU accelerator.
TotalGpuMemoryInMiB -> (integer)
The total size of the memory for the GPU accelerators for the instance type.
FpgaInfo -> (structure)
Describes the FPGA accelerator settings for the instance type.
Fpgas -> (list)
Describes the FPGAs for the instance type.
(structure)
Describes the FPGA accelerator for the instance type.
Name -> (string)
The name of the FPGA accelerator.
Manufacturer -> (string)
The manufacturer of the FPGA accelerator.
Count -> (integer)
The count of FPGA accelerators for the instance type.
MemoryInfo -> (structure)
Describes the memory for the FPGA accelerator for the instance type.
SizeInMiB -> (integer)
The size (in MiB) for the memory available to the FPGA accelerator.
TotalFpgaMemoryInMiB -> (integer)
The total memory of all FPGA accelerators for the instance type.
PlacementGroupInfo -> (structure)
Describes the placement group settings for the instance type.
SupportedStrategies -> (list)
A list of supported placement groups types.
(string)
InferenceAcceleratorInfo -> (structure)
Describes the Inference accelerator settings for the instance type.
Accelerators -> (list)
Describes the Inference accelerators for the instance type.
(structure)
Describes the Inference accelerators for the instance type.
Count -> (integer)
The number of Inference accelerators for the instance type.
Name -> (string)
The name of the Inference accelerator.
Manufacturer -> (string)
The manufacturer of the Inference accelerator.
HibernationSupported -> (boolean)
Indicates whether On-Demand hibernation is supported.
BurstablePerformanceSupported -> (boolean)
Indicates whether the instance type is a burstable performance instance type.
DedicatedHostsSupported -> (boolean)
Indicates whether Dedicated Hosts are supported on the instance type.
AutoRecoverySupported -> (boolean)
Indicates whether auto recovery is supported.
NextToken -> (string)
The token to use to retrieve the next page of results. This value is
null
when there are no more results to return.