用于管理在存储器架构中的存储器虚拟化的方法和系统的制作方法

文档序号:6467990阅读:155来源:国知局
专利名称:用于管理在存储器架构中的存储器虚拟化的方法和系统的制作方法
技术领域
本发明通常涉及数据存储器系统,且更具体地涉及在存储器虚拟化配置 中检测和解决竟争。
背景技术
虛拟化通常涉及在计算环境中的资源的抽象。虛拟化机制可以包括从其 他系统、应用、或终端用户交互这些资源的方式隐藏资源的物理特性。例如, 单个物理资源(例如,服务器、操作系统、应用或存储设备)可以被配置以
表现为用作多个逻辑资源;或者,多个物理资源(例如,存储设备或服务器) 可以被配置以表现为单个逻辑资源。
因此,虚拟化在如下实例中是有优势的将物理介质与存储器的逻辑呈 现分离或抽象出来对简化系统配置和管理是有用的。例如,将物理存储巻
改变和数据管理操作。虚拟化还可以通过緩存和条带化(strip)来改进数据 存取和写入的性能,通过类似于镜像(mirroring)的技术来改进数据的可用 性,并通过分布的奇偶来改进数据条带化。
具体地,在数据存储系统中,虚拟化的几种级别都是可能的。参考图1, 一些存储虚拟化级别可以被定义为如下
*由高级数据库(例如,IBM⑧通用数据库)在巻上进行的、包括条带 化或其他I/O优化技术的数据虚拟化。数据库可能通过循环复用 (round robin)或哈希技术通常在它们的表空间容器和分区上散布数 据;
*包括在文件级(例如,IBM的通常并行文件系统(General Parallel File System或GPFS )上进行的条带化的文件系统虚拟化;
*在多个级别上进行的巻或块虚拟化,诸如主机巻管理器、网络虚拟化 或存储子系统。可以实现独立驱动器的冗余阵列(Redundant Array of Independent Drives ( RAID ))功能性用于性能和可用性目的(例如,RAID 1或RAID 5 )。 *由存储子系统(例如,IBM的盘存储(DS )系列或EMC的Symmetrix)
进行的巻的存储网络虛拟化和RAID功能;以及 *由虚拟的磁带库(例如,IBM的虚拟磁带服务器(Virtual Tape Server)
或VTS)进行的虚拟化。 块虚拟化的具体例子包括
*由主机巻管理器和/或高级操作系统(例如,IBM的AIX巻管理器或
以及
*由基于网络的存储虚拟化解决方案(例如,IBM的存储区域网络 (SAN)巻控制器)进行的巻虚拟化和RAID功能;
如图1所示,在每个虚拟化级别上,从其域角色而言,在创建优化的配 置中通常涉及不同的用户或管理(admin)角色。这可能导致当在整个系统上 分析时的整体上并非优化的虛拟化配置。
例如,在每个虚拟化级别上, 一个或可能多于一个的系统管理员可以尝 试使用一个或多个上述不同的技术,例如通过管理所存储的数据的緩存、条 带化和冗余,来优化所存储的数据的性能、安全性和整体性。
在大多数情况下,在一个级别上的管理员没有足够的关于在其他级别上 的优化过程和结构的信息。因此,在一个级别中应用的优化,从在另一级别 上应用的优化技术视角上看,可能是冗余的或甚至在特定环境中可能是起反 作用的。
因此,需要可以克服上述缺点的方法和系统。

发明内容
本发明指向加速检测和解决在存储虚拟化配置中的争用的系统、方法和 对应的产品。
为了概述,已经在此描述了本发明的特定方面、优点和新颖特征。要理 解,不是所有这种优点都可以根据本发明的任何一个具体实施例来实现的。 因此,可以以实现或优化一个优点或一组优点、而不实现可以在此纟皮教导或 建议的所有优点的方式来实施或实践本发明。
提供用于管理在存储架构中的存储虚拟化的系统和方法。该方法包括
5在具有一个或多个数据存储资源的数据存储架构上检查存储虚拟化配置,以 便在配置库中存储与被应用于所述一个或多个数据存储资源的存储虚拟化配
置相关的配置数据;分析所述配置数据以在所述数据存储架构上检测虚拟化 策略矛盾;以及响应于所述虚拟化策略矛盾,自动实现对用于改进存储虚拟 化的校正动作的推荐。
根据本发明的另一方面,提供包括一个或多个逻辑单元的系统。所述一 个或多个逻辑单元被配置以进行与上述方法相关的功能和操作。在另 一 实施 例中,提供一种包括具有计算机可读程序的计算机可用介质的计算机程序产 品。该计算机可读程序当在计算机上执行时使得该计算机进行与上述方法相 关的功能和操作。
以下参考附图进一步详细提供除了特定替换例以外的一个或多个上述实 施例。但是,本发明不局限于所公开的任何具体实施例。


通过如以下提供的参考附图来理解本发明的实施例。 图1图示了根据一个实施例的在数据存储系统中的示例虚拟化级别。 图2A是根据示例实施例的数据存储架构的方框图。 图2B是根据示例实施例的改进虚拟化的数据存储架构的效率的方法的 方框图。
图3A是根据一个实施例的可能存在于虚拟化的数据存储系统的一个或 多个矛盾的方框图。
图3B是根据示例实施例的,处理在虚拟化的数据存储架构中的每个主机 的矛盾的方法的方框图。
图3C是根据一个实施例的,处理在虚拟化的数据存储架构的不同级别中 的矛盾的示例方法的方框图。
图4和5是#4居一个或多个实施例的,本发明的系统可以^操作的硬件和 软件环境的方框图。
根据一个或多个实施例,不同图中的相同编号所引用的本发明的特征、 要素和方面表示相同的、等同的、或类似的特性、元素或方面。
具体实施方式
本公开针对促进检测和解决在存储虚拟化配置中的争用的系统和对应的 方法。
根据一个实施例,自动化模块监视在存储系统的不同级别处使用的各种 虚拟化配置。自动化模块可以维持虚拟化配置和相关信息的日志。期望地, 虚拟化配置数据可以被自动化模块聚集或检索,或基于使得在每级处的存储 系统组件提供所需的信息的报告实施方式来收集。
一旦收集了虚拟化配置数据和相关信息,自动化模块分析该信息以确定
是否存在可以消除的矛盾(inconsistent)、无效率、或冗余的虚拟化实例。在一 个实施例中,可以使得修复代理(healing agent)能够通过更新在不同级别处 的虛拟化配置数据来从存储策略移除冗余或矛盾的实例。在另 一实施例中, 可以生成可以由人类操作员或其他独立实体使用的分析报告,其中,该报告 提供出麻烦区域和校正这些问题的可能解决方案。
配置信息可以关于向不同的虛拟化级别应用不同的RAID、镜像或緩存策 略,其中,或者使用在不同虚拟化级别上的垂直途径,或者对于一个虚拟化 级别处管理的数据或文件在该虚拟化级别上水平地进行。
以下,阐述许多具体细节来提供本发明的各个实施例的大概描述。可以 在没有这些具体细节的情况下或在具有一些变体的情况下,实践本发明的特 定实施例。在一些实例中,不那么详细地描述特定特征以便不模糊本发明的 其他方面。与每个元件或特征相关的细节级别应该不祸j见为量化一个特征的 新颖性或重要性超过其他特征。
参考图2A,根据一个实施例的简化数据存储架构200包括通过网络220 连接于虚拟化存储资源(例如,SAN) 250的主机(例如,计算系统)210。 主机210还可以本地地或通过网络220连接于配置库240。可以在主才几210 的操作系统212之上执行存储管理模块214,用于检测和解决在用于虚拟化 存储资源250的存储虛拟化配置中的争用(contention),如以下更详细提供的。
参考图2A和2B两者,存储管理模块214 (例如,IBM Totalstorage Productivity Center (TPC))可以被配置以巩固(consolidate)和关联数据存储架 构200上的不同虛拟级别的存储虚拟化配置。与存储虚拟化配置相关的配置 数据识别被应用于虚拟化存储资源250的配置。 一旦净皮巩固和关联的配置数 据可以被存储在配置库240中。
在一个实施例中,模块214被配置以从配置库240检索配置数据。为了确定在数据存储架构200上的虚拟化策略矛盾或冗余,模块214可以检查和 分析在配置库240中存储的配置数据(S210 );以及在检测到或确定虚拟化策 略矛盾(S220)的情况下,报告与向虚拟化存储资源250应用存储虚拟化配 置有关的潜在问题(S230)。
在一些实施例中,模块214可以响应于检测到虚拟化策略矛盾(S220) 来自动地实现用于校正动作的推荐(S240 ),该校正动作要被采取以改进应用 于虚拟化存储资源250的不同级别处的存储虚拟化。然后,模块214或其他 独立实体(例如,人类操作员或软件修复代理)可以根据所实现的推荐(S250 ) 来采取校正动作以改进存储虚拟化,如以下进一步提供的。
除了存储虚拟化配置以外,被存储在配置库240中的配置数据还可以包 括与所述一个或多个虛拟化存储资源250的存储虚拟化配置相关的巻映射。 在一些实施例中,存储管理模块214可以包括一个或多个模块,被配置以巩 固和关联与虚拟化存储资源250和它们各个组件相关的该配置和巻映射数 据。
例如,所述组件可以包括在数据存储架构中的主机系统上执行的至少一 个应用、在存储架构中的服务器系统上执行的文件系统、在存储架构中的服 务器系统上执行的操作系统、或数据库、SAN网络设备、盘存储子系统和巻、 或磁带子系统和巻。
参考图3A,在存储资源级别处提供示例数据存储架构200的不同虚拟化 级别的逻辑概念图。存储资源的例子包括由操作系统212检测的逻辑单元号 (logical unit number, LUN)或巻、和与数据库A相关的数据库表。在存储资 源级別(例如,LUN或数据库表)处,上述方法可以被用于检测虚拟化存储 资源250的一个或多个相关虚拟化限定、配置和映射。
高级存储资源管理(storage resource management, SRM)产品可以被用在 特定示例实施例中以检测和捕获资源250的虛拟化映射的至少一部分。所捕 获的信息可以通过例如生成报告来检测和指示与所选资源250相关的虚拟化 的级别。该报告可以提供存储虚拟化和巻映射的巩固和相关的视图(view)。
参考图3A,节点301到314例示了这种巩固的和相关的图的例子,作为 表示与在该例中数据库A相关的虚拟化的各种级别的虚拟化依赖图。如所示, 发现和理解与一个或多个存储资源250相关的虚拟化可以生成具有多个节点 和在所示节点之间交叉关系(cross relation)的图。图中还可以包括存储虚拟化
8配置的分析。
例如,在图3A中的节点301和302例示了,在两个分开的垂直实现的 虚拟化级别处使用了緩存(cash)机制。由于垂直地实现这两个级别,因此模块 214可以检测到在两个级别之间緩存中的冗余,并且或生成对人类操作员的 警示,或者指令修复代理以从所示虚拟化级别之一移除緩存机制的应用。
作为另一例子,在图3A中的节点303和305例示了,对两个垂直实现 的虚拟化级别应用RAID5机制。再次,由于两个级别被垂直实现,因此模块 214可以检测到在两个级别之间的应用RAID机制的冗余,并且或生成对人类 操作员的警示,或者指令修复代理从一个级别移除RAID机制。其他示例节 点309、 310和311、 313分别例示,在不同虚拟化级别处的矛盾远程賴 像和 冗余条带化配置,取决于实施方式这可以被模块214检测和校正。
在一个实施例中,模块214被配置以通过设置特定虚拟化配置策略参数 来进行相关分析。在另一实施例中,可以由例如人类管理员来设置所述策略 参数。可以由模块214检测这些策略参数的违例(violation),且可以实现或 付诸实施自动响应动作。响应动作可以包括记录所检测到的事件,报告该事 件,推荐具体的校正动作,或采取自动的动作以校正任何差异或冗余。
因此, 一个或多个实施例被实现以提供关于在不同虚拟化级别处的配置 和映射的详细分析和信息,以帮助管理员容易和自动地;险测深奥的(esoteric ) 存储架构配置情况,而不必须手动地进行分析剖析(dissection)在存储架构 上的各种虚拟化级别,这在实际中几乎是不可能的。
在特定实施例中,可以实现一个或多个算法以在从主机资源到存储子系 统的I/O路径中检测在多个级别处的冗余或矛盾的虚拟化配置和行为。这种 算法可以使用已经被收集并存储在配置库(例如TPC数据库)240中的配置 数据和相关信息,以识别、报告和期望地更新虚拟化配置,该虚拟化配置可 能正引入有害于维持虚拟化存储资源250的有效性和整体性的非优化的、矛 盾或冗余的数据存储策略。
在一些实施例中,上述算法还可以标识作为非优化的配置的根源的底层 (underlying)处理问题。以下提供关于如何可以根据一个或多个示例实施例来 实现这种算法的更多细节。
例如,参考图3B,为了确定在数据存储网络的虚拟化策略中是否存在任 何矛盾,选择要被分析的在数据存储网络中的一个或多个主机(S310)。如果确定主机配置超过处理阈值或偏离了虚拟化策略,则可以生成警告(S312)。 取决于实施方式,可以选择主机的一个或多个输入/输出路径(I/O路径)。 对于至少一个所选I/O路径,可以遍历(traverse)资源依赖关系图,且可以 沿着I/O路径维持被配置用于存储关于虚拟化技术、配置、策略违例等的信 息的处理表(或其他数据结构)(S314 )。相关信息可以被存储在先前提供的 所选主机的配置库中。如果在所选I/O路径上检测到冗余或矛盾的虚拟化策 略(S315),则可以生成警告,且更新该路径的该处理表(S316)。
一旦检测到在虚拟化中的冗余或矛盾,则主机管理模块可以确定用于校 正所检测的冗余或矛盾的最佳实践推荐是否存在(S317)。最佳实践推荐可以 基于先前已经被用于解决所检测的虚拟化问题的解决方案或机制。如果可获 得,通过生成例如可由人类操作员或自动系统来读取的输出来提供最佳实践 推荐。
如果自动机制(automation)可获得(S319),则可以调用自动机制(S320 ) 来试图解决所检测的虚拟化问题。可以通过执行已经被配置以减少或移除在
参考图3C,例示了在不同级别处的矛盾或冗余虚拟化的各种例子。例如, 如果确定巻管理器RAID5是用在特定巻上,且存储网络RAID5是用于相同 巻,或存储子系统RAID5是用于相同巻(S321 ),则针对被存储在巻上的数 据检测到保护和虚拟化的冗余级别。因此,可能的最佳实际推荐将是移除至 少一个级别的RAID5虚拟化,尤其是如果检测到多于两个级别的虚拟化 (S324 )。
根据另一方面,如果在数据库(DB)层和文件系统或主机层处緩存被存 储在存储系统的几个层上的数据,可以检测到緩存的冗余级别(S322)。如果 是,则对于在数据库或文件系统的配置中的改变的推荐将是适当的,以便取 代緩存数据,实现直接i/o存取机制,尤其是如果正在多于两个级别处进行 緩存机制(S325 )。
根据另一实施例,可以响应于检测到在数据存储系统的虚拟化中的问题, 来确定争用的存储虚拟化或配置的其他最佳实践(S323 );且可以推荐各个最 佳实践。
在不同的实施例中,可以完全以硬件的形式或完全以软件的形式、或者 硬件和软件元件的组合来实现本发明。例如,主机210可以包括受控的计算系统环境,可以按照硬件组件和被执行以进行实现由本发明的系统来预期的 结果的处理的软件代码来呈现该控制的计算系统环境。
参考图4和5,才艮据示例实施例的计算系统环境由碩/f牛环境400和软件 环境500构成。硬件环境400包括提供软件的执行环境的机器和器件;且该 软件提供如下提供的硬件的执行指令。
如在此提供的,按照具体逻辑/功能关系来描述在所示硬件元件上执行的 软件元件。但是,应该注意,还可以通过被配置和编程的处理器、例如ASIC (应用具体集成电路)、FPGA (场可编程门阵列)和DSP (数字信号处理器) 来在硬件中实现在软件中实现的各个方法。
软件环境500被划分为包括系统软件502和应用软件504的两个主要类。 系统软件502包括控制程序、诸如指令硬件如何运作和处理信息的操作系统 (OS)和信息管理系统。
在一个实施例中,存储管理模块214可以被实现为在一个或多个硬件环 境上执行以改进在存储网络中的虚拟化有效性的系统软件502或应用软件 504。应用软件504可以包括、但不限于程序代码、数据结构、固件、驻留软 件、微代码或任何其他形式的可以被微控制器读取、分析或执行的信息或例 程。
在替换的实施例中,本发明可以被实现为可从提供用于由或连接计算机 或任何指令执行系统使用的程序代码的计算机可用或计算机可读的介质存取 的计算机程序产品。为了该描述,计算机可用或计算机可读介质可以是可以 包含、通信、传播或传输用于由或连接指令执行系统、装置或设备使用的程 序的任何装置。
计算机可读介质可以是电、磁、光、电磁、红外或半导体系统(或装置 或设备)或传播介质。计算机可读介质的例子包括半导体或固态存储器、磁 带、可移动计算机盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁 盘和光盘。光盘的当前例子包括紧致盘只读存储器(CD-ROM )、紧致盘读/ 写(CD-R/W)和数字视频盘(DVD)。
参考图4,存储管理模块214的实施例可以被实现为以在诸如硬件环境 400的数据处理系统上执行的计算机可读代码的形式的计算机软件,该硬件 环境400包括通过系统总线404来耦合于一个或多个计算机可读介质或存储 器元件的处理器402。例如,计算^L可读介质或存储器元件可以包括本地存储器406、存储器介质408、和緩存存储器410。处理器402将可执行代码从 存储介质408装载到本地存储器406。緩存存储器410提供临时存储器以减 少代码从存储介质408装载代码用于执行的次数。
用户接口设备(例如,键盘、定点设备等)和显示屏幕414可以直接或 通过例如插入的I/O控制器416而被耦合于计算系统。诸如网络适配器的通 信接口单元418还可以被耦合于计算系统以使得数据处理系统能够通过插入 的私有或公共网络与其他数据处理系统或远程打印机或存储设备通信。有线 或无线调制解调器和以太网卡是少量示例类型的网络适配器。
在一个或多个实施例中,硬件环境400可以不包括所有上述组件,或可 以包括额外功能或实用性的其他组件。例如,硬件环境400可以是在诸如具 有信息处理和/或数据存储和通信能力的机顶盒、个人数字助理(PDA)、移 动通信单元(例如无线电话)、或其他类似的硬件的嵌入式系统中实现的膝上 计算机或其他便携式计算设备。
在该系统的特定实施例中,通信接口 418通过发送和接收携带代表包括 程序代码的各类信息的数字数据流的电子、电磁或光信号来与其他系统通信。 可以通过远程网络(例如因特网)、或者通过在载波上的传输来建立通信。
参考图5,存储管理模块214可以包括在从存储介质408装载到本地存 储器406中之后在操作系统212的顶部上执行的一个或多个计算机程序。在 客户端-服务器架构中,应用软件504可以包括客户端软件和服务器软件。例 如,在本发明的一个实施例中,在计算系统110或120上执行客户端软件, 且在服务器系统(未示出)上执行服务器软件。
软件环境500还可以包括用于存取在本地或远程计算网络上可用的数据 的浏览器软件508。另外,软件环境500可以包括用于接收用户命令和数据 的用户接口 506 (例如,图形用户接口 (GUI))。请注意,上述硬件和软件架 构和环境是为了示例的目的,且可以在任何类型的系统架构或处理环境上实 现的本发明的 一个或多个实施例。
还应该理解,逻辑代码、程序、模块、处理、方法和其中进行每个方法 的各个步骤的顺序。取决于实施方式,可以以任何顺序或并行地进行步骤, 除非另外在本公开中指示。另外,逻辑代码不相关、或局限于任何具体的编 程语言,且可以由在分布、非分布的或多处理环境中的一个或多个处理器上 执行的一个或多个模块组成。因此,应该理解,本发明可以被实践具有在所附权利要求的精神和范围 内的修改和替换。该说明书不意图是穷举或限制本发明到所公开的精确形式。
进一步由权利要求和等同体的全部范围来定义。
权利要求
1. 一种管理在存储架构中的存储虚拟化的方法,该方法包括检查具有一个或多个数据存储资源的数据存储架构上的存储虚拟化配置,以便在配置库中存储与被应用于所述一个或多个数据存储资源的存储虚拟化配置相关的配置数据;分析所述配置数据,以检测在所述数据存储架构上的虚拟化策略矛盾;以及响应于检测到所述虚拟化策略矛盾,自动实现对用于改进存储虚拟化的校正动作的推荐。
2. 根据权利要求l的方法,还包括根据所实施的推荐来自动地采取用于 改进存储虚拟化的校正动作。
3. 根据权利要求l的方法,其中,基于包括与所述一个或多个数据存储 资源的所述存储虚拟化配置相关的巻映射的配置数据,来实施对校正动作的 自动推荐。
4. 根据权利要求l的方法,其中,基于与在数据存储架构中的主机系统 上执行的应用相关的配置数据,实现对校正动作的自动推荐。
5. 根据权利要求l的方法,其中,基于与在所述存储架构中的服务器系 统上执行的文件系统相关的配置数据,实现对^f交正动作的自动推荐。
6. 根据权利要求l的方法,其中,基于与在所述存储架构中的服务器系 统上执行的操作系统相关的配置数据,实现对校正动作的自动推荐。
7. 根据权利要求1的方法,其中,基于与在所述数据存储架构中的SAN 组件相关的配置数据,实现对校正动作的自动推荐。
8. 根据权利要求7的方法,其中,所述SAN组件包括数据库。
9. 根据权利要求7的方法,其中,所述SAN組件包括SAN网络设备。
10. 根据权利要求7的方法,其中,所述SAN组件包括盘存储子系统和 巻,iU兹带子系统和巻。
11. 一种用于管理在存储架构中的存储虚拟化的系统,所述系统包括 检查具有一个或多个数据存储资源的数据存储架构上的存储虚拟化配置,以便在配置库中存储与被应用于所述一个或多个数据存储资源的存储虚 拟化配置相关的配置数据的逻辑单元;分析所述配置数据以检测在所述数据存储架构上的虚拟化策略矛盾的逻辑单元;以及响应于检测到所述虚拟化策略矛盾,自动实现对用于改进存储虛拟化的 校正动作的推荐的逻辑单元。
12. 根据权利要求ll的系统,还包括根据所实施的推荐来自动地采取用 于改进存储虚拟化的校正动作的逻辑单元。
13. 根据权利要求ll的系统,其中,基于包括与所述一个或多个数据存 储资源的所述存储虚拟化配置相关的巻映射的配置数据,来实施对校正动作 的自动推荐。
14. 根据权利要求ll的系统,其中,基于与在数据存储架构中的主机系 统上执行的应用相关的配置数据,实现对校正动作的自动推荐。
15. 根据权利要求ll的系统,其中,基于与在所述存储架构中的服务器 系统上执行的文件系统相关的配置数据,实现对校正动作的自动推荐。
16. 根据权利要求ll的系统,其中,基于与在所述存储架构中的服务器 系统上执行的操作系统相关的配置数据,实现对校正动作的自动推荐。
全文摘要
提供用于管理在存储架构中的存储虚拟化的系统和方法。该方法包括在具有一个或多个数据存储资源的数据存储架构上检查存储虚拟化配置,以便在配置库中存储与被应用于所述一个或多个数据存储资源的存储虚拟化配置相关的配置数据;分析所述配置数据以在所述数据存储架构上检测虚拟化策略矛盾;以及响应于所述虚拟化策略矛盾,自动实现对用于改进存储虚拟化的校正动作的推荐。
文档编号G06F12/00GK101464833SQ200810176828
公开日2009年6月24日 申请日期2008年11月25日 优先权日2007年12月20日
发明者海斯 戴维·G·范, 格雷戈里·J·蒂维斯 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1