使用 Presto Auto Scaling with Graceful Decommission - Amazon EMR
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 Presto Auto Scaling with Graceful Decommission

Amazon EMR 发行版 5.30.0 及更高版本包括一个功能,您可以使用该功能为某些扩展操作设置宽限期。宽限期允许 Presto 任务在节点因缩减大小操作或自动扩展策略请求而终止之前保持运行。有关扩展规则的更多信息,请参阅 中的https://docs.amazonaws.cn/emr/latest/ManagementGuide/emr-automatic-scaling.html#emr-scaling-rules了解自动扩展规则Amazon EMR 管理指南。Presto 正常 Auto Scaling 可防止在正在停用的节点上计划新任务,同时允许在达到关闭超时之前完成已在运行的任务。正在运行的查询将在节点停用之前完成执行。实例队列不支持自动扩展。

您可以控制在收到自动扩展关闭请求后允许 Presto 任务完成的时间。默认情况下, 的关闭超时Amazon EMR为 0 分钟,这意味着 将Amazon EMR立即终止节点及其上运行的任何 Presto 任务(如果缩减请求需要)。要为 上的 Presto 任务设置更长的超时Amazon EMR以允许在缩减集群之前完成正在运行的查询,请使用 presto-config 配置分类将 graceful-shutdown-timeout 参数设置为大于零的值(以秒或分钟为单位)。有关更多信息,请参阅配置应用程序

例如,将 graceful-shutdown-timeout 值增加到 "30m" 可指定 30 分钟的超时期限。关闭超时期结束后,如果标记为停用的节点等待查询任务完成,则该节点将被强制终止,并且查询将失败。如果查询任务在 5 分钟内完成,则标记为停用的节点将在 5 分钟后终止,前提是其他 YARN 应用程序已完成执行。

例 带正常停用的 Presto 自动扩展配置示例

graceful-shutdown-timeout 值替换为适合您的设置的分钟数。没有最大值。下面的示例将超时值设置为 1800 秒(30 分钟)。

[ { "classification": "presto-config", "properties": { "graceful-shutdown-timeout": "1800s" } } ]

限制

PrestoDB 正常停用在禁用了 HTTP 连接的 EMR 集群上不起作用,例如http-server.http.enabled当 设置为 时false。无论 http-server.http.enabled 设置如何PrestoSQL 都完全不支持正常停用。