我想知道,在继续之前,通过 SAN 提供的 LUN 创建 Windows 跨区卷是否会导致性能损失?
我不知道 SAN 是哪种(我们不管理它),但是他们为我们的 Windows 2k8 R2(Vmware)提供了 10 300 Gb LUN,并且我们需要更大的卷,因此我们考虑跨越一些磁盘,但我们意识到性能问题。
有什么意见吗?
问候。
答案1
一些时间科学, 婊子. 测试设置:
- Windows 7 x64
- 2GB 内存
- ESXi 5.0 上的虚拟机
- LUN 1:在 2x HP P4000 左侧集群 1 上进行 5Gb 厚配置,通过 iSCSI(2x 1Gb MPIO)公开
- LUN 2:通过 iSCSI(2x 1Gb MPIO)公开的 2x HP P4000 左侧集群 2 上的 5Gb 厚配置
我们在两个独立的集群上总共有两个 LUN。我人为地限制了这些 LUN 的最大吞吐量,这样就不会影响在阵列上运行的实际系统,但为了比较输出,这应该足够了。
步骤 1:单独对 LUN 进行基准测试
创建了两个单独的简单卷,用 NTFS 4Kb 块格式化。
Atto Disk Benchmark,从 512 到 4196Kb:
LUN1 和 LUN2 的平均最大吞吐量均为 1Gbps(LUN2 的速度略慢,因为它运行的是 SATA 磁盘而不是 SAS 磁盘)。
如果我查看从每个 SAN 群集本身收集的数据,我们会看到类似的情况:
每次测试期间,两个 LUN 均输出约 1Gbps 的流量。
步骤 2:将 LUN 作为跨区卷进行基准测试
好的;到目前为止一切都如我们预期的那样。现在我们将这两个磁盘转换为动态磁盘,并创建一个跨越10Gb 驱动器并运行相同的基准测试:
你知道吗,性能略有下降,但总的来说,我们可以说这与前两个测试相同。但最重要的是,查看从 SAN 收集的数据,只有一个 LUN 处于活动状态:
有人认为,只有第一个 LUN 满了,第二个 LUN 才会激活。因此跨度。
步骤 3:为了好玩
我在这里限制了带宽,这样就不会影响我们的实时系统,但我建议您在自己的服务器上再次执行所有这些操作,以查看您获得的性能。如果这还不够,那么我建议尝试条带集。通常我永远不会建议这样做,因为如果您丢失了一个 LUN,您就完蛋了,但如果您对您的 SAN 提供商可以让两个 LUN 保持在线感到放心(在此示例中,每个 LUN 都是一个容错集群,因此它离线的可能性很小),那么您可能想尝试条带化和基准测试,以查看您是否获得了所需的性能。说实话,无论是条带化还是跨区化,只要您丢失一个磁盘,您就会丢失所有磁盘。因此,无论哪种方式,风险系数都相当高。
现在就这些了;让我去清除所有因单个启动器消耗了超过其应有的带宽份额而触发的网络警报……