什么是虚拟化存储??,第1张

  对于中小型架构来说存储虚拟化看起来是过大或过于昂贵的技术。但实际上许多不同规模的企业也可以从存储虚拟化中获益--通过使用商品硬件和传统的虚拟化存储引擎。

  简而言之,虚拟化存储就是将数据从磁盘中抽象出来。在传统存储部署设置中,我们受限于驱动器盘符(在Windows系统上)或逻辑单元号(LUN),并且在特定磁盘层上给定了特定的RAID(独立磁盘冗余阵列)算法。

  虚拟化存储的第一个实例可能是来自将存储迁移到虚拟服务器环境。在大多数情况下,这需要实施某种形式的共享存储。这种共享存储通常是一个通过光纤通道或iSCSI(互联网小型计算机系统接口)网络的存储局域网(SAN)。

  在这种设置中,各个服务器从通常与服务器架构相连的硬件中抽象出来。从存储的角度而言,用户可以也可以不将数据从磁盘中完全抽象出来。虚拟化存储提供了主机和磁盘的抽象化。

  这种互联的系统,无论是VMware ESXi主机或Windows Server系统,都不知道底层的磁盘是RAID 5、6或者是否可以和它直接互动。存储处理器作为存储虚拟化引擎,可以协调实际磁盘和主机系统之间的I/O。

  虚拟化存储还可以带来新的功能,比如允许透明的存储扩展。在这些功能中,最引人注目的功能之一就是自动精简配置。自动精简配置可以仅消耗实际使用的驱动器空间。存储管理员另一个青睐的功能就是重复数据删除。

  当用户在块层次上部署重复数据删除的时候,重复数据删除会检查逻辑区的磁盘使用情况并寻找相同的数据块。这些相同的数据块会被链接到第一个实例,然后重复的块会被存储系统回收。

  其他可能推动管理员转向虚拟化存储的功能是卷管理功能,比如复制、快照和迁移。

  从一个存储系统到另一个存储系统的卷或LUN复制是灾难恢复的福音。实际上,像VMware Site Recovery Manager(VMware站点恢复管理器)这样的解决方案依赖于这种复制技术,需要复制技术才能系统完好地复原到另一个站点。LUN的快照也可以非常有用。LUN快照可以像虚拟机的快照功能那样运作,整个数据集可以很快地恢复到指定的时间点。

  最后,迁移功能也可以为架构管理员带来很多方便。通过带虚拟技术(比如VMware的Storage vMotion功能)的虚拟化引擎,管理员可以进行从一个存储系统到另一个存储系统的迁移。但是这对于非虚拟化的存储部分则没有多大用处。基于SAN的迁移功能可以将一个卷从存储处理器背后的一个存储系统迁移到另一个存储系统,以便将数据从需要移除的设备中迁移出来。

  这种功能的一个主要使用情境就是将数据从旧磁盘阵列(比如使用Ultra-320 SCSI磁盘的阵列)迁移到新的磁盘阵列(比如使用串行链接SCSI(SAS)驱动器的阵列)。这可以带来更好的性能。通过虚拟化存储环境,LUN可以从一个存储系统迁移到另一个存储系统,完全不受制于所连接的系统。这主要是因为VMware ESXi主机或Windows Server连接到的不是底层存储而是存储处理器,也就是抽象层。

  虚拟化存储的一个隐性好处就是管理员可以解决非结构化数据的数据保护问题。比如说有数TB的存储,这虽然看起来也不是太多,但是如果这里面包含1KB文件的数据,你会很快发现这么多的数据很难在文件系统中管理。

  这种情况导致这种类型的数据备份变得异常繁琐。虚拟存储可以在块层次上解决这个问题,将卷复制或快照到另一个存储系统,从而满足数据保护的要求。只要存储系统可以块层次上对LUN的内容进行操作,那么虚拟存储的好处就会显现出来。

然而,这样的灵活性有一个条件:物理机能够看到所有虚拟磁盘镜像。这通常会导致存储网络成为一个使用网络文件系统(NFS)和虚拟网络附属存储(NAS)集群的开放网络。

  在传统基于块的存储中,如iSCSI和光纤通道存储区域网络(FC SAN),这意味着我们必须能够分配和操作逻辑单元号(LUN),以便在迁移虚拟机时可以迅速重新分配LUN给其它物理机。这个操作不仅是在最初部署时很难执行,随着环境越来越大和复杂,它也会很难执行。要为每个虚拟机分配一个LUN,然后还要能够迅速地将它重新分配给其它物理主机,这对IT人士来说已然是一个越来越严重的问题。

  在越来越多的环境里,IT管理员都开始使用更大的LUN来承载多个虚拟机。尽管这可以减轻分配多个LUN给多个虚拟机的重担,但无法解决分区和LUN增长的问题。

  NFS解决方案

  现在,VMware支持通过NFS启动部署虚拟机。通过可启动的NFS加载(mount)部署虚拟机是解决这个问题的一个理想方法,而且也被越来越广泛地接受。

  NFS是一个客户端或服务器系统,允许用户跨网络访问文件,并能够像操作本地文件目录一样操作这些远程文件。它是通过输出(exporting)和载入(mounting)两个过程完成的。输出过程是指NFS服务器向远程客户端提供文件访问的过程;载入过程是指文件系统对操作系统和用户变为可用的过程。NFS主要用于Unix-to-Unix文件共享,即使你的所有虚拟机都是基于Windows的,你也可以选用NFS。尽管Windows无法引导NFS,但VMware将NFS建立在它的磁盘虚拟层,所以Windows无需引导NFS。

  NFS工作站很容易创建和操作。每个物理服务器都能看到所有的虚拟磁盘镜像,而且VMotion等功能也更加容易操作。与iSCSI或FC SAN中的每个VMDK创建一个LUN不同,你可以在一个NFS卷中共置多个VMDK(VMware Virtual Disk)文件。因为VMDK只是文件,而不是真正的磁盘。  为什么使用NFS   NFS让存储和VMware管理员的工作变得容易得多,而且在很多VMware环境下都不会有任何性能损失。除了一些例外的存储厂商提供虚拟化解决方案以外,LUN管理对存储和VMware管理员来说都很具有挑战性。而有了NFS执行,与单个文件系统的交互让VMware镜像供应更加容易。

  访问控制通过内置NFS安全性被启用后,可以向一组VMware管理员提供NFS文件系统。有了NFS,就不需要微操作每一个LUN了。例如,VMware镜像在文件夹中可以根据应用类型进行分组,而且可以同时提供给一系列应用使用。

  此外,访问路径是基于传统的以太网,这不仅节省了成本,也更加易于进行故障检修。因为,大多数企业对于IP管理的了解要远远多于对FC管理的了解。

  NFS有一个优点就是访问简易。所有ESX服务器都可以连接到载入点(mount point),这使得VMotion的使用更加容易。在FC部署中,每个ESX服务器都必须能够看到所有其它ESX服务器的LUN,这很不利于配置和管理。NFS是一项共享技术,所有共享访问都是内置的。

  NFS的另一优势在于数据保护方面。尽管通过NFS提供的VMware镜像无法使用VMware VCB,但Unix或Linux主机可以载入这些镜像来进行备份。利用支持NDMP的备份软件可以备份这些镜像。通过Linux主机的方法可以访问VMware镜像,而且可以通过这种方法可以载入快照和备份卷。此外,你还可以综合利用NFS主机的复制工具保障业务持续性和灾难恢复,而不用购买VMware专门的复制工具。

  说得直白一点,NFS不是唯一的协议,它也有不太适合的时候。例如,Microsoft Cluster Service必须有成组存取(block access),而且有些情况下就需要光纤通道。iSCSI有一些很独特的功能,其中一个是它能够直接分配一个LUN给一个子操作系统,而不用通过VMware磁盘虚拟层。这些独特的功能可以快速地将特定的LUN转移出VMware环境。

  这个执行需要的不仅仅是一个标准的文件服务器或NAS,因为除了保存用户数据以外,它还是架构的一个关键部分。

  利用虚拟NAS集群解决I/O问题

  通过NAS集群虚拟化可以缓解某些物理存储相关问题,如I/O限制。

  随着负荷的不断增加,传统的NAS无法有效地扩展升级。部署多个物理服务器会迅速加重I/O带宽的负担,这样的负荷比在多数文件服务器环境中的负荷要大得多。要减轻I/O带宽负担,就必须部署更多的NAS,而这又会导致NAS蔓延。

  这使得我们必须在满足额外的NAS系统需求以解决文件服务需求的同时,还要让这些NAS系统必须能处理虚拟服务器环境不断变化的I/O需求。有了单独的NAS head,VMotion就很难适用了,唯一的其它选择是购买更大的单一的NAS head。在VMware环境下,这样的升级不是因为容量限制而进行的,而是为了提供更高的性能而升级。

  下面,我们说说虚拟NAS集群。一个虚拟NAS集群代表着整个ESX环境的一个NAS对象,即使这个对象是多个NAS head。一个虚拟NAS集群是一系列NAS节点,这些节点是作为一个整体被管理的。性能或容量的升级就成为相互独立的事了,I/O性能升级只是连接更多的节点到集群,而容量升级则是连接更多的磁盘,互不影响。

  此外,虚拟NAS集群还可以为环境提供冗余。如果集群的其中一个节点出错,该节点的文件系统会自动转向集群中的其它节点。这个功能可以保障数据访问不受中断,对于虚拟服务器环境非常重要。因为,虚拟服务器环境下的一个错误可能会导致几十个虚拟机受到严重影响,多层冗余对于这样的环境就显得尤为重要。

  Global Files System

  将虚拟服务器从一台物理机迁移到另一台物理机是一项势在必行的工作,它可以给数据中心带来很大的灵活性。而数据中心的灵活性也正是客户所寻求的。相关虚拟磁盘的迁移,尤其是从一个阵列到另一阵列或一个NAS head到另一NAS head的迁移,并不是不可能的任务,但是会非常耗费时间,并且会中断服务。

  而在虚拟NAS集群环境下,这就是一件非常简单的工作,而且不会造成服务中断。这进一步提高了虚拟环境的灵活性。例如,如果某台物理机中的好几个虚拟机存在I/O带宽需求高峰期,那么你可以将其它虚拟机磁盘镜像移开它们所在的节点来应对I/O高峰期。这个功能还可以用于虚拟NAS集群中的标准文件系统,因为它们可以根据需求进行重新分配。

  虚拟NAS和FC

  在VMware近期的白皮书中,基于FC的块I/O仍是一个尚未成熟的I/O性能领导者。尽管有些NAS供应商会对这些结果存在争议,但这并不影响我们对这二者的利用。

  首先,不到万不得已不要使用FC。现在市场上有两种不同的产品。第一种是NAS供应商(如Network Appliance)为他们的NAS head提供的FC和iSCSI服务。NAS head必须在NAS文件系统中创建一个封装的FC LUN。第二种是EMC和OnStor等公司提供的网关(Gateway)解决方案,这些解决方案允许本地FC访问存储系统。在EMC的解决方案中,这当然是一个通向Clarriion阵列的网关。OnStor允许你通过它们的NAS网关(NAS gateway)为你现有的存储添加一个有Global Files System的虚拟NAS集群。

服务器虚拟化对网络存储有着重大影响,甚至成为了驱动某些IT机构实施网络存储源动力服务器虚拟化解决方案提供功能依赖,并要求具有基本网络存储器正如此在部署服务器虚拟化解决方案中,数据存储基础设施成为了个关键构建块 在网络存储器上,存储虚拟机映象使虚拟机能够在物理服务器的间移动从而维持负载平衡确保高效益和最大资源利用率存储虚拟机,映象还能创建虚拟机多个拷贝为复制和灾难恢复作好准备,另外它能使裸机恢复操作更加简单 将多个虚拟机整合到个单物理服务器上,能力还受到该服务器本地磁盘容量大小限制为了获得最大可伸缩性并且使资源利用率达到最高你需要建立存储基础设施网络,以便跟上整合计划步伐部署服务器虚

VMware和Hyper-V都采用了虚拟硬盘方式(VHD-virtual hard disk),虚拟机的硬盘本质上都是作为一个文件来存放的。如果希望为某台虚拟机提供存储空间,您需要做的仅仅是创建一个VHD文件并把它链接到虚拟机。然而,当真正涉及操作细节时会有大量的问题产生。  虽然创建一个VHD文件本身并不是非常的困难,但是有些时候会遇到各种各样的问题。这些文件必须以最适合目标虚拟机的方式来创建。  保存VHD文件  ·通常最经济的选择是直连存储(DAS),这也是最容易配置的一种方式。DAS最适合于那些仅仅运行了少量虚拟机的主机。这些虚拟机不允许运行那些磁盘访问密集型的应用程序,因为这台服务器上的所有虚拟机都在共享相同的硬盘资源。虽然一般来讲磁盘的存储空间大小不是问题,,而多个虚拟机同时并发的I/O需求则很容易导致性能瓶颈。  ·网络连接存储(NAS)通常是在网络上保留了一个共享磁盘卷,用于存放虚拟磁盘文件。但是我之前也提到过,最重要的是了解您采用的虚拟化软件自身的限制,例如微软就不支持把Hyper-V的VHD文件保存在NAS系统上。  ·存储局域网络(SAN),和NAS一样这是一种基于网络的存储方式,这是两种方式的相似点。它们在架构上最大的不同就是SAN是专用于存储系统的网络(它通常也采用了存储系统独有的协议)。在这种方式下,存储子系统的数据流量方式也有别于存储于NAS系统上的文件。采用SAN是最昂贵虚拟存储解决方案,同时也是性能最好的方式。  物理存储和虚拟存储的区别  对于一个新的虚拟化系统管理员而言,掌握物理存储和虚拟存储架构之间的区别往往会遇到一些困难。例如,Hyper-V采用了虚拟的IDE(Integrated Drive Electronics)硬盘控制器模式。虚拟机被要求必须从IDE硬盘上启动,然而这并不意味着Hyper-V虚拟主机上的虚拟机只能选择从本地直连存储系统(DAS)上启动。  虚拟机可以选择从一个硬盘驱动器文件启动,而这个文件被映射到一个虚拟的IDE控制器上,从而模拟出虚拟机从IDE硬盘启动的假象。而实际上,该VHD文件本身可以位于本地磁盘(可以是IDE、SATA、eSATA、PATA、SAS或SCSI磁盘)上。同样,把该VHD文件放到SAN系统上也是可以的。  最大化存储资源池利用率  无论您采用了DAS或者是SAN作为虚拟服务器的存储资源池,存储系统的性能都是必须要考虑的问题,因为所有的虚拟机都在争夺硬盘资源。这里有一些方法可以实现对存储资源池的性能优化。  对于新用户而言,可以使用RAID0+1存储系统架构。这种架构通过条带化的方式,在提供更佳性能的同时也提供了镜像的容错功能。另外,请确保您的存储阵列采用了10,000rpm的硬盘系统。  在SAN当中,如果可能的话尽量为每台虚拟机选择独立的光纤适配器通道。这可以防止光纤通道本身成为连接瓶颈。  最后,一些虚拟化平台在创建虚拟硬盘时,可以选择是创建固定大小还是可以动态扩展的磁盘。固定空间的磁盘在创建的时候需要花费更多的时间,但是通常也提供了更好的性能,因为它们采用了物理磁盘上连续的数据块。除去性能降低之外,动态扩展磁盘文件还有一些问题就是可以降低管理员对它的关注,所以可能会发生在扩展后物理卷溢出的情况。  当然,所有的这些办法都是在假设物理磁盘资源池里包含了两个或更多虚拟磁盘的前提下。如果可以,请尽量为每个VHD文件创建独立的物理磁盘卷(或LUN)。

从系统的观点看,有三种主要的存储虚拟化方法:

基于主机的虚拟存储;

基于存储设备的虚拟存储;

基于网络的虚拟存储。

方法1:基于主机的虚拟存储

基于主机的虚拟存储依赖于代理或管理软件,它们安装在一个或多个主机上,实现存储虚拟化的控制和管理。由于控制软件是运行在主机上,这就会占用主机的处理时间。因此,这种方法的可扩充性较差,实际运行的性能不是很好。基于主机的方法也有可能影响到系统的稳定性和安全性,因为有可能导致不经意间越权访问到受保护的数据。这种方法要求在主机上安装适当的控制软件,因此一个主机的故障可能影响整个SAN系统中数据的完整性。软件控制的存储虚拟化还可能由于不同存储厂商软硬件的差异而带来不必要的互操作性开销,所以这种方法的灵活性也比较差。

但是,因为不需要任何附加硬件,基于主机的虚拟化方法最容易实现,其设备成本最低。使用这种方法的供应商趋向于成为存储管理领域的软件厂商,而且目前已经有成熟的软件产品。这些软件可以提供便于使用的图形接口,方便地用于SAN的管理和虚拟化,在主机和小型SAN结构中有着良好的负载平衡机制。从这个意义上看,基于主机的存储虚拟化是一种性价比不错的方法。

方法2:基于存储设备的虚拟化

基于存储设备的存储虚拟化方法依赖于提供相关功能的存储模块。如果没有第三方的虚拟软件,基于存储的虚拟化经常只能提供一种不完全的存储虚拟化解决方案。对于包含多厂商存储设备的SAN存储系统,这种方法的运行效果并不是很好。依赖于存储供应商的功能模块将会在系统中排斥JBODS(Just a Bunch of Disks,简单的硬盘组)和简单存储设备的使用,因为这些设备并没有提供存储虚拟化的功能。当然,利用这种方法意味着最终将锁定某一家单独的存储供应商。

基于存储的虚拟化方法也有一些优势:在存储系统中这种方法较容易实现,容易和某个特定存储供应商的设备相协调,所以更容易管理,同时它对用户或管理人员都是透明的。但是,我们必须注意到,因为缺乏足够的软件进行支持,这就使得解决方案更难以客户化(customzing)和监控。

方法3:基于网络的虚拟存储

基于网络的虚拟化方法是在网络设备之间实现存储虚拟化功能,具体有下面几种方式:

1 基于互联设备的虚拟化

基于互联设备的方法如果是对称的,那么控制信息和数据走在同一条通道上;如果是不对称的,控制信息和数据走在不同的路径上。在对称的方式下,互联设备可能成为瓶颈,但是多重设备管理和负载平衡机制可以减缓瓶颈的矛盾。同时,多重设备管理环境中,当一个设备发生故障时,也比较容易支持服务器实现故障接替。但是,这将产生多个SAN孤岛,因为一个设备仅控制与它所连接的存储系统。非对称式虚拟存储比对称式更具有可扩展性,因为数据和控制信息的路径是分离的。

基于互联设备的虚拟化方法能够在专用服务器上运行,使用标准操作系统,例如Windows、Sun Solaris、Linux或供应商提供的操作系统。这种方法运行在标准操作系统中,具有基于主机方法的诸多优势--易使用、设备便宜。许多基于设备的虚拟化提供商也提供附加的功能模块来改善系统的整体性能,能够获得比标准操作系统更好的性能和更完善的功能,但需要更高的硬件成本。

但是,基于设备的方法也继承了基于主机虚拟化方法的一些缺陷,因为它仍然需要一个运行在主机上的代理软件或基于主机的适配器,任何主机的故障或不适当的主机配置都可能导致访问到不被保护的数据。同时,在异构操作系统间的互操作性仍然是一个问题。

3 基于路由器的虚拟化

基于路由器的方法是在路由器固件上实现存储虚拟化功能。供应商通常也提供运行在主机上的附加软件来进一步增强存储管理能力。在此方法中,路由器被放置于每个主机到存储网络的数据通道中,用来截取网络中任何一个从主机到存储系统的命令。由于路由器潜在地为每一台主机服务,大多数控制模块存在于路由器的固件中,相对于基于主机和大多数基于互联设备的方法,这种方法的性能更好、效果更佳。由于不依赖于在每个主机上运行的代理服务器,这种方法比基于主机或基于设备的方法具有更好的安全性。当连接主机到存储网络的路由器出现故障时,仍然可能导致主机上的数据不能被访问。但是只有联结于故障路由器的主机才会受到影响,其他主机仍然可以通过其他路由器访问存储系统。路由器的冗余可以支持动态多路径,这也为上述故障问题提供了一个解决方法。由于路由器经常作为协议转换的桥梁,基于路由器的方法也可以在异构操作系统和多供应商存储环境之间提供互操作性。

网络的虚拟存储化技术是当前存储虚拟化的主流技术,它当前在商业上具有较多的成功产品。典型的网络虚拟存储技术主要包括网络附加存储NAS(Network Attached Storage)和存储区域网络SAN(Storage Area Network)。由于这两种系统的体系结构、通信协议、数据管理的方式不同,所以NAS主要应用于以文件共享为基础的虚拟存储系统中,而SAN主要应用在以数据库应用为主的块级别的数据共享领域。存储区域网络SAN是当前网络存储的主流技术。

虚拟化存储的实现可以分布在从主机到存储设备之间路径的不同位置上,由此可把基于网络的存储虚拟化细分为基于交换机的虚拟化、基于路由器的虚拟化、基于存储服务器端的虚拟化。

搭建存储服务器需要先准备一台拥有足够存储空间和配置的服务器,并配置相关的网络连接。

对于 Windows 系统,可以使用 Windows Server 搭建存储服务器:

安装 Windows Server 操作系统。

启动服务器,进入控制面板。

在“程序”选项卡中,选择“启用或关闭 Windows 功能”。

选择“存储服务器”功能,然后单击“确定”。

按照提示,完成存储服务器的配置。

对于 Ubuntu 系统,可以使用 Samba 搭建存储服务器:

在终端中,执行以下命令安装 Samba:sudo apt-get install samba

创建一个存储文件夹,并配置存储权限。

编辑 Samba 配置文件 /etc/samba/smbconf,添加以下内容:

[共享名称]

path = /路径/到/存储文件夹

writable = yes

browsable = yes

guest ok = yes

重启 Samba 服务:sudo service smbd restart

在客户端中,添加存储服务器,并验证是否能够正常连接。

注意:以上步骤是大致步骤,具体步骤及详细配置方式可以参考官方文档或者搜索教程

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 什么是虚拟化存储??

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情