我已经在我的家庭实验室中实施了 VSAN,我试图了解为什么我会收到“磁盘空间利用率”失败警报。
集群由一对服务器和一个见证设备组成。两台服务器各有一个 500 GB SSD 和一个 6 TB SATA 驱动器。SATA 驱动器的容量为 5.46 TB,而 VSAN 数据存储的总原始容量报告为 10.81 TB。设置 VSAN 时一切正常(除了硬件兼容性检查,但正如我所说,这是一个家庭实验室)。
在将大量数据添加到配置了精简磁盘的 VM 后,我收到了磁盘空间利用率警报。数据存储上的“摘要”选项卡报告使用了 10.81 TB 中的 7.29 TB,我认为这意味着我的虚拟机(都是精简磁盘)占用的实际原始存储为 7.29 TB。我使用的是默认存储策略,所以我认为这意味着 7.29 TB 是没有 VSAN(即 RAID 1)的虚拟机消耗的两倍,所以我应该在每台主机上消耗 3.64 TB。但是警报说我的利用率为 134%(7465GB 的 5533GB)。这里发生了什么?
以下是我的设置和警报的一些屏幕截图:
请注意,最后一个屏幕截图中的群集警告抱怨磁盘平衡,我也在进行故障排除,但我认为与此问题无关。
我不熟悉这个产品,但它说“允许的磁盘故障数”是 1。在两个磁盘系统中做到这一点的唯一方法是保留两个副本。因此,无论您存储什么,都将占用两倍的空间。
好的,在偶然发现这一点之后,我想我知道发生了什么事(很抱歉谷歌网络缓存链接,但 VMware 论坛现在正在关闭以进行维护)。
通过存储策略,我告诉 vSAN 容忍一个故障,这当然意味着保留两个数据副本(使用默认的故障容忍方法)。对于 vSAN,“容忍”意味着即使主机出现故障,仍然保留两个数据副本(实际上是 RAID 1 + 备用)。如果您有多个 VSAN 主机,我想这很好,但只有两个主机,它似乎试图确保有足够的容量将数据的两个副本放在单个主机上。这看起来很奇怪,并且要求您保持低于可用容量的 50%(低于原始容量的 25%),否则将触发警告。
如果我的两台主机中的一台出现故障,我愿意接受只有一份数据副本,因此我的解决方案是禁用 vSAN Health Checks。这不是太棒了,但我不会一直在我的集群上遵守一个红色的 X。那是没有办法的生活。
请注意文档确实说:
我认为这不适用于双节点 vSAN 集群,但它确实适用,+1 是见证设备。