Amazon EMR
管理指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

实例类型不受支持

如果您创建了一个集群,并且它失败并显示错误消息“请求的可用区中不支持所请求的实例类型 InstanceType ”,则表示您创建了集群并在创建集群的区域和可用区域中为一个或多个实例组指定了不被 Amazon EMR 支持的实例类型。Amazon EMR 可能在区域内的一个可用区域中支持实例类型,而在另一个可用区中则不支持。为集群选择的子网决定区域内的可用区。

解决方案

使用 Amazon EMR 控制台创建集群时,实例的列表会自动限制为可用的实例类型,因此当您使用 AWS CLI 或 Amazon EMR API 以编程方式创建集群时,通常会发生此错误。

区域和可用区支持的 Amazon EMR 实例类型的整合列表尚不可用,因此任何解决方案的第一步都是确定所需的实例类型是否在所需的可用区中可用。

使用 Amazon EMR 管理控制台确定可用区中的可用实例类型

  1. 通过以下网址打开 Amazon EMR 控制台:https://console.amazonaws.cn/elasticmapreduce/

  2. Choose Create cluster, Go to advanced options.

  3. 选择 Next (下一步) 以查看 Hardware Configuration (硬件配置) 选项。

  4. 为集群选择 Network (网络)EC2 Subnet (EC2 子网)

  5. Instance type (实例类型) 下面,选择 Master (主实例)Core (核心实例)Task (任务) Node types (节点类型) 的默认实例类型旁边的铅笔图标。

  6. 将会显示与您选择的 EC2 Subnet (EC2 子网) 关联的区域和可用区中的可用实例类型的列表。

  7. 您可以继续创建集群,或者选择 Cancel (取消),选择不同的 Network (网络)EC2 Subnet (EC2 子网),并重复前面的步骤。

使用 AWS CLI 确定可用区中的可用实例类型

  • 使用带 --dry-run 选项的 ec2 run-instances 命令。在以下示例中,将 m5.xlarge 替换为您要使用的实例类型,将 ami-035be7bafff33b6b6 替换为与该实例类型关联的 AMI,将 subnet-12ab3c45 替换为可用区中要查询的子网。

    aws ec2 run-instances --instance-type m5.xlarge --dry-run --image-id ami-035be7bafff33b6b6 --subnet-id subnet-12ab3c45

确定可用的实例类型后,可以执行以下任一操作:

  • 在同一个区域和 EC2 子网中创建集群,并选择与初始选择具有相似功能的其他实例类型。有关受支持实例类型的列表,请参阅支持的实例类型。要比较 EC2 实例类型的功能,请参阅 Amazon EC2 实例类型

  • 在提供实例类型可用且受 Amazon EMR 支持的可用区中为集群选择子网。

本页内容: