适用于ONTAP Select本地连接存储的硬件 RAID 服务
当硬件 RAID 控制器可用时, ONTAP Select可以将 RAID 服务迁移到硬件控制器,以提升写入性能并防止物理驱动器发生故障。因此, ONTAP Select集群中所有节点的 RAID 保护均由本地连接的 RAID 控制器提供,而不是通过ONTAP软件 RAID 提供。
|
ONTAP Select数据聚合配置为使用 RAID 0,因为物理 RAID 控制器正在为底层驱动器提供 RAID 条带化功能。不支持其他 RAID 级别。 |
本地连接存储的 RAID 控制器配置
所有为ONTAP Select提供后备存储的本地连接磁盘都必须位于 RAID 控制器后面。大多数商用服务器都提供多种 RAID 控制器选项,涵盖多个价位,每个选项的功能级别各不相同。我们的目标是尽可能多地支持这些选项,前提是它们满足控制器的特定最低要求。
|
您无法从使用硬件 RAID 配置的ONTAP Select虚拟机中分离虚拟磁盘。仅支持从使用软件 RAID 配置的ONTAP Select虚拟机中分离磁盘。看"更换ONTAP Select软件 RAID 配置中的故障驱动器"了解更多信息。 |
管理ONTAP Select磁盘的 RAID 控制器必须满足以下要求:
-
硬件 RAID 控制器必须具有电池备用单元 (BBU) 或闪存支持写入缓存 (FBWC) 并支持 12Gbps 的吞吐量。
-
RAID 控制器必须支持能够承受至少一个或两个磁盘故障的模式(RAID 5 和 RAID 6)。
-
必须将驱动器缓存设置为禁用。
-
必须将写入策略配置为写回模式,并在 BBU 或闪存发生故障时回退到写入模式。
-
必须将 I/O 读取策略设置为已缓存。
所有为ONTAP Select提供后备存储的本地连接磁盘都必须放入运行 RAID 5 或 RAID 6 的 RAID 组中。对于 SAS 驱动器和 SSD,使用最多 24 个驱动器的 RAID 组可使ONTAP受益于将传入的读取请求分散到更多磁盘上。这样做可以显著提升性能。对于 SAS/SSD 配置,我们针对单 LUN 和多 LUN 配置进行了性能测试。未发现显著差异,因此,为简单起见, NetApp建议创建满足配置需求所需的最少数量的 LUN。
NL-SAS 和 SATA 驱动器需要一套不同的最佳实践。出于性能考虑,磁盘的最小数量仍然为 8 个,但 RAID 组大小不应超过 12 个驱动器。NetAppNetApp,所有 RAID 组都可以使用全局备用驱动器。;
|
旧版 ESX 的最大范围和数据存储大小为 64 TB,这会影响支持这些大容量驱动器提供的总原始容量所需的 LUN 数量。 |
RAID模式
许多 RAID 控制器支持最多三种操作模式,每种模式都代表写入请求所采用的数据路径的显著差异。这三种模式如下:
-
直写。所有传入的 I/O 请求都被写入 RAID 控制器缓存,然后立即刷新到磁盘,然后再向主机确认该请求。
-
绕写。所有传入的 I/O 请求都直接写入磁盘,绕过 RAID 控制器缓存。
-
写回。所有传入的 I/O 请求都直接写入控制器缓存,并立即返回主机确认。数据块通过控制器异步刷新到磁盘。
回写模式提供最短的数据路径,数据块进入缓存后立即进行 I/O 确认。此模式为混合读/写工作负载提供最低的延迟和最高的吞吐量。然而,如果没有 BBU 或非易失性闪存技术,系统在此模式下运行时如果发生电源故障,用户将面临丢失数据的风险。
ONTAP Select需要配备备用电池或闪存单元;因此,我们可以确保在发生此类故障时,缓存的块会被刷新到磁盘。因此,要求将 RAID 控制器配置为写回模式。
ONTAP Select和操作系统之间共享的本地磁盘
最常见的服务器配置是所有本地连接的磁盘轴都位于单个 RAID 控制器后面。您应该至少配置两个 LUN:一个用于虚拟机管理程序,一个用于ONTAP Select虚拟机。
例如,假设一台 HP DL380 g8 配备六个内置硬盘和一个 Smart Array P420i RAID 控制器。所有内置硬盘均由该 RAID 控制器管理,系统中没有其他存储设备。
下图显示了这种配置方式。在此示例中,系统上没有其他存储;因此,虚拟机管理程序必须与ONTAP Select节点共享存储。
仅具有 RAID 管理主轴的服务器 LUN 配置
通过与ONTAP Select相同的 RAID 组配置操作系统 LUN,虚拟机管理程序操作系统(以及同样从该存储配置的任何客户端虚拟机)可受益于 RAID 保护。此配置可防止单个驱动器故障导致整个系统崩溃。
本地磁盘在ONTAP Select和 OS 之间分配
服务器供应商提供的另一种可能的配置是使用多个 RAID 或磁盘控制器配置系统。在这种配置中,一组磁盘由一个磁盘控制器管理,该控制器可能提供或不提供 RAID 服务。另一组磁盘由一个硬件 RAID 控制器管理,该控制器能够提供 RAID 5/6 服务。
采用这种配置方式,位于 RAID 控制器后面、可提供 RAID 5/6 服务的磁盘轴组应由ONTAP Select虚拟机独占使用。根据管理的总存储容量,您应该将磁盘轴配置为一个或多个 RAID 组以及一个或多个 LUN。然后,这些 LUN 将用于创建一个或多个数据存储库,所有数据存储库均受 RAID 控制器保护。
第一组磁盘保留给虚拟机管理程序操作系统和任何未使用ONTAP存储的客户端虚拟机,如下图所示。
混合 RAID/非 RAID 系统上的服务器 LUN 配置
多个 LUN
有两种情况必须更改单 RAID 组/单 LUN 配置。使用 NL-SAS 或 SATA 驱动器时,RAID 组大小不得超过 12 个驱动器。此外,单个 LUN 的大小可能会超过底层虚拟机管理程序的存储限制(单个文件系统扩展区最大大小或总存储池最大大小)。这时,必须将底层物理存储拆分为多个 LUN,才能成功创建文件系统。
VMware vSphere 虚拟机文件系统限制
某些版本的 ESX 上数据存储的最大大小为 64TB。
如果服务器连接的存储空间超过 64 TB,则可能需要配置多个 LUN,每个 LUN 的容量都小于 64 TB。创建多个 RAID 组以缩短 SATA/NL-SAS 驱动器的 RAID 重建时间也会导致配置多个 LUN。
当需要多个 LUN 时,需要考虑的重点是确保这些 LUN 具有相似且一致的性能。如果所有 LUN 都用于单个ONTAP聚合,这一点尤其重要。或者,如果一个或多个 LUN 的子集具有明显不同的性能配置文件,我们强烈建议将这些 LUN 隔离到单独的ONTAP聚合中。
可以使用多个文件系统扩展区来创建单个数据存储库,最大可达数据存储库的最大大小。要限制需要ONTAP Select许可证的容量,请务必在集群安装期间指定容量上限。此功能允许ONTAP Select仅使用数据存储库中的一部分空间(因此需要许可证)。
或者,也可以先在单个 LUN 上创建单个数据存储库。当需要更大容量的ONTAP Select许可证来增加空间时,可以将该空间作为扩展区添加到同一数据存储库,直至达到数据存储库的最大大小。达到最大大小后,可以创建新的数据存储库并将其添加到ONTAP Select。两种容量扩展操作均受支持,并且可以通过使用ONTAP Deploy 的存储添加功能来实现。每个ONTAP Select节点可以配置为支持高达 400 TB 的存储容量。从多个数据存储库配置容量需要两个步骤。
初始集群创建可用于创建使用初始数据存储库中部分或全部空间的ONTAP Select集群。第二步是使用其他数据存储库执行一个或多个容量添加操作,直到达到所需的总容量。此功能在本节中详细介绍"增加存储容量" 。
|
VMFS 开销非零(参见"VMware 知识库文章 1001618" ),并尝试使用数据存储区报告为可用的整个空间,导致集群创建操作期间出现虚假错误。 |
每个数据存储库中都有 2% 的缓冲区未使用。此空间不需要容量许可证,因为ONTAP Select不使用它。只要未指定容量上限, ONTAP Deploy 就会自动计算缓冲区的准确 GB 数。如果指定了容量上限,则首先强制执行该大小。如果容量上限大小在缓冲区大小范围内,则集群创建将失败,并显示一条错误消息,其中指定了可用作容量上限的正确最大大小参数:
“InvalidPoolCapacitySize: Invalid capacity specified for storage pool “ontap-select-storage-pool”, Specified value: 34334204 GB. Available (after leaving 2% overhead space): 30948”
VMFS 6 既支持新安装,也支持作为现有ONTAP Deploy 或ONTAP Select VM 的 Storage vMotion 操作的目标。
VMware 不支持从 VMFS 5 到 VMFS 6 的就地升级。因此,Storage vMotion 是唯一允许任何虚拟机从 VMFS 5 数据存储过渡到 VMFS 6 数据存储的机制。但是,除了从 VMFS 5 过渡到 VMFS 6 这一特定目的之外, ONTAP Select和ONTAP Deploy 对 Storage vMotion 的支持已扩展至涵盖其他场景。
ONTAP Select虚拟磁盘
ONTAP Select 的核心是为ONTAP提供一组从一个或多个存储池配置的虚拟磁盘。ONTAPONTAP获得一组虚拟磁盘,并将其视为物理磁盘,而存储堆栈的其余部分则由虚拟机管理程序抽象化。下图更详细地展示了这种关系,突出显示了物理 RAID 控制器、虚拟机管理程序和ONTAP Select虚拟机之间的关系。
-
RAID 组和 LUN 的配置在服务器的 RAID 控制器软件中进行。使用 VSAN 或外部阵列时,无需进行此配置。
-
存储池配置在虚拟机管理程序内部进行。
-
虚拟磁盘由各个虚拟机创建和拥有;在此示例中,由ONTAP Select创建和拥有。
虚拟磁盘到物理磁盘的映射
虚拟磁盘配置
为了提供更简化的用户体验, ONTAP Select管理工具ONTAP Deploy 会自动从关联的存储池中配置虚拟磁盘,并将其连接到ONTAP Select虚拟机。此操作在初始设置和存储添加操作期间都会自动执行。如果 ONTAP Select 节点是 HA 对的一部分,则会将此虚拟磁盘自动分配给本地和镜像存储池。
ONTAP Select 会将底层连接的存储拆分为大小相等的虚拟磁盘,且每个虚拟磁盘不超过 16 TB。如果 ONTAP Select 节点是 HA 对的一部分,则会在每个集群节点上至少创建两个虚拟磁盘,并将其分配给本地和镜像丛,以便在镜像聚合中使用。
例如,可以为ONTAP Select分配一个 31 TB 的数据存储或 LUN(即部署虚拟机并配置系统磁盘和根磁盘后剩余的空间)。然后,创建四个约 7.75 TB 的虚拟磁盘,并将其分配给相应的ONTAP本地 Plex 和镜像 Plex。
|
向ONTAP Select虚拟机添加容量可能会导致 VMDK 大小不同。有关详情,请参阅 "增加存储容量"。与FAS系统不同,不同大小的 VMDK 可以存在于同一聚合中。ONTAP在这些 VMDK 中使用 RAID 0 条带,这样就可以充分利用每个 VMDK 中的所有空间,无论其大小如何。 |
虚拟化NVRAM
NetApp FAS系统传统上配备物理NVRAM PCI 卡,这是一种包含非易失性闪存的高性能卡。该卡使ONTAP能够立即向客户端确认传入的写入操作,从而显著提升写入性能。它还可以安排将已修改的数据块移回速度较慢的存储介质,这个过程称为“降级暂存”。
商用系统通常不配备此类设备。因此,此NVRAM卡的功能已被虚拟化并放置在ONTAP Select系统启动磁盘的一个分区中。正因如此,实例的系统虚拟磁盘的放置至关重要。这也是为什么该产品需要配备具有弹性缓存的物理 RAID 控制器,以用于本地连接存储配置。
NVRAM位于其自己的 VMDK 上。将NVRAM拆分到其自己的 VMDK 中,可使ONTAP Select虚拟机使用 vNVMe 驱动程序与其NVRAM VMDK 通信。此外,还要求ONTAP Select虚拟机使用硬件版本 13,该版本与 ESX 6.5 及更高版本兼容。
数据路径解释: NVRAM和 RAID 控制器
通过遍历写入请求进入系统时所采用的数据路径,可以最好地突出显示虚拟化NVRAM系统分区和 RAID 控制器之间的交互。
传入ONTAP Select虚拟机的写入请求会以虚拟机的NVRAM分区为目标。在虚拟化层,此分区位于ONTAP Select系统磁盘(即连接到ONTAP Select虚拟机的 VMDK)内。在物理层,这些请求会缓存在本地 RAID 控制器中,就像所有针对底层磁盘轴的块更改一样。从这里,写入操作会返回给主机确认。
此时,物理上,该块驻留在 RAID 控制器缓存中,等待刷新到磁盘。逻辑上,该块驻留在NVRAM中,等待降级到相应的用户数据磁盘。
由于更改的块会自动存储在 RAID 控制器的本地缓存中,因此传入NVRAM分区的写入操作也会自动缓存并定期刷新到物理存储介质。请勿将此与定期将NVRAM内容刷新回ONTAP数据磁盘的操作混淆。这两个事件互不相关,并且发生的时间和频率也不同。
下图展示了传入写入所采用的 I/O 路径。它突出显示了物理层(由 RAID 控制器缓存和磁盘表示)与虚拟层(由虚拟机的NVRAM和数据虚拟磁盘表示)之间的区别。
|
虽然NVRAM VMDK 上更改的块会缓存在本地 RAID 控制器缓存中,但该缓存无法感知虚拟机结构或其虚拟磁盘。它会存储系统上所有已更改的块,而NVRAM只是其中的一部分。这包括发往虚拟机管理程序的写请求(前提是虚拟机管理程序是从相同的备用主轴配置的)。 |
传入ONTAP Select VM 的写入
|
NVRAM分区在其自己的 VMDK 上独立存在。该 VMDK 使用 ESX 6.5 或更高版本中提供的 vNVME 驱动程序进行连接。此更改对于使用软件 RAID 的ONTAP Select安装最为重要,因为此类安装无法从 RAID 控制器缓存中获益。 |