高性能需求不断增长 存储虚拟化架构被业内看重

企业安装中的存储容量和处理能力不断快速发展,以及对高可用性需求的不断增长,这就要求存储区域网 (SAN) 架构在无需停机的情况下能无缝添加存储和性能元件。虚拟化技术通过多个服务器和存储子系统实现了SAN存储资源的整合与统一管理。

产业目标就是推动存储虚拟化的成本下降,同时又不影响性能,而且非常灵活,能应用于各种类型的系统和网络,毋需投入大量时间和资源。

目前,存储虚拟化可通过存储子系统级、主机级和存储网络级等三种架构级来实现。每种方法都有其独特的优势,不过在功能上也有一定的局限性。

存储虚拟化的需求

"存储虚拟化"这个术语是指将可用存储空间分为虚拟卷,而不受诸如磁盘驱动器、RAID 子系统等实际存储元件的物理布局或拓扑结构的限制。通常情况下,虚拟卷呈现给操作系统一种物理磁盘的抽象,使操作系统像使用磁盘一样使用。

存储区域网需要集中统一管理大量存储空间。许多企业安装中的存储容量和处理能力快速发展,以及对高可用性和全天候运行的需求,这就要求SAN架构能在不停机的情况下无缝添加存储和性能元件。我们最好通过存储虚拟化来实现上述目标。

虚拟卷和所谓逻辑单元 (LUN) 的主要区别在于,虚拟卷可以创建、展开、删除、移动、有选择性地呈现,独立于虚拟卷所处的存储子系统。虚拟卷可以包括不同存储子系统上的具有不同特性的存储空间(如 LUN 的数量和尺寸不一),而且还能展开成任何可用存储空间。

这种功能的重要性可以从处理电子商务网站的峰值工作量中得到充分验证。采用能够随意添加/删除服务器的虚拟管理器,支持卷在服务器间的即时转移,这是管理正常工作量和峰值工作量间巨大差异的最好解决方案。

虚拟卷独立于物理存储空间,这一点至关重要,确保我们无需停机或中断数据存取工作就能升级或替换过时的存储子系统。

此外,存储虚拟化还能通过软件应用完成卷的分配,不必管理员手动操作。数据管理功能通过快照、远程镜像、虚拟磁带等存储应用得到大幅增强,这些应用都需要创建和展开虚拟卷。我们只有借助虚拟化基础设施才能实施无服务器备份功能。总而言之,没有存储虚拟化技术,SAN 很难发挥真正作用。

存储虚拟化应在不影响系统内部性能的情况下提供以下功能 :

◆一致性。不管物理元件和拓扑结构如何,都要创建虚拟存储的统一视图;

◆单点管理。 企业策略服务器、操作系统和文件系统的独立性都要求实现单点管理,这样才能建立最低成本的 SAN;

◆独立的存储子系统。支持无倾向性地选择最佳系统类型;

◆SAN支持不同厂商设备。在日新月异的市场中实现平稳发展;

◆向服务器灵活分配存储空间。高效满足用户需求;

◆全面支持SAN的专门标准。如高可用性、可扩展性、安全性等。

现有的存储虚拟化方法

存储虚拟化成为热点技术以来,许多供应商开始采用不同的系统结构实现存储虚拟功能,但其完整性和容量水平有所差异。主要的存储虚拟化方法包括:

主机级虚拟化

实现存储虚拟化的方法之一是通过运行在服务器级的存储管理软件进行,这种方法的主要优势在于,它能让多个存储子系统与多个服务器并行工作。

这种方法的主要难点则在于,它要求整个SAN资源(磁盘或LUN)预先在多个服务器上分区。虚拟化只能在预先分配的存储空间上执行,这就丧失了SAN的主要优势之一,而且也影响了卷相对于服务器的独立性。

通常说来,所有 LUN 要分配给特定的服务器,这就限制了单个存储子系统上的服务器数量。此外,再打个比方说,要是虚拟卷创建在两个 LUN 的存储空间上,那么该虚拟卷就很难从一个服务器轻松转移到另一个服务器上,尤其是在同一个 LUN 上还创建了其它卷的情况下更是如此。主机级虚拟化通常也需要通过一定的分区并行机制和 LUN 掩码技术来扩大管理功能。此外,还要依靠 LAN 连接实现服务器间的同步,这就会影响整个SAN的可靠性。

存储子系统级的虚拟化

这种方法最初用在上世纪 90 年代的大型机中,是目前最常用的存储虚拟化方法之一。具体操作是在特定存储子系统的存储空间上创建虚拟卷,以实现虚拟化功能。将所有SAN存储资源集中到一个存储池中并同时管理多个存储子系统上的虚拟卷,这就要求用其它方法(通常只有连接单一类型的RAID子系统的同质SAN才采用的方法)来补充和完善该方法。

在存储系统级创建虚拟卷可以独立于服务器,但通常需要采用统一的管理结构,只适用于设备一致的环境,灵活性有限。

网络虚拟化

这是一种最有趣的方法,由于其独立于存储设备和服务器,因此很可能是最后胜出的方法。存储虚拟化的关键要求之一就是让不同的存储空间看上去而且工作起来就像统一的存储资源一样。网络化虚拟可确保存储技术能够跨不同厂商的设备工作。

网络虚拟化可采用两大架构实施:

◆对称法:不同设备嵌在存储网络基础架构的数据路径中。

◆非对称法:不同设备独立于存储网络基础架构的数据路径之外。

处于数据路径内的对称虚拟化

图 1 显示了对称虚拟化(有时也称作带内虚拟化)的一般架构。这种方法要求设备(计算平台及相关存储器)安装在存储用户(如SAN连接的服务器)和存储资源之间,至少要在数据流中发挥作用。对称虚拟化的主要缺点在于,它会形成SAN瓶颈,从而限制SAN的性能和可扩展性,并使大规模高度可用配置的设计工作大为复杂化。

对称虚拟化方法要求所有应用服务器的数据都经过统一的计算机。为了避免严重影响性能,该计算平台要确保整个SAN的吞吐能力不受影响,因此往往要购买昂贵的硬件配置。即便采用高性能硬件,可扩展性仍然成问题,因为对称设备的最大带宽是固定的。

举例来说,在连接 50 个应用服务器的SAN中,如果要求每个服务器的吞吐能力达到每秒 100 MB,那么整个SAN的吞吐能力即为 100 Mbps X 50=5 Gbps。我们可以连接多个 RAID 子系统,这样很容易使SAN整体性能超过这一要求,但基于标准 Pentium III 处理器的典型对称设备(symmetric appliance)采用 64/66 PCI 总线传输,其速度不会超过 520 Mbps (由于数据需要通过设备 PCI 总线进出,因此持续速率为 260 Mbps),这比规定要求要低得多。毫无疑问,随着SAN的规模越来越大,这一问题会更加严重。

构建支持 20 个服务器、具备一定性能的对称设备所需的硬件成本可高达 25,000 美元以上,如果采用高可用性配置的话,成本至少还要翻番。

一些对称设计试图通过给设备添加高速缓存来避免性能问题。这种方法会给设备的存储器子系统造成更大压力。由于这样那样的原因,分布式高速缓存(作为RAID子系统的一部分)比集中式高速缓存(作为存储管理设备的一部分)效率要高得多。

高速缓存的使用会使高可用性 (HA) 配置(该配置要尽量避免单点故障)变得非常复杂,此外也会影响可扩展配置(随着设备的增多,负载也随之加重)。如果高速缓存用于多种设备,那么就需要采用一定的高速缓存一致性策略。RAID 控制器实践证明,高速缓存一致性机制是相当复杂的,而且价格不菲。

为了实现服务器端的高性能,在使用两个或更多主机总线适配器(HBA)时,应在每个服务器上安装一个软件驱动程序。该特性普遍用于对称和非对称解决方案中。这两种方法都需要在服务器上安装软件,以确保在吞吐能力提高时提供冗余和高性能(多路径)解决方案。

处于数据路径之外的非对称性虚拟化

该方法通过结合采用设备和代理来创建并管理虚拟卷,同时确保数据能在服务器和存储子系统之间直接传输(见图2)。

通过让多个存储子系统与多个服务器并行工作,整体性能得以提高,达到乃至超过 FC 结构的最大带宽。

在非对称虚拟化(有时也称作带外虚拟化)中,元数据在数据路径外进行处理。设备作为元数据中心工作,检查物理存储空间,并分配虚拟卷,而SAN中每个服务器上的代理则负责实际的虚拟卷映射。代理从设备处检索卷配置,并向操作系统呈现虚拟卷,使操作系统像使用磁盘一样使用。操作系统向虚拟卷发送 I/O 时,代理截住 I/O,将卷的逻辑地址转换为物理地址,并直接向存储设备发送 I/O。

该架构具有对称虚拟化的灵活性,同时又不会影响性能,而且还避免了高昂的硬件成本。设备无需处理实际的数据传输工作,因此可以采用小型的低成本设备。

高可用性 (HA)SAN配置可通过设备的简单冗余实施。极高的可扩展性能通过存储域的松散互联或类似设计方式实现,还能充分发挥非对称虚拟技术的作用,设备不用存储待用的 I/O,也不需要集群、高速缓存一致性算法及其它复杂机制,以避免限制现实生活中企业SAN的实际扩展。

在服务器中安装多个HBA,并通过软件代理处理负载平衡和故障转移功能,就能实现高可用性服务器配置(与对称法一样)。

结合使用SAN设备和代理建立非对称架构是实现存储虚拟化的最佳方法。非对称虚拟化相对其它架构而言,具有高可扩展性、高性能、高可靠性及低成本等优势。

图1

图2