CN102918503A - 用于更新虚拟机模板的方法、设备和制品 - Google Patents

用于更新虚拟机模板的方法、设备和制品 Download PDF

Info

Publication number
CN102918503A
CN102918503A CN201080066741XA CN201080066741A CN102918503A CN 102918503 A CN102918503 A CN 102918503A CN 201080066741X A CN201080066741X A CN 201080066741XA CN 201080066741 A CN201080066741 A CN 201080066741A CN 102918503 A CN102918503 A CN 102918503A
Authority
CN
China
Prior art keywords
virtual machine
strategy
template
upgrade
operating strategy
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.)
Granted
Application number
CN201080066741XA
Other languages
English (en)
Other versions
CN102918503B (zh
Inventor
P.肯尼迪
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.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN102918503A publication Critical patent/CN102918503A/zh
Application granted granted Critical
Publication of CN102918503B publication Critical patent/CN102918503B/zh
Active 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • 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/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
    • G06F2009/45562Creating, deleting, cloning virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

公开了用于更新虚拟机模板的示例性方法、设备和制品。所公开的用于更新虚拟机模板(105)的示例性方法包括更新管理策略(110)、在网络封锁沙箱(170)中基于虚拟机模板(105)来启动虚拟机(116)、触发虚拟机(116)以按照已更新管理策略(110)进行更新以及将虚拟机(116)保存为已更新虚拟机模板(106)。

Description

用于更新虚拟机模板的方法、设备和制品
背景技术
虚拟机是物理机的高效、隔离且虚拟化的表示。在虚拟机内部执行的软件局限于由该虚拟机实现的资源和抽象化。换言之,软件被隔离且不能摆脱由虚拟机定义的虚拟世界。许多虚拟机可以共享底层物理机资源,每个虚拟机执行其自己的操作系统和/或(一个或多个)过程。在某些情况下,在(一个或多个)虚拟机与物理硬件之间实现称为虚拟机监视器或管理程序(hypervisor)的软件层。管理程序可以在裸硬件上(例如作为本地虚拟机)或在操作系统之上(例如作为托管虚拟机(hosted virtual machine))运行。
虚拟机模板是定义和/或指定硬件和/或软件设置的映像或文件,其可以反复地用来启动、创建和/或实例化(instantiate)用那些设置预配置的虚拟机。作为源计算环境的表示或衍生物的虚拟机模板一般包括虚拟硬件组件、已安装客户操作系统(如果适用的话)和一个或多个软件应用程序。虚拟机模板使得信息技术组织能够快速地和/或容易地创建和部署新的虚拟机和/或虚拟服务器。
附图说明
图1是被结构化为更新虚拟机模板的示例性系统的示意性图示。
图2和3图示了可以使用机器可访问指令来实现的示例性交互和示例性过程,所述机器可访问指令可以被例如一个或多个处理器执行以更新虚拟机模板和/或实现图1的示例性系统。
图4表示可以使用机器可访问指令来实现的示例性过程,所述机器可访问指令可以被例如一个或多个处理器执行以更新虚拟机模板和/或实现图1的示例性系统。
图5表示可以使用示例性机器可访问指令来实现的示例性过程,所述机器可访问指令可以被例如一个或多个处理器执行以按照管理策略来更新虚拟机。
图6是可以被使用和/或编程以执行图2~5的示例性交互、示例性过程和/或示例性机器可访问指令以实现本文所述的任何或所有示例性方法、设备和/或制品的示例性处理器平台的示意性图示。
具体实施方式
当虚拟机模板被创建时,其进入静止状态。换言之,虚拟机模板是在传统管理维护方法范围之外的脱机且固定的实体。因此,基于、使用和/或从虚拟机模板启动、创建和/或实例化的任何虚拟机相对于例如补丁、安全更新、安全配置、已安装软件和/或已安装硬件而言可能是过时的。
公开了用于更新虚拟机模板的示例性方法、设备和制品。在所公开的示例中,管理策略在逻辑上被附着于虚拟机模板和/或从虚拟机模板去除。在基于、使用和/或从虚拟机模板启动、创建和/或实例化虚拟机之后,虚拟机被触发以基于被附着于虚拟机模板的(一个或多个)管理策略来更新其状态。在某些示例中,在将虚拟机与网络的一个或多个服务器隔离的网络封锁沙箱(network cordoned sandbox)中启动虚拟机。可以将虚拟机隔离以例如防止过时的防毒软件潜在地使其他服务器暴露于计算机病毒和/或防止虚拟机被暴露于计算机病毒。在按照所附着的(一个或多个)管理策略的更新之后,将已更新虚拟机的状态保存为新的和/或已更新的虚拟机模板。随后基于已更新的虚拟机模板启动的任何虚拟机在虚拟机被启动时遵照所附着的(一个或多个)管理策略。
在其他示例中,虚拟机是可操作(operational)服务器,因此,当虚拟机被关掉时,可能丢失任何虚拟机状态变化,除非虚拟机的状态被保存为新的和/或已更新的虚拟机。
所公开的用于更新虚拟机模板的示例性方法包括更新管理策略、在网络封锁沙箱中基于虚拟机模板来启动虚拟机、触发虚拟机以按照已更新管理策略来进行更新以及将虚拟机保存为已更新虚拟机模板。
所公开的用于更新虚拟机模板的另一示例性方法包括接收触发以发起虚拟机模板的更新、针对管理策略的第一策略确定基于虚拟机模板启动的虚拟机是否遵照第一策略、当虚拟机不遵照第一策略时按照第一策略来更新虚拟机以及将虚拟机的状态保存为已更新虚拟机模板,其中,基于已更新虚拟机模板启动的第二虚拟机遵照管理策略。
图1图示被结构化以基于一个或多个逻辑上附着和/或关联的管理策略(在附图标记110处指定了其中的一个)来更新虚拟机模板的示例性系统100,在附图标记105处指定了虚拟机模板中的一个。使用任何数目和/或类型的方法和/或过程,图1的示例性虚拟机模板105可以用来启动、创建和/或实例化虚拟机,在附图标记115、116和117处指定了其中的三个。
图1的示例性虚拟机115~117在由相应管理程序120、121和122提供和/或实现的环境内执行。图1的示例性管理程序120~122是在物理平台之上实现的,在附图标记125和126处指定了物理平台中的两个。在图1的所示示例中,主机操作系统(OS)130和131至少部分地介于管理程序120~122与物理平台125、126之间。然而,在其他示例中,管理程序120~122中的一个或多个可以在没有介入主机OS 130、131的情况下直接在物理平台125、126上执行。如图1所示,不止一个管理程序120~122和相应虚拟机115~117可以同时在物理平台125、126和/或主机OS 130、131上执行。因此,可以同时地在物理平台125、126上执行多个和/或不同虚拟机模板105和/或虚拟机115~117的更新。下面结合图6来描述可以用来实现示例性物理平台125、126的示例性处理器平台P100。
为了允许基于一个或多个管理策略110来更新虚拟机115~117,图1的每个示例性虚拟机115~117实现服务器自动化(SA)代理135。图1的示例性SA代理135与中央策略数据库140相交互以获得一个或多个管理策略110,所述管理策略被附着于用来启动其对应的虚拟机115~117的模板105和/或与之相关联。基于所获得的(一个或多个)管理策略110,SA代理135从被应用和/或执行以按照所获得的(一个或多个)管理策略110来更新其关联虚拟机115~117的中央文件系统150获得一个或多个文件145、146。文件145、146可以表示例如软件补丁、软件更新、安全更新、病毒检测更新、防火墙更新、安全配置、软件和/或硬件驱动器。虽然为了说明清楚起见而未在图1中示出,但示例性管理程序120~122还可以实现SA代理。下面结合图5来描述可以由一个或多个处理器执行以实现示例性SA代理135的示例性机器可访问指令。
如图1所示,示例性SA代理135经由数据库服务器155来访问策略数据库140。图1的示例性数据库服务器155实现任何数目和/或类型的应用编程接口、协议和/或消息以使得SA代理135、主机OS 130、131和/或管理程序120~122能够查询和/或访问存储在中央策略数据库140中的管理策略110。
图1的示例性SA代理135经由文件服务器160来访问中央文件系统150。图1的示例性文件服务器160实现任何数目和/或类型的应用编程接口、协议和/或消息以使得SA代理135、主机OS 130、131和/或管理程序120~122能够查询和/或访问存储在中央文件系统150中的虚拟机模板105和/或文件145和146。
图1的示例性SA代理135、示例性主机OS 130、131和/或示例性管理程序120~122经由任何数目和/或类型的通信网关和/或网络与数据库服务器155和/或文件服务器160通信和/或访问数据库服务器155和/或文件服务器160,在附图标记165处指定了所述通信网关和/或网络中的一个。
 在2006年10月31日颁发且题为“Automated Provisioning Of Computing Environments Using a Network Database Model”的美国专利号7,131,123和2003年12月2日颁发且题为“Object - Oriented Database Abstraction and Statement Generation”的美国专利号6,658,426中描述了可以用来实现示例性中央策略数据库140、示例性数据库服务器155、示例性管理策略110、示例性中央文件系统150、示例性文件服务器160、示例性通信网关165和/或基于关联的管理策略110来更新虚拟机115~117的示例性方法、数据结构和设备,所述的两个美国专利被转让给惠普开发公司L.P.,即本申请的受让人。美国专利号7,131,123和美国专利号6,658,426均被整体地通过引用结合到本文中。
为了将虚拟机115~117与其他机器、服务器和/或虚拟机隔离,图1的每个示例性管理程序120~122可以实现网络封锁,在附图标记170处指定了其中的一个。图1的示例性网络封锁170包括任何数目和/或类型的设置、参数和/或值,其将由示例性管理程序121实现的联网环境配置成使限制和/或约束虚拟机116对其他机器、服务器和/或虚拟机的访问和/或限制和/或约束其他机器、服务器和/或虚拟机对虚拟机116的访问。换言之,示例性网络封锁170使得图1的示例性管理程序121能够创建、提供和/或实现其中可以更新虚拟机模板105的安全沙箱。示例性网络封锁170对管理程序121和/或虚拟机116进行配置,使得例如虚拟机116能够经由通信网关165访问的联网资源只有中央策略数据库140和中央文件系统150。
为了允许用户175(例如系统管理员)与示例性系统100相交互,图1的示例性系统100包括用户界面180。图1的示例性用户界面180实现了任何数目和/或类型的界面(例如基于web的图形用户界面),其允许和/或使得用户175能够访问中央文件系统150和数据库服务器155以创建、配置、更新和/或删除虚拟机模板105和/或管理策略110和/或将管理策略110附着于虚拟机模板105。示例性用户界面180还使得用户175能够基于已更新和/或新的管理策略110来触发新虚拟机模板105的更新和/或创建,和/或基于已更新和/或新的管理策略110来更新已运行的虚拟机115~117。用户界面180还使得用户175能够经由文件服务器160来添加、删除、修改和/或以其他方式管理存储在中央文件系统150中的文件145和146。在某些示例中,由诸如下文结合图6描述的示例性处理器平台P100的计算机或服务器来实现图1的示例性用户界面180。
虽然在图1中已图示了示例性系统100,但可以以任何方式对图1所图示的服务器、平台、界面、数据结构、元件、过程和/或器件中的一个或多个进行组合、划分、重新布置、省略、消除和/或实现。此外,可以用硬件、软件、固件和/或硬件、软件和/或固件的任何组合来实现示例性系统100。示例性硬件包括但不限于示例性处理器平台P100和/或任何数目和/或类型的电路、可编程处理器、专用集成电路(ASIC)、可编程逻辑器件(PLD)、现场可编程逻辑器件(FPLD)和/或现场可编程门阵列(FPGA)等。
当阅读本专利的任何设备权利要求覆盖纯软件和/或固件实施方式时,示例性物理平台125、126、示例性管理程序120~122、示例性虚拟机115~117、示例性SA代理135和/或示例性用户界面180中的至少一个因此被明确地定义为包括有形制品,诸如存储固件和/或软件的有形计算机可读介质。本文所使用的术语有形计算机可读介质被明确地定义为包括任何类型的计算机可读存储器且不包括传播信号。示例性有形计算机可读介质包括易失性和/或非易失性存储器、易失性和/或非易失性存储器件、压缩盘(CD)、数字多功能磁盘(DVD)、软盘、只读存储器(ROM)、随机存取存储器(RAM)、可编程ROM(PROM)、电子可编程ROM(EPROM)、电可擦除PROM(EEPROM)、光学存储盘、光学存储器件、磁存储盘和/或磁存储器件、高速缓存或者其中可以存储信息达任何持续时间的任何其它存储介质(例如达到延长的时间段、永久地、短暂时刻、用于临时缓冲和/或用于信息的高速缓存)。本文所使用的术语非临时性计算机可读介质被明确地定义为包括任何类型的计算机可读介质且不包括传播信号。更进一步地,作为图1所图示的那些的替代或除此之外,示例性系统100可以包括服务器、界面、接口、数据结构、元件、过程和/或器件和/或可以包括所图示的服务器、平台接口、数据结构、元件、过程和/或器件中的任何或全部中的不止一个。
图2和3图示可以使用机器可访问指令来实现的示例性交互和示例性过程,所述机器可访问指令可以被执行以基于所附着管理策略110来更新任何示例性虚拟机模板105和/或实现图1的示例性系统100。图4表示可以使用机器可访问指令来实现的示例性过程,所述机器可访问指令可以被例如一个或多个处理器执行以更新任何示例性虚拟机模板105。图5表示可以使用机器可访问指令来实现的示例性过程,其可以被例如一个或多个处理器执行以按照管理策略110来更新虚拟机115~117。
可以将处理器、控制器和/或任何其他适当处理设备使用、配置和/或编程以执行和/或实行图2~5的示例性交互、示例性过程和/或示例性机器可访问指令。例如,可以用存储于有形计算机可读介质上的编码指令来体现图2~5的示例性交互、示例性过程和/或示例性机器可访问指令,所述有形计算机可读介质可以用来以机器可读指令或数据结构的形式存储程序代码和/或指令,并且其可以被处理器、计算机和/或具有处理器的其他机器访问,诸如下文结合图6所讨论的示例性处理器平台P100。机器可读指令包括例如促使处理器、计算机和/或机器使处理器执行一个或多个特定过程的指令和数据。替换地,可以人工地或使用任何硬件、软件和/或固件来实现图2~5的示例性交互、示例性过程和/或示例性机器可访问指令中的某些或全部。此外,可以采用实现图2~5的示例的许多其他方法。例如,可以改变方框的执行次序和/或可以将方框中的一个或多个改变、消除、再划分或组合。另外,可以由例如单独的处理线程、处理器、设备、离散逻辑、电路等来顺序地执行和/或并行地执行图2~5的示例性交互、示例性过程和/或示例性机器可访问指令中的任何或全部。
图2的所图示示例从示例性用户175与示例性用户界面180相交互202以定义已更新管理策略P1.1开始。示例性用户界面180经由数据库服务器155将已更新管理策略P1.1存储204在示例性策略数据库140中。
用户175将已更新策略P1.1附着于206虚拟机模板T 1.0并指导208用户界面180触发基于已更新和已附着策略P 1.1进行的虚拟机模板T 1.0的更新。替换地,已更新策略P 1.1可以指定已更新策略P 1.1将被用户界面180自动地附着到的(一个或多个)虚拟机模板105。
示例性用户界面180使用任何(一个或多个)可适用方法和/或过程基于虚拟机模板T 1.0来发起210示例性虚拟机116的实例化。模板T 1.0是经由文件服务器160从文件系统150获得的并被用来启动214虚拟机116。在某些示例中,虚拟机116将经由示例性网络封锁170被与至少一个联网设备隔离。
在虚拟机116已被启动之后(方框214),示例性用户界面180触发216示例性SA代理135按照已附着和已更新管理策略P 1.1来更新虚拟机116。示例性SA代理135经由数据库服务器155从策略数据库140获得218已更新策略P 1.1。SA代理135按照已更新管理策略P 1.1来更新220虚拟机116,根据需要,经由文件服务器160从中央文件系统150获得222文件145、146。
当虚拟机116的更新220完成时,SA代理135通知224用户界面180更新完成。在某些示例中,通知224可以指示是否有任何更新不能被应用。当接收到通知224时,用户界面180指导226虚拟机116将其当前状态保存为新的虚拟机模板T 1.1。虚拟机116经由文件服务器160在文件系统150中创建228新的虚拟机模板T 1.1。在图1的所示示例中,创建和/或实例化新虚拟机模板T 1.1的(一个或多个)过程使虚拟机116停止操作和/或关掉230。在某些示例中,用户界面180通知232用户175虚拟机模板更新已完成。在其他示例中,图2的示例性过程在没有提供给用户175的通知和/或状态更新的情况下静默地操作。
图3的所示示例从示例性虚拟机115开始,该虚拟机115基于具有附着的管理策略P 1.0的虚拟机模板T 1.0已经可操作。示例性用户175与示例性用户界面180相交互302以定义已更新管理策略P 1.1。示例性用户界面180经由数据库服务器155将已更新管理策略P1.1存储304在示例性策略数据库140中。
用户175将已更新策略P 1.1附着于306虚拟机模板T 1.0并指导308用户界面180基于已更新和已附着策略P 1.1来触发虚拟机115的更新。在某些示例中,用户175可以选择一个或多个可操作虚拟机115~117以按照已更新策略P 1.1进行更新。在其他示例中,用户可以选择或识别:使用一个或多个特定虚拟机模板T 1.0启动的任何可操作虚拟机115~117按照已更新策略P 1.1来更新。在其他示例中,已更新策略P 1.1可以指定将更新使用一个或多个特定虚拟机模板105启动的虚拟机115~117。
用户界面180触发310示例性SA代理135以按照已更新管理策略P 1.1来更新虚拟机115。示例性SA代理135经由数据库服务器155从策略数据库140获得312已更新策略P 1.1。SA代理135按照已更新策略P 1.1来更新314虚拟机115,根据需要,经由文件服务器160从中央文件系统150获得316文件145、146。
当虚拟机115的更新314完成时,SA代理135通知318用户界面180更新完成。在某些示例中,通知318可以指示是否有任何更新不能被应用。当虚拟机115已被更新时,用户界面180通知320用户175虚拟机115已被更新。虽然图3的示例包括示例性通知320,但在其他示例中,图3所示的示例性过程在没有提供给用户175的通知和/或状态更新的情况下静默地继续进行。
图4的示例性过程开始于用户175和/或用户界面180更新管理策略110(方框405)并将已更新策略110附着于虚拟机模板105(方框410)。在例如网络封锁沙箱中使用虚拟机模板105来启动虚拟机115~117(方框415)。虚拟机115~117被触发并按照已更新管理策略110进行更新(方框420),并且已更新虚拟机115~117的状态被保存为新的和/或已更新虚拟机模板105(方框425)。控制然后从图4的示例性过程退出。
图5的示例性过程开始于SA代理135经由示例性数据库服务器155从示例性中央策略数据库140获得已更新管理策略110(方框505)。SA代理135选择和/或识别已更新管理策略110中的第一策略元素和/或条目(方框510)并确定与SA代理135相关联的虚拟机115~117是否遵照该策略元素和条目(方框515)。
如果虚拟机115~117不遵照(方框515),则SA代理135经由文件服务器160从由当前考虑的策略元素指定的中央文件系统150获得一个或多个文件145、146(方框520)。所获得的(一个或多个)文件145、146按照策略元素被执行和/或应用以更新虚拟机115~117(方框525)。
如果存在更多的策略元素和/或条目要处理(方框530),则控制返回至方框510以选择下一个策略元素和/或条目。如果不存在更多的策略元素和/或条目要处理(方框530),则控制从图5的示例性机器可访问指令退出。
返回至方框515,如果虚拟机115~116遵照当前所考虑的策略元素和/或条目(方框515),则控制前进至方框530以确定是否存在更多的策略元素和/或条目要处理。
图6是可以被使用和/或编程以执行图2~5的交互和/或示例性机器可读指令的示例性处理器平台P100的示意图。可以使用一个或多个通用处理器、处理器核、微控制器等来实现处理器平台P100。
图6的处理器平台P100包括至少一个可编程处理器P105。处理器P105可以实现例如图1的示例性物理平台125、126和/或示例性用户界面180。处理器P105执行存在于处理器P105的主存储器中的编码指令P110和/或P112(例如在RAM P115和/或ROM P120内)。处理器P105可以是任何类型的处理单元,诸如处理器核、处理器和/或微控制器。如本文所述,处理器P105可以特别地执行图2~5的示例性交互和/或示例性机器可访问指令以更新虚拟机模板105和/或虚拟机110。因此,编码指令P110、P112可以包括图2~5的指令。
处理器P105经由总线P125与主存储器(包括ROM P120和/或RAM P115)通信。可以用动态随机存取存储器(DRAM)、同步动态随机存取存储器(SDRAM)和/或任何其他类型的RAM器件来实现RAM P115,并且可以用闪速存储器和/或任何其他期望类型的存储器件来实现ROM。可以由存储器控制器来控制对存储器P115和存储器P120的访问。
处理器平台P100还包括接口电路P130。诸如外部存储器接口、串行端口、通用输入/输出等的任何类型的接口标准可以实现接口电路P130。一个或多个输入设备P135和一个或多个输出设备P140被连接至接口电路P130。
虽然在本文中已描述了某些示例性方法、设备和制品,但本专利的覆盖范围不限于此。相反,本专利涵盖在字面上或根据等同原则完全落在本专利的权利要求范围内的所有方法、设备和制品。

Claims (15)

1.一种用于更新虚拟机模板(105)的方法,包括: 
更新管理策略(110);
在网络封锁沙箱(170)中基于虚拟机模板(105)来启动虚拟机(116); 
触发虚拟机(116)以按照已更新管理策略(110)进行更新;以及 
将虚拟机(116)保存为已更新虚拟机模板(106)。
2.如权利要求1所述的方法,还包括基于已更新虚拟机模板(106)来启动第二虚拟机(115),第二虚拟机(115)在被启动时遵照已更新管理策略(110)。
3.如权利要求1所述的方法,还包括将已更新管理策略(110)存储在数据库(140)中,其中,虚拟机(116)从数据库(140)获得已更新管理策略(110)。
4.如权利要求1所述的方法,还包括将已更新管理策略(110)附着于虚拟机模板(105)。
5.如权利要求1所述的方法,还包括呈现用户界面(180)以使得用户(175)能够更新管理策略(110)并触发按照已更新管理策略(110)进行的虚拟机(116)的更新。
6.一种存储机器可读指令的有形制品,所述机器可读指令在被执行时使机器通过以下方式来更新虚拟机模板(105): 
更新管理策略(110); 
在网络封锁沙箱(170)中基于虚拟机模板(105)来启动虚拟机(116); 
触发虚拟机(116)以按照已更新管理策略(110)进行更新;以及 
将虚拟机(116)保存为已更新虚拟机模板(106)。
7.如权利要求6所述的有形制品,其中,所述机器可读指令在被执行时使机器基于已更新虚拟机模板(106)来启动第二虚拟机(115),该第二虚拟机(115)在被启动时遵照已更新管理策略(110)。
8.如权利要求6所述的有形制品,其中,所述机器可读指令在被执行时使机器将已更新管理策略(110)存储在数据库(140)中,其中,虚拟机(116)从数据库(140)获得已更新管理策略(110)。
9.如权利要求6所述的有形制品,其中,所述机器可读指令在被执行时使机器将已更新管理策略(110)附着于虚拟机模板(105)。
10.如权利要求6所述的有形制品,其中,所述机器可读指令在被执行时使机器呈现用户界面(180)以使得用户(175)能够更新管理策略(110)并触发按照已更新管理策略(110)进行的虚拟机(116)的更新。
11.一种用于更新虚拟机模板(105)的方法,包括: 
接收触发以发起虚拟机模板(105)的更新;
针对管理策略(110)的第一策略,确定基于虚拟机模板(105)启动的虚拟机(116)是否遵照第一策略;
当虚拟机(116)不遵照第一策略时,按照第一策略来更新虚拟机(116);以及
将虚拟机(116)的状态保存为已更新虚拟机模板(106),其中,基于已更新虚拟机模板(106)启动的第二虚拟机(115)遵照管理策略(110)。
12.如权利要求11所述的方法,还包括从中央数据库(140)获得管理策略(110)。
13.如权利要求11所述的方法,其中,按照第一策略来更新虚拟机(116)包括; 
获得由第一策略标识的文件(145);以及 
应用文件(145)或执行文件(145)中至少一项以更新虚拟机(116)。
14.如权利要求11所述的方法,还包括在网络封锁沙箱(170)中启动虚拟机(116)。
15.如权利要求11所述的方法,还包括; 
针对管理策略(110)的第二策略,确定基于虚拟机模板(105)启动的虚拟机(116)是否遵照第二策略;
当虚拟机(116)不遵照第二策略时,按照第二策略来更新虚拟机(116)。
CN201080066741.XA 2010-05-12 2010-05-12 用于更新虚拟机模板的方法、设备和制品 Active CN102918503B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2010/034574 WO2011142753A1 (en) 2010-05-12 2010-05-12 Methods, apparatus and articles of manufacture to update virtual machine templates

Publications (2)

Publication Number Publication Date
CN102918503A true CN102918503A (zh) 2013-02-06
CN102918503B CN102918503B (zh) 2016-04-27

Family

ID=44914606

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080066741.XA Active CN102918503B (zh) 2010-05-12 2010-05-12 用于更新虚拟机模板的方法、设备和制品

Country Status (4)

Country Link
US (2) US9851984B2 (zh)
EP (1) EP2569704A4 (zh)
CN (1) CN102918503B (zh)
WO (1) WO2011142753A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103262026A (zh) * 2010-12-31 2013-08-21 Emc公司 虚拟设备部署
CN103995728A (zh) * 2013-02-14 2014-08-20 国际商业机器公司 用于确定何时需要更新云虚拟机的系统和方法
US9501316B2 (en) 2010-12-31 2016-11-22 Emc Corporation Instantiating virtual appliances of a storage array

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8261342B2 (en) * 2008-08-20 2012-09-04 Reliant Security Payment card industry (PCI) compliant architecture and associated methodology of managing a service infrastructure
US8650556B2 (en) * 2011-08-16 2014-02-11 Dell Products L.P. Virtual machine asynchronous patch management
WO2013088301A1 (en) * 2011-12-12 2013-06-20 International Business Machines Corporation Maintenance of offline virtual machines based on maintenance register
US8959513B1 (en) * 2012-09-27 2015-02-17 Juniper Networks, Inc. Controlling virtualization resource utilization based on network state
US9239727B1 (en) * 2012-10-17 2016-01-19 Amazon Technologies, Inc. Configurable virtual machines
GB2507978A (en) * 2012-11-15 2014-05-21 Ibm Updating virtual machine templates using feed data relating to the application
US10541898B2 (en) * 2013-03-15 2020-01-21 Brian Weinberg System and method for creating, deploying, and administering distinct virtual computer networks
US9098322B2 (en) * 2013-03-15 2015-08-04 Bmc Software, Inc. Managing a server template
US9600262B2 (en) * 2013-09-19 2017-03-21 International Business Machines Corporation System, method and program product for updating virtual machine images
US11663025B2 (en) * 2013-09-23 2023-05-30 Bankvault Pty Ltd Maintenance of and caching of suspended virtual computers in a pool of suspended virtual computers
RU2573789C2 (ru) * 2014-04-18 2016-01-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ запуска виртуальной машины
US9146721B1 (en) * 2014-05-30 2015-09-29 Vmware, Inc. Installation of a software agent via an existing template agent
GB2531546B (en) 2014-10-21 2016-10-12 Ibm Collaborative maintenance of software programs
US9600267B2 (en) * 2015-06-15 2017-03-21 International Business Machines Corporation Optimizing provisioning through automated virtual machine template generation
KR102387157B1 (ko) * 2015-07-27 2022-04-18 삼성전자주식회사 장치 관리 방법 및 이를 지원하는 전자 장치
US9678785B1 (en) * 2015-11-30 2017-06-13 International Business Machines Corporation Virtual machine resource allocation based on user feedback
US10936443B2 (en) 2018-09-26 2021-03-02 EMC IP Holding Company LLC System and method for tag based backup infrastructure
US10922122B2 (en) * 2018-09-26 2021-02-16 EMC IP Holding Company LLC System and method for virtual machine resource tagging

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658426B1 (en) * 2000-10-31 2003-12-02 Opsware Object-oriented database abstraction and statement generation
US20050257206A1 (en) * 2004-05-14 2005-11-17 Semerdzhiev Krasimir P Pair-update mechanism for update module
US20060184935A1 (en) * 2005-02-11 2006-08-17 Timothy Abels System and method using virtual machines for decoupling software from users and services
US7131123B2 (en) * 2001-04-30 2006-10-31 Opsware Inc. Automated provisioning of computing networks using a network database model
US20070250833A1 (en) * 2006-04-14 2007-10-25 Microsoft Corporation Managing virtual machines with system-wide policies
US20080134177A1 (en) * 2006-10-17 2008-06-05 Manageiq, Inc. Compliance-based adaptations in managed virtual systems
CN101216777A (zh) * 2008-01-11 2008-07-09 华中科技大学 一种多虚拟机环境下的快速部署系统
US20090007105A1 (en) * 2007-06-29 2009-01-01 Microsoft Corporation Updating Offline Virtual Machines or VM Images
US20090100420A1 (en) * 2007-09-10 2009-04-16 Moka5, Inc. Automatic Acquisition and Installation of Software Upgrades for Collections of Virtual Machines
US20100017512A1 (en) * 2008-07-21 2010-01-21 International Business Machines Corporation Method and System For Improvements In or Relating to Off-Line Virtual Environments
US20100107163A1 (en) * 2007-03-20 2010-04-29 Sanggyu Lee Movable virtual machine image

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002039257A2 (en) 2000-10-31 2002-05-16 Loudcloud, Inc. Automated provisioning framework for internet site servers
US7124289B1 (en) 2000-10-31 2006-10-17 Opsware Inc. Automated provisioning framework for internet site servers
US7152109B2 (en) 2001-04-20 2006-12-19 Opsware, Inc Automated provisioning of computing networks according to customer accounts using a network database data model
US8732182B2 (en) * 2004-12-02 2014-05-20 Desktopsites Inc. System and method for launching a resource in a network
US20070294676A1 (en) 2006-06-19 2007-12-20 Ewan Ellis Mellor Open virtual appliance
US8327350B2 (en) 2007-01-02 2012-12-04 International Business Machines Corporation Virtual resource templates
US20080256538A1 (en) * 2007-04-10 2008-10-16 Novell, Inc. Storage configurations for tessellated virtual machines
US8458694B2 (en) 2007-04-30 2013-06-04 International Business Machines Corporation Hypervisor with cloning-awareness notifications
US7966614B2 (en) * 2007-07-24 2011-06-21 International Business Machines Corporation Controlling an availability policy for a virtual machine based on changes in a real world environment
US20090199178A1 (en) * 2008-02-01 2009-08-06 Microsoft Corporation Virtual Application Management
US8336094B2 (en) * 2008-03-27 2012-12-18 Juniper Networks, Inc. Hierarchical firewalls
US8214878B1 (en) * 2008-09-25 2012-07-03 Symantec Corporation Policy control of virtual environments
US8938782B2 (en) * 2010-03-15 2015-01-20 Symantec Corporation Systems and methods for providing network access control in virtual environments
US9015824B1 (en) * 2012-01-25 2015-04-21 Google Inc. Allowing a client computing device to securely interact with a private network
US9098322B2 (en) * 2013-03-15 2015-08-04 Bmc Software, Inc. Managing a server template
RU2546585C2 (ru) * 2013-08-07 2015-04-10 Закрытое акционерное общество "Лаборатория Касперского" Система и способ предоставления прав доступа приложениям к файлам компьютера
US9715416B2 (en) * 2015-06-03 2017-07-25 Intel Corporation Adaptive queued locking for control of speculative execution

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6658426B1 (en) * 2000-10-31 2003-12-02 Opsware Object-oriented database abstraction and statement generation
US7131123B2 (en) * 2001-04-30 2006-10-31 Opsware Inc. Automated provisioning of computing networks using a network database model
US20050257206A1 (en) * 2004-05-14 2005-11-17 Semerdzhiev Krasimir P Pair-update mechanism for update module
US20060184935A1 (en) * 2005-02-11 2006-08-17 Timothy Abels System and method using virtual machines for decoupling software from users and services
US20070250833A1 (en) * 2006-04-14 2007-10-25 Microsoft Corporation Managing virtual machines with system-wide policies
US20080134177A1 (en) * 2006-10-17 2008-06-05 Manageiq, Inc. Compliance-based adaptations in managed virtual systems
US20100107163A1 (en) * 2007-03-20 2010-04-29 Sanggyu Lee Movable virtual machine image
US20090007105A1 (en) * 2007-06-29 2009-01-01 Microsoft Corporation Updating Offline Virtual Machines or VM Images
US20090100420A1 (en) * 2007-09-10 2009-04-16 Moka5, Inc. Automatic Acquisition and Installation of Software Upgrades for Collections of Virtual Machines
CN101216777A (zh) * 2008-01-11 2008-07-09 华中科技大学 一种多虚拟机环境下的快速部署系统
US20100017512A1 (en) * 2008-07-21 2010-01-21 International Business Machines Corporation Method and System For Improvements In or Relating to Off-Line Virtual Environments

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103262026A (zh) * 2010-12-31 2013-08-21 Emc公司 虚拟设备部署
US9424113B2 (en) 2010-12-31 2016-08-23 Emc Corporation Virtual appliance deployment
US9501316B2 (en) 2010-12-31 2016-11-22 Emc Corporation Instantiating virtual appliances of a storage array
CN103995728A (zh) * 2013-02-14 2014-08-20 国际商业机器公司 用于确定何时需要更新云虚拟机的系统和方法
CN103995728B (zh) * 2013-02-14 2017-09-29 国际商业机器公司 用于确定何时需要更新云虚拟机的系统和方法

Also Published As

Publication number Publication date
US20180074834A1 (en) 2018-03-15
WO2011142753A1 (en) 2011-11-17
US20130074072A1 (en) 2013-03-21
CN102918503B (zh) 2016-04-27
US9851984B2 (en) 2017-12-26
EP2569704A1 (en) 2013-03-20
EP2569704A4 (en) 2014-03-19
US10789076B2 (en) 2020-09-29

Similar Documents

Publication Publication Date Title
CN102918503B (zh) 用于更新虚拟机模板的方法、设备和制品
US11507410B2 (en) Methods and apparatus to manage monitoring agents
US11343140B2 (en) Methods and apparatus to scale application deployments in cloud computing environments
US20230325237A1 (en) Methods and apparatus to automate deployments of software defined data centers
US11461125B2 (en) Methods and apparatus to publish internal commands as an application programming interface in a cloud infrastructure
US9519504B2 (en) Managing a server template
US9910656B2 (en) Updating software products on virtual machines with software images of new levels
US20210111957A1 (en) Methods, systems and apparatus to propagate node configuration changes to services in a distributed environment
CN104360878B (zh) 一种应用软件部署的方法及装置
US20140047439A1 (en) System and methods for management virtualization
GB2519517A (en) Managing virtual appliances supporting multiple profiles
WO2011069782A1 (en) A method and a system for plug and play support of computer architectures
US11425203B2 (en) Commissioning a virtualized network function
US11805012B2 (en) Cloud network mechanism driver migration
CN115454661A (zh) 一种目标应用的保活方法、装置、设备及介质
CN112882735A (zh) 熔断信息处理方法、装置、设备及存储介质

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
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20170110

Address after: American Texas

Patentee after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

Address before: American Texas

Patentee before: Hewlett-Packard Development Company, L.P.