CN103838644B - 用于软件映像部署到计算系统上的方法和系统 - Google Patents

用于软件映像部署到计算系统上的方法和系统 Download PDF

Info

Publication number
CN103838644B
CN103838644B CN201310593800.4A CN201310593800A CN103838644B CN 103838644 B CN103838644 B CN 103838644B CN 201310593800 A CN201310593800 A CN 201310593800A CN 103838644 B CN103838644 B CN 103838644B
Authority
CN
China
Prior art keywords
computing machine
access identifier
socket
new access
connection
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.)
Active
Application number
CN201310593800.4A
Other languages
English (en)
Other versions
CN103838644A (zh
Inventor
G.查诺
L.皮切蒂
M.西米奥尼
C.马林利
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.)
HCL Technology Co., Ltd.
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 CN103838644A publication Critical patent/CN103838644A/zh
Application granted granted Critical
Publication of CN103838644B publication Critical patent/CN103838644B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • 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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Abstract

提出了一种用于在计算系统上部署软件映像的解决方案。相应的方法(400)包括以下步骤:将计算机器从相应的软件映像实例化(409)到所述计算系统上,所述计算机器具有旧访问标识符,并且连接到所述软件映像中的至少一个进一步的计算机器的旧访问标识符,并且配置(412)所述计算机器以具有新访问标识符;在根据本发明实施例的解决方案中,所述方法进一步包括步骤:从旧访问标识符与其新访问标识符之间显示的关联,检索(448‑466)每个进一步的计算机器的新访问标识符,并且将从计算机器到每个进一步的计算机器的旧访问标识符的每个向外通信重新定向(469‑478)到其新访问标识符。

Description

用于软件映像部署到计算系统上的方法和系统
技术领域
根据本发明的一个或多个实施例的技术方案涉及数据处理领域。更具体地,该技术方案涉及软件映像的部署。
背景技术
软件映像的部署是现代计算系统(例如,虚拟数据中心)中的常见活动;一般来说,软件映像是安装在计算机器的大容量存储器上的软件结构的快照。例如,软件映像在虚拟应用中广泛使用。虚拟应用是设计来在虚拟环境中运行的软件应用(即,用于执行封装在预建的、独立程序包(package)中的特定用户任务的软件方案)。为此,虚拟应用的程序包(例如,符合开放虚拟化格式或OVF)包括一个或多个虚拟机或者VM(即,通过物理机器的软件仿真)和相应的软件映像(每个软件映像具有一个或多个应用程序,用于实施软件方案)以及最精简操作系统或JeOS(即,专门剪裁以支持应用程序的有限操作系统)的定义。虚拟应用允许以非常简单和快速的方式供应相应的软件方案;这在云计算环境(其中按需要提供多个服务)中特别有用。
通过在建立环境中安装需要的操作系统和应用程序情况下准备(基准)计算机器,建立每个软件映像。然后配置计算机器,用于在建立环境中测试它的正确操作。典型地,这涉及分配操作系统级的访问标识符(例如,主机名)到计算机器;此外,特别在具有多层结构的大虚拟应用的情况下,其中多个虚拟机协作用于实施软件方案(例如,符合面向服务的架构,或SOA),这也涉及在应用程序级连接到其他计算机器的访问标识符(用于寻址到此的外传通信)。然后捕获和存储计算机器的软件映像到共享库中,软件映像可以从该共享库复制和实例化到任何希望的目标环境。
软件映像的部署的问题在于从其实例化的计算机器需要重新配置,用于在目标环境中正确工作。特别地,这涉及分配新的访问标识符到计算机器(在操作系统级)并且经由它们的新的访问标识符重新连接到其他计算机器。
通常用于重新连接每个计算机器的技术包括内检相应的应用程序,以便确定它们到其他计算机器的连接,然后相应地更新它们代码中的访问标识符。手动地执行该操作,或者通过用静态输入值调用预定脚本执行该操作,例如,如在“”中描述的(在此通过引用并入其整个公开);此外,US-A-20070050756(在此通过引用并入其整个公开)描述了使用包含在每个组件中的规则,限定组件如何可以连接到其他组件。然而,上述处理非常冗长、耗时并且容易出错(特别对于复杂应用程序)。
在WO-A-2011/069782(在此通过引用并入其整个公开)提出了不同的技术。在此情况下,为每个计算机器提供立体线适配器;对于涉及计算机器的每个连接,立体线适配器包括插座部分和插头部分,插座部分指示建立连接所需的配置参数,插头部分指示为此目的要执行的配置动作。计算机器在其每个连接中分配角色(即,当由其他计算机器连接时的插座角色或当其连接到另一计算机器时的插头角色)。对于其中计算机器扮演插座角色的每个连接,服务连接引擎通过发布相应的配置参数,处理它的插座部分;对于其中计算机器扮演插头角色的每个连接,服务连接引擎通过检索相应的配置参数,并且执行传递这些配置参数的相应配置动作,处理它的插头部分。以此方式,计算机器可以以即插即用方式相互自动连接。
然而,该技术也要求应用程序的深层知识,用于限定要在它们上执行的连接动作。
在任何情况下,有时可能实际上不可能更新应用程序,用于重新连接计算机器;当应用程序具有未知结构时(例如,在传统应用程序中),或当嵌入其中的访问标识符不可从外部访问时(例如,因为以加密形式存储),这可能发生。
发明内容
根据本发明一个或多个实施例的解决方案基于重新定向外传通信的想法。
特别地,在独立权利要求中阐述根据本发明的具体实施例的解决方案的一个或多个方面,并且在从属权利要求中阐述所述方案的有利特征,通过逐字引用在此并入所有权利要求的语句(其中参照根据本发明实施例的解决方案的特定方面提供任何有利特征,其应用必要的变更到其每个其他方面)。
更具体地,根据本发明实施例的解决方案的一个方面提供了一种用于部署软件映像的方法,其中对于从相应的软件映像实例化的每个计算机器(其中它具有旧访问标识符,并且连接到至少一个进一步的计算机器的旧访问标识符),将到每个进一步的计算机器的旧访问标识符的每个向外通信重新定向到从显示的关联检索的其新访问标识符。
根据本发明实施例的解决方案的进一步方面提供相应的计算程序。
根据本发明实施例的解决方案的进一步方面提供相应的计算程序产品。
根据本发明实施例的解决方案的进一步方面提供相应的系统。
附图说明
参照以下仅以非限制指示给出并且结合附图(其中,为了简化,相应元件用相同或类似参考标号标识并且不重复它们的说明,并且每个实体的名称一般地用于标识它的类型和它的属性-诸如值、内容和表现)阅读的详细说明,将最好地理解根据本发明一个或多个实施例的解决方案以及其进一步的特征和优点。具体地:
图1示出可以用于实践根据本发明实施例的解决方案的计算系统的框图,
图2A-图2D示出根据本发明实施例的解决方案的应用的示例性场景,
图3示出可以用于实践根据本发明实施例的解决方案的主要软件组件,以及
图4A-图4C示出描述与根据本发明实施例的解决方案的实施有关的活动流程的活动图。
具体实施方式
具体参照图1,示出了可以用于实践根据本发明实施例的解决方案的计算系统100的框图。
由一组处理单元105(例如,机架或叶片型的服务器计算机)和一组存储单元110(例如,RAID型的硬盘)形成计算系统100(例如,数据中心)。计算系统100还包括控制台115,用于控制处理单元105和存储单元110(例如,个人计算机,还提供有用于读取光盘120的驱动器)。路由器(或交换机)系统125管理处理单元105、存储单元110和控制台115与计算系统100外部之间的通信(例如,通过因特网);为此,处理单元105、存储单元110、控制台115和路由器系统125通过布线系统130连接。
通用处理单元105由并行连接到总线系统135的若干组件形成。详细地,一组(一个或多个)微处理器(μP)140控制处理单元105的操作;RAM145直接由微处理器140用作工作存储器,并且ROM150存储处理单元105的引导程序的基本代码。此外,处理单元105包括网络适配器155,其用于将处理单元105连接到布线系统130。
在图2A-图2D中示出根据本发明实施例的解决方案的应用的示例性场景。
从图2A开始,在上述计算系统的建立环境ENVb(诸如隔离测试网络)中,提供多个计算机器,在图中仅示出两个,每个由相应的机器标识符MachineID1和MachineID2逻辑上标识;例如,计算机器MachineID1和MachineID2是虚拟应用的虚拟机。一组软件程序(图中未示出)安装在每个MachineID1和MachineID2上;特别地,软件程序包括(JeOS型的)操作系统和其上运行的一个或多个应用程序。每个计算机器MachineID1和MachineID2在建立环境ENVb中标识,用于分别通过唯一(旧的)访问标识符AccessIDb1和AccessIDb2(例如,在其网络域中的主机名)的实际访问。
计算机器MachineID2配置为连接到计算机器MachineID1的访问标识符AccessIDb1;典型的示例是当计算机器MachineID2运行软件应用(诸如监视应用)的客户端组件时,其具有在计算机器MachineID1上运行的服务器组件。
计算机器MachineID1和MachineID2的软件映像SI1和SI2(即,用相应的软件程序提供其定义的大容量存储器快照,例如,根据OVF规范封装)分别在建立环境ENVb中捕获。
移动到图2B,软件映像SI1和SI2部署在目标环境ENVt上(诸如在用于由远程客户端访问的相同或不同计算系统中实施的生产网络)。为此,相同的计算机器MachineID1和MachineID2分别从软件映像SI1和SI2实例化到目标环境ENVt。然后为了在目标环境ENVt中工作,重新配置计算机器MachineID1和MachineID2。特别地,每个计算机器MachineID1和MachineID2分别分配不同(新的)访问标识符AccessIDt1和AccessIDt2。
在此情况下,计算机器MachineID2将不能连接到计算机器MachineID1,以为计算机器MachineID1的访问标识符AccessIDb1(存储在计算机器MachineID2中)在目标环境ENVt中不存在(或者它可以分配到另一计算机器)。
在根据本发明实施例的解决方案中,如图2C所示,显示了计算机器MachineID1的访问标识符AccessIDb1和访问标识符AccessIDt1之间的关联(例如,在计算机器MachineID1将它发布到目标环境ENVt的共享注册表上)。
现在参照图2D,计算机器MachineID2(在讨论中的示例中从共享注册表)检索与访问标识符AccessIDb1相关联的访问标识符AccessIDt1。从计算机器MachineID2到计算机器MachineID1的访问标识符AccessIDb1的每个向外通信现在重新定向到其访问标识符AccessIDt1,使得计算机器MachineID2重新正确地连接到计算机器MachineID1。
上述解决方案允许在运行时自动重新连接计算机器。
该解决方案与应用程序无关,使得完全不依赖于它们的了解。
因此,该解决方案具有一般可应用性(例如,对于具有未知结构的应用程序或者当嵌入其中的访问标识符从外部不可访问时,诸如因为以加密形式存储)。
在图3中示出可以用于实施根据本发明实施例的解决方案的主要软件组件。
这些软件组件用参考标号300表示为整体。信息(程序和数据)典型地存储在计算系统的存储单元中,并且当程序运行时加载(至少部分地)到处理单元的工作存储器中。程序初始地例如从光盘安装到存储单元上。
特别地,每个计算机器(一般地用参考标号305标识)包括操作系统(用参考标号310标识)和在其上运行的一个或多个应用程序(用参考标号315标识);特别地,操作系统310具有(网络)通信模块320,其控制计算机器305与其他计算机器(图中未示出)的所有通信。
提出的根据本发明实施例的解决方案的实施基于在上述文献WO-A-2011/069782中描述的技术。在此情况下,计算机器305运行连接引擎325,其管理与其他计算机器的连接。
为此,连接引擎325访问在整个计算系统中共享的连接注册表330(例如,由操作为部署服务器的专用计算机器提供)。对于每个计算机器,连接注册表330存储涉及该计算机器的连接的指示。特别地,对于每个连接,连接注册表330指示在该连接中由计算机器扮演的角色,以及其中它的实际状态(例如,活动的或不活动的)。更具体地,计算机器可以具有插座角色或插头角色(也分别简称为插座或插头);插座是一个或多个插头可以连接到的计算机器,而插头是可以连接到插座的计算机器。此外,连接注册表330指示由相应的插座发布的连接参数的值,用于实现到其的连接。
连接引擎325还访问连接适配器335(存储在计算机器305中)。连接适配器335包括用于涉及计算机器305的每个连接的连接入口。转而,连接入口包括用于计算机器在连接中分别扮演插座角色或插头角色的插座部分和插头部分;插座部分指示连接注册表330中要由插座发布的连接参数,用于允许通过相应的插头到其的连接,而插头部分指示要由插头执行的连接动作,用于(根据它的连接参数的值)实施到相应的插座的连接。
配置接口340(例如,运行在部署服务器上)由系统管理员用于维护整个计算系统中的连接;为此,配置接口340允许系统管理员对连接注册表330观看、添加、更新、移除或执行任何其他维护操作。
事件管理器345(例如,运行在部署服务器上)检测与计算系统中连接的管理相关的任何连接事件。事件管理器345与每个计算机器305的连接引擎325通信,用于向其通知任何连接事件,以便触发计算机器305上相应连接动作的执行。
上述结构可以用于配置建立环境中计算机器之间的连接。为此,系统管理员通过定义所有连接以及它们的每一个的插座/插头,初始化连接注册表330。计算机器然后创建到建立环境中,并且开始每个计算机器305的连接引擎325。连接引擎325从连接注册表330检索涉及计算机器305的连接以及在每一个连接中由它扮演的角色的指示。连接引擎325然后用对应于到计算机器305上的这些连接的连接入口下载连接适配器335。对于其中计算机器305扮演插座角色的每个连接,连接引擎325确定相应的连接参数的值,并且将它们发布到连接注册表330中;对于其中计算机器305扮演插头角色的每个连接,连接引擎325从连接注册表330检索相应的连接参数的值,然后执行传递这些连接参数的相应连接动作。
在根据本发明实施例的解决方案中,也以轻量方式使用相同结构,以便在目标环境中重新连接计算机器。
为此,简化每个连接适配器的每个连接入口(以便定义区别于文献WO-A-2011/069783中描述的“立体电缆(StereoCable)”的“通用电缆(UniversalCable)”)。特别地,连接参数简单地为相应插座的旧访问标识符和新访问标识符,而连接动作简单地为用于添加/移除用于将插座的旧访问标识符指向新访问标识符的内部替换入口到通信模块320。
捕获和存储适当地连接到建立环境中的其他计算机器的每个计算机器305的软件映像到软件映像库(例如,经由任何已知复合工具,图中未示出),软件映像包括上述(简化的)连接引擎325和连接适配器335。每当必须部署一般软件映像,就从软件映像库检索软件映像,并且应用到目标环境中(例如,经由任何已知部署工具,图中未示出);这使得相应计算机器305的实例化,其然后分配它的新访问标识符用于在目标环境中工作。
如上,对于其中计算机器305扮演插座角色的每个连接,连接引擎325确定相应的连接参数(即,它的旧访问标识符和新访问标识符)的值,并且将它们发布到连接注册表330中;对于其中计算机器305扮演插头角色的每个连接,连接引擎325从连接注册表330检索相应的连接参数的值(即与相应的插座的旧访问标识符相关联的新访问标识符),然后执行传递这些连接参数的相应连接动作(以便添加用于将旧访问标识符指向新访问标识符的内部替换入口到通信模块320)。
以此方式,旧访问标识符可能继续用作相应插头内的有效访问标识符,但是在它的外部不可见,以便避免产生与它的新访问标识符的任何冲突。
描述与根据本发明实施例的解决方案的实施相关的动作流程的活动图在图4A-图4C中示出。在这方面,图中的每个块可以代表代码的模块、段或部分,其包括用于实施特定逻辑功能(或更多)的一个或多个可执行指令。
特别地,用方法400代表示例性处理,其可以用于控制在本发明的上述实施方式中软件映像的部署。方法400在黑色开始圈403开始,然后一旦必须将一般软件映像部署在计算系统上就经过块406。响应于此,在块409相应的计算机器从该软件映像实例化到目标环境中。计算机器包括操作系统和其操作所需的应用程序;此外,它包括用于管理其到其他计算机器的连接的连接引擎和连接适配器(在软件映像的建立期间产生)。
例如,连接适配器可以存储在相应的XML文件(例如,由标签<ConnectionAdapter>定义)中。XML文件包括用于每个连接入口(例如,由标签<ConnectionEntry>定义)的元素。连接入口包括存储用于逻辑地识别连接的连接标识符(例如,由标签<ConnectionEntryID>定义)。
连接入口然后包括用于其插座部分的元素(例如,由标签<SocketSection>定义)。插座部分包括存储在连接中扮演插座角色的计算机器的机器标识符的元素(例如,由标签<SocketID>定义)。插座部分然后包括用于其连接参数的元素(例如,由标签<ConnectionParameters>定义)。特别地,用于每个连接参数的元素(例如,由标签<ConnectionParameter>定义)包括存储其名称的元素(例如,由标签<ParameterName>定义)以及存储其值的元素(例如,由标签<ParameterValue>定义)。在根据本发明实施例的解决方案中,提供用于旧访问标识符的连接参数(例如,具有值“Old”)和用于新访问标识符的连接参数(例如,具有值“New”)。
连接入口还包括用于其插头部分的元素(例如,由标签<PlugSection>定义)。插头部分包括存储在连接中扮演插头角色的计算机器的机器标识符的元素(例如,由标签<PlugID>定义)。插头部分然后包括用于其连接动作的元素(例如,由标签<ConnectionActions>定义)。特别地,用于每个连接动作的元素(例如,由标签<ConnectionAction>定义)包括存储要调用的命令的指示的元素(例如,由标签<Command>定义)以及存储要传递到命令的每个连接参数(其值在插头部分中定义)的名称的元素(例如,由标签<ParameterName>定义)。在根据本发明实施例的解决方案中,连接适配器具有添加用于将旧访问标识符指向新访问标识符的内部替换入口的连接动作以及移除该替换入口的连接动作,它们都传递旧访问标识符和新访问标识符的值;例如,上述命令是操作系统的相应的API(应用命令接口)。
此外,插座部分或插头部分可以包括用于处理相应(插座或插头)部分要满足的条件的元素(例如,由标签<Condition>定义)。对于每个条件,元素存储其类型(例如,由标签<ConditionType>定义)并且元素存储其值(例如,由标签<ConditionValue>定义)。例如,条件可以指示仅可以在已经激活一个或多个其他插座和/或插头之后处理插座/插头部分。
例如,在上述场景中,用于从计算机器MachineID2到具有旧访问标识符AccessIDb1的计算机器MachineID1的连接Connection12(没有任何条件)的计算机器MachineID1和MachineID2的连接适配器(其中调用用于分别添加和移除内部替换入口的命令“addCommand”和“removeCommand”)是:
在块412重新配置计算机器,用于在目标环境中正确地工作;特别地,这使得计算机器具有新访问标识符(其替换它的旧访问标识符)。在此阶段,还重新激活计算机器(如果需要)。实际上,计算机器可以包括(静态)应用程序,其对于嵌入其中的计算机器的旧访问标识符(例如,由它的旧IP地址和选择的端口号定义的旧插座)监听来自相应插头的向内通信,不同于监听在运行时提取的计算机器的新访问标识符的(动态)应用程序。可能的技术是使用计算机器的监视器(watchdog),其(通过监听包括用于旧IP地址的内部替换入口的任何插座)发现静态应用程序;计算机器的代理然后可以代表每个静态应用程序监听新访问标识符(即,由新IP地址和相同端口号定义的相应的新插座),并且将任何向内通信转发到静态应用程序。出了或替代该可能技术,(静态和动态)应用程序可以通过向传送计算机器的(旧或新)主机名的域名服务器(NDS)提交映射询问,检索需要的IP地址。在此情况下,计算机器的代理名称服务器拦截任何映射询问,并且用新主机名替换其旧主机名,使得DNS总是返回新IP地址。
计算机器在块415开机;这导致连接引擎的自动开始。继续到块418,读取存储在计算机器中的连接适配器。
在块421从连接适配器确定扮演插座角色的计算机器的连接(即,其中在讨论的示例中标签<SocketID>存储其机器标识符)。现在执行用于处理相应的插座部分的每一个的循环(从第一个开始)。循环在块424开始,其中从连接适配器提取(当前)插座部分。在块427进行测试,以验证插座部分是否依赖于一个或多个条件。如果插座部分不具有条件或满足所有条件,则在块433(通过调用相应的API)从操作系统提取计算机器的新访问标识符;以此方式,在运行时动态地确定新访问标识符(不要求任何手动操作)。然后在块433进行测试,以验证提取的新访问标识符的值是否与插座部分中存储的一个不同(在插座部分没有存储任何新访问标识符的开始处总是为真)。如果提取的新访问标识符的值不同于其存储值,则在块436相应地更新插座部分。
例如,在上述场景中,MachineID1上的连接Connection12的插座部分(具有新访问标识符AccessIDt1)变为:
在块439,相应的插座信息发布到连接注册表中。特别地,(如果已不可用)添加用于插座的入口,(否则)更新用于插座的入口;该入口指示旧访问标识符和新访问标识符之间的关联,并且插座的状态为活动的。
例如,连接注册表可以用格式化为键/值对的行存储在相应的文件中。对于每个计算机器,文件包括存储其机器标识符的行(例如,具有键“MachineID”)。对于涉及计算机器的每个连接,文件那么包括存储其连接标识符的行(例如,具有键“ConnectionID”)、存储其在连接中的角色的行(例如,具有键“Role”和值“Socket”或“Plug”)、以及存储其状态的行(例如,具有键“Status”和值“Active”或“Inactive”)。如果计算机器在连接中扮演插座的角色,则文件进一步包括存储其旧访问标识符的行(例如,具有键“Old”)和存储其新访问标识符的行(例如,具有键“New”)。例如,当管理它的服务支持服务定位协议(SLP或srvloc)时,可以自动访问连接注册表。在此情况下,连同对于要添加/更新的入口的询问,连接引擎广播用于搜索连接注册表的SLP询问(如由相应的摘要服务类型定义的)。
例如,在上述场景中,连接注册表变为:
MachineID:MachineID1
ConnectionID:Connection12
Role:Socket
Status:Active
Old:AccessIDb1
New:AccessIDt1
返回参照块427,如果插座部分具有一个或多个还没有满足的条件,则动作的流程下降到块442。在此阶段,相应的插座信息发布到连接注册表中;特别地,(如果已不可用)如上添加用于插座的入口,(否则)更新用于插座的入口,但是在任何情况下,具有插座是不活动的指示。
例如,在上述场景中,连接注册表变为:
MachineID:MachineID1
ConnectionID:Connection12
Role:Socket
Status:Inactive
Old:-
New:-
在块443,动作的流程从块439或块442再次合并。在此阶段,通过相应地通知事件管理器,生成相应的连接事件(分别指示插座的活动或不活动)。
动作的流程继续到块445;当新访问标识符的提取值等于其存储值时,直接从块433到达相同点。在任何情况下,现在进行测试,以验证是否已经处理其中计算机器扮演插座角色的所有连接。如果没有,则动作的流程返回到块424,用于对这些连接的下一个重复相同的上述操作。
相反地,通过从块445下降到块448,退出循环。此时,从连接适配器确定其中计算机器扮演插头角色的连接(即,其中在讨论的示例中标签<PlugID>存储其机器标识符)。现在执行另一循环,用于处理相应的插头部分的每一个(从第一个开始)。循环在块425开始,其中从连接适配器提取(当前)插头部分。在块454进行测试,以验证插头部分是否依赖于一个或多个条件。如果插头部分不具有条件或满足所有条件,则在块457在连接注册表中搜索用于相应的插座的入口(如由插头部分的连接的连接标识符和其插座部分的机器标识符标识的)。根据该搜索的结果,活动的流程在块460分支。如果在连接注册表中发现用于插座的入口,并且其状态为活动的,则在块463从连接注册表检索插座的新访问标识符。
例如,如果如上自动访问连接注册表,则连同用于检索插座的入口的不同询问(如由其机器标识符和连接标识符标识的),连接引擎再次广播用于搜索连接注册表的相同SLP询问(如由相应的摘要服务类型定义的)。响应于此,如果发现,则管理连接注册表的服务返回插座的入口(以名称/值对的形式),或者否则返回错误代码。在讨论的场景中,在其激活之后,用于插座的入口的SLP询问(包括值“MachineID1,Connection12”)将返回(Status:Active,New:AccessIDt1)。
在块446,相应地更新插座部分(通过如上在其中存储新访问标识符)。通过调用传递从插座部分检索的值的从插头部分检索的相应命令(即,在讨论的示例中“addCommand(AccessIDb1,AccessIDt1)”),在块469执行添加用于将旧访问标识符指向新访问标识符的内部替换入口的连接动作。在块472,相应的插头信息发布到连接注册表。特别地,(如果已不可用)添加用于插座的入口,(否则)更新用于插座的入口;入口指示插头连接到的插座,并且插头的状态为活动的。
例如,对于每个插头,连接注册表的文件可以包括(出了存储其机器标识符、连接标识符、角色和状态的行之外)存储其连接到的计算机器的机器标识符的行(例如,具有键“ConnectedTo”)。例如,在上述场景中,连接注册表变为:
MachineID:MachineID1
ConnectionID:Connection12
Role:Socket
Status:Active
Old:AccessIDb1
New:AccessIDt1
MachineID:MachineID2
ConnectionID:Connection12
Role:Plug
Status:Active
ConnectedTo:AccessIDt1
返回参照块460,如果在连接注册表中没有发现用于插座的入口,或者发现但是它的状态是不活动的,则动作的流程下降到块473;当插头部分具有一个或多个没有满足的条件时,也从块454到达相同点。在此阶段中,通过调用传递从插座部分检索的值的从插头部分检索的相应命令(即,在讨论的示例中“removeCommand(AccessIDb1,AccessIDt1)”),在块475执行移除用于将旧访问标识符指向新访问标识符(如果有的话)的内部替换入口的连接动作。在块475,相应的插头信息发布到连接注册表;特别地,(如果已不可用)添加用于插座的入口,(否则)更新用于插座的入口,但是在任何情况下,具有插头为不活动的指示。
例如,在上述场景中(假设插座为不活动的),连接注册表变为:
MachineID:MachineID1
ConnectionID:Connection12
Role:Socket
Status:Inactive
Old:-
New:-
MachineID:MachineID2
ConnectionID:Connection12
Role:Plug
Status:Inactive
ConnectedTo:-
动作的流程从块472或块475再次在块476合并。在此阶段中,通过相应地通知事件管理器,生成相应的连接事件(分别指示插头的活动或不活动)。在块478进行测试,以验证是否已经处理其中计算机器扮演插头角色的所有连接。如果没有,则动作的流程返回到块451,用于对这些连接的下一个重复相同的上述操作。
相反地,通过从块478下降到块481,退出循环。此时,进入对于任何连接事件的通知(来自事件管理器)的等待条件;例如,连接事件可以指示上述插座/插头的活动/不活动,或者插座/插头的移除(当相应计算机器变得不可用时临时移除或者当解散时永久移除)。一接收连接事件的通知,动作的流程就进到块484;在此阶段,在连接适配器中搜索可能受连接事件影响的连接的插座/插头部分。例如,任何插座/插头部分受改变其完成条件(从不满足到满足,反之亦然)时的连接事件影响;此外,任何插头部分受涉及相应插座(例如,指示其活动/不活动或移除)时的连接事件影响。
现在对于这些连接的每一个执行循环(从第一个开始)。循环在块487开始,其中动作的流程根据在(当前)连接中由计算机器扮演的角色而分支。如果计算机器扮演插座角色,则再次在块490处理连接的插座部分(通过重复块424-443的相同操作);相反地,如果计算机器扮演插头角色,则再次在块493处理连接的插头部分(通过重复块451-476的相同操作)。例如,使得插座/插头部分的所有条件满足的连接事件允许其处理。此外,指示插座活动的连接事件允许相应插头的活动;相反地,指示插座不活动的连接事件使得相应插头不活动。
动作的流程从块490或块493继续到块496。在任何情况下,现在进行测试,以验证是否已经处理可能受连接事件影响的所有连接。如果没有,则动作的流程返回块487,用于对这些连接的下一个重复上述相同操作。否则,动作的流程返回块481,等待另一连接事件的通知。
自然地,为了满足本地和特殊要求,本领域的技术人员可以对上述解决方案应用许多逻辑和/或物理修改和替换。更具体地,尽管已经参照其一个或多个实施例,以一定特殊性描述了该解决方案,但是应该理解,形式和细节中的各种省略、替换和改变以及其他实施例是可能的。特别地,甚至可以实践本发明的不同实施例,而没有在用于提供更透彻理解的之前描述中阐述的具体细节(诸如数值);相反地,可以省略或简化公知特征,以便不用不必要的细节使描述模糊。此外,明确地意图是结合公开的解决方案的任何实施例描述的特定元件和/或方法步骤可以并入任何其他实施例作为一般设计选择。在任何情况下,序数或其他限定词仅仅用作区分具有相同名称的元件的标签,而不使它们本身意味着任何优先级、优选权或次序。此外,术语包括、包含、具有、含有和涉及(以及其任何形式)应该用开放、非穷举的含义理解(即,不限于陈述的项目),术语基于、依赖于、根据、功能(以及其任何形式)应该理解为非穷举关系(即,可能涉及进一步的变量),并且术语一/一个应该理解为一个或多个项目(除非另外明确指示)。
例如,本发明的实施例提供用于在计算系统中部署软件映像的方法。该方法包括以下步骤。将计算机器从相应的软件映像实例化到计算系统上;计算机器具有旧访问标识符,并且连接到软件映像中的至少一个进一步的计算机器的旧访问标识符。配置计算机器以具有新访问标识符。从旧访问标识符与其新访问标识符之间显示的关联,检索每个进一步的计算机器的新访问标识符。将从计算机器到每个进一步的计算机器的旧访问标识符的每个向外通信重新定向到其新访问标识符。
然而,该方法可以应用于任何软件映像部署到任何计算系统(见以下),即使没有包括在虚拟应用中(例如,仅包括操作系统)。计算机器可以是任何类型(物理的或虚拟类型)。访问标识符可以有任何值,用于访问计算机器(例如,它的主机名、IP地址和/或端口号)。计算机器可以以任何方式配置(以便具有新访问标识符),例如,通过手动设置或通过改变访问方案(诸如从静态寻址方案到动态寻址方案,在静态寻址方案中预先分配旧IP地址,在动态寻址方案中通过动态主机配置协议或DHCP在每当计算机器引导时自动分配新IP地址)。计算机器可以以任何方式连接到用于任何目的任何数目的进一步的计算机器(例如,连接到一个或多个服务器组件、对等组件、客户端组件或web服务的每个应用程序,以协作实现共同目的和/或交换信息)。可以从任何显示的关联以任何方式检索每个进一步的计算机器的新访问标识符,并且可以以任何方式重新定向每个向外通信(见以下)。
在本发明的实施例中,该方法还包括步骤:如果计算机器由至少一个更进一步的计算机器连接,则显示计算机器的旧访问标识符和新访问标识符之间的关联。
然而,关联可以由任何实体显示(例如,由用于所有计算机器的部署服务器)。
在本发明的实施例中,显示计算机器的旧访问标识符和新访问标识符之间的关联的步骤包括:将计算机器的旧访问标识符和新访问标识符之间的关联发布到共享注册表中;检索每个进一步的计算机器的新访问标识符的步骤包括:从共享注册表检索与进一步的计算机器的旧访问标识符相关联的新访问标识符。
然而,共享注册表可以是任何类型(例如,表格)。此外,可以以另一方式显示和检索关联,即使在没有任何共享注册表的情况下;例如,在不同的实施方式中,每个进一步的计算机器简单地揭露相应的关联,由计算机器(诸如经由SLP)从其直接检索相应的关联。
在本发明的实施例中,将从计算机器到每个进一步的计算机器的旧访问标识符的每个向外通信重新定向到其新访问标识符的步骤包括:添加用于将进一步的计算机器的旧访问标识符指向其新访问标识符的内部替换入口。
然而,向外通信可以以另一方式重新定向,即使在没有添加内部替换入口的情况下(例如,通过封装通信模块)。
在本发明的实施例中,检索每个进一步的计算机器的新访问标识符以及重新定向每个向外通信的步骤包括:对于其中计算机器扮演连接到所述至少一个进一步的计算机器的相应一个的插头角色的每个连接,处理插头部分;插头部分包括活动动作以及作为旧访问标识符和新访问标识符的一组连接参数的指示。插头部分的处理包括:检索在插头部分中指示的连接参数,以及(响应于连接参数的成功检索)通过传递用于使得相应的重新定向的活动的连接参数,执行在插头部分中指示的活动动作。
然而,插头部分可以包括额外信息,例如,插头的标识符和描述,以及对于每个活动动作的活动动作的标识符和描述,它的类型(诸如本地或远程脚本、web服务等)和它的触发事件(例如,部署、开机等)。插头部分的处理可以包括不同的、额外的或替代的操作(例如,基于预定策略或限制,在没有任何条件的情况下,在其期间停用连接功能)。
在本发明的实施例中,每个插头部分进一步包括不活动动作的指示;处理插头部分的步骤进一步包括:(响应于连接参数的不成功检索)通过传递用于使得相应的重新定向的不活动的连接参数,执行在插头部分中指示的不活动动作。
然而,插头部分可以包括用于如上不活动动作的额外信息。此外,连接参数的不成功检索可以以任何方式确定(例如,当它们在共享注册表中不可用时,即使没有任何状态指示符,或者当在预定的超时内没有接收到它们)。
在本发明的实施例中,该方法还包括步骤:通过响应于指示相应的进一步的计算机器不活动的插座不活动事件传递连接参数,执行在插头部分中指示的不活动动作。
然而,可以以任何方式生成插座不活动事件(例如,当插座不活动事件变得过载时)。
在本发明的实施例中,显示计算机器的旧访问标识符和新访问标识符之间的关联的步骤包括:对于其中计算机器扮演由所述至少一个更进一步计算机器的至少部分连接的插座角色的每个连接,处理插座部分;插座部分包括连接参数和分配到相应的连接参数的旧访问标识符的指示。插座部分的处理包括:将新访问标识符分配到相应的连接参数,以及显示连接参数。
然而,插座部分可以包括如上额外的信息。插座部分的处理可以包括不同的、额外的或替代的操作(例如,显示它的环境、类型、状态、用户等)。
在本发明的实施例中,处理插座部分的步骤进一步包括:提取计算机器的新访问标识符。
然而,新访问标识符可以以另一方式分配到相应的连接参数(例如,通过从其中静态地定义的插头部分提取它)。
在本发明的实施例中,处理插座部分的步骤进一步包括:响应于相应的连接参数的显示,生成插座活动事件;该方法进一步包括步骤:响应于相应的插座活动事件,执行每个插头部分的处理。
然而,可以响应于不同的、额外的或替代的事件处理插头部分(例如,相应的进一步的计算机器的更新)。
在本发明的实施例中,该方法还包括步骤:对于涉及计算机器的每个连接,读取软件映像中包括的连接适配器,连接适配器包括相应的插头部分、相应的插座部分以及连接中由计算机器扮演的角色的指示。
然而,连接适配器可以是任何类型(例如,表格)并且以另一方式提供(例如,从相应的库下载)。此外,连接适配器可以包括不同的、额外的或替代的信息;例如,在另一实施方式中,从共享注册表检索每个连接中计算机器的角色。
通常,如果用等价方法(通过使用具有更多步骤或部分的相同功能的类似的步骤,移除不必要的一些步骤,或者添加额外的可选步骤)实施相同解决方案,则类似的考虑适用;此外,可以以不同顺序、同时或以交织方式(至少部分地)执行各步骤。
本发明的另一实施例提供了一种计算机程序,其包括当在计算机器上执行该计算机程序时,用于使得计算机器执行上述方法的各步骤的代码装置。
本发明的另一实施例提供了一种计算机程序产品,其包括体现计算机程序的非临时计算机可读介质,计算机程序包括可直接加载到计算机器的工作存储器中从而配置计算机机器执行所述方法的代码装置。
然而,计算机程序可以由专用模块(诸如连接引擎)、通过在专用计算机器上运行并且能够管理所有其他计算机器的公共模块或由远程服务实施,该专用模块在部署之前注入每个软件映像或者在实例化之后下载到每个计算机器上。
所属技术领域的技术人员知道,本发明的各个方面可以实现为系统、方法或计算机程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、驻留软件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。此外,在一些实施例中,本发明的各个方面还可以实现为在一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在相关的计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。
也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令的制造品(article of manufacture)。也可以把计算机程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机或其它可编程装置上执行的指令能够提供实现流程图和/或框图中的方框中规定的功能/操作的过程。
本发明的另一实施例提供一种系统,其包括配置为执行上述方法的各步骤的装置。
然而,可以以任何方式实施本系统(例如,使用基于本地、广域、全球、蜂窝或卫星网络的分布式架构,并且利用任何类型的有线和/或无线连接)。在任何情况下,系统可以包括类似元件(诸如临时存储程序或其部分的高速缓冲存储器),并且其可以由基于一个或多个物理机器、虚拟机器的任何代码执行实体或用多个实体的任何组合替代(诸如多级架构、网格计算基础设施等)。
通常,如果系统具有不同结构或包括等价组件或其具有其他操作特性,则类似的考虑适用。在任何情况下,其每个组件可以分为更多元件,或两个或更多组件可以组合为单个元件;此外,每个组件可以复制以支持并行的相应操作。还指出(除非另外指定)不同组件之间的任何交互通常不需要时连续的,并且它可以是直接的或通过一个或多个中介间接的。

Claims (12)

1.一种用于在计算系统上部署软件映像的方法(400),所述方法包括以下步骤:
将计算机器从相应的软件映像实例化(409)到所述计算系统上,所述计算机器具有第一旧访问标识符,并且所述计算机器通过进一步的计算机器的第二旧访问标识符连接到该进一步的计算机器,该进一步的计算机器从所述软件映像中的至少一个实例化;
配置(412)所述进一步的计算机器以具有新访问标识符,其特征在于
从第二旧访问标识符与其新访问标识符之间显示的关联,检索(448-466)该进一步的计算机器的新访问标识符,并且
将从该计算机器的第一旧访问标识符到该进一步的计算机器的第二旧访问标识符的每个向外通信重新定向(469-478)到该进一步的计算机器的新访问标识符。
2.根据权利要求1所述的方法(400),还包括步骤:
如果该计算机器由至少一个进一步的计算机器连接,则显示(421-445)该至少一个进一步的计算机器的第二旧访问标识符和新访问标识符之间的关联。
3.根据权利要求2所述的方法(400),其中显示(421-445)该至少一个进一步的计算机器的第二旧访问标识符和新访问标识符之间关联的步骤包括:
将该至少一个进一步的计算机器的第二旧访问标识符和新访问标识符之间的关联发布(439)到共享注册表中,
并且其中检索(448-466)该进一步的计算机器的新访问标识符的步骤包括:
从共享注册表检索(463)与该进一步的计算机器的第二旧访问标识符相关联的新访问标识符。
4.根据权利要求1到3的任一所述的方法(400),其中将从该计算机器的第一旧访问标识符到该进一步的计算机器的第二旧访问标识符的每个向外通信重新定向(469-478)到其新访问标识符的步骤包括:
添加(469)用于将该进一步的计算机器的第二旧访问标识符指向其新访问标识符的内部替换入口。
5.根据权利要求1到3的任一所述的方法(400),其中检索(448-466)该进一步的计算机器的新访问标识符以及重新定向(469-478)每个向外通信的步骤包括:
对于其中计算机器扮演连接到所述至少一个进一步的计算机器的相应一个的插头角色的每个连接,处理(448-478)插头部分,插头部分包括活动动作以及作为第二旧访问标识符和新访问标识符的一组连接参数的指示,其中插头部分的处理包括:
检索(463)在插头部分中指示的连接参数,以及
响应于连接参数的成功检索,通过传递用于使得相应的重新定向的活动的连接参数,执行在插头部分中指示的活动动作。
6.根据权利要求5所述的方法(400),其中每个插头部分进一步包括不活动动作的指示,处理(448-478)插头部分的步骤进一步包括:
响应于连接参数的不成功检索,通过传递用于使得相应的重新定向的不活动的连接参数,执行在插头部分中指示的不活动动作。
7.根据权利要求6所述的方法(400),还包括步骤:
通过响应于指示相应的进一步的计算机器不活动的插座不活动事件传递连接参数,执行(493)在插头部分中指示的不活动动作。
8.根据权利要求5所述的方法(400),其中显示(421-445)该至少一个进一步的计算机器的第二旧访问标识符和新访问标识符之间的关联的步骤包括:
对于其中计算机器扮演由所述至少一个更进一步计算机器的至少部分连接的插座角色的每个连接,处理(421-445)插座部分,插座部分包括连接参数和分配到相应的连接参数的第二旧访问标识符的指示,其中插座部分的处理包括:
将新访问标识符分配(430)到相应的连接参数,以及
显示(439)连接参数。
9.根据权利要求8所述的方法(400),其中处理(421-445)插座部分的步骤进一步包括:
提取(430)该进一步的计算机器的新访问标识符。
10.根据权利要求8或9所述的方法(400),其中处理(421-445)插座部分的步骤进一步包括:
响应于相应的连接参数的显示,生成(443)插座活动事件,
所述方法进一步包括步骤:
响应于相应的插座活动事件,执行(493)每个插头部分的处理。
11.根据权利要求5所述的方法(400),还包括步骤:
对于涉及计算机器的每个连接,读取(418)软件映像中包括的连接适配器,连接适配器包括相应的插头部分、相应的插座部分以及连接中由计算机器扮演的角色的指示。
12.一种用于在计算系统上部署软件映像的系统(100),包括配置用于执行根据权利要求1到11的任一所述的方法(400)的步骤的部件(325)。
CN201310593800.4A 2012-11-21 2013-11-21 用于软件映像部署到计算系统上的方法和系统 Active CN103838644B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB1220936.7 2012-11-21
GB1220936.7A GB2508160A (en) 2012-11-21 2012-11-21 Avoiding conflicts between computing machines

Publications (2)

Publication Number Publication Date
CN103838644A CN103838644A (zh) 2014-06-04
CN103838644B true CN103838644B (zh) 2017-03-01

Family

ID=47521499

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310593800.4A Active CN103838644B (zh) 2012-11-21 2013-11-21 用于软件映像部署到计算系统上的方法和系统

Country Status (3)

Country Link
US (1) US9264306B2 (zh)
CN (1) CN103838644B (zh)
GB (1) GB2508160A (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2507753A (en) * 2012-11-07 2014-05-14 Ibm Dynamic configuration of virtual appliances
CN103970581B (zh) * 2013-01-24 2017-09-12 国际商业机器公司 创建虚拟资源包的方法和设备
US9870487B2 (en) * 2014-12-30 2018-01-16 Data I/O Corporation Automated manufacturing system with adapter security mechanism and method of manufacture thereof
US10114702B2 (en) * 2016-01-06 2018-10-30 International Business Machines Corporation Method and system to discover and manage distributed applications in virtualization environments

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1917697A (zh) * 2005-08-19 2007-02-21 华为技术有限公司 一种在核心网节点池内转移用户的方法与节点
CN101128046A (zh) * 2006-08-16 2008-02-20 华为技术有限公司 获取接入系统上下文的方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2408614A (en) * 2003-11-27 2005-06-01 Sharp Kk Remote access system
US7373451B2 (en) * 2003-12-08 2008-05-13 The Board Of Trustees Of The Leland Stanford Junior University Cache-based system management architecture with virtual appliances, network repositories, and virtual appliance transceivers
US20070050756A1 (en) 2005-08-24 2007-03-01 Nokia Corporation Component architecture
US8364638B2 (en) * 2005-09-15 2013-01-29 Ca, Inc. Automated filer technique for use in virtualized appliances and applications
US8429630B2 (en) * 2005-09-15 2013-04-23 Ca, Inc. Globally distributed utility computing cloud
US8949364B2 (en) * 2005-09-15 2015-02-03 Ca, Inc. Apparatus, method and system for rapid delivery of distributed applications
US20070283314A1 (en) * 2006-06-05 2007-12-06 Dennis Michael Browning A Method and System for Performing a Change-Over to a Component of a Computing System
US8543998B2 (en) * 2008-05-30 2013-09-24 Oracle International Corporation System and method for building virtual appliances using a repository metadata server and a dependency resolution service
US20100174811A1 (en) * 2009-01-05 2010-07-08 Microsoft Corporation Network isolation and identity management of cloned virtual machines
US8560649B2 (en) 2009-03-13 2013-10-15 Aspect Software, Inc. Virtual appliance automation tool
US8990433B2 (en) * 2009-07-01 2015-03-24 Riverbed Technology, Inc. Defining network traffic processing flows between virtual machines
JP5719378B2 (ja) 2009-12-10 2015-05-20 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation コンピュータ・アーキテクチャのプラグ・アンド・プレイ方式のサポートのための方法及びシステム
US8402139B2 (en) * 2010-02-26 2013-03-19 Red Hat, Inc. Methods and systems for matching resource requests with cloud computing environments
US9130912B2 (en) * 2010-03-05 2015-09-08 International Business Machines Corporation System and method for assisting virtual machine instantiation and migration
US8984257B2 (en) * 2010-04-06 2015-03-17 Hewlett-Packard Development Company, L.P. Managing sensor and actuator data for a processor and service processor located on a common socket
TWI505189B (zh) * 2010-08-27 2015-10-21 Ibm 用於虛擬裝置之自動升級之方法、電腦程式及系統
US20120054486A1 (en) * 2010-08-31 2012-03-01 MindTree Limited Securing A Virtual Environment And Virtual Machines
WO2012033485A1 (en) 2010-09-07 2012-03-15 Hewlett-Packard Development Company, L.P. System and method for automated deployment of a multi-component computer environment
US8627310B2 (en) * 2010-09-30 2014-01-07 International Business Machines Corporation Capturing multi-disk virtual machine images automatically
WO2012054016A1 (en) * 2010-10-19 2012-04-26 Hewlett-Packard Development Company, L.P. Methods and systems for generation of authorized virtual appliances
US8910157B2 (en) 2010-11-23 2014-12-09 International Business Machines Corporation Optimization of virtual appliance deployment
DE112011103872T5 (de) 2010-11-23 2013-08-22 International Business Machines Corporation Verfahren, Computer-Programm und System, um die Voraussetzung eines virtuellen Abbild eines Software-Produkts zu verwalten
US8806588B2 (en) * 2011-06-30 2014-08-12 Amazon Technologies, Inc. Storage gateway activation process
ITMI20111210A1 (it) 2011-06-30 2012-12-31 Ibm Riattivazione dinamica di immagini software
US9274838B2 (en) * 2011-12-22 2016-03-01 Netapp, Inc. Dynamic instantiation and management of virtual caching appliances
US8839447B2 (en) * 2012-02-27 2014-09-16 Ca, Inc. System and method for virtual image security in a cloud environment
US9116753B2 (en) * 2012-07-08 2015-08-25 Dell Products L.P. System and method for dynamic scaling based on a reference architecture
US20140041053A1 (en) * 2012-07-31 2014-02-06 Aled Edwards Data block access control
US10754699B2 (en) * 2012-08-05 2020-08-25 International Business Machines Corporation Remote provisioning of virtual appliances for access to virtualized storage
US8930957B2 (en) * 2012-09-13 2015-01-06 International Business Machines Corporation System, method and program product for cost-aware selection of stored virtual machine images for subsequent use
GB2519114A (en) * 2013-10-10 2015-04-15 Ibm Distribution of a service implemented by intra-connected virtual machines

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1917697A (zh) * 2005-08-19 2007-02-21 华为技术有限公司 一种在核心网节点池内转移用户的方法与节点
CN101128046A (zh) * 2006-08-16 2008-02-20 华为技术有限公司 获取接入系统上下文的方法

Also Published As

Publication number Publication date
GB201220936D0 (en) 2013-01-02
US20140143392A1 (en) 2014-05-22
US9264306B2 (en) 2016-02-16
GB2508160A (en) 2014-05-28
CN103838644A (zh) 2014-06-04

Similar Documents

Publication Publication Date Title
CN105579965B (zh) 经由提供商定义接口的客户端驻地资源控制
US9450813B2 (en) Automated host device virtual network configuration system
US10819589B2 (en) System and a method for optimized server-less service virtualization
US7574491B2 (en) Virtual data center for network resource management
US7822594B2 (en) Service-oriented infrastructure management
US9929903B2 (en) System and method for automated network configuration
US10069688B2 (en) Dynamically assigning, by functional domain, separate pairs of servers to primary and backup service processor modes within a grouping of servers
CN110063051A (zh) 可重新配置的服务器
US11256649B2 (en) Machine templates for predetermined compute units
CN103838644B (zh) 用于软件映像部署到计算系统上的方法和系统
CN108667639B (zh) 一种私有云环境下的资源管理方法及管理服务器
WO2017010976A1 (en) Hybrid cloud management
US20190238484A1 (en) Large scale fabric attached architecture
US20220052944A1 (en) Scalable network function virtualization service
KR102262395B1 (ko) Nfv 시스템의 상호 운용성을 테스트하기 위한 테스트 장치
US9146749B1 (en) System and methods for updating digital signage device operating systems and registering signage devices to a global network
Avramov et al. The Policy Driven Data Center with ACI: Architecture, Concepts, and Methodology
US8995424B2 (en) Network infrastructure provisioning with automated channel assignment
EP3284214B1 (en) Converged system compliance checking
US20200341597A1 (en) Policy-Based Dynamic Compute Unit Adjustments
US11843517B1 (en) Satellite virtual private cloud network environments
US20240019824A1 (en) A Building Automation Network
JP2023028351A (ja) 計算機システム及び更新制御方法
Shigeta et al. DESIGN AND IMPLEMENTATION OF ITCELL SYSTEM: TOWARDS THE NEXT-GENERATION DATA CENTER FOR CLOUD COMP TINGU
Dhanagopal et al. Oracle Exalogic Elastic Cloud Administrator's Guide, Release EL X2-2 and X3-2 E25258-06

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200403

Address after: Yin Duxindeli

Patentee after: HCL Technology Co., Ltd.

Address before: Armank, New York, USA

Patentee before: International Business Machines Corp.

TR01 Transfer of patent right