Skip to content

Returns a list of instance types with the specified instance attributes

Description

Returns a list of instance types with the specified instance attributes. You can use the response to preview the instance types without launching instances. Note that the response does not consider capacity.

When you specify multiple parameters, you get instance types that satisfy all of the specified parameters. If you specify multiple values for a parameter, you get instance types that satisfy any of the specified values.

For more information, see Preview instance types with specified attributes, Specify attributes for instance type selection for EC2 Fleet or Spot Fleet, and Spot placement score in the Amazon EC2 User Guide, and Creating mixed instance groups using attribute-based instance type selection in the Amazon EC2 Auto Scaling User Guide.

Usage

ec2_get_instance_types_from_instance_requirements(DryRun,
  ArchitectureTypes, VirtualizationTypes, InstanceRequirements,
  MaxResults, NextToken, Context)

Arguments

  • DryRun

    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 is UnauthorizedOperation.

  • ArchitectureTypes

    [required] The processor architecture type.

  • VirtualizationTypes

    [required] The virtualization type.

  • InstanceRequirements

    [required] The attributes required for the instance types.

  • MaxResults

    The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

  • NextToken

    The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

  • Context

    Reserved.

Value

A list with the following syntax:

list(
  InstanceTypes = list(
    list(
      InstanceType = "string"
    )
  ),
  NextToken = "string"
)

Request syntax

svc$get_instance_types_from_instance_requirements(
  DryRun = TRUE|FALSE,
  ArchitectureTypes = list(
    "i386"|"x86_64"|"arm64"|"x86_64_mac"|"arm64_mac"
  ),
  VirtualizationTypes = list(
    "hvm"|"paravirtual"
  ),
  InstanceRequirements = list(
    VCpuCount = list(
      Min = 123,
      Max = 123
    ),
    MemoryMiB = list(
      Min = 123,
      Max = 123
    ),
    CpuManufacturers = list(
      "intel"|"amd"|"amazon-web-services"|"apple"
    ),
    MemoryGiBPerVCpu = list(
      Min = 123.0,
      Max = 123.0
    ),
    ExcludedInstanceTypes = list(
      "string"
    ),
    InstanceGenerations = list(
      "current"|"previous"
    ),
    SpotMaxPricePercentageOverLowestPrice = 123,
    OnDemandMaxPricePercentageOverLowestPrice = 123,
    BareMetal = "included"|"required"|"excluded",
    BurstablePerformance = "included"|"required"|"excluded",
    RequireHibernateSupport = TRUE|FALSE,
    NetworkInterfaceCount = list(
      Min = 123,
      Max = 123
    ),
    LocalStorage = "included"|"required"|"excluded",
    LocalStorageTypes = list(
      "hdd"|"ssd"
    ),
    TotalLocalStorageGB = list(
      Min = 123.0,
      Max = 123.0
    ),
    BaselineEbsBandwidthMbps = list(
      Min = 123,
      Max = 123
    ),
    AcceleratorTypes = list(
      "gpu"|"fpga"|"inference"|"media"
    ),
    AcceleratorCount = list(
      Min = 123,
      Max = 123
    ),
    AcceleratorManufacturers = list(
      "amazon-web-services"|"amd"|"nvidia"|"xilinx"|"habana"
    ),
    AcceleratorNames = list(
      "a100"|"inferentia"|"k520"|"k80"|"m60"|"radeon-pro-v520"|"t4"|"vu9p"|"v100"|"a10g"|"h100"|"t4g"|"l40s"|"l4"|"gaudi-hl-205"|"inferentia2"|"trainium"|"trainium2"|"u30"
    ),
    AcceleratorTotalMemoryMiB = list(
      Min = 123,
      Max = 123
    ),
    NetworkBandwidthGbps = list(
      Min = 123.0,
      Max = 123.0
    ),
    AllowedInstanceTypes = list(
      "string"
    ),
    MaxSpotPriceAsPercentageOfOptimalOnDemandPrice = 123,
    BaselinePerformanceFactors = list(
      Cpu = list(
        References = list(
          list(
            InstanceFamily = "string"
          )
        )
      )
    ),
    RequireEncryptionInTransit = TRUE|FALSE
  ),
  MaxResults = 123,
  NextToken = "string",
  Context = "string"
)