VMwareVI3中的虚拟存储层:无忧配置VMware技术白皮书iiVMware,Inc.VMwareVI3中的虚拟存储层:配置无忧VMwareVI3中的虚拟存储层:配置无忧文章编号:WP-023-INF-01-01您可以在我们的网站找到最新的技术文档,其网址为:。如果对本文档有任何意见和建议,请将您的反馈信息发送至:docfeedback@vmware.com©2007VMware,Inc.,保留所有权利。受若干项美国专利保护,专利号是6,397,242、6,496,847、6,704,925、6,711,672、6,725,289、6,735,601、6,785,886、6,789,156、6,795,966、6,880,022、6,961,941、6,961,806、6,944,699、7,069,413、7,082,598、7,089,377、7,111,086、7,111,145、7,117,481、7,149,843、7,155,558、7,222,221、7,260,820、7,260,815、7,269,683、7,275,136、7,278,030、7,277,999、7,277,998和7,281,102,以及多项正在申请的专利。VMware、VMware“箱状”徽标及设计、VirtualSMP和VMotion都是VMware,Inc.在美国和/或其他法律辖区的注册商标或商标。此处提到的所有其他商标和名称分别是其各自公司的商标。VMware,Inc.3401HillviewAvePaloAlto,CA94304www.vmware.comVMware,Inc.iii目录简介................................................................................................................................4存储虚拟堆栈概述............................................................................................................4配置存储阵列层...............................................................................................................5配置ESXServer层..........................................................................................................7配置虚拟机层...................................................................................................................9结语................................................................................................................................94VMware,Inc.VMwareVI3中的虚拟存储层:配置无忧简介为一个虚拟环境配置存储资源需要经过几个抽象层,用户需要将此视作一个堆栈以便按照完整的路径成功完成配置。用户首先会在存储阵列中看到多个关于存储资源配置方式的选项;接着会在ESXServer级别看到若干关于存储资源编址和配置方式的选项;然后在虚拟机级别又会看到多个决定虚拟磁盘分区和编址方式的选项。由于存储堆栈中这三层的每一层都存在多个配置选项,而且相互之间的区别并不明显,因此用户很容易搞不清楚实际存在怎样的虚拟到物理映射关系。本文的目的就是详细说明这些选项和相关术语,从而帮助用户理解这些选项之间的复杂关系。存储虚拟堆栈概述由于ESXServer能够对存储资源进行编址并为虚拟机提供虚拟磁盘,因此在引入存储虚拟设备之前就已经有几个混合的虚拟层了。即使没有实际的存储虚拟设备,这些存储虚拟层也有助于减轻管理工作、提高资源利用率(即,减少已分配但未使用的存储资源),以及提供更加灵活的配置选项。VMware的虚拟机文件系统(VirtualMachineFileSystem,VMFS)所带来的好处可以在虚拟环境中发挥很大的作用。图1是一个简单示意图,显示了VirtualInfrastructure3环境中虚拟机的存储技术堆栈的三个层。最下面的是存储阵列层,由多个物理磁盘(显示为逻辑磁盘)组成。存储阵列层的上面是操作系统层,在虚拟环境中被ESXServer所占据。这一层采用逻辑单元号(logicalunitnumber,LUN)的方式对VMFS卷中的存储资源进行编址。堆栈的顶端由虚拟机层占据,这一层通过将ESXServer识别到的存储资源的一部分分配给虚拟机的虚拟磁盘来对存储资源进行编址。VMwareVI3中的虚拟存储层图1:VI3中存储堆栈的三个层配置存储阵列层在存储阵列中,有多个用于配置存储资源的选项。通常,存储管理小组需要确定所需的LUN大小和保护级别。某些情况下,他们还会询问用户所需的性能级别。RAID-1和RAID-5是通常所提供的保护选项。还有一个选项是连接多个磁盘组成单个LUN,也就是说该LUN将会占据多个磁盘并在这些磁盘上进行分散读写。大多数情况下,主机OS(在本文中为ESXServer)并不知晓为LUN所提供的RAID保护级别。主机OS也不知道逻辑LUN与其物理组件之间存在何种关系。VMware,Inc.5VMwareVI3中的虚拟存储层:配置无忧图2:在ESXServer级别的LUN配置图2显示了最常见的几种LUN配置:A.整个物理磁盘B.连接在一起的多个磁盘C.一个大容量物理磁盘的一部分D.占据多个磁盘所有空间的分散读写集E.占据多个磁盘部分空间的分散读写集请注意LUN配置会影响I/O性能特征。保护级别也会影响性能。例如,如果正在以同步模式将LUN复制到远程站点,则由于延迟,整体性能可能会显著降低。光在真空中的传播速度限制会导致每传播198千米(123英里)便有1毫秒的延迟。如果复制采用的是同步模式,则每隔198千米(123英里)会有2毫秒的延迟,因为主站点必须在收到辅助站点的远程写入确认后才认为写入操作完成。6VMware,Inc.VMware,Inc.7VMwareVI3中的虚拟存储层配置ESXServer层在ESXServer系统中存储空间显示为带有LUN的卷,就网络连接存储而言,即NFS卷。ESXServer会在发现一个LUN后将其当成一个存储目标来对待。此后,ESXServer会将该LUN当作一个裸磁盘映射(rawdiskmap,RDM)的裸磁盘来进行编址,或者当作一个VMFS卷或一个多区域VMFS卷中的一个区域来进行管理。作为一个RDM时,整个LUN通常由单个虚拟机(VirtualMachine,VM)进行编址,不能被分区或被当作多个虚拟机的分段来编址。要获得小于LUN容量的RDM,方法之一是只对LUN的部分空间进行编址以便用于指定的VM,但这样做会损失或浪费掉LUN的剩余空间。如果使用这种方法,当您有一个100GB的可用LUN,而VM仅需要一个50GB的RDM时,该LUN的一半空间就会被浪费。为单个VM分配一个单独的LUN(可通过为单个VM分配一个RDM或一个VMFS卷实现)就是我们所说的“隔离存储”。作为VMFS卷的一部分时,LUN会成为一种可以用作多个VM或多个ESXServer的合并/群集存储池的存储资源。这种配置(“合并存储”)是可集中管理且可按需增加容量的大容量存储池的一部分,因而可以提高存储资源的利用率和灵活性。图3显示了相对于隔离存储,合并/共享存储池的几点优势。VMwareVI3中的虚拟存储层:配置无忧图3:比较隔离存储和共享存储池ESXServer虚拟机将其虚拟磁盘文件存储在经过特殊格式化的逻辑容器(即数据存储区)中,数据存储区可以存在于不同类型的物理存储设备中。可以使用VirtualInfrastructure(VI)Client来创建数据存储区,数据存储区可以使用一个或多个物理设备上的磁盘空间。在ESX3.xServer中,数据存储区可以是FC磁盘、iSCSI磁盘、NFS或ESXServer的本地磁盘。图4显示了为ESXServer配置存储资源时可以进行的所有选择。如果使用本地存储,用户将无法利用启用VMwareDistributedResourceSchedule(DRS)和HighAvailability(HA)所需的VMotion功能。然而,如果使用共享存储,用户可以从VMFS、RDM或网络连接存储(Network-AttachedStorage,NAS)几个选项中进行选择。实际上,单个ESXServer经过配置可以同时访问位于这三种不同选项上的数据存储区。此外,如果使用的是VMFS,用户还可以从FCSAN存储或iSCSISAN存储中进行选择。有关RDM和iSCSI的详细信息超出了本文的介绍范围,用户可以在VMware.com网站提供的SAN配置指南(VI3_SAN_Config_Guide)中找到相关信息。8VMware,Inc.VMwareVI3中的虚拟存储层图4:ESXServer上提供的存储选项配置虚拟机层通过创建虚拟磁盘(VMDK),用户可以将ESXServer识别到的存储资源的一部分分配给虚拟机,从而在虚拟机中实现存储资源的编址。用户可以通过编辑虚拟机设置(属性)分配一个新的磁盘或为现有磁盘分配更多空间。如果RDM是首选的访问方法,用户还可以选择指向一个现有的RDM。使用现有的VMFS卷创建一个虚拟磁盘时,用户需要选择为该VDMK分配哪个数据存储区中的空间。对于要在群集中两个或两个以上ESXServer之间移动(例如通过Vmotion和HA功能移动)的虚拟机,群集中的所有节点必须都能识别到该数据存储区。为了在虚拟环境中使用磁盘而对其进行识别和格式化的具体步骤因操作系统而异。另外,在客户操作系统级别,也有多种不同的方法可将已在底层进行了扩容的磁盘识别为大容量磁盘。这种配置超出了本文的讨论范围,在此不做介绍。结语在虚拟环境中配置存储需要综合考虑很多相互依赖的因素:有些是物理元素,有些是抽象元素。将不同的存储虚拟级别看成一个由多个互不相同的层组成、层与层之间线性关联(这种关联关系对于每个层来说未必可见)的堆栈,可以使设置过程变得简单明了。按照从存储阵列到ESXServer再到虚拟机的步骤执行操作,用户可以正确无误地完成虚拟存储配置。VMware,Inc.9