使用 Presto 自动扩展和优雅的退役 - Amazon EMR
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

使用 Presto 自动扩展和优雅的退役

Amazon EMR 版本 5.30.0 及更高版本包含一项功能,可用于为某些扩展操作设置宽限期。宽限期允许 Presto 任务在节点因大小调整操作或自动扩展策略请求而终止之前继续运行。有关扩展规则的更多信息,请参阅了解自动扩展规则中的Amazon EMR 管理指南。使用正常停用的 Presto 自动缩减可防止在正在停用的节点上计划新任务,同时允许在达到关机超时之前完成已在运行的任务。正在运行的查询将在节点停用之前完成执行。实例队列不支持自动扩展。

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

例如,增加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。PrestoSQL 根本不支持优雅停用,无论http-server.http.enabled设置。