vSAN 存储策略定义了虚拟机的存储要求。这些策略确定如何置备和分配数据存储内的虚拟机存储对象,以保证达到要求的服务级别。
在主机群集上启用 vSAN 后,将创建一个 vSAN 数据存储,并且会为该数据存储分配默认存储策略。
当了解虚拟机的存储要求后,可以创建引用数据存储所播发的功能的存储策略。您可以创建多个策略以捕获不同类型或类别的要求。
将为部署到 vSAN 数据存储的每个虚拟机至少分配一个虚拟机存储策略。您可以在创建或编辑虚拟机时分配存储策略。
虚拟机交换对象和虚拟机快照内存对象不遵守分配给虚拟机的存储策略。配置这些对象时会将允许的故障数主要级别设置为 1。这些对象的可用性可能与所分配策略中具有不同允许的故障数主要级别值的其他对象有所差异。
容量 | 描述 |
---|---|
允许的故障数主要级别 (PFTT) | 定义虚拟机对象允许的主机和设备故障的数量。如果允许 n 个故障,写入的每条数据存储在 n+1 个位置,如果使用 RAID 5 或 RAID 6,还包括奇偶校验副本。 置备虚拟机时,如果未选择存储策略,则 vSAN 会将此策略指定为默认虚拟机存储策略。 如果已配置故障域,则需要 2n+1 个故障域,且这些故障域中具有可提供容量的主机。不属于故障域的主机会被视为位于其自己的单主机故障域中。 默认值为 1。最大值为 3。
注: 如果不希望
vSAN 保护虚拟机对象的单一镜像副本,则可指定
PFTT = 0。但是,主机在进入维护模式时,可能会出现异常延迟。发生延迟的原因是
vSAN 必须将该对象从主机中撤出才能成功完成维护操作。设置
PFTT = 0 意味着数据不受保护,当
vSAN 群集出现设备故障时可能会丢失数据。
注: 创建存储策略时,如果没有为
PFTT 指定一个值,
vSAN 将为虚拟机对象创建一个镜像副本。只允许出现一个故障。但是,如果多个组件出现故障,数据可能会存在风险。
在延伸群集中,此规则定义虚拟机对象可允许的站点故障数量。您可以结合使用 PFTT 和 SFTT,以向数据站点内的对象提供本地故障保护。 延伸群集的最大值为 1。 |
允许的故障数辅助级别 (SFTT) | 在延伸群集中,此规则定义在达到 PFTT 定义的站点故障数量后对象可允许的额外主机故障数量。如果 PFTT = 1 且 SFTT = 2,且有一个站点不可用,则群集可允许两个额外主机故障。 默认值为 1。最大值为 3。 |
数据局部性 | 在延伸群集中,仅当允许的故障数主要级别设置为 0 时,该规则才可用。可以将数据局部性规则设置为无、首选或辅助。使用该规则可以将虚拟机对象限制到延伸群集中的某个选定站点或主机。 默认值为“无”。 |
容错方法 | 指定数据复制方法针对性能还是容量进行优化。如果选择 RAID-1 (镜像) - 性能,vSAN 将使用较多磁盘空间来放置对象的组件,但提供的对象访问性能较高。如果选择 RAID-5/6 (纠删码) - 容量,vSAN 将使用较少磁盘空间,但性能会下降。可以通过以下方式使用 RAID 5:将 RAID-5/6 (擦除编码) - 容量属性应用于具有四个或更多故障域的群集,并将允许的故障数主要级别设置为 1。可以通过以下方式使用 RAID 6:将 RAID-5/6 (擦除编码) - 容量属性应用于具有六个或更多故障域的群集,并将允许的故障数主要级别设置为 2。 在配置了允许的故障数辅助级别的延伸群集中,该规则仅适用于允许的故障数辅助级别。 有关 RAID 5 或 RAID 6 的详细信息,请参见使用 RAID 5 或 RAID 6 删除编码。 |
每个对象的磁盘带数 | 虚拟机对象的每个副本在其上进行条带化的容量设备的最低数量。值如果大于 1,则可能产生较好的性能,但也会导致使用较多的系统资源。 默认值为 1。最大值为 12。 请勿更改默认的条带化值。 在混合环境中,磁盘带分散在磁盘中。对于全闪存配置,会在构成容量层的闪存设备中进行条带化。确保您的 vSAN 环境提供了足够的容量设备以容纳请求。 |
闪存读取缓存预留 | 作为虚拟机对象的读取缓存预留的闪存容量。指定为该虚拟机磁盘 (vmdk) 对象的逻辑大小的百分比。预留的闪存容量无法供其他对象使用。未预留的闪存在所有对象之间公平共享。仅使用该选项解决特定的性能问题。 无需设置预留即可获取缓存。设置读取缓存预留可能会导致在移动虚拟机对象时出现问题,因为该对象始终包含缓存预留设置。 只有混合配置才支持“闪存读取缓存预留”存储策略属性。为全闪存群集定义虚拟机存储策略时,不得使用该属性。 默认值为 0%。最大值为 100%。
注: 默认情况下,
vSAN 将按需为存储对象动态分配读取缓存。此功能是最灵活、最优化的资源利用方式。因此,通常无需更改此参数的默认值 0。
如果在解决性能问题时要增加该值,请小心谨慎。在多个虚拟机上过度置备缓存预留可能会导致闪存设备空间浪费在过度预留的缓存上。这些缓存预留无法用来处理在给定时间需要所需空间的工作负载。这种空间浪费和不可用问题可能会导致性能下降。 |
强制置备 | 如果该选项设置为是,则即使数据存储不满足存储策略中指定的允许的故障数主要级别、每个对象的磁盘带数和闪存读取缓存预留策略,也会置备该对象。该参数可在引导时以及在出现故障无法再进行标准置备时使用。 默认值否对于大多数生产环境都是可接受的。当不满足策略要求时,vSAN 无法置备虚拟机,但是可以成功创建用户定义的存储策略。 |
对象空间预留 | 部署虚拟机时必须预留或厚置备的虚拟机磁盘 (vmdk) 对象的逻辑大小百分比。可用选项如下:
|
禁用对象校验和 | 如果该选项设置为否,该对象将计算校验和信息来确保其数据的完整性。如果该选项设置为是,该对象不计算校验和信息。 vSAN 使用端到端校验和来确保数据的完整性,即确认文件的每个副本都与源文件完全相同。系统会在读取/写入操作期间检查数据的有效性,如果检测到错误,vSAN 将修复数据或报告错误。 如果检测到校验和不匹配,vSAN 将使用正确数据覆盖错误数据来自动修复数据。校验和计算和错误更正作为后台操作执行。 群集中所有对象的默认设置为否,表示启用校验和。 |
对象的 IOPS 限制 | 定义对象(例如 VMDK)的 IOPS 限制。IOPS 使用加权大小计算,表示为 I/O 操作数。如果系统使用的默认基本大小为 32 KB,则 64-KB I/O 表示两个 I/O 操作。 计算 IOPS 时,读取和写入同等对待,但不考虑缓存命中率和顺序性。如果磁盘的 IOPS 超过此限制,将限制 I/O 操作。如果对象的 IOPS 限制设置为 0,将不会强制执行 IOPS 限制。 vSAN 允许对象在操作的第一秒或一段时间不活动后 IOPS 达到限制速率的两倍。 |
使用虚拟机存储策略时,必须了解存储功能如何影响 vSAN 群集中存储容量的消耗。有关存储策略设计和大小调整注意事项的详细信息,请参见《管理 VMware vSAN》中的“设计和调整 vSAN 群集的大小”。
vSAN 如何管理策略更改
vSAN 6.7 Update 3 及更高版本可管理策略更改,以减少群集中消耗的瞬态空间量。当 vSAN 因策略更改而重新配置对象时,会产生瞬态容量。
修改策略时,将接受更改,但不会立即应用。vSAN 会批处理策略更改请求并异步执行,以保持固定的瞬态空间量。
对于因非容量相关原因(例如,在五节点群集上将 RAID5 策略更改为 RAID6)而执行的策略更改,会立即被拒绝。
可以在 vSAN 容量监控中查看瞬态容量使用情况。要验证对象上策略更改的状态,请使用 vSAN Health Service 检查 vSAN 对象运行状况。