对于装有 SQL Server 的虚拟服务器,正确的磁盘排列是怎样的?

对于装有 SQL Server 的虚拟服务器,正确的磁盘排列是怎样的?

我启动了一个装有 VMware Virtual Server 的 Windows Server 2008 机箱。我从 SAN 中分配了一个 500 GB 的卷,用于存放 Windows Server 2008/SQL Server 2008 服务器的 VM。如果它不是虚拟的,我通常会像这样对齐:create partion primary align=64assign letter=Eformat fs=ntfs unit=64K label="" nowait

这将是一个测试/开发箱,我只是想看看最常见的对齐方式是什么。

谢谢

答案1

对齐偏移量应适合底层存储和您使用的分区标准的要求。无论涉及多少层抽象,这都适用,您必须确保每个分区在其自己的级别上对齐(因此主机 NTFS 卷需要对齐,而客户机操作系统 NTFS 卷也需要对齐甚至如果它们物理上存在于位于已对齐的 NTFS 卷上的 VMDK 中)。

因此,对于在 W2K8 下运行且 VMDK 位于 NTFS 分区上的 VMware Server。您应该对齐主机分区,然后对齐客户机中的卷。如果您关心的卷是呈现给客户机操作系统的 RAW 磁盘,那么您应该只对齐它。您唯一需要确保的是,您的偏移量是底层物理存储上使用的条带大小的倍数。如果您在客户机中使用未对齐的卷,那么即使底层 NTFS 卷已对齐,您也会看到 IO 跨越条带边界。

我很确定 Windows 2008(和 Windows 7)现在会自动在 1Meg 边界上对齐卷,以确保它们在几乎所有情况下都能安全对齐,所以我认为您不需要针对您的情况做任何具体的事情来确保一切正常。

答案2

如果可能的话,在物理服务器上安装 ESXi(它是免费的)并在 ESXi 中创建虚拟机。在 ESXi 中(可能也在 VMware Server 中),可以将 LUN 分配给虚拟机。优点:开销较少;缺点:灵活性较差且没有负载共享。不要忘记安装 VMware Tools,否则您的网络和磁盘性能将非常糟糕。

答案3

我发现这个链接至少可以帮助我入门。 http://www.vmware.com/pdf/esx3_partition_align.pdf

答案4

我需要先澄清一下,出现你已经得到了;

  • 一个裸机 W2K8 盒,连接到某种类型的 SAN,并向其公开一个 LUN
  • VMWare Server 正在运行(我认为这就是你的意思,或者你是指别的什么?)
  • 您想要在 LUN 上创建的 NTFS 卷上创建虚拟机
  • 您想在 VM 内安装另一个 W2K8 和 MSSQL 副本并希望获得最佳性能。

这些都正确吗?

如果是这样,那么我建议您在 LUN 上创建 NTFS 分区时像往常一样使用“create partion primary align=64”命令 - 这是最接近确定最佳对齐的方式。

如果我的假设有误,请澄清。

相关内容