如果部署和管理得当,在VMware环境当中使用固态硬盘可以提升虚拟机的性能表现。
SSD在设计过程中模拟了传统的磁盘驱动器——甚至使用标准物理硬盘接口,比如串行SCSI(SAS)、光纤通道(FC)以及出现时间更早的串行ATA(SATA)。这意味着管理员可以在本地服务器或者共享存储阵列当中使用SSD,就像普通磁盘驱动器一样,使用VMware虚拟机文件系统(VMFS)对SSD进行格式化,之后将其作为data store。
在实际操作当中,SSD的性能表现和磁盘驱动器具有很大差异,SSD不能和传统磁盘驱动器位同一个磁盘组或者RAID组当中——甚至不能位于同一个存储层级当中。SSD通常被划分为单独的组或者层,以便性能表现不会受到传统磁盘影响。因此,SSD***被用来支持存储活动频繁、对存储性能或者延迟十分敏感的虚拟机。
SSD还可以在虚拟化缓存方面发挥重要作用。Swap缓存就是例子之一。ESXi hypervisor可以利用SSD交换内存和存储当中的内容——非常类似于页面交换文件——将其作为一种在主机服务器上过度分配内存(over-commitment)的方式。在很多情况当中,像页面文件共享和内存压缩这样的技术可以实现某种层级的内存过度分配,但同时不会对虚拟机性能造成严重影响。当没有足够的物理内存进行分配时,页面交换技术可以使用磁盘空间作为补充内存。Swap技术可以大幅度提升虚拟机——或者任何应用程序——性能,但是SSD当中的固态内存可以加快swap过程,降低性能损失。ESXi允许管理员选择data store,并且设定期望的SSD交换空间大小。
使用VMware虚拟闪存文件系统(VFFS)进行格式化之后,SSD还可以被用来作为flash读缓存。这种方式允许将SSD作为swap缓存,或者传统磁盘上虚拟机的读写缓存。缓存内容通常在虚拟机挂起或者关机时被清空。如果源和目的系统拥有类似的本地HDD和SDD磁盘,那么缓存还可以跟随虚拟机一起迁移。如果无法进行迁移,那么缓存会在虚拟机迁移过程中被清空,随后在目的系统上创建新的缓存。需要注意的是flash读缓存的性能依赖于负载类型;其在读密集型虚拟机上能够发挥***作用,可以降低共享存储(比如SAN)的读取I/O需求。
***,在ESXi 5.5以及之后的版本当中,SSD将会和VMware的虚拟SAN(VSAN)技术进行集成。VSAN允许将所有主机服务器的本地存储组成资源池,之后基于QoS模型提供给虚拟机。这意味着同样可以将SSD组成资源池,重新提供给性能敏感型负载。VSAN技术对存储和SSD设定了不同的规则,比如,flash读缓存不能使用SSD,SSD不能被VMFS或者任何其他系统所格式化。这些限制会影响VSAN环境当中基于SSD的闪存配置。