因为各种正当理由,包括数据远程复制、简易的存储资源管理,高度虚拟化的数据中心总是会选用存储区域网络(SAN)。但是有些企业仍保持虚拟机和数据存储互相独立,使它们在单个服务器上运行。这里有一些方法,可以用来在这类分布式下环境优化存储性能。
虚拟化服务器上的本地存储性能
本地存储所面临的挑战是:一个单独的服务器能容纳物理磁盘的空间始终有限。这意味着管理员可以将系统配置成:高容量、性能适度,或者高性能、容量适度。混合各种特性是可能的:例如,服务器只使用少量高性能磁盘,剩余盘位则使用高容量、低性能磁盘。但是你无法同时***限度地提高容量和性能。在为服务器提供存储部件之前,我们***先了解清楚服务器的工作负载需求特点。
如果你重视性能,建议你留意本地驱动器上的分区对齐状况。分区对齐是新型硬盘驱动器的特征,使用4KB扇区大小,而不是通常的512字节扇区。这就降低了每个扇区的数据开销,使磁盘空间得到更有效利用。但是操作系统必须定位对齐磁盘扇区,这样磁盘上扇区的边界和操作系统才能保持一致——否则磁盘必须重复读写更大的扇区,这将降低磁盘性能。扇区正确对齐能增加磁盘系统的有效性能,对某些阵列类型(比如RAID 5)形成帮助。
大家应该记得本地磁盘上的磁盘碎片可以成为一个问题,但是在SAN环境中这不是问题。碎片的产生源自于文件系统的工作方式。当文件被擦除和重写,新的数据会写入到空闲空间,而这些空间是由被删除或变化的文件组成的。这都是正常的文件操作,但是随着时间推移,数据有在驱动器上扩散的倾向,而且会越来越糟。一个文件越分散,驱动器找到所有文件片的难度就越大,执行性能越低。如果发现驱动器性能随着时间增长明显变差,那就有必要对磁盘进行碎片整理,重新排列文件,使文件数据块变得连续。
虚拟化控制台性能可能也对本地磁盘存储任务敏感。例如,类似动态扩容、差分和快照等特征可能对本地磁盘性能有不利影响——但是又不得不用到这些功能,除非已经使用了SAN存储。如果本地服务器的负载需要基于磁盘的数据保护,就必须使用其它的本地磁盘(或者SAN)来完成任务。例如,如果一个虚拟机存储在磁盘1,在磁盘1进行快照操作会明显中断虚拟机正常运行,我们应该尝试使用磁盘2来保存快照,或者将快照发送到iSCSI SAN。