适用于 NetApp ONTAP 的 Amazon FSx 性能
以下是关于适用于 NetApp ONTAP 的 Amazon FSx 文件系统性能的概述,以及关于可用的性能、吞吐量选项以及有用的性能提示的讨论。
如何衡量 FSx for ONTAP 文件系统的性能
用于衡量文件系统性能的因素包括其延迟、吞吐量和每秒 I/O 操作数(IOPS)。
延迟
适用于 NetApp ONTAP 的 Amazon FSx 通过固态硬盘(SSD)存储来提供亚毫秒的文件操作延迟,以及数十毫秒的容量池存储延迟。此外,Amazon FSx 在每台文件服务器 [NVMe(非易失性存储规范)驱动器和内存] 上均配备两层读取缓存,以便在您访问最常读取的数据时提供更低的延迟。
吞吐量和 IOPS
每个 Amazon FSx 文件系统可提供多达数十 GBps 的吞吐量和数百万的 IOPS。您的工作负载可以在文件系统上驱动的具体吞吐量和 IOPS 数取决于文件系统的总吞吐能力和存储容量配置,以及工作负载的性质,包括活动工作集的大小。
SMB 多渠道和 NFS nconnect 支持
您可以使用 Amazon FSx 将 SMB 多渠道配置为在单个 SMB 会话中提供 ONTAP 和客户端之间的多个连接。SMB 多通道会在客户端和服务器之间同时使用多个网络连接,以此来聚合网络带宽,从而最大化利用率。有关使用 NetApp ONTAP CLI 配置 SMB 多渠道的信息,请参阅 Configuring SMB Multichannel for performance and redundancy
NFS 客户端可以使用 nconnect 挂载选项将多个 TCP 连接(最多 16 个)关联到单个 NFS 挂载。此类 NFS 客户端以轮询方式将文件操作多路复用到多个 TCP 连接上,从而从可用的网络带宽中获得更高的吞吐量。NFSv3 和 NFSv4.1+ 支持 nconnect。Amazon EC2 实例网络带宽中说明了全双工 5 Gbps 的每个网络流带宽限制。您可以通过将多个网络流与 nconnect 或 SMB 多渠道一起使用来克服此限制。请参阅 NFS 客户端文档,确认您的客户端版本是否支持 nconnect。有关 NetApp ONTAP 对 nconnect 的支持的更多信息,请参阅 ONTAP 对 NFSv4.1 的支持
巨型帧
为实现最大的读取或写入吞吐量,我们建议在 Amazon FSx 文件系统的数据路径中所有网络接口上启用巨型帧,包括客户端 EC2 实例。FSx for ONTAP 文件系统上网络接口的默认最大传输单元(MTU)设置为 9001 字节。
性能详情
要详细了解适用于 NetApp ONTAP 的 Amazon FSx 性能模型,您可以查看 Amazon FSx 文件系统的架构组件。您的客户端会计算实例,无论这些实例存在于 AWS 还是本地,其都可以通过一个或多个弹性网络接口(ENI)访问您的文件系统。这些网络接口位于与文件系统关联的 Amazon VPC 中。每个文件系统 ENI 背后都有一个 NetApp ONTAP 文件服务器,这些服务器会通过网络向访问文件系统的客户端提供数据。Amazon FSx 会在每台文件服务器上提供快速的内存缓存和 NVMe 缓存,以增强最常访问数据的性能。每个文件服务器上都附有托管您的文件系统数据的 SSD 磁盘。
这些组件如下图所示。
与这些架构组件(网络接口、内存缓存、NVMe 缓存和存储卷)相对应的是决定整体吞吐量和 IOPS 性能的适用于 NetApp ONTAP 的 Amazon FSx 文件系统的主要性能特征。
-
网络 I/O 性能:客户端和文件服务器之间请求的吞吐量/IOPS(总计)
-
文件服务器上的内存缓存和 NVMe 缓存大小:可满足缓存的活动工作集的大小
-
磁盘 I/O 性能:文件服务器和存储磁盘之间请求的吞吐量/IOPS
决定文件系统的这些性能特征的因素有两个:SSD IOPS 总数和您为其配置的吞吐能力。前两个性能特征(网络 I/O 性能以及内存和 NVMe 缓存大小)完全取决于吞吐能力,而第三个特征(磁盘 I/O 性能)则同时取决于吞吐能力和 SSD IOPS。
基于文件的工作负载通常处于尖峰状态,其特点是短暂而剧烈的高 I/O 周期,且两次突增之间有大量的空闲时间。为了支持尖峰工作负载,除了文件系统可以全天候维持的基准速度外,Amazon FSx 还提供在一段时间内突增至更高速度的功能,以用于网络 I/O 和磁盘 I/O 操作。Amazon FSx 会使用网络 I/O 点数机制,根据平均利用率分配吞吐量和 IOPS,即当文件系统的吞吐量和 IOPS 用量低于其基准限制时,文件系统会累积点数,然后可以在执行 I/O 操作时使用这些点数。
注意
对于 iSCSI 和 NVMe/TCP SAN 协议,顺序读取客户端操作可达到文件系统的最大网络 I/O 突发吞吐量或基准吞吐量。
写入操作使用的网络带宽是读取操作的两倍。写入操作必须在辅助文件服务器上进行复制,因此一次写入操作会产生的两倍的网络吞吐量。
部署类型对性能的影响
您可以在 FSx for ONTAP 中创建单可用区和多可用区文件系统。第一代文件系统(单可用区和多可用区)和第二代多可用区文件系统支持一个高可用性(HA)对。第二代单可用区文件系统最多可支持 12 个 HA 对。有关更多信息,请参阅 管理高可用性(HA)对。
FSx for ONTAP 多可用区和单可用区文件系统为 SSD 存储提供一致的亚毫秒级文件操作延迟,为容量池存储提供数十毫秒的延迟。此外,满足以下要求的文件系统会提供 NVMe 读取缓存,以减少读取延迟并提高经常读取的数据的 IOPS:
多可用区 1 和多可用区 2 文件系统
2022 年 11 月 28 日之后创建的,最低吞吐能力为 2 GBps 的单可用区 1 文件系统
单可用区 2 文件系统,每对的最低吞吐能力为 6 GBps
注意
对于第二代文件系统(单可用区 2 和多可用区 2),使用 NVMe 缓存可能会导致高吞吐量或大型 I/O 工作负载的总吞吐量减少。如果您的工作负载受吞吐量限制,我们建议禁用 NVMe 缓存。有关更多信息,请参阅 管理 NVMe 缓存。
下表显示了文件系统根据高可用性(HA)对和 AWS 区域 可用性等因素可以扩展到的吞吐能力。
存储容量对性能的影响
您的文件系统可以达到的最大磁盘吞吐量和 IOPS 级别是以下两者中较低的一方:
-
文件服务器提供的磁盘性能级别,基于您为文件系统选择的吞吐能力
-
由您为文件系统预置的 SSD IOPS 数提供的磁盘性能级别
默认情况下,文件系统的 SSD 存储提供可达以下级别的磁盘吞吐量和 IOPS:
-
磁盘吞吐量 [每 TiB 存储速率(MBps)]:768
-
磁盘 IOPS(每 TiB 存储的 IOPS 数):3072
注意
减少第二代文件系统上的 SSD 存储容量时,对大多数工作负载性能的影响微乎其微。但是,写入密集型工作负载可能会出现暂时的性能下降。如果客户端访问被重定向到新磁盘,您可能还会遇到短暂的 I/O 暂停(最长 60 秒)。
为最大限度降低对性能的影响,在执行 SSD 缩减操作之前,确保持续性工作负载不得长期占用超过 50% 的 CPU、50% 的磁盘吞吐量或 50% 的 SSD IOPS。有关减少 SSD 存储容量的更多信息,请参阅 何时减少 SSD 存储容量 。
吞吐能力对性能的影响
每个 Amazon FSx 文件系统都有一个您在创建文件系统时为其配置吞吐能力。文件系统的吞吐能力将决定网络 I/O 性能的级别,或者决定托管文件系统的每个文件服务器在通过网络向访问文件系统的客户端提供文件数据时的速度。更高的吞吐能力级别来自更多的内存和用于在每个文件服务器上缓存数据的非易失性存储规范(NVMe)存储空间,以及由每个文件服务器提供支持的更高级别的磁盘 I/O 性能。
在创建文件系统时,您可以选择配置更高级别的 SSD IOPS。即使在预配置了更多 SSD IOPS 时,您的文件系统可以达到的最大 SSD IOPS 水平也取决于文件系统的吞吐能力。
下表所示为吞吐能力的整套规范,以及基准和突增级别,以及相应 AWS 区域 中的文件服务器上用于缓存的内存量。
示例:存储容量和吞吐能力
以下示例说明了存储容量和吞吐能力对文件系统性能的影响。
配置有 2 TiB SSD 存储容量和 512 MBps 吞吐能力的第一代文件系统具有以下吞吐量级别:
-
网络吞吐量 – 基准为 625Mbps 和 1250Mbps 的突增(参阅吞吐能力表)
-
磁盘吞吐量 – 基准为 512Mbps 和 600Mbps 的突增。
因此,访问文件系统的工作负载将能够提供高达 625Mbps 的基准吞吐量和 1,250Mbps 的突增吞吐量,用于对缓存在文件服务器内存缓存和 NVMe 缓存中主动访问的数据执行文件操作。