限制错误 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

限制错误

当 Amazon EMR 因另一项服务限制活动而无法完成请求时,会出现“Throttled from Amazon EC2 while launching cluster”和“Failed to provision instances due to throttling from Amazon EC2”两项错误。Amazon EC2 是限制错误的最常见来源,但其他服务可能是限制错误的原因。Amazon服务限制适用于每个区域以提高性能,节流错误表明您已超出该区域中账户的服务限制。

可能的原因

Amazon EC2 节流错误的最常见来源是启动了大量的集群实例,因此超出了 EC2 实例的服务限制。集群实例可能会因以下原因启动:

向 Amazon EC2 发出的 API 请求的频率或类型也可能导致节流错误。有关 Amazon EC2 如何限制 API 请求的更多信息,请参阅《Amazon EC2 API 参考》中的查询 API 请求率

Solutions

考虑以下解决方案:

  • 按照《Amazon Web Services 一般参考》中的Amazon Service Quotas 中的说明请求提高服务限制。对于某些 API,设置 CloudWatch 事件可能比增加限制更好。有关更多信息,请参阅何时在 CloudWatch 中设置 EMR 事件

  • 如果您的集群以相同的时间表启动(例如,在整点开始时),请考虑错开启动时间。

  • 如果您有针对峰值需求而定义大小的集群,并且您定期拥有实例容量,请考虑指定自动扩展以按需添加和删除实例。通过这种方式,可以更高效地使用实例,并且根据需求配置文件,可以跨账户在给定时间请求更少的实例。有关更多信息,请参阅将自动伸缩与实例组的自定义策略结合使用