通过存储性能指标,可以评估监控存储系统支持服务器虚拟化环境的具体情况,这一过程中有许多因素要考虑。
服务器虚拟化的存储配置可以是Hypervisor或基于网络的文件或数据块的存储设备。当存储配置为 Hypervisor,Hypervisor控制着访问许可,问题是两者之间的关系是,对于Hypervisor的任何影响都会影响到 Hypervisor上运行的应用上;性能指标,并且理解其对于Hypervisor的整体影响,非常重要。
配置为Hypervisor的存储对虚拟机而言就像是个SCSI设备,而通过网络提供的存储需要额外的驱动器,这和iSCSI类似。
Hypervisor配置的存储可以是光纤,iSCSI,NFS(在Hyper-V环境下为CIFS)或本地存储,不过当虚拟机连接存储设备时,存储以一般的SCSI设备形式工作,因此虚拟机使用客户端操作系统中通常的SCSI驱动器。Hypervisor将标准虚拟机SCSI驱动器的二进制指令翻译成光纤,iSCSI,NFS或本地SCSI设备可以识别的协议。二进制编解码的操作通过Hypervisor或使用IntelVT-x或 AMDRVI指令结构的处理器完成。
从虚拟化存储硬件层看,最重要的指标是读写延迟值,或者特定层面读取或写入磁盘所需的时间。其次重要的指标就是IOPS值。不过你不能只看着 IOPS而对每秒的读写Kbps不闻不问。IOPS反映了操作层的性能;而Kbps反映的则是系统的实际读写性能。无论从Hypervisor或存储设备上看,IOPS是通常最受关注的指标,不过延迟才是最佳指标,其反映了存储是否存在问题。IOPS值会随着写入的数据块数量发生变化,并且在NFS或 CIFS系统中,由于协议中未包含延迟指标,IOPS值很难获取。
有哪些可用工具呢?
为了获取所有这些存储性能指标,你可以借助NetApp的Balance,SolarWindshield的 StorageManager,Quest的vFoglightStorage和其它直接和硬件通讯的产品。这类产品可以通过存储管理接口标准(SMI- S)或直接通过存储厂商协议检测存储硬件层。
对于Hypervisor层,可以使用如VMwarevCenterOperation、vKernel、VMturbo和 QuestvFoglight这类的工具,通过直接询问Hypervisor或间接使用Hypervisor的集中管理控制台,比如 VMwarevCenter监测Hypervisor层。
最后,客户端操作系统提供自身的工具来收集存储性能指标。
整合了存储管理接口标准和基于Hypervisor的工具提供了最佳的功能组合来诊断延迟,IOPS和读写速度。因为只要Hypervisor 不是在机器繁忙的状态,这些工具所提供的数据几乎是与其同步的。而在Hypervisor极度繁忙的情况下,硬件指标可能是反映存储性能的最佳选择。但是,由于Hypervisor中的资源相互关联,确保Hypervisor没有达到极度繁忙的状态总是必要的。
如果你的环境中并没有存储层的工具,比如在一些iSCSI服务器环境中,基于Hypervisor的工具或许是最佳选择。