VMware Virtual SAN存储设计规划
更新:HHH   时间:2023-1-7


点击此处查看原文

目录

一、 容量规划 1

1) 原始容量 1

2) 允许的故障数 1

3) 计算所需容量 2

4) 容量大小设置准则 3

5) 虚拟机对象的注意事项 4

二、 SSD缓存设计计划 5

1) 在 PCIe 或 SSD 闪存设备之间进行选择 5

2) 闪存设备作为 Virtual SAN 缓存 6

三、 使用SSD作为容量设计 7

1) 在 PCIe 或 SSD 闪存设备之间进行选择 7

2) SSD设备作为 Virtual SAN 容量设备 7

四、 使用HDD作为容量设计 8

1) 按照存储空间和性能的要求确定混合配置中磁盘容量的大小和磁盘数量。 8

2) 磁盘作为 Virtual SAN 容量 9

五、 存储控制器的设计 10

1) Virtual SAN 群集的主机中包含的存储控制器应最能满足性能和可用性要求。 10

六、 Virtual SAN主机的设计 11

1) 内存和 CPU 11

2) 主机网络 11

3) 多个磁盘组 12

七、 Virtual SAN群集设计 13

1) 调整 Virtual SAN 群集的大小以允许故障 13

2) 三主机群集配置的限制 14

3) 平衡和不平衡的群集配置 15

八、 Virtual SAN网络设计 16

九、 网络故障切换和负载平衡 16

4) Virtual SAN 网络中的多播注意事项 16

5) 使用 Network I/O Control 为 Virtual SAN 分配带宽 17

6) 标记 Virtual SAN 流量 18

7) 在 VLAN 中分段 Virtual SAN 流量 19

8) 巨帧 19

十、 Virtual SAN容错设计 19

1) 关于容错域 19

2) 容错域构造 20

3) 使用容错域应对多个主机出现故障 21

容量规划

原始容量


    1. 要确定 Virtual SAN 数据存储的原始容量,可使用群集中的磁盘组总数乘以磁盘组中容量设备的大小,然后减去 Virtual SAN 磁盘格式所需的开销。

允许的故障数


    1. 规划 Virtual SAN 数据存储的容量时,必须考虑群集的虚拟机存储策略的允许的故障数和容错方法属性。


    1. 例如,如果容错方法设置为 RAID-1 (镜像) - 性能且允许的故障数设置为 1,则虚拟机可使用大约 50% 的原始容量。如果允许的故障数设置为 2,则可用容量大约为 33%。如果允许的故障数设置为 3,则可用容量大约为 25%。


    1. 例如,如果容错方法设置为 RAID-5/6 (删除编码) - 容量且允许的故障数设置为 1,则虚拟机可使用大约 75% 的原始容量。如果允许的故障数设置为 2,则可用容量大约为 67%。

计算所需容量

根据以下标准规划采用 RAID 1 镜像的群集中虚拟机所需的容量:


    1. 计算 Virtual SAN 群集中的虚拟机需要占用的存储空间。

expected overall consumption = number of VMs in the cluster * expected percentage of consumption per VMDK


    1. 考虑存储策略中为群集中的虚拟机配置的允许的故障数属性。此属性直接影响群集中主机上 VMDK 文件的副本数。

datastore capacity = expected overall consumption * (Number of failures to tolerate + 1)


    1. 估算 Virtual SAN 磁盘格式的开销要求。


    1. 磁盘格式 3.0 及更高版本会增加额外开销,通常每个设备不超过 1-2% 的容量。


    1. 如果启用去重和压缩功能以及软件校验和,则每个设备需要约 6.2% 容量的额外开销。


    1. 磁盘格式版本 2.0 会增加额外开销,通常每个设备不超过 1-2% 的容量。


    1. 磁盘格式版本 1.0 会增加额外开销,每个容量设备约为 1 GB。

容量大小设置准则

    1. 至少留有 30% 的未使用空间,以防止 Virtual SAN 重新平衡存储负载。只要单个容量设备上的消耗达到 80% 或以上,Virtual SAN 就会重新平衡群集中的组件。重新平衡操作可能会影响应用程序的性能,存储消耗应低于 70%。


    1. 规划额外容量,用于处理潜在故障或替换容量设备、磁盘组和主机。当某个容量设备无法访问时,Virtual SAN 会在群集中的其他设备中恢复组件。当闪存缓存设备出现故障或移除时,Virtual SAN 会从整个磁盘组中恢复组件。


    1. 预留额外容量以确保 Virtual SAN 在出现主机故障或主机进入维护模式时恢复组件。要允许故障后重新构建,至少必须有三个主机。


    1. 提供足够的临时存储空间,以便在 Virtual SAN 虚拟机存储策略中进行更改。动态更改虚拟机存储策略时,Virtual SAN 可能会为组成对象的副本创建一个布局。当 Virtual SAN 实例化这些副本并将其与原始副本进行同步时,群集必须临时提供额外空间。


    1. 如果规划使用软件校验和或去重和压缩等高级功能,请保留额外的空间以处理操作开销。

虚拟机对象的注意事项

规划存储容量时,应考虑虚拟机主页命名空间对象、快照以及交换文件所需的空间。


    1. 虚拟机主页命名空间。可以专门为虚拟机的主页命名空间对象分配一个存储策略。规划存储空间,以满足分配给允许的故障数大于 0 的虚拟机主页命名空间的存储策略要求。


    1. 快照。增量设备继承基础 VMDK 文件的策略。根据需要的大小和快照数量以及 Virtual SAN 存储策略中的设置,规划额外空间。


    1. 交换文件。Virtual SAN 为虚拟机的交换文件使用单独的存储策略。该策略允许出现一次故障,未定义条带化和读取缓存预留,启用了强制置备。

SSD缓存设计计划

在 PCIe 或 SSD 闪存设备之间进行选择
  1. 兼容性。

  1. 性能。PCIe 设备通常比 SSD 设备具有更高的性能。

  1. 容量。可用于 PCIe 设备的最大容量通常比SSD 设备的最大容量要大。

  1. 写入寿命。PCIe 或 SSD 设备的写入寿命必须满足全闪存配置中容量或缓存的要求,以及混合配置中缓存的要求。

  1. 成本。PCIe 设备的成本通常比 SSD 设备的成本高。

闪存设备作为 Virtual SAN 缓存

使用SSD作为容量设计

在 PCIe 或 SSD 闪存设备之间进行选择

根据对 Virtual SAN 存储的性能、容量、写入寿命和成本的要求,选择 PCIe 或 SSD 闪存设备。


    1. 兼容性。VMware 兼容性指南的“Virtual SAN”部分应当列出了 PCIe 或 SSD 设备的型号。


    1. 性能。PCIe 设备通常比 SSD 设备具有更高的性能。


    1. 容量。可用于 PCIe 设备的最大容量通常比目前在VMware 兼容性指南中针对适用于 Virtual SAN 的 SSD 设备列出的最大容量要大。


    1. 写入寿命。PCIe 或 SSD 设备的写入寿命必须满足全闪存配置中容量或缓存的要求,以及混合配置中缓存的要求。


    1. 成本。PCIe 设备的成本通常比 SSD 设备的成本高。

SSD设备作为 Virtual SAN 容量设备

    1. 在全闪存配置中,Virtual SAN 不会将缓存用于读取操作,也不会应用虚拟机存储策略中的读取缓存预留设置。


    1. 对于缓存设备,可以使用少量具有高写入持久力的成本更高的闪存。对于容量设备,可以使用具有较低写入持久力的成本更低的闪存。


    1. 遵循以下准则,规划闪存容量设备的配置:


    1. 为了实现更好的 Virtual SAN 性能,请使用更多由较小闪存容量设备组成的磁盘组。


    1. 为了获得平衡的性能和可预测的行为,请使用同一类型和型号的闪存容量设备。

使用HDD作为容量设计

按照存储空间和性能的要求确定混合配置中磁盘容量的大小和磁盘数量。

    1. SAS、NL-SAS 和 SATA 磁盘设备


    1. 兼容性。该磁盘型号必须已经过认证且列在VMware 兼容性指南的“Virtual SAN”部分中。


    1. 性能。较 SATA 磁盘而言,SAS 和 NL-SAS 设备的性能更高。


    1. 容量。请考虑使用多个小型设备,而不要使用少量的大型设备。


    1. 成本。较 SATA 磁盘而言,SAS 和 NL-SAS 设备的成本更高。


    1. 在容量和成本的优先级高于性能的环境中,应当使用 SATA 磁盘(而非 SAS 和 NL-SAS 设备)。

磁盘作为 Virtual SAN 容量

    1. 为获得更出色的 Virtual SAN 性能,请使用多个小容量磁盘。


    1. 必须有足够的磁盘能够为缓存和容量之间的数据传输提供足够的汇总性能。相对于使用较少的大型设备而言,使用较多的小型设备可以提供更高的性能。


    1. 在包含多个虚拟机的环境中,当数据不在读取缓存中,因此 Virtual SAN 需要从磁盘中读取数据时,磁盘的数量对于读取操作也十分重要。在包含少量虚拟机的环境中,如果活动虚拟机存储策略中每个对象的磁盘带数大于 1,则磁盘数量会影响读取操作。


    1. 为使性能平衡和行为可预测,应在 Virtual SAN 数据存储中使用同一类型和型号的磁盘。


    1. 指定足够数量的磁盘,以符合定义的存储策略中允许的故障数和每个对象的磁盘带数属性值。

存储控制器的设计

Virtual SAN 群集的主机中包含的存储控制器应最能满足性能和可用性要求。

    1. 使用VMware 兼容性指南中列出的存储控制器模型以及驱动程序和固件版本。


    1. 如果可能,请使用多个存储控制器,这样可以改善性能并只将潜在的控制器故障隔离到磁盘组子集中。


    1. 使用VMware 兼容性指南中队列深度最高的存储控制器。使用队列深度较高的控制器能够改善性能。


    1. 在直通模式下使用存储控制器以实现 Virtual SAN 的最佳性能。与处于直通模式的存储控制器相比,处于 RAID 0 模式的存储控制器需要较高的配置和维护工作量。

Virtual SAN主机的设计

内存和 CPU

主机网络

    1. 如果计划使用具有 1-GbE 适配器的主机,请将适配器专用于 Virtual SAN。对于全闪存配置,请安排具有专用或共享 10-GbE 适配器的主机。


    1. 如果 10-GbE 适配器与其他流量类型共享,请使用 vSphere Distributed Switch 以便 Virtual SAN 流量通过使用 Network I/O Control 和 VLAN 隔离流量。


    1. 为 Virtual SAN 流量创建物理适配器组以确保冗余。

多个磁盘组


    1. 在 Virtual SAN 数据存储中,一个磁盘组代表一个单一故障域。如果闪存缓存或存储控制器停止响应,磁盘组的容量将不可访问。因此,Virtual SAN 会从群集中其他位置重新构建磁盘组中的所有组件。


    1. 由于以下优点和缺点,设计多个具有更少容量的磁盘组:


    • 因为数据存储具有更多汇总缓存并且 I/O 操作更快,所以提高了性能

    1. 优点


    1. 因为 Virtual SAN 重新构建的组件更少,所以当发生磁盘组故障时,增加了故障域的数量和大小并且提高了性能


    • 因为对于相同的缓存大小使用了两个缓存设备,而不是一个,因此抬高了成本

    1. 劣势


    • 需要更多内存以处理更多磁盘组


    • 需多个存储控制器以减少故障域


    1. 由于刀片服务器的磁盘插槽数量有限,Virtual SAN 数据存储中的刀片服务器容量通常无法扩展。要扩展刀片服务器的计划容量,请使用外部存储机箱。


    • 设备热插拔和交互

    1. 考虑使用存储控制器直通模式支持,以轻松实现主机上的磁盘和闪存容量设备的热插拔或更换。如果控制器适用于 RAID 0 模式,必须执行其他步骤才可以使主机发现新驱动器。

Virtual SAN群集设计

调整 Virtual SAN 群集的大小以允许故障

    1. 在虚拟机存储策略中配置允许的故障数属性以处理主机故障。群集所需的主机数计算方式为:2 * number of failures to tolerate + 1。群集所配置允许的故障越多,所需的容量主机越多。


    1. 如果在机架服务器中连接群集主机,可以将主机整理到容错域中以提高故障管理。

三主机群集配置的限制

    1. 三主机群集配置中,通过将允许的故障数设置为 1 只能允许一个主机故障。对于虚拟机数据的两个必需副本,Virtual SAN 将每个副本保存在不同的主机上。见证对象位于第三个主机上。由于群集中的主机数量较少,因此存在以下限制:


    1. 当某个主机出现故障时,Virtual SAN 无法在另一个主机上重新构建数据以防止出现另一个故障。


    1. 如果某个主机进入维护模式,则 Virtual SAN 无法重新保护已撤出的数据。如果主机处于维护模式,则数据可能会出现问题。

因此,虚拟机将处于风险之中,因为如果出现另一个故障,将无法访问这些虚拟机。

平衡和不平衡的群集配置

    1. Virtual SAN 最适合在具有统一配置的主机上运行。


    1. 如果 Virtual SAN 群集使用具有不同配置的主机,则会存在以下劣势:


    1. 存储性能的可预测性将会降低,因为 Virtual SAN 不会在各个主机上存储相同数量的组件。


    1. 维护步骤不同。


    1. 对于群集中拥有较少或类型不同的缓存设备的主机,性能将会降低。

Virtual SAN网络设计

网络故障切换和负载平衡


    1. Virtual SAN 不会将网卡绑定用于负载平衡。


    1. 如果计划为可用性配置网卡组,请考虑这些故障切换配置。


    1. Virtual SAN 支持 IP 哈希负载平衡,但无法保证所有配置的性能都有提升。


    1. Virtual SAN 不支持同一子网上有多个 VMkernel 适配器。 通过成组物理网络适配器,使用更少的设置就能更方便地获得网络可用性。

Virtual SAN 网络中的多播注意事项

    1. 必须在物理交换机上启用多播,以启用 Virtual SAN 群集中主机间的检测信号和元数据交换。


    1. 如果在同一网络上有多个 Virtual SAN,在生产中部署其他 Virtual SAN 群集之前,请更改新群集的多播地址以便成员主机不会从其他群集收到无关的多播消息。

使用 Network I/O Control 为 Virtual SAN 分配带宽

    1. 如果 Virtual SAN 流量使用与其他系统流量类型(HA 流量、虚拟机流量等)共享的 10-GbE 物理网络适配器,可以使用 vSphere Distributed Switch 中的 vSphere Network I/O Control 保证 Virtual SAN 所需带宽的大小。


    1. 在 vSphere Network I/O Control 中,可以为 Virtual SAN 输出流量配置预留和份额。

例如,在处理 Virtual SAN、vSphere vMotion 和虚拟机流量的 10-GbE 物理适配器上,可以配置特定带宽和份额。

如果 10-GbE 适配器变成饱和状态,Network I/O Control 将分配 5 Gbps 到物理适配器上的 Virtual SAN。

标记 Virtual SAN 流量

    1. 可以将 Virtual SAN 流量分配到特定的类,并且通过使用 vSphere Distributed Switch 的流量筛选和标记策略,使用服务类 (Class of Service, CoS) 值(范围为 0 到 7)相应地标记流量,其中 0 为高优先级,7 为低优先级。

在 VLAN 中分段 Virtual SAN 流量

    1. 考虑隔离 VLAN 中的 Virtual SAN 流量以增强安全和性能,尤其是当在多个流量类型之间共享后备物理适配器的容量时。

巨帧

    1. 如果计划在 Virtual SAN 中使用巨帧以提高 CPU 性能,请验证是否已在群集中的所有网络设备和主机上启用巨帧。


    1. 默认情况下,在 ESXi 上已启用 TCP 分段清除 (TSO) 和大型接收清除 (LRO) 功能。考虑使用巨帧是否会将性能提高到足以弥补在网络中的所有节点上启用巨帧的成本。

Virtual SAN容错设计

关于容错域

    1. Virtual SAN 容错域功能将指示 Virtual SAN 将冗余组件分散到各个计算机架中的服务器上。因此,可以保护环境免于机架级故障,如断电或连接中断。

容错域构造

    1. Virtual SAN 至少需要两个容错域,每个容错域包含一个或多个主机。


    1. 如果可能,请使用至少四个容错域。使用三个容错域时,不支持某些数据撤出模式,且 Virtual SAN 无法在故障发生后重新保护数据。


    1. 如果启用容错域,Virtual SAN 会将活动虚拟机存储策略应用于容错域(而非单个主机)。


    1. 根据计划分配给虚拟机的存储策略中规定的允许的故障数属性,计算群集中的容错域数目。

number of fault domains = 2 * number of failures to tolerate + 1


    1. 如果主机不是容错域成员,Virtual SAN 会将其解释为独立容错域。

使用容错域应对多个主机出现故障

    1. 考虑一个包含四个服务器机架的群集,每个机架包含两个主机。如果将允许的故障数设置为 1 并且不启用容错域,Virtual SAN 可能会将对象的两个副本与主机存储在同一个机柜中。因此,发生机架级故障时应用程序可能有潜在的数据丢失风险。将可能同时发生故障的主机配置到单独的容错域时,Virtual SAN 会确保将每个保护组件(副本和见证)置于单独的容错域中。


    1. 如果要添加主机和容量,可以使用现有的容错域配置或定义容错域。


    1. 使用容错域获得平衡存储负载和容错时,请考虑以下准则:


    1. 提供足够的容错域以满足在存储策略中配置的允许的故障数。

至少定义三个容错域。要获得最佳保护,请至少定义四个容错域。


    1. 向每个容错域分配相同数量的主机。


    1. 使用具有统一配置的主机。


    1. 如果可能,请在出现故障后将一个具有可用容量的容错域专用于重新构建数据。

以上内容来自51cto学院赵海兵老师总结内容,分享给大家.

想学习虚拟化课程的可以去报名:http://edu.51cto.com/center/wejob/user/index?train_id=122

返回云计算教程...