A: 这主要指客户机OS的分区需要和存储设备的块对齐。具体来说就是分区起始偏移(PSO, Partition Starting Offset)应该是4096的倍数。Windows 2008、Vista和Win7全新安装后,Partition Starting Offset是1048576,已经是4096的倍数,因此无需调整。但是Windows XP,2000和2003的Partition Starting Offset是32256,不是4096的倍数。(注意,如果Win2008/7/Vista是从XP/2000/2003版本升级而来,PSO是不会改 变的,也会存在问题)
Q: 为什么要Partition Alignment?
A: 没能做到Partition Alignment会带来VM磁盘性能的下降,浪费处理能力,带来成本的上升。在Host平台负载不高的时候,这种性能负面影响可能还不明显,但是随着主 机负载的增加,磁盘性能的损失就会被放大。因此从部署新的VM的一开始,就必须注意到这个问题。
Q: 如何判断已有虚机是否存在Partition misalignment的问题?
A: 通过系统信息可以知道。运行msinfo32命令或者从开始菜单进入Start → All Programs → Accessories → System Tools → System Information。
![snap0074 虚拟机分区对齐_虚拟机](https://s2.51cto.com/attachment/201004/20/975660_1271780080QYDV.gif)
或者也可以用NetApp提供的mbrscan工具来扫描,具体见下文描述。
Q: 对于一台新的VM,如何保证部署的时候不会引起Partition Misalignment问题?
A: 用模板部署新的VM的话,应该在安装VM模板机的时候,就修正问题。这样通过好的模板部署的VM就不会产生Partition Misalignment问题
Q: 创建新VM的时候,如何对齐分区?
可以用WinPE CD启动虚机,并用Diskpart工具创建分区并直接设定分区起始偏移。如下图所示:
![snap0078 虚拟机分区对齐_虚拟机_02](https://s2.51cto.com/attachment/201004/20/975660_12717800827ZNa.gif)
然后再在这个预创建的分区上安装操作系统。
Q: 如果我的VM已经存在,而且分区起始偏移不是4096的倍数,怎么改正呢?
A: NetApp提供了一个工具mbrtools,其中包括2个可执行文件,一个是mbrscan,用来扫描vmdk,看其是否符合分区对齐的要求。第二个是mbralign用来解决这个问题。
Q: 如何获取该工具?
A: 第1种方法是:ESX Host Uitility里面已经包含此工具。EHU是安装在ESX主机上的一个工具包,可以通过登录NetApp Now网站来下载到(需要Now帐号)。
第2种方法是在vCenter上安装VSC。然后在vSphere Client界面中就可以下载。(关于VSC,请参见拙文《VSC 1.0 (netapp存储在vSphere vCenter 4上的插件)》
![snap0075 虚拟机分区对齐_虚拟机_03](https://s2.51cto.com/attachment/201004/20/975660_1271780085vumq.gif)
或者你可以点这里下载
Q: 如何使用MBR Tools扫描vmdk?
A:
(1)首先把mbrtools.tar.gz上传到datastore上。(可以在vSphere Client里面直接upload到datastore上)
(2)然后通过ssh或者console连接到ESX主机,升级为root身份。
(3)找到上传的文件,移动到/root目录 # mv mbrtools.tar.gz /root
(4)转到/root # cd /root
(5)解压缩 #tar xzvf mbrtools.tar.gz
(6)修改mbrscan和mbralign的属性为555
# chmod 555 mbrscan
# chmod 555 mbralign
转到要扫描的datastore的目录下。 # cd /vmfs/volumes/<your-datastore-name>/<your-vm-folder>
(7)运行扫描程序
# /root/mbrscan <your-vm>-flat.vmdk
![snap0076 虚拟机分区对齐_虚拟机_04](https://s2.51cto.com/attachment/201004/20/975660_1271780086E1W6.gif)
图中显示的就是一台没有对齐分区的Windows 2003
Q: 如何修复分区对齐问题?
A:
(1)删除VM所有的snapshot
(2)关闭VM
(3)运行mbralign命令
# /root/mbralign <your-vm>-flat.vmdk
(4)你可能需要等上一段时间,这视vmdk的大小。可能需要几分钟到几十分钟。为了避免新建立的VM有同样的分区对齐问题,建议对在创建VM模板的时候,先进行分区对齐操作。
![snap0079 虚拟机分区对齐_虚拟机_05](https://s2.51cto.com/attachment/201004/20/975660_12717800915RyR.gif)
datastore的分区对齐
最后,要补充的是,datastore本身也有分 区对齐的问题。对于Netapp NFS datastroe来说,不需要datastore的Alignment,默认已经对齐了。对于NetApp iSCSI或FC SAN的LUN来说,创建LUN的时候选择VMware格式,则在LUN创建的时候就已经对齐了。对于其他品牌的存储,也需要做LUN的对齐。请参考这些 硬件厂商的技术文档。
本文出自 “delxu的Live记事本” 博客,请务必保留此出处http://delxu.blog.51cto.com/975660/301725