用于管理自动化资源提供管理系统的方法和系统的制作方法

文档序号:6558767阅读:181来源:国知局
专利名称:用于管理自动化资源提供管理系统的方法和系统的制作方法
技术领域
一般而言,本发明涉及资源提供管理(RPM)系统。具体来说,本发明涉及用于管理自动化RPM系统的方法、系统和计算机程序产品。
背景技术
在当今的业务环境中,企业必须收集和有效地使用大量数据。这已经导致了数据中心的开发。最近几年,数据中心得到大大的发展。它们的规模增大,在业务环境中重要性增强。随着这种增长,信息技术(IT)单位管理着供应商、硬件、软件、操作系统、配置和补丁程序的复杂的混合体。结果,跟上配置变化,同时最大限度地缩短系统停机时间和最大限度地提高人员工作效率变得越来越困难。IT单位以及其人员手动管理这些资源所承担的负担通常取决于单位的规模(用户的数量)以及用户加入或离开该单位或以别的方式改变角色的速度。为提高效率并减轻IT单位以及其人员的负担,某些单位已经使用了自动执行或部分地自动执行某些任务的软件应用。
在通信网络上可以运转这样的软件应用以根据建立的标准向用户提供资源,这些软件应用能够自动化或部分地自动化某些向用户提供某些受限制类型的资源的任务。使用这样的软件应用的系统这里一般称为“RPM系统”。
然而,通过使用自动化资源提供工具,该工具使得IT管理员不必手动进行所需的更改和维护数据中心所需要的更新,只能部分地解决提供的问题。随着数据中心操作的空前发展,由数据中心进行管理的不同的目标端点的数量也越来越大。从不同的硬件和软件配置所产生的不同的自动化提供操作的数量也会越来越多。这种数量的增大也使得IT管理员额外地需要对这些端点和提供操作进行有效的管理,以便在越来越复杂的计算环境内有效地改善他们所提供的服务并降低成本。因此,应该提供用于管理自动化RPM系统的方法、系统和计算机程序产品。

发明内容
本发明的实施例提供了用于管理自动化资源提供管理系统的方法、系统和计算机程序产品。在本发明的实施例中,该方法以从资源提供管理系统中接收多个提供操作开始。这些提供操作中的每一个提供操作都链接到特定作业。然后,就将要对哪些作业进行管理作出判断。然后,将作业组合在一起,并识别作业依赖关系。然后,调度作业以供执行。在适当的时间,调用作业。在执行作业时对它们进行审核。


在所附的权利要求中阐述了本发明的实施例的新颖的特征。然而,本发明本身的实施例,以及优选的使用模式,进一步的目标和优点,通过参考对说明性的实施例的详细描述并参考附图,将得到最好的理解,其中图1是可以在其中实现本发明的实施例的数据处理系统的网络的图形表示。
图2是根据本发明的实施例的可以作为服务器来实现的数据处理系统的方框图。
图3是显示可以在其中实现本发明的数据处理系统的方框图。
图4是根据本发明的实施例的集成了用于管理自动化RPM系统的工作负荷调度器的系统的图形表示。
图5是根据本发明的实施例的集成了用于管理多个自动化RPM系统的工作负荷调度器的系统的图形表示。
图6是根据本发明的实施例的工作负荷调度器任务流的流程图。
具体实施例方式
现在参考附图,图1描述了其中可以实现本发明的实施例的数据处理系统的网络的图形表示。网络数据处理系统100是其中可以实现本发明的实施例的计算机网络。网络数据处理系统100包含网络102,该网络是用来在各种设备和在网络数据处理系统100内连接在一起的计算机之间提供通信链路的媒介。网络102可以包括诸如有线、无线通信链路或光纤电缆之类的连接。
在所描述的示例中,服务器104与存储单元106一起连接到网络102。此外,客户端108、110和112也连接到网络102。这些客户端108、110和112可以是个人计算机或网络计算机。在所描述的示例中,服务器104向客户端108-112提供诸如引导文件、操作系统映像和应用程序之类的数据。客户端108、110和112是服务器104的客户端。网络数据处理系统100可以包括额外的服务器、客户端及没有显示的其他设备。在所描述的示例中,网络数据处理系统100是因特网,网络102表示使用传输控制协议/因特网协议(TCP/IP)协议套件彼此进行通信的网络和网关的世界范围内的集合。因特网的核心是主节点或主机计算机之间的高速数据通信线路构成的主干网,包括成千上万的商业、政府、教育及其他路由数据和消息的计算机系统。当然,网络数据处理系统100还可以作为许多不同类型的网络来实现,例如,内部网、局域网(LAN)或广域网(WAN)。图1只作为示例,而不对本发明的实施例的体系结构作出限制。
请参看图2,根据本发明的实施例,描述了可以作为服务器(如图1中的服务器104)实现的数据处理系统的方框图。数据处理系统200可以是包括连接到系统总线206的多个处理器202和204的对称多处理器(SMP)系统。或者,也可以使用单处理器系统。与系统总线206相连接的还有存储器控制器/高速缓存208,它提供了到本地存储器209的接口。I/O总线桥路210连接到系统总线206,并提供到I/O总线212的接口。如本文所述,存储器控制器/高速缓存208和I/O总线桥路210也可以集成在一起。
连接到I/O总线212的外围组件互连(PCI)总线桥路214提供了到PCI本地总线216的接口。许多调制解调器可以连接到PCI本地总线216。典型的PCI总线实现方式将支持四个PCI扩展槽或插入式连接器。到图1中的到客户端108-112的通信链路可以利用通过插入式连接器连接到PCI本地总线216的调制解调器218和网络适配器220来提供。
更多的PCI总线桥路222和224为更多的PCI本地总线226和228提供了接口,从这些接口,可以支持更多的调制解调器或网络适配器。如此,通过数据处理系统200,可以连接到多个网络计算机。如文本所描述的,存储器映射图形适配器230和硬盘232也可以直接或间接地连接到I/O总线212。
那些本领域普通技术人员将认识到,图2所描述的硬件可以不同。例如,除了所描述的硬件,也可以使用诸如光盘驱动器之类的其他外围设备,或者代替所描述的硬件。所描述的示例不对本发明的实施例的体系结构作出限制。
图2中所描述的数据处理系统可以是,运行高级交互执行(AIX)操作系统或LINUX操作系统的IBM eServer pSeries系统,该系统是位于纽约Armonk的IBM公司的产品。
现在参考图3,该图描述了说明在其中可以实现本发明的实施例的数据处理系统的方框图。数据处理系统300是客户端计算机的一个示例。数据处理系统300使用外围组件互连(PCI)本地总线体系结构。虽然所描述的示例使用了PCI总线,但是也可以使用诸如加速图形端口(AGP)和工业标准体系结构(ISA)之类的其他总线体系结构。处理器302和主存储器304通过PCI桥路308连接到PCI本地总线306。PCI桥路308还可以包括集成的存储器控制器和处理器302的高速缓冲存储器。到PCI本地总线306的更多的连接可以通过直接组件互连或通过插入式电路板进行。在所描述的示例中,局域网(LAN)适配器310、小型计算机系统接口(SCSI)主机总线适配器312和扩展总线接口314通过直接组件连接而连接到PCI本地总线306。与此对比,音频适配器316、图形适配器318和音频/视频适配器319通过插入到扩展槽中的插入式电路板连接到PCI本地总线306。扩展总线接口314为键盘和鼠标适配器320、调制解调器322和更多的存储器324提供了连接。SCSI主机总线适配器312为硬盘驱动器326、磁带驱动器328和光盘驱动器330提供了连接。典型的PCI本地总线实现方式将支持三个或四个PCI扩展槽或插入式连接器。
操作系统在处理器302上运行,并用于协调和提供对图3中的数据处理系统300内的各个组件的控制。操作系统可以是诸如Microsoft Corporation所推出的Windows XP之类的市场上可买到的操作系统。诸如Java之类的面向对象的编程系统可以与操作系统一起运行,并提供从在数据处理系统300上执行的Java程序或应用程序对操作系统的调用。“Java”是Sun Microsystems,Inc.的商标。操作系统、面向对象的编程系统和应用程序或程序的指令位于诸如硬盘驱动器326之类的存储设备上,并可以加载到主存储器304中以供处理器302执行。
那些本领域普通技术人员将认识到,图3中的硬件可以随实现方式不同而不同。除了图3中所描述的硬件之外,或者替代图3中所描述的硬件,还可以使用诸如闪速只读存储器(ROM)、等效的非易失性存储器或光盘驱动器之类的其他内部硬件或外围设备。此外,本发明的实施例的进程还可以应用于多处理器数据处理系统。
作为另一个示例,数据处理系统300可以是被配置为不依赖于某种类型的网络通信接口而启动的独立系统。作为另一个示例,数据处理系统300可以是个人数字助理(PDA)设备,该个人数字助理配置了ROM和/或闪速ROM,以便提供非易失性存储器,用于存储操作系统文件和/或用户生成的数据。
图3中所描述的示例和上文描述的示例不对本发明的体系结构作出限制。例如,除PDA的形式之外,数据处理系统300还可以是笔记本电脑或手持式计算机。数据处理系统300还可以是公用电话亭或Web设备。
本发明的实施例的机制利用由商业化工作负荷调度产品所使用的技术来处理必须在自动化数据中心的过程中加以管理的大量任务和目标。提供管理包括分配要在分布式系统上执行的工作,使用调度器来在适当的时间调度工作,识别并管理工作负荷之间的依赖关系,前提条件和共同要求,以及对终结点的限制,包括资源限制。当完成时,将构成工作流步骤的分布式进程关联回到任务或它们被执行的最高级别,以便允许由任务所有者进行检查。
当对数据中心进行操作时,对许多分布式目标启动和管理了大量的操作。传统的工作负荷管理器通过管理多个分布式计算操作以对限制性资源或在时间的限制内执行业务任务,解决了类似的问题。通过将分布式工作负荷管理的这些已知技术应用到管理已经自动化的数据中心任务上来,就可以实现数据中心自动化。这些技术大大地简化了数据中心管理的问题,如将多个补丁程序应用到大量的均质服务器目标和将补丁程序应用的结果关联的任务。随着安全补丁程序管理变得越来越关键,操作员能够判断所涉及的每一个步骤的进度、成功还是失败至关重要。
在数据中心中执行许多不同的提供活动。这些活动可以包括下列各项·在目标中安装和更新代理·安装、卸载、备份和恢复软件·调度补丁程序并应用更新·为许多目标安装、备份和恢复操作系统映像·分配存储卷·发现新目标·部署应用和建立测试环境·其他提供活动虽然这些提供活动都已自动化,但是,在其中管理了大量的目标的典型数据中心,管理和监视所有这些活动是困难的,特别是当需要考虑提供顺序依赖关系和工作负荷时。
可以使用针对由数据中心进行管理的许多分布式目标启动和管理大量的提供操作的技术。这些技术可以大大地简化上文所描述的数据中心管理问题,并提供管理处理大量的目标的提供操作的有效方式。分布式工作负荷调度系统可以自动化、计划和控制工作的处理。它可以·进行工作负荷计划·调度活动·解决工作负荷依赖关系·启动和跟踪作业·自动化工作负荷的管理以最大限度地降低生产工作负荷处理中的人为错误·促进工作负荷监视·支持集中式系统管理,以便它可以从单一控制点自动化、监视和控制本地和远程系统上的工作流·报告工作的状态、进度或结果·以别的方式处理工作这样的分布式工作负荷系统可以是与RPM集成的商业系统。在另一个实施例中,共同的工作负荷管理算法和分布式任务调度器可以直接集成到RPM中。
工作负荷调度器创建工作负荷计划,该计划包括用户、作业流、作业、依赖关系、时间限制、目标资源、日历、工作站、管理域以及基于数据中心提供操作的业务进程周期。为了管理工作负荷计划,工作负荷调度器管理了许多任务,大多数任务是数据中心所依赖的日常提供任务。为了管理这些日常任务,工作负荷调度器还创建与工作负荷计划一起工作的任务流。
例如,工作负荷调度器必须跨网络地调度提供作业。假设其中一个提供作业要求将具有某些先决条件的安全补丁程序调度并应用到GRID(对等)环境中的大量计算机上。此特定提供作业具有依赖于另一个验证目标机器的当前补丁程序级别的提供作业的依赖关系。然后,可以使用工作负荷调度器基于指定的日期和时间跨网络地调度这些作业。可以根据目标的功能、应用或类型将作业组合在一起。可以对可以并行地运行的作业的数量设置限制。通过识别依赖关系,如补丁程序级别验证作业是否成功地完成,是否存在新的补丁程序文件,以及此提供操作所需要的任何相关资源是否可用,工作负荷调度器能够确保正确的处理顺序。还可以为不成功的提供操作设置自动恢复过程。例如,如果在某些GRID计算机上部署新的补丁程序的操作失败,则将由工作负荷调度器自动地调用为取消提供设置的步骤。
在一个实施例中,工作负荷调度器提供了工作的状态的实时视图。数据中心管理员可以利用此功能来查询状态并识别提供操作中的任何问题。
图4是根据本发明的实施例的集成了用于管理自动化RPM系统的工作负荷调度器的系统的图形表示。为了执行复杂的提供计划,工作负荷调度器402为数据中心430的所有提供要求创建工作负荷计划404。工作负荷计划可以计划包括用户、作业流、作业、依赖关系、时间限制、目标资源、日历、工作站、管理域以及业务进程周期,及其他与工作相关的任务。工作负荷调度器402也生成任务流406以执行工作负荷计划404。图6是任务流的示例。任务流对于管理数据中心的日常提供要求非常有用。任务流406产生作业流408。作业流408可以包含诸如工作负荷作业410、440和450之类的多个工作负荷作业。工作负荷作业定义包括命令脚本、操作员的安全角色、恢复选项、恢复作业、审核作业、当前条件、资源信息、执行历史以及作业定义。诸如工作负荷作业410之类的每一个工作负荷作业都链接到RPM系统414中的诸如提供操作412之类的提供操作。RPM系统414是数据中心430的自动化资源提供系统。
在一个实施例中,工作负荷操作员或管理员通过配置作业流、添加或删除一个或多个作业、自定义日历、管理安全角色、管理配置参数、管理依赖关系和资源以及执行其他管理操作来对任务流进行管理。
当预定时间来临时,直接在系统监视器的控制下对任务流406进行调用。一个调用提供操作412的命令发送到RPM414,如本示例中的线条416所示,这会导致提供操作412被调用和执行。如果提供操作412失败,则从任务流中调用恢复作业,以在RPM系统中执行恢复活动,如本示例中的线条420所示。在工作负荷调度器402中定义的审核作业监视和审核提供操作的结果,如本示例中的线条418所示。结果存储在日志422中。作业调度器控制台424允许管理员对所有事件进行管理。
图5是根据本发明的实施例的集成了用于管理多个自动化RPM系统(如图4中的RPM系统414)的工作负荷调度器(如图4中的工作负荷调度器402)的系统的图形表示。工作负荷调度器502创建工作负荷计划504,其中,包含所有数据中心530、532和534的所有提供要求。工作负荷调度器502也生成任务流506以执行工作负荷计划504。任务流506产生作业流508。作业流508可以包含诸如工作负荷作业510、540和550之类的多个工作负荷作业。诸如工作负荷作业510之类的每一个工作负荷作业都链接到特定RPM系统的特定提供操作,如分别链接到RPM系统514、524和528的提供操作512、522和526。RPM系统514、524和528分别是数据中心530、532和534的自动化资源提供系统。
当预定时间来临时,直接在系统监视器的控制下对任务流506进行调用。一个调用诸如提供操作512之类的提供操作的命令被发送到工作负荷作业所链接到的特定RPM系统,如分别连接到RPM系统514、524和528的线条516、542和544所示,从而导致提供操作512被调用和执行。如果提供操作失败,则从任务流中调用恢复作业,以在RPM系统中执行恢复活动,如本示例中的线条520所示。在工作负荷调度器502中定义的审核作业监视和审核提供操作的结果,如本示例中的线条518所示。结果存储在日志538中。作业调度器控制台536可供管理员对所有事件进行管理。
在另一个实施例中,不是具有一个处理所有RPM系统的所有任务的任务流,工作负荷调度器可以生成单独的任务流,针对每一个RPM系统都有一个任务流。
现在请参看图6,图6是根据本发明的实施例的诸如图4中的任务流404的工作负荷调度器任务流的流程图。任务流中所执行的准确的步骤随着所使用的特定实现方式和特定工作负荷调度器而不同。下列示例是Tivoli工作负荷调度器(Tivoli WorkloadScheduler)的任务流,这是位于纽约Armonk的IBM公司的产品。该方法通过参考编号600来表示,从创建诸如物理服务器之类的工作站开始(步骤602)。接下来,创建任何必需的用户(步骤604)。然后,创建参数(步骤606)。参数可以是需要与用户配对的任何属性,并随不同的实现方式而不同。创建用于调度作业的日历(步骤608)。创建域(步骤610)。域的概念用于对设备进行管理。域是一组设备。然后,创建工作站类(步骤612)。工作站类对工作站的操作进行控制。工作站类是由工作负荷调度器进行控制的逻辑类对象,这些对象映射到数据中心的物理对象(工作站)。创建作业定义(步骤614)。作业定义是需要执行的任何工作流操作。创建作业流(步骤616)。作业流是执行工作流操作所需要的作业的集合。作业流包括作业和该作业的任何依赖关系。创建逻辑资源小册子(步骤618)。逻辑资源小册子说明将要使用什么资源。创建目标对象(步骤620)。目标对象是在其上面将要执行作业的系统。上文所描述的步骤随数据中心的特定实现方式和任何提供策略而不同。
步骤604-614是分布式任务。步骤602,以及616-620是共同的任务。共同的任务是依赖于环境和特定资源的任务。分布式任务是类属任务,并且不取决于特定资源或环境。
本发明的实施例极大地简化了数据中心管理的许多问题,如针对许多分布式目标管理大量的提供操作,以及将结果关联。本发明的实施例提供了管理处理大量的目标的提供操作的有效方式。
值得注意的是,尽管是在完全运转的数据处理系统的上下文中描述本发明的实施例的,那些本领域普通技术人员将认识到,本发明的实施例的进程能够以存储了指令的计算机可使用的介质的形式和各种各样的形式进行分发,本发明的实施例同样适用,不管实际用于进行分发的承载信号的介质的特定类型是什么。计算机可使用的介质的示例包括可记录类型的介质,如软盘、硬盘驱动器、RAM、CD-ROM、DVD-ROM、传输类型的介质,例如使用诸如射频和光波传输的传输形式的数字和模拟通信链路、有线或无线通信链路。计算机可使用的介质可以采取编码格式的形式,这些编码在特定数据处理系统中实际使用时被解码。
前面对本发明的实施例的描述提供了说明和描述,但不是详尽的说明或将本发明的实施例限于所说明的形式。那些本领域普通技术人员将认识到,可以进行许多修改。所选择的实施例只是为了最好地说明本发明的原理和实际应用,并使本领域普通技术人员懂得,带有各种修改的各种实施例也是可以接受的。
权利要求
1.数据处理系统中用于管理自动化资源提供管理系统的方法,该方法包括从资源提供管理系统接收多个提供操作;将多个提供操作的每一个特定提供操作链接到多个工作负荷作业中的对应的特定工作负荷作业;从多个工作负荷作业中指定要管理的一组工作负荷作业;将要管理的工作负荷作业的集合分组;识别要管理的该组工作负荷作业的每一个作业的作业依赖关系;调度要管理的该组工作负荷作业的每一个作业;调用要管理的该组工作负荷作业的每一个作业;以及审核要管理的该组工作负荷作业的每一个作业。
2.根据权利要求1所述的方法,进一步包括提供要管理的该组工作负荷作业的实时状态。
3.根据权利要求1所述的方法,可以由管理员手动修改下列步骤从多个工作负荷作业中指定要管理的一组工作负荷作业、将要管理的工作负荷作业的集合分组、调度要管理的该组工作负荷作业的每一个作业。
4.根据权利要求3所述的方法,管理员使用作业调度器控制台来修改下列步骤从多个工作负荷作业中指定要管理的一组工作负荷作业、将要管理的工作负荷作业的集合分组、调度要管理的该组工作负荷作业的每一个作业。
5.根据权利要求1所述的方法,其中,由工作负荷调度器来执行下列步骤从多个工作负荷作业中指定要管理的一组工作负荷作业、将要管理的工作负荷作业的集合分组、识别要管理的该组工作负荷作业的每一个作业的作业依赖关系、调度要管理的该组工作负荷作业的每一个作业、调用要管理的该组工作负荷作业的每一个作业以及审核要管理的该组工作负荷作业的每一个作业。
6.根据权利要求1所述的方法,进一步包括响应工作负荷作业失败的情况,调用恢复作业。
7.用于管理自动化资源提供管理系统的计算机程序产品,该计算机程序产品包括其中包含了计算机可使用的程序代码的计算机可使用的介质;计算机可读取的程序代码,被配置为实现前面任何权利要求中的一种方法。
8.用于管理自动化资源提供管理系统的数据处理系统,该数据处理系统包括用于从资源提供管理系统接收多个提供操作的接收机制;用于将多个提供操作的每一个特定提供操作链接到多个工作负荷作业中的对应的特定工作负荷作业的链接机制;用于从多个工作负荷作业中指定要管理的一组工作负荷作业的指定机制;用于将要管理的工作负荷作业的集合分组的分组机制;用于识别要管理的该组工作负荷作业的每一个作业的作业依赖关系的识别机制;用于调度要管理的该组工作负荷作业的每一个作业的调度机制;用于调用要管理的该组工作负荷作业的每一个作业的调用机制;以及用于审核要管理的该组工作负荷作业的每一个作业的审核机制。
9.根据权利要求8所述的数据处理系统,进一步包括用于提供要管理的该组工作负荷作业的实时状态的状态机制。
10.根据权利要求8所述的数据处理系统,可以由管理员手动修改下列步骤从多个工作负荷作业中指定要管理的一组工作负荷作业、将要管理的工作负荷作业的集合分组以及调度要管理的该组工作负荷作业的每一个作业。
11.根据权利要求10所述的数据处理系统,其中,管理员使用作业调度器控制台来修改下列步骤从多个工作负荷作业中指定要管理的一组工作负荷作业、将要管理的工作负荷作业的集合分组以及调度要管理的该组工作负荷作业的每一个作业。
12.根据权利要求8所述的数据处理系统,其中,指定机制、分组机制、识别机制、调度机制、调用机制以及审核机制是工作负荷调度器的一部分。
13.根据权利要求8所述的数据处理系统,进一步包括响应工作负荷作业失败的情况,用于调用修复作业的调用机制。
全文摘要
本发明提供了用于管理自动化资源提供管理系统的方法、系统和计算机程序产品。在实施例中,该方法以从资源提供管理系统中接收多个提供操作开始。这些提供操作中的每一个提供操作都链接到特定作业。然后,就将要对哪些作业进行管理作出判断。然后,将作业组合在一起,并识别作业依赖关系。然后,调度作业以供执行。在适当的时间,调用作业。在执行作业时对它们进行审核。
文档编号G06Q10/00GK1858790SQ20061008253
公开日2006年11月8日 申请日期2006年4月28日 优先权日2005年5月3日
发明者李歌雨, 迈克尔·乔治·伯兰, 崔韦杰 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1