哪个更好 - 更多 LUN 或更多存储。实际上,每个 LUN 有 1 个存储 ESXi,因此大约有 15 个 LUN 和 15 个存储。现在有一种问题,因为 LUN 分配了不同的空间,所以如果我删除 2 个 LUN fe 1 2 3 4 [x] 6 [x] 8 9(类似这样),我无法从 IBM 存储阵列上的 5 和 7 个可用磁盘空间中创建 1 个 LUN。第一个论点是不要有太多的 LUN。如果我只需要创建几个 LUN(大约 3 个)并且放在 ESXi 的一些存储中,这会是一个更好的主意吗?例如扩展存储容量?我正在寻找好的解决方案。
提前致谢。
答案1
一切都与 IOPS 有关。使用任何特定数据存储的虚拟机都不应超过 lun 的 IOP 容量。例如,考虑 3 个虚拟机 Larry Moe 和 Curly。Larry 运行 SQL 服务器,平均每秒执行 700 iops(峰值为 1000)。Larry 使用 500GB。Moe 是 2008 年的文件服务器,IOPS 低 150 /秒平均值(峰值为 300),空间为 1TB。Curly 是 Web 服务器,IOPS 低 100(峰值为 100),空间低 40GB。这是前端 IOPS - 实际机器需要执行多少。需要根据 raid 类型和所需的冗余度来计算后端 IOPS。因此,对于 Larry,我们可能需要 raid 10(我们假设读写混合为 50/50)。因此,我们需要后端有 1050 IOPS - 这意味着 8 个主轴(SAS 或 FC- 14 SATA)。此外,500GB 接近合理的数据存储大小,因此有 1 个 lun 专用。Moe 只需要 150 iops,但我们希望它是 raid 5,因此后端有 375 IOPS - 仍然只有 3 个主轴 - 但我们需要 1 TB,而我们的磁盘只有 300 GB,因此仅就大小而言,我们至少需要 5 个主轴,这给了我们一个 fat lun,但有足够的 IOPS(后端有 750,前端有 300)。剩下的是 Curly。我们可以将 Curly 和 Moe 合并到同一个 lun 上,但是 Curly 是一个 Web 服务器,我们不希望在 Moe 达到 300 的峰值时出现延迟问题。我们可以将 Curly 放在 raid 5 组中,以主轴和空间为代价获得冗余,或者在 2 个磁盘上使用 raid 0+1,但可能会出现驱动器故障问题。
这个故事的寓意是,你问的问题没有一个简单的答案。专注于 IOP 要求,无论你如何实现,你都应该没问题。还有更多没有讨论的内容(针对峰值 IOPS 与平均值进行设计,Sql 服务器应该为日志设置 RAID 1),但希望我已经表达了我的观点。