Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅
中国的 Amazon Web Services 服务入门
(PDF)。
在 Amazon EMR 中为集群启动预调配超时
您可以为集群中的每个实例集定义预调配竞价型实例的超时期限。如果 Amazon EMR 无法预调配 Spot 容量,您可以改为选择终止集群或预调配按需容量。如果超时期限在集群大小调整过程中结束,则 Amazon EMR 将取消未预调配的 Spot 请求。未预调配的竞价型实例不会转移到按需容量。
您无法在旧控制台中自定义预调配超时期限。请参阅 控制台中的新增功能,以了解有关新旧控制台体验差异的信息。
执行以下步骤,自定义使用 Amazon EMR 控制台启动集群的预调配超时期限。
- New console
-
在通过新控制台创建集群时配置预调配超时
-
登录 Amazon Web Services Management Console 并打开 Amazon EMR 控制台,网址为 https://console.aws.amazon.com/emr。
-
在左侧导航窗格中的 EMR on EC2 下,选择 Clusters(集群),然后选择 Create cluster(创建集群)。
-
在创建集群页面上,导航到集群配置并选择实例集。
-
在集群扩展和预调配选项下,为您的核心和任务实例集指定 Spot 大小。
-
在 Spot 超时配置下,选择在 Spot 超时后终止集群或在 Spot 超时后切换到按需。然后,指定预调配竞价型实例的超时期限。默认值为 1 小时。
-
选择适用于集群的任何其他选项。
-
要启动具有已配置超时的集群,选择创建集群。
- Amazon CLI
-
要使用 create-cluster
命令指定预调配超时
aws emr create-cluster \
--release-label emr-5.35.0 \
--service-role EMR_DefaultRole \
--ec2-attributes '{"InstanceProfile":"EMR_EC2_DefaultRole","SubnetIds":["subnet-XXXXX"]}' \
--instance-fleets '[{"InstanceFleetType":"MASTER","TargetOnDemandCapacity":1,"TargetSpotCapacity":0,"LaunchSpecifications":{"OnDemandSpecification":{"AllocationStrategy":"lowest-price"}},"InstanceTypeConfigs":[{"WeightedCapacity":1,"EbsConfiguration":{"EbsBlockDeviceConfigs":[{"VolumeSpecification":{"SizeInGB":32,"VolumeType":"gp2"},"VolumesPerInstance":2}]},"BidPriceAsPercentageOfOnDemandPrice":100,"InstanceType":"m5.xlarge"}],"Name":"Master - 1"},{"InstanceFleetType":"CORE","TargetOnDemandCapacity":1,"TargetSpotCapacity":1,"LaunchSpecifications":{"SpotSpecification":{"TimeoutDurationMinutes":120,"TimeoutAction":"SWITCH_TO_ON_DEMAND"},"OnDemandSpecification":{"AllocationStrategy":"lowest-price"}},"InstanceTypeConfigs":[{"WeightedCapacity":1,"EbsConfiguration":{"EbsBlockDeviceConfigs":[{"VolumeSpecification":{"SizeInGB":32,"VolumeType":"gp2"},"VolumesPerInstance":2}]},"BidPriceAsPercentageOfOnDemandPrice":1,"InstanceType":"m5.xlarge"}],"Name":"Core - 2"}]'