Amazon EMR 中的实例存储选项和行为 - Amazon EMR

Amazon EMR 中的实例存储选项和行为

概述

实例存储和 Amazon EBS 卷存储用于 HDFS 数据,以及缓冲区、缓存、Scratch 数据和一些应用程序可能“溢出”到本地文件系统中的其他临时内容。

Amazon EBS 在 Amazon EMR 中的工作方式与常规 Amazon EC2 实例的工作方式不同。附加到 Amazon EMR 集群的 Amazon EBS 卷是临时的:这些卷在集群和实例终止时(例如,在缩减实例组时)将被删除,因此您不应指望数据能持久保留。虽然数据是临时存在的,但有可能可以复制 HDFS 中的数据,具体取决于集群中的节点数目和规范。在添加 Amazon EBS 存储卷时,这些卷将作为附加卷进行安装。它们不是引导卷的一部分。YARN 已配置为使用所有附加卷,但您负责将附加卷作为本地存储(例如,针对本地日志文件)分配。

注意事项

在将 Amazon EBS 与 EMR 集群结合使用时,请记住以下其他注意事项:

  • 您无法拍摄 Amazon EBS 卷快照,然后在 Amazon EMR 中将其还原。要创建可重复使用的自定义配置,请使用自定义 AMI(在 Amazon EMR 版本 5.7.0 和更高版本中提供)。有关更多信息,请参阅使用自定义 AMI 为 Amazon EMR 集群配置提供更大的灵活性

  • 只有在使用自定义 AMI 时,才支持加密的 Amazon EBS 根设备卷。有关更多信息,请参阅创建带加密 Amazon EBS 根设备卷的自定义 AMI

  • 如果使用 Amazon EMR API 应用标签,则这些操作将适用于 EBS 卷。

  • 每个实例最多有 25 个卷。

  • 核心节点上的 Amazon EBS 卷不得小于 5GB。

  • Amazon EBS 的固定限制为每个实例启动请求 2500 个 EBS 卷。此限制也适用于 Amazon EMR on EC2 集群。我们建议您启动 EBS 卷总数在此限制范围内的集群,然后根据需要手动纵向扩展集群或使用 Amazon EMR 托管式自动扩缩功能。要了解有关 EBS 卷限制的更多信息,请参阅服务配额

实例的默认 Amazon EBS 存储

对于仅具有 EBS 存储的 EC2 实例,Amazon EMR 会将 Amazon EBS gp2 或 gp3 存储卷分配给实例。在使用 Amazon EMR 5.22.0 和更高版本创建集群时,默认的 Amazon EBS 存储量相对于实例大小而增加。

我们会将任何增加的存储拆分到多个卷中。这样将提高 IOPS 性能,相应地又会提高某些标准化工作负载的性能。如果要使用其他 Amazon EBS 实例存储配置,您可以在创建 EMR 集群或将节点添加到现有集群时指定该配置。您可以将 Amazon EBS gp2 或 gp3 卷用作根卷,并将 gp2 或 gp3 卷添加为附加卷。有关更多信息,请参阅 指定额外的 EBS 存储卷

下表列出了每种实例类型的默认 Amazon EBS gp2 存储卷数量、大小以及总大小。有关 gp2 卷与 gp3 相比较的信息,请参阅 比较 Amazon EBS 卷类型 gp2 和 gp3

Amazon EMR 5.22.0 和更高版本的默认 Amazon EBS gp2 存储卷和大小(按实例类型划分)
实例大小 卷数 卷大小(GiB) 总大小(GiB)

*.large

1

32

32

*.xlarge

2

32

64

*.2xlarge

4

32

128

*.4xlarge

4

64

256

*.8xlarge

4

128

512

*.9xlarge

4

144

576

*.10xlarge

4

160

640

*.12xlarge

4

192

768

*.16xlarge

4

256

1024

*.18xlarge

4

288

1152

*.24xlarge

4

384

1536

实例的默认 Amazon EBS 根卷

使用 Amazon EMR 6.15 及更高版本时,Amazon EMR 自动将 Amazon EBS 通用型 SSD(gp3)附加为其 AMI 的根设备以提高性能。使用较早的版本时,Amazon EMR 将 EBS 通用型 SSD(gp2)附加作为根设备。

6.15 及更高版本 6.14 及更低版本
默认的根卷类型
  • gp3

  • gp2

默认大小
  • 15GiB

  • (可配置)

  • 6.10 及更高版本 = 15GiB

  • 6.9 及更低版本 = 10GiB

  • (可配置)

默认 IOPS
  • 3000

  • (可配置)

默认吞吐量
  • 125 MiB/s

  • (可配置)

有关如何自定义 Amazon EBS 根设备卷的信息,请参阅 指定额外的 EBS 存储卷

指定额外的 EBS 存储卷

在 Amazon EMR 中配置实例类型时,可以指定其它 EBS 卷来添加实例存储(如果存在)和默认 EBS 卷之外添加容量。Amazon EBS 提供以下卷类型:通用型(SSD)、预置 IOPS(SSD)、吞吐优化(SSD)、冷数据(SSD)和磁性介质。它们的性能特点和价格不同,您可根据应用程序的分析和业务需求定制您的存储。例如,一些应用程序可能需要溢出到磁盘,而其它应用程序可在内存中或使用 Amazon S3 安全工作。

您只能在集群启动时以及添加额外的任务节点实例组时将 Amazon EBS 卷附加到实例。如果 Amazon EMR 集群中的某个实例失败,则该实例及其附加的 Amazon EBS 卷将被替换为新卷。因此,如果您手动分离 Amazon EBS 卷,Amazon EMR 会将此操作视为失败并替换实例存储(如果适用)和卷存储。

Amazon EMR 不允许您将现有 EMR 集群的卷类型从 gp2 修改为 gp3。要将 gp3 用于工作负载,请启动一个新的 EMR 集群。此外,我们不建议更新正在使用或正在预调配的集群的吞吐量和 IOPS,因为 Amazon EMR 将您在集群启动时指定的吞吐量和 IOPS 值用于在集群纵向扩展期间添加的任何新实例。有关更多信息,请参阅比较 Amazon EBS 卷类型 gp2 和 gp3迁移到 gp3 Amazon EBS 卷类型时选择 IOPS 和吞吐量

重要

要将 gp3 卷用于您的 EMR 集群,您必须启动新集群。