CN102007756B - 用于数据处理环境中的动态供应的方法和装置 - Google Patents

用于数据处理环境中的动态供应的方法和装置 Download PDF

Info

Publication number
CN102007756B
CN102007756B CN200980113842.5A CN200980113842A CN102007756B CN 102007756 B CN102007756 B CN 102007756B CN 200980113842 A CN200980113842 A CN 200980113842A CN 102007756 B CN102007756 B CN 102007756B
Authority
CN
China
Prior art keywords
new parent
module
data handling
handling system
assembly
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200980113842.5A
Other languages
English (en)
Other versions
CN102007756A (zh
Inventor
A·A·卡尔夫
A·莫因德拉
R·A·伦德尔
A·塞加尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN102007756A publication Critical patent/CN102007756A/zh
Application granted granted Critical
Publication of CN102007756B publication Critical patent/CN102007756B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing

Abstract

披露了用于在诸如服务交付环境之类的数据处理系统环境中动态地引入要在供应解决方案期间使用的新组件的技术。例如,在管理数据处理系统中组件供应的供应系统中,一种在所述数据处理系统中动态地供应一个或多个新组件的自动化方法包括所述供应系统执行以下步骤。所述供应系统在所述数据处理系统的运行时期间接受新组件的注册,其中所述新组件在所述运行时期间之前未在所述数据处理系统中事先注册,并且进一步地,其中所述注册包括获取有关一个或多个必要组件和与所述新组件关联的配置中的至少一个的信息。所述供应系统通过使能在所述数据处理系统中使用所述已注册的新组件来实现对所述数据处理系统的修改。

Description

用于数据处理环境中的动态供应的方法和装置
技术领域
本发明一般地涉及数据处理系统、面向服务的体系结构和用户接口。具体地说,本发明提供了一种用于在诸如服务交付环境之类的数据处理系统环境中动态地引入要在供应解决方案期间使用的新组件的装置和计算机方法。
背景技术
随着面向服务的体系结构的不断普及,开始使用面向服务的模型开发解决方案。当需要在数据中心环境内部署基于服务的解决方案时,供应必须确保已供应和启动解决方案使用的所有服务。无法实现上述操作将导致解决方案在运行时失败。
现有的系统支持在实现系统时定义的组件。对于这些组件,参数和相关性都是公知的。但是,随着解决方案变得更为复杂,无法静态地定义交付托管环境时的所有必要的组件及其要求。
由于经由常规用户接口定义用于收集有关每个必要组件(prerequisite)及其参数的信息的屏幕,因此有必要能够在引入组件时指定每个服务/组件的要求以及接下来使用此信息在提交供应请求期间选择呈现给用户的屏幕。由于提交请求的用户所扮演的角色和具有的专业知识可能不同于定义服务/组件的用户并因此可能缺乏必要的知识,所以还必须在引入服务时定义每个参数的限制。
但是,传统的供应系统和用户接口并未充分考虑到在运行时添加组件。
发明内容
本发明的原理提供了用于在诸如服务交付环境之类的数据处理系统环境中动态地引入要在供应解决方案期间使用的新组件的技术。
例如,一种在管理数据处理系统中组件供应的供应系统中的动态地在所述数据处理系统中供应一个或多个新组件的自动化方法包括所述供应系统执行以下步骤。所述供应系统在所述数据处理系统的运行时期间接受新组件的注册,其中所述新组件在所述运行时期间之前未在所述数据处理系统中事先注册,并且进一步地,其中所述注册包括获取有关一个或多个必要组件和与所述新组件关联的配置中的至少一个的信息。所述供应系统响应于供应请求而允许选择已注册的新组件。所述供应系统通过使能在所述数据处理系统中使用所述已注册的新组件来实现对所述数据处理系统的修改(例如,扩展所述数据处理系统)。
例如,在服务交付环境中提交供应请求涉及选择被托管的解决方案所需的服务和中间件组件。这些要求可包括-必要的中间件(例如,数据库、处理和门户服务器等)以及服务组件(安全、监视等)的规范。当指定这些必要组件和服务中的每个组件和服务时,用户指定配置参数(例如,服务器位置、端口、用户标识符、密码等)。这些参数对于每个中间件组件而言都是不同的。
有利地,本发明的原理提供了用于在服务交付环境中动态地引入要在供应解决方案期间使用的新组件的技术,以便减少或消除现有技术中的缺点。例如,通过允许在运行时动态地引入新的供应组件,同时提供所述组件的必要条件和配置的元数据描述以及稍后在组件供应中使用此信息的供应系统而实现了此目标。
通过结合附图阅读下面对本发明的示例性实施例的详细说明,本发明的上述和其他目标、特性和优点将变得显而易见。
附图说明
图1示出了其中可实现示例性实施例的数据处理系统网络的图形表示;
图2示出了其中可实现示例性实施例的数据处理系统的方块图;
图3示出了根据一个示例性实施例的管理系统的逻辑体系结构的示意图;
图4示出了根据示例性实施例的在将新组件引入供应系统期间使用的样例XML描述符的实例;
图5包含示出根据一个示例性实施例的在注册新组件和新服务期间执行的步骤的流程图;
图6A和6B包含示出根据示例性实施例的在提交供应请求的用户接口提交中选择已注册的组件和服务期间执行的步骤的流程图;图6A示出了整体流程,而图6B进一步示出了图6A中涉及根据示例性实施例的针对每个单独组件重复的步骤的步骤606;以及
图7包含示出根据一个示例性实施例的在扩展现有环境期间执行的步骤的流程图。
具体实施方式
应该理解,术语“运行时”通常指计算机程序(或系统)从程序开始执行到程序终止之间的运行。具体而言,根据本发明的原理,术语“运行时”指客户实际使用系统的时间(处于不能再对系统的设计和实施方式进行更改的生产阶段),与系统仍处于设计和开发阶段相对。
在一个优选实施例中,术语“组件”指可以单独安装在一个或多个计算机上并且然后可以由其他中间件组件或应用使用的一个中间件。例如,组件可以是诸如由Oracle数据库服务器、IBM Filenet或WeblogicApplication Server执行的软件。在更一般的情况下,“组件”可以是任何能够被安装和配置为由其他组件或解决方案使用的元素。
在一个优选实施例中,术语“解决方案”指提供特定业务能力的软件应用,例如人力资源应用、在线银行应用或贷款核准应用。解决方案通常部署在已安装的中间件组件之上的一个或多个计算机系统上。在更一般的情况下,术语“解决方案”可以指一组提供特定业务能力的组件,这些组件将其他已供应的组件用作必要组件。
现在参考附图,具体地说,参考图1-2,它们提供了其中可以实现各实施例的数据处理环境的示意图。应该理解,图1-2仅是示意性的,并非旨在断言或暗示对其中可以实现各实施例的环境的任何限制。可以在不偏离示例性实施例的精神和范围的情况下对所示环境做出许多更改。
现在参考附图,图1示出了其中可以实现示例性实施例的数据处理系统网络的图形表示。网络数据处理系统100是其中可以实现各实施例的计算机网络。网络数据处理系统100包含网络102,网络102是用于提供网络数据处理系统100内连接在一起的各种设备和计算机之间的通信链路的介质。网络102可以包括诸如有线、无线通信链路或光缆之类的连接。
在所示实例中,服务器104和服务器106连同存储单元108一起与网络102相连。此外,客户机110、112和114也与网络102相连。这些客户机110、112和114可以例如是个人计算机或网络计算机。在所示实例中,服务器104将诸如引导文件、操作系统映像以及应用之类的数据提供给客户机110、112和114。客户机110、112和114在此实例中是服务器104的客户机。网络数据处理系统100可以包括其他服务器、客户机以及其他未示出的设备。
在所示实例中,网络数据处理系统100是因特网,其中网络102代表全球范围内使用传输控制协议/网际协议(TCP/IP)协议集来相互通信的网络和网关的集合。在因特网的核心是主节点或主机之间的高速数据通信线路的主干,它包括数以千计的商业、政府、教育以及其他路由数据和消息的计算机系统。当然,网络数据处理系统100也可以被实现为许多不同类型的网络,例如企业内部互联网、局域网(LAN)或广域网(WAN)。图1旨在作为一个实例,并非旨在作为对不同实施例的体系结构限制。
现在参考图2,它是其中可以实现示例性实施例的数据处理系统的方块图。数据处理系统200是计算机(如图1中的服务器104或客户机110)的实例,实现所述实施例的过程的计算机可用代码或指令可以位于其中。
在所示实例中,数据处理系统200采用包括北桥及存储控制器集线器(MCH)202和南桥及输入/输出(I/O)控制器集线器(ICH)204的集线器体系结构。处理器206、主存储器208以及图形处理器210与北桥及存储控制器集线器202相连。图形处理器210可以通过加速图形端口(AGP)与MCH相连。
在所示实例中,局域网(LAN)适配器212与南桥及I/O控制器集线器204相连并且音频适配器216、键盘和鼠标适配器220、调制解调器222、只读存储器(ROM)224、通用串行总线(USB)端口和其他通信端口232,以及PCI/PCIe设备234通过总线238与南桥及I/O控制集线器204相连,硬盘驱动器(HDD)226和CD-ROM驱动器230通过总线240与南桥及I/O控制集线器204相连。PCI/PCIe设备可以包括例如以太网适配器、外接卡以及笔记本计算机的PC卡。PCI使用卡总线控制器,而PCIe则不使用。ROM 224可以例如是闪速二进制输入/输出系统(BIOS)。硬盘驱动器226和CD-ROM 230可以使用例如集成驱动器电子设备(IDE)或串行高级技术附件(SATA)接口。超级I/O(SIO)设备236可以与南桥及I/O控制集线器204相连。
操作系统在处理器206上运行并且协调和提供对图2中的数据处理系统200内的各种组件的控制。所述操作系统可以是诸如
Figure BPA00001245515200052
XP(Microsoft和Windows是Microsoft Corporation在美国和/或其他国家/地区的商标)之类的商用操作系统。诸如JavaTM编程系统之类的面向对象的编程系统可以与操作系统一起运行并从在数据处理系统200上执行的Java程序或应用来提供对操作系统的调用(Java和所有基于Java的商标是Sun Microsystems,Inc.在美国和/或其他国家/地区的商标)。
操作系统、面向对象的编程系统以及应用或程序的指令位于诸如硬盘驱动器226之类的存储设备上,并可以加载到主存储器208中以便由处理器206执行。示例性实施例的过程可以由处理器206使用计算机实现的指令来执行,所述计算机实现的指令可以位于诸如主存储器208、只读存储器224之类的存储器之中,也可以位于一个或多个外围设备中。
图1-2中的硬件可以根据实施方式而不同。除了图1-2中所示的硬件以外,或替代图1-2中所示的硬件,还可以使用诸如闪存、等效的非易失性存储器或光盘驱动器之类的其他内部硬件或外围设备。此外,示例性实施例的各过程还可以应用于多处理器数据处理系统。
在某些示例性实例中,数据处理系统200可以是个人数字助理(PDA),所述PDA通常具备闪存以提供用于存储操作系统文件和/或用户生成的数据的非易失性存储器。总线系统可以包括诸如系统总线、I/O总线和PCI总线之类的一条或多条总线。当然,可使用在与通信结构或体系结构相连的不同组件或设备之间提供数据传输的任何类型的结构或体系结构来实现所述总线系统。通信单元可以包括一个或多个用于发送和接收数据的设备,例如调制解调器或网络适配器。存储器可以例如是主存储器208或诸如在北桥及存储控制器集线器202中找到的高速缓存。处理单元可以包括一个或多个处理器或中央处理单元(CPU)。图1-2中所示的实例及上述实例并非旨在暗示体系结构限制。例如,数据处理系统200还可以是除了采用PDA形式以外的平板计算机、膝上型计算机或电话设备。
示例性实施例提供了用于编译源代码的计算机实现的方法、数据处理系统和计算机可用程序代码。示例性实施例的计算机实现的方法可以在诸如图1中示出的数据处理系统100或图2中示出的数据处理系统200之类的数据处理系统中执行。
图3示出了根据示例性实施例的系统的逻辑体系结构的示意图。处理被分为三个主要部分:(1)新组件和新服务的注册,(2)在提交供应请求的用户接口中选择已注册的组件和服务,以及(3)扩展现有环境。用户经由管理用户接口(301)或通过将采用预定格式的组件描述符直接提供给组件注册管理器(304)来将新组件引入系统。在一个优选实施例中,使用XML(可扩展标记语言)指定组件描述,但是本领域的技术人员可以找到其他描述组件的方法(例如,统一建模语言或UML、文本、JAVA属性文件)。如果经由用户接口或UI(301)引入新组件,则管理用户接口(301)的组件注册处理子组件(302)处理信息并将组件描述符传递到组件注册管理器(304)。组件注册管理器(304)使用数据管理器(305)处理组件描述符,生成新组件和现有组件之间的交叉引用并将信息存储在数据库(306)中。它还使用策略管理器(307)处理新组件的策略并将其保存在存储库(308)中。组件描述符中可以存在的策略的一个实例为共享策略,此类策略将指定组件是在供应系统中的所有中间件栈间共享、在单个中间件栈上部署的所有解决方案(产品)间共享,还是在单个解决方案的所有使用者(用户)间共享。策略的另一实例为并置策略,此类策略描述是否可以将组件与其他组件部署在同一刀片上以及在可以的情况下,能够与哪个组件并置。
如上所述将组件引入系统之后,可以选择所述组件以供应新的中间件栈或扩展现有环境。用户使用管理用户接口(301)的供应屏幕(303)供应完整的中间件栈或使用新组件扩展现有栈。在一个优选实施例中,供应UI(303)使用向导实现,其中每个组件的信息显示在单独的屏幕上,但是本领域中的技术人员可以实施其他实现。
一旦选定了组件及其配置,请求便被传递到供应选定服务器上的每个选定组件的供应管理器(309)。例如,在图3中,用户选择供应流程服务器(Process server)(310)、使用DB2(311)的门户服务器(315)、内容管理器及其必要组件(312)、WebSphere Edge组件(313)并且使用远程计量和监视服务(314)。
图4示出了可以在注册新组件或新服务期间使用的样例组件描述符。每个新组件或新服务都包含以下在注册时(通过在UI上输入参数或通过包括部署描述符或通过这两种方法的组合)指定的信息:
-服务/组件名称及版本
-共享服务/中间件组件标志,其指示需要如何提交供应请求的;共享服务可以是远程服务,所以这些服务的服务器可以是远程URL(统一资源定位符)。
-共享策略-跨产品/使用者/跨所有中间件栈等
-在UI中,这具体用于在选择执行供应的服务器时判定是否可以使用已安装组件的服务器。
-预安装标志-是否预安装了的新组件,还是需要/可以在供应中间件栈以便托管解决方案时供应新组件。
-如果在安装中间件栈期间选择了该组件,则影响显示哪些服务器
-必要组件要求
-本地必要组件-安装在同一机器上;必要组件必须对UI而言是“已知的”并且在引入组件时进行选择
-可以远程访问的必要组件/相关性-在安全域(cell)(例如,WebSEAL和TAM)中必须存在的其他组件(名称和版本)的列表。(在另一实施例中,可以一起引入一组相关组件)。
-并置策略-组件是否可以与其他组件部署在同一服务器上;还可以动态地确定-例如,必要组件版本是否冲突;或者可以基于硬件要求;
-硬件要求(可以在确定并置策略时使用)
-所需的服务器类型;在一个优选实施例中,服务器根据其使用、并置和位置(例如,位于防火墙后)-TPM(用于执行供应的服务器)、WebSeal服务器(位于防火墙后并仅用于托管Webseal)而被分为三个池,
-在供应期间该组件所需的附加服务器数:1、“0或更多”(UI允许多个选择)
-需要在UI(除服务器之外)上提供的具有输入验证类型(int/url/email/最大长度/端口)的附加参数列表,类似于现有技术中存在的UI类型定义
-组件是否可以被添加到已供应的中间件栈?
可以考虑其他参数。在某些实施例中,仅需输入以上参数中的某些参数,而其他参数可以是默认的。在其他实施例中,可以在UI中指定部署描述符的位置,而从所述描述符读取其他参数。在更复杂的情况下,描述符可以包括到处理器的链接(例如,Java类),所述链接可以提供用户接口上的字段(或提供应用编程接口或API以获取字段信息)或执行它自己的验证或服务器选择过程。
图5是示出新组件处理的第一部分(即,新组件或新服务的注册)的流程图。
在图5A中示出的基于UI的注册中,用户在步骤(501)选择定义管理UI(301)的新组件特性,如上所述输入组件信息,从UI(301)提供的已注册组件(502)的列表中选择必要组件。如果未找到所需的必要组件,也可以在此步骤注册该组件。管理UI的组件注册子组件(302)执行最小程度上的信息处理(503),然后将信息传递到组件注册管理器(304)。所述组件注册管理器在步骤504处理信息,交叉引用新组件及其必要组件,提取相关策略,然后使用策略管理器(307)和数据管理器(305)将信息存储在数据库(306、308)中。在备选实施例中,所有处理均可以通过用户接口完成或者可以使用附加处理器。
在图5B中的使用部署描述符和命令行接口的注册中,用户创建部署描述符(505),发出注册组件的命令(506)。所述命令调用如上所述注册组件(504)的组件注册管理器(304)。
图6A和6B是示出组件处理的第二部分(即,在提交供应请求的UI中选择已注册的组件和服务)的流程图。图6A示出了整体处理,而图6B显示了处理每个单独组件(步骤606)的细节。
在图6A中,用户在步骤601使用选项提交供应请求。在步骤602,管理UI(301)允许用户选择所需的组件和服务。在用户选择组件和服务之后(602),管理UI(301)检验每个组件的必要组件,在必要时将必要组件添加到列表(603)。管理UI(301)然后确定必要的向导屏幕以从用户处获取必要的配置信息(604)。在一个优选实施例中,每个选定组件都导致显示向导屏幕。在一个备选实施例中,可以在单个页面上呈现信息。在又一实施例中,相关组件可以在单个屏幕上归为一组,而针对不相关的组件使用不同的屏幕。诸如按物理服务器或按必要组件分组的其他实施例也是可能的。对于每个组件和服务,由在注册期间提供的元数据定义组件的屏幕内容(图5)。然后向用户呈现每个单独的屏幕(605-607)。获取有关下一组件屏幕的信息,确定屏幕内容并获取用户输入(607,图6B)。当处理了所有组件时(608),将供应请求提交(609)到供应管理器(309)。
图6B进一步示出了对图6A中的步骤606中引用的每个单独组件的处理。对于每个单独的组件,根据如图5中所述的注册期间提供的元数据定义屏幕内容。首先,从数据管理器(305)获取组件元数据(609)。如果“预安装”标志设为“真”,则说明已安装了组件。在这种情况下,在屏幕上显示允许用户输入组件的服务器名或URL(如元数据中定义)的输入字段(611)。如果元数据中的“预安装”标志设为“伪”(610),则提供服务器选择微件(widget)。可供选择的服务器的列表包含按元数据设置过滤的服务器列表。在步骤612使用数据管理器(305)和策略管理器(307)获取组件服务器选择元数据和共享策略。在步骤613,经由数据管理器(305)从数据库(306)获取指定组(例如,DMZ、Application Zone、Management Zone等)中的可用服务器的列表;该列表可以进一步通过在步骤612从数据库获取的OS和容量要求进行限制。此外,可以进一步通过根据每个可用服务器上已安装的软件和该请求中计划的部署进行检查的必要组件限制该列表。例如,仅接受Linux服务器或具有特定容量的服务器或已安装必要组件的服务器。如果从策略管理器(307)获取的策略指示组件的“共享”标志设为“真”(614),则将已安装该组件或服务的服务器添加到列表中(615)。还可潜在地通过诸如负载和安全性之类的管理策略限制已安装组件/服务的服务器的列表。一旦最后确定了列表,便可创建选择微件(616)。在一个备选实施例中,步骤611中的输入字段也可以被选择微件所替换,所述选择微件包含已安装该组件或服务以及可以输入远程服务器作为输入的本地服务器列表。其他实施例对于本领域技术人员也将是显而易见的。
在步骤617,从数据管理器(305)获取需要用户输入的组件或服务参数及其类型,并向用户呈现包括服务器输入字段(来自步骤611)或选择微件(616)以及其他参数(来自步骤617)的最终屏幕(618),并且获取和验证用户输入(619)。字段的格式以及验证基于在部署描述符中指定且存储在数据库(306)中的组件属性的描述。呈现和验证属性的方法不在本披露的范围内并且可以利用诸如XForm或其他公知方法之类的现有成果。
一旦提供了环境(如图6A和6B中所示),解决方案便可共享该环境,但是使用其他已注册的组件或服务扩展该环境。图7是示出组件处理的第三部分(即,扩展现有环境)的流程图。在此,用户检查当前部署的中间件栈(多个)并选择所需的目标环境以便供应新的解决方案(701)。UI限制可以通过该部署使用的已注册组件/服务的列表(702)。该列表将包含根据其描述可以被添加到现有安全域并不会与当前安全域配置冲突的中间件组件。它们可以是仍需供应的新组件或现有的共享组件或服务。用户然后从列表中选择新组件(703)并继续指定选定组件的参数,如从图6A的步骤603开始的图6A和6B中所示。
本发明可以采用完全硬件实施例、完全软件实施例或包含硬件和软件元素两者的实施例的方式。在一个优选实施例中,本发明以软件实现,所述软件包括但不限于固件、驻留软件、微代码等。
此外,本发明可以采取可从计算机可用或计算机可读介质访问的计算机程序产品的形式,所述计算机可用或计算机可读介质提供了可以被计算机或任何指令执行系统使用或与计算机或任何指令执行系统结合的程序代码。出于此描述的目的,计算机可用或计算机可读介质可以是任何能够包含或存储由指令执行系统、装置或设备使用或与所述指令执行系统、装置或设备结合的程序的有形装置。
所述介质可以是电、磁、光、电磁、红外线或半导体系统(或装置或设备)。计算机可读存储介质的实例包括半导体或固态存储器、磁带、可移动计算机盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的当前实例包括光盘-只读存储器(CD-ROM)、光盘-读/写(CR-R/W)和DVD。
适于存储和/或执行程序代码的数据处理系统将包括至少一个直接或通过系统总线间接连接到存储器元件的处理器。所述存储器元件可以包括在程序代码的实际执行期间采用的本地存储器、大容量存储装置以及提供至少某些程序代码的临时存储以减少必须在执行期间从大容量存储装置检索代码的次数的高速缓冲存储器。
输入/输出或I/O设备(包括但不限于键盘、显示器、指点设备等)可以直接或通过中间I/O控制器与系统相连。
网络适配器也可以被连接到系统以使所述数据处理系统能够通过中间专用或公共网络变得与其他数据处理系统或远程打印机或存储设备相连。调制解调器、电缆调制解调器和以太网卡只是当前可用的网络适配器类型中的少数几种。
出于示例和说明目的给出了对本发明的描述,并且所述描述并非旨在是穷举的或是将本发明限于所公开的形式。对于本领域的技术人员来说,许多修改和变化都将是显而易见的。实施例的选择和描述是为了最佳地解释本发明的原理、实际应用,并且当适合于所构想的特定使用时,使得本领域的其他技术人员能够理解本发明的具有各种修改的各种实施例。
尽管此处参考附图描述了本发明的示例性实施例,但是可以理解,本发明并不限于这些精确的实施例,在不偏离本发明的范围或精神的情况下,本领域的技术人员可以做出各种其他更改和修改。

Claims (22)

1.一种在管理数据处理系统中组件供应的供应系统中的动态地在所述数据处理系统中供应一个或多个新组件的自动化方法,所述方法包括所述供应系统执行以下步骤:
在所述数据处理系统的运行时期间接受新组件的注册,其中所述新组件在所述运行时期间之前未在所述数据处理系统中事先注册,并且进一步地,其中所述注册包括获取有关一个或多个必要组件和与所述新组件关联的配置中的至少一个的信息;
响应于供应请求,允许选择已注册的新组件;以及
通过使能在所述数据处理系统中使用所述已注册的新组件来实现对所述数据处理系统的修改,
其中所述新组件的注册进一步包括:用户经由与所述供应系统关联的用户接口注册所述新组件,以便用户经由所述用户接口将有关一个或多个必要组件和与所述新组件关联的配置中的至少一个的信息输入所述供应系统。
2.根据权利要求1的方法,其中所述新组件的注册进一步包括:用户通过输入部署描述符注册所述新组件。
3.根据权利要求1的方法,其中所述新组件的注册进一步包括:与所述供应系统关联的组件注册管理模块处理已获取的有关一个或多个必要组件和与所述新组件关联的配置中的至少一个的信息。
4.根据权利要求3的方法,其中处理步骤进一步包括:所述组件注册管理模块交叉引用已获取的与所述新组件关联的信息的至少一部分以及与所述数据处理系统中已注册的现有组件关联的相应信息。
5.根据权利要求3的方法,其中处理步骤进一步包括:所述组件注册管理模块确定至少一个可应用于所述新组件的策略。
6.根据权利要求5的方法,其中可应用的策略进一步包括:一个或多个指示如何在所述数据处理系统中共享所述新组件的策略。
7.根据权利要求1的方法,其中所述供应系统响应于供应请求而允许选择已注册的新组件的步骤进一步包括:用户经由与所述供应系统关联的用户接口选择所述已注册的新组件。
8.根据权利要求7的方法,其中用于选择的用户接口进一步包括:用于每个允许用户选择的已注册的组件的单独屏幕。
9.根据权利要求1的方法,还包括以下步骤:将所述新组件用作供应另一新组件的必要组件。
10.根据权利要求1的方法,其中所述新组件包括中间件组件、操作系统组件以及硬件组件中的至少一个。
11.根据权利要求1的方法,其中所获取的信息的形式为可扩展标记语言中描述的元数据。
12.根据权利要求1的方法,其中必要组件包括本地必要组件和远程必要组件中的至少一个。
13.根据权利要求1的方法,其中必要组件包括供应该组件所需的服务器的类型和数量中的至少一个的规范。
14.根据权利要求13的方法,其中所述规范进一步包括缩减服务器选择的过滤器。
15.一种在管理数据处理系统中组件供应的供应系统中的动态地在所述数据处理系统中供应一个或多个新组件的装置,所述装置包括:
配置为在所述数据处理系统的运行时期间接受新组件的注册的模块,其中所述新组件在所述运行时期间之前未在所述数据处理系统中事先注册,并且进一步地,其中所述注册包括获取有关一个或多个必要组件和与所述新组件关联的配置中的至少一个的信息;
配置为响应于供应请求,允许选择已注册的新组件的模块;以及
配置为通过使能在所述数据处理系统中使用所述已注册的新组件来实现对所述数据处理系统的修改的模块,
其中所述配置为在所述数据处理系统的运行时期间接受新组件的注册的模块进一步包括:配置为用户经由用户接口注册所述新组件,以便用户经由所述用户接口将有关一个或多个必要组件和与所述新组件关联的配置中的至少一个的信息输入所述供应系统的模块。
16.根据权利要求15的装置,其中所述配置为在所述数据处理系统的运行时期间接受新组件的注册的模块进一步包括:配置为用户通过输入部署描述符注册所述新组件的模块。
17.根据权利要求15的装置,其中所述配置为在所述数据处理系统的运行时期间接受新组件的注册的模块进一步包括:配置为组件注册管理模块处理已获取的有关一个或多个必要组件和与所述新组件关联的配置中的至少一个的信息的模块。
18.根据权利要求17的装置,其中所述配置为组件注册管理模块处理已获取的有关一个或多个必要组件和与所述新组件关联的配置中的至少一个的信息的模块进一步包括:配置为使得所述组件注册管理模块交叉引用已获取的与所述新组件关联的信息的至少一部分以及与所述数据处理系统中已注册的现有组件关联的相应信息的模块。
19.根据权利要求17的装置,其中所述配置为组件注册管理模块处理已获取的有关一个或多个必要组件和与所述新组件关联的配置中的至少一个的信息的模块进一步包括:配置为使得所述组件注册管理模块确定至少一个可应用于所述新组件的策略的模块。
20.根据权利要求19的装置,其中所述配置为使得所述组件注册管理模块确定至少一个可应用于所述新组件的策略的模块进一步包括:配置为使用一个或多个指示如何在所述数据处理系统中共享所述新组件的策略的模块。
21.根据权利要求15的装置,其中所述配置为响应于供应请求,允许选择已注册的新组件的模块进一步包括:配置为用户经由用户接口选择所述已注册的新组件的模块。
22.根据权利要求21的装置,其中用于选择的用户接口进一步包括:用于每个允许用户选择的已注册的组件的单独屏幕。
CN200980113842.5A 2008-04-24 2009-04-24 用于数据处理环境中的动态供应的方法和装置 Expired - Fee Related CN102007756B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/108,836 2008-04-24
US12/108,836 US8601253B2 (en) 2008-04-24 2008-04-24 Dynamic provisioning in data processing environment
PCT/US2009/041665 WO2009132272A2 (en) 2008-04-24 2009-04-24 Method and apparatus for dynamic provisioning in data processing environment

Publications (2)

Publication Number Publication Date
CN102007756A CN102007756A (zh) 2011-04-06
CN102007756B true CN102007756B (zh) 2014-01-08

Family

ID=41216141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980113842.5A Expired - Fee Related CN102007756B (zh) 2008-04-24 2009-04-24 用于数据处理环境中的动态供应的方法和装置

Country Status (7)

Country Link
US (1) US8601253B2 (zh)
EP (1) EP2279605A4 (zh)
JP (1) JP5278924B2 (zh)
KR (1) KR20110009143A (zh)
CN (1) CN102007756B (zh)
CA (1) CA2717505C (zh)
WO (1) WO2009132272A2 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9104514B2 (en) * 2011-01-11 2015-08-11 International Business Machines Corporation Automated deployment of applications with tenant-isolation requirements
CN102891879A (zh) 2011-07-22 2013-01-23 国际商业机器公司 用于支持集群扩展的方法和设备
US8869107B2 (en) * 2012-01-12 2014-10-21 Microsoft Corporation Declarative dynamic control flow in continuation-based runtime
US9509571B1 (en) 2012-07-25 2016-11-29 NetSuite Inc. First-class component extensions for multi-tenant environments
US10095369B1 (en) * 2014-10-28 2018-10-09 VCE IP Holding Company LLC Systems and methods for provisioning computing components through modular orchestration
US10324700B2 (en) * 2016-03-09 2019-06-18 International Business Machines Corporation Storing computing component installation information
CN108196900B (zh) * 2017-12-08 2021-11-09 五八有限公司 组件的注册方法及装置
US10911493B2 (en) * 2018-03-14 2021-02-02 ShieldX Networks, Inc. Identifying communication paths between servers for securing network communications
CN112579199A (zh) * 2020-12-15 2021-03-30 北京动力机械研究所 基于开放式数据平台的处理方法及装置

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04242426A (ja) 1991-01-16 1992-08-31 Nec Corp リンク時多重定義外部名処理方式
US5930503A (en) 1995-12-29 1999-07-27 Hewlett-Packard Co System and method for on demand registration of tasks
JPH10105388A (ja) * 1996-09-26 1998-04-24 Nippon Telegr & Teleph Corp <Ntt> Www上の双方向サービス作成方法及び装置
US6901440B1 (en) 1999-07-02 2005-05-31 Agilent Technologies, Inc. System and method for universal service activation
US7343428B2 (en) 2001-09-19 2008-03-11 International Business Machines Corporation Dynamic, real-time integration of software resources through services of a content framework
US7603469B2 (en) * 2002-01-15 2009-10-13 International Business Machines Corporation Provisioning aggregated services in a distributed computing environment
US20030167320A1 (en) * 2002-02-26 2003-09-04 Sun Microsystems, Inc. Registration service for registering plug-in applications with a management console
US20030204560A1 (en) * 2002-04-26 2003-10-30 Chen Thomas C.H. Programmable Logic Controller with embedded Intelligent Web Server
US6807266B2 (en) * 2002-08-30 2004-10-19 3Com Corporation Method and apparatus for provisioning a soft switch
AU2003282030A1 (en) * 2002-10-16 2004-05-04 Mobile Cohesion Limited A service access gateway
EP1420337A1 (en) 2002-11-15 2004-05-19 Hewlett-Packard Company, A Delaware Corporation System and method to provide a flexible user interface
CN100407146C (zh) * 2003-12-18 2008-07-30 国际商业机器公司 管理分布式资源的管理系统和方法
SG152022A1 (en) 2004-01-15 2009-05-29 Agency Science Tech & Res Method and system for dynamic invocation of services in a service-oriented architecture environment
CN101427220A (zh) * 2004-01-30 2009-05-06 国际商业机器公司 用于计算工具的计算环境的组件化自动供应和管理
CN100547585C (zh) * 2004-01-30 2009-10-07 国际商业机器公司 包括为实体提供至少一个域的层级式管理的方法和装置
WO2005106666A1 (en) 2004-04-29 2005-11-10 International Business Machines Corporation A system and method for modeling and dynamically deploying services into a distributed networking architecture
US7660882B2 (en) * 2004-06-10 2010-02-09 Cisco Technology, Inc. Deploying network element management system provisioning services
US8631386B2 (en) 2004-08-25 2014-01-14 Mohit Doshi System and method for automating the development of web services
GB0420675D0 (en) 2004-09-17 2004-10-20 Ibm Method and software tool for installation of portlets into a client platform
KR100992027B1 (ko) 2004-09-17 2010-11-05 인터내셔널 비지네스 머신즈 코포레이션 클라이언트 플랫폼에 포틀릿을 표시 및 설치하는 방법
WO2006089390A1 (en) * 2005-02-22 2006-08-31 Nextair Corporation Facilitating mobile device awareness of the availability of new or updated server-side applications
US7640542B2 (en) * 2005-03-24 2009-12-29 Nokia Corporation Managing midlet suites in OSGI environment
US7523461B2 (en) * 2005-07-01 2009-04-21 Microsoft Corporation Modification of logic in an application
US8682795B2 (en) 2005-09-16 2014-03-25 Oracle International Corporation Trusted information exchange based on trust agreements
US20070180061A1 (en) * 2006-02-02 2007-08-02 International Business Machines Corporation Methods and apparatus for interactive specification of context-sensitive sevice level agreements; for provisioning of resources required during service delivery events regulated by service level agreements; and for monitoring compliance with service level agreements during service delivery events
US8000260B2 (en) * 2006-06-19 2011-08-16 International Business Machines Corporation Method for dynamic information technology infrastructure provisioning
US7761880B2 (en) 2006-09-27 2010-07-20 International Business Machines Corporation Dynamically extending XML-based service through client
US9038125B2 (en) * 2007-08-24 2015-05-19 Red Hat, Inc. Self identifying services in distributed computing
US9652210B2 (en) * 2007-08-28 2017-05-16 Red Hat, Inc. Provisioning a device with multiple bit-size versions of a software component
US8893141B2 (en) * 2008-01-28 2014-11-18 Microsoft Corporation System and method for describing applications for manageability and efficient scale-up deployment

Also Published As

Publication number Publication date
US20090271607A1 (en) 2009-10-29
CA2717505C (en) 2017-12-12
WO2009132272A3 (en) 2010-01-21
WO2009132272A2 (en) 2009-10-29
CA2717505A1 (en) 2009-10-29
US8601253B2 (en) 2013-12-03
KR20110009143A (ko) 2011-01-27
JP2011519096A (ja) 2011-06-30
EP2279605A4 (en) 2011-05-25
CN102007756A (zh) 2011-04-06
JP5278924B2 (ja) 2013-09-04
EP2279605A2 (en) 2011-02-02

Similar Documents

Publication Publication Date Title
CN102007756B (zh) 用于数据处理环境中的动态供应的方法和装置
JP6490633B2 (ja) プライベート・クラウド・コンピューティングためのシステムおよび方法
US8234620B1 (en) Method and system for software development using distributed computing resources
CN108351769B (zh) 作为远程计算服务的仪表板
US8306995B2 (en) Inter-organizational and intra-organizational repository for operating system images
US11803553B2 (en) Providing triggers based on one-to-many or many-to-one relationships in a system of record
US11900077B2 (en) Systems, methods, user interfaces, and development environments for generating instructions in a computer language
US8112370B2 (en) Classification and policy management for software components
AU2013203291B2 (en) Systems and methods for private cloud computing
US11321093B1 (en) Multilayered generation and processing of computer instructions
WO2023283088A1 (en) Systems, methods, user interfaces, and development environments for generating instructions in a computer language
WO2023278568A1 (en) Multilayered generation and processing of computer instructions
WO2023004127A1 (en) Systems, methods, applications, and user interfaces for providing triggers in a system of record

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140108

CF01 Termination of patent right due to non-payment of annual fee