您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > VMwareVirtualVolume(VVol)虚拟卷技术初探
VMwareVirtualVolume(VVol)虚拟卷技术初探介绍随着6月底vSphere6.0Beta试用的正式开始,VMware开发历时三年的VirtualVolume虚拟卷功能终于要揭开她神秘的面纱了。早在12年VMware就公布了正在开发VirtualVolume的消息,而直到ESXi6.0这一功能才被正式加入产品。同时由于VirtualVolume的重要性,这一次的试用活动还将VirtualVolume作为一个单独的Beta项目来管理(申请用户需要先申请6.0Beta,再单独申请VirtualVolumeBeta),足以感受到全公司上下对其的重视程度。那么到底什么是VirtualVolume呢?它与vSphere上的VMDK和虚拟机有什么联系?本文将为大家一探究竟。虚拟卷的作用:VMwareVirtualVolume虚拟卷功能提供了一种的新的范例,可以让单个虚拟机和它的磁盘(而不是LUN)成为存储系统的管理单元。VirtualVolume将虚拟磁盘和其他的虚拟机文件封装起来,原生地储存在存储系统上。通过使用专门的API接口(vSphereAPIsforStorageAwareness,VASA),存储系统可以感知到虚拟机和它们相关的内容。通过VASA,vSphere和下层存储系统可以建立起双向的带外(out-of-band)通信,使得数据服务和一些虚拟机操作可以卸载到存储上,比如快照、克隆等。对于支持VirtualVolume的存储系统的带内(in-band)通信,vSphere仍然使用标准的SCSI和NFS协议。这就使得对VirtualVolume的支持可以在任意类型的存储上实现,如iSCSI、FibreChannel、FCoE和NFS。虚拟卷的主要概念:VendorProvider(VP):由存储厂商提供的插件。它可以使用一系列带外管理API,VASA等。VP可以通过VASAAPI将存储阵列的功能呈现给vSphere。StorageContainer(SC):SC某种意义上和datastore相同,但它更注重于物理存储上的数据块(chunk)分配。SC基于将符合特定应用SLA的VMDK组合后通过VASAAPI“翻译”至符合要求的存储设备上。ProtocolEndpoint(PE):PE是主机到存储系统的接入点,由存储管理员创建。其上所有的路径和策略通过PE管理。PE兼容iSCSI和NFS。它的目的是替代LUN和挂载点(mountpoint)。虚拟卷的优势:VirtualVolume的主要优势包括:当数据服务在应用层级上启用时实现操作转换更精细颗粒度的资源分配提升了存储利用率使用基于策略管理(PolicyBasedManagement)的通用管理创建VM存储策略示例:VMwareVirtualVolume(VVOL):解决VMDK与存储脱节问题传统的VMware存储环境可以看成三个层次,由上到下依次为VMDK(VMwareVirtualMachineDiskFormat)格式的虚拟磁盘,VMFS(VMwareVirtualMachineFileSystem)及硬件存储设备。虚拟化环境对存储的需求与传统业务有很大的不同,例如在StoragevMotion实现之前,vMotion,HA,FT这类涉及迁移的功能对共享存储的依赖是不可避免的。如果虚拟机运行的业务具有很大的差异性,意味着很难为共享的LUN进行优化和策略配置,同时共享又增加了对设备性能的要求。再如,虚拟机的快速部署及备份的需求,需要虚拟磁盘文件能够快速的整体拷贝或快照,而目前环境下只能在文件级实现。针对这些虚拟化独有的需求点,如何能够让存储更好的支持,是VVOL要解决的核心问题。虚拟机在存储上体现为一个个独立的VMDK文件,从虚拟化软件角度,可操作的存储对象就是VMDK,执行的克隆,快照,备份和恢复都以VMDK为目标,这些文件级的操作在效率上比存储级要低很多。而从存储角度,操作的对象是划分的LUN,快照等操作也是与LUN绑在一起的,对于LUN这个粒度进行的策略配置很难适应所有存储于该LUN的VMDK,VMDK与LUN的不匹配造成的空间浪费也不容小视。VMDK管理不知道存储,存储管理不知道VMDK。VVOL就是要打破这种脱节,让二者结合满足用户对每个虚拟机进行存储配置的需求,在存储级实现以虚拟机为粒度的灵活高效的管理。解决方案:虚拟卷(VVOL)解决的方法就是让存储知道虚拟机的存在,并在存储级实现虚拟机对VMDK的所有操作(快照,克隆,策略等)。这里引入的虚拟卷(virtualvolume),是架设在虚拟机和存储之间的一座桥,让虚拟机成为存储管理和存储策略的基本单元。存储角度,虚拟卷类似于LUN,操作和策略配置都绑在虚拟卷上。虚拟化软件角度里看到的虚拟卷就是一个VMDK,一个快照或者一个配置文件,现有虚拟架构和操作流程无需任何改变。虚拟卷能够感知虚拟机的数据操作,并将其转发给存储执行。具体实现的方式又引入几个概念:StorageContainer(SC):ESXi中看到的虚拟存储池。背后可跨多个不同类型,不同厂商的存储设备,提供虚拟资源管理,访问控制等功能。ProtocolEndpoint(PE):处理虚拟机IO的组件。每个存储设备对应一个PE,虚拟机的IO发到PE,由PE定向到对应的VVOL。StorageProvider(SP):实现vCenter和存储设备间的通信。VMware提供标准接口,由存储厂商在存储端实现,使用VASA(VMwarevStorageAPIsforStorageAwareness)接口与vCenter间建立存储配置通道。VVOL之前,VASA信息流是单向的,存储只是将信息(磁盘类型,数据功能)提供给vCenter,而VVOL实现了双向通信,vCenter可以将虚拟机对存储的需求推送到存储设备。一个虚拟机由若干个VVOL组成,每个配置文件及VMDK都是一个VVOL,存储在某个存储设备上,虚拟机与存储设备之间由上述三个核心组件组成,由上至下,共同支撑实现了VVOL操作流程。应用效果:VM-Aware存储用户想创建一个虚拟机,选择在某个StorageContainer上创建,vCenter根据用户的选择生成一份profile,profile中包含用户对于该虚拟机的存储需求(可用性,性能指标等),这份profile会通过StorageProvider下发给存储设备执行。如果其中配置了高可用,那么存储设备会为该虚拟机创建多个互为克隆的VVOL,从而保证了虚拟机的可用性。甚至为虚拟机创建的多个VVOL可以放置在不同的存储设备上,且互为镜像,保证无论是存储设备还是服务器挂掉都无法阻止虚拟机的运行。VVOL环境中,虚拟机快照将十分简单,虚拟机级别的快照命令直接传递到存储设备,设备对VVOL创建快照,同样快照的创建频率和保留时间策略也可以由虚拟化软件直接配置下发给存储执行。存储级别的快照能力被充分利用,也带来很大效率提升。在虚拟桌面(VDI)应用里,启用LinkedClone后,只读的母版镜像VVOL可以由存储设备根据策略放置在SSD区域,不仅提升性能,而且可以避免VDI启动风暴造成IO过高。什么是Vmware虚拟卷?它是如何工作的?虚拟卷(VVOLs)是新的概念,VMware工作在它之上能够改善存储分配。存储空间目前趋向基于金、银和铜的模型类型分配,这就迫使虚拟化管理员选择最匹配他们的需求的存储层。VMwareVVOL试图通过更紧密地匹配虚拟机(VM)的需求和底层存储来解决这个问题。换句话说,存储空间可以根据VM的需求动态地分配。VVOL创建甚至可以绑定应用程序空间分配。这是一个前卫的更细粒度的模型。要使用VVOL,存储硬件必须支持vStorage应用程序接口。VASA(存储管理集成编程接口)将允许存储硬件和消费者对话。VMware将发送一个“这是我所需要的东西”的请求给存储硬件,而存储硬件或满足请求或应答一个“你的请求不能满足,但能够提供以下帮助”类型的信息。你可以将VMwareVVOL看作是结合个人VM的存储容器。容器包括一个数据存储区,一组数据服务和元数据。VAAI和VASA以及vVOLVMWarevSphereStorageAPI-ArrayIntegration(VAAI),也被称为硬件加速或硬件减负API,是一组用于VMWarevSphereESXi主机与存储设备通信的API,其定义了一组“storageprimitives(原语)”,允许ESXi主机将某些存储操作从主机下嫁给存储,从而减少ESXi主机的资源开销,极大改进了storage-intensiveoperation的性能,例如克隆、zeroing等等。VAAI的目标是帮助存储厂商提供硬件协助来加速那些能在存储硬件上更高效完成的VMWareI/O操作。如果没有VAAI,vSphereVMkernelDataMover执行的虚拟机克隆或迁移涉及软件数据移动。DataMover通过发起I/O从源读取数据块并写入目标DataStore。有了VAAI,如果可能的话,DataMover会使用APIPrimitive将操作下嫁给阵列。例如,如果想要在阵列内部将虚拟机VMDK文件从一个DataStore复制到另一个DataStore,存储会被要求直接完成整个复制操作。只要有数据移动请求且硬件加速功能被启动了,DataMover就会首先使用硬件加速。如果硬件加速失败,DataMover再转用传统的软件方式来移动数据。几乎在任何情况下,硬件数据移动相比软件数据移动的执行要好的多,消耗更少的CPU资源,更少的storagefabric带宽。最初的vSphere4.1实现发布了三个VAAIprimitive,且仅适用于块存储(FC、iSCSI、FCoE),没有给NAS使用的VAAIprimitive。vSphere5.0引入了用于NAS和vSphereThinProvisiong的VAAIprimitive。VAAI的5大功能:1.块清零,即创建厚格式虚拟机文件很快搞定2.全拷贝,即将拷贝文件操作下放到存储(表现在VM克隆,StoragevMotion等)3.硬件辅助锁定(ATS),体术VMFS锁操作速度4.ThinProvisioning5.UNMAP空间释放(vSphere5.0新加入)在5.5进行了增强在VMWare的Enterprise版本就提供了VAAI。===================================================VMWarevSphereStorageAPI-StorageAwareness(VASA)是vSphere5.0引入的一组API,实现存储阵列与vCenter的集成管理功能。在没有VASA之前,想要确认物理LUN的特征属性,比如LUN_ID、LUN是否是ThinProvisoned、是否启用了去重、是否在分层存储上、LUN的RAID级别等等存储端的信息,是无法直观的从vCenter获得的。管理员只能通过自制表格来记录或给LUN使用有意义的名字来解决问题,但这显然不是好方法,而这正是VASA的用武之地。VASA可以显示物理存储设备的功能,存储阵列合作伙伴可以创建被称为vendorprovider的插件,她位于vCenter和存储阵列中间,作为粘合剂。VendorProvider从阵列获取storagecapability并告知vCenter,vCenter就可以在UI中显示这些信息了。除了LUN的信息,VASA还可以提供阵列健康状态、配置和容量信息。VASA框架的第一个版本只能为每一个LUN呈现单个“StorageCapabiity”数据对象给vCenterServer,“StorageCapabiity”包括名字和详细描述信息,名字可以显式的说明其所要描述的信息,而详细信息则是具体每一个信息的呈现。例如,你有一个DataStore,其StorageCapability名称是Performance,详细信息为组成该
本文标题:VMwareVirtualVolume(VVol)虚拟卷技术初探
链接地址:https://www.777doc.com/doc-2866531 .html