CN101676874B - 基于策略的监管器配置管理 - Google Patents
基于策略的监管器配置管理 Download PDFInfo
- Publication number
- CN101676874B CN101676874B CN200910170244.3A CN200910170244A CN101676874B CN 101676874 B CN101676874 B CN 101676874B CN 200910170244 A CN200910170244 A CN 200910170244A CN 101676874 B CN101676874 B CN 101676874B
- Authority
- CN
- China
- Prior art keywords
- configuration
- target
- tactful
- configuration file
- file based
- 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
Links
- 238000000034 method Methods 0.000 claims description 29
- 230000008569 process Effects 0.000 claims description 9
- 238000012986 modification Methods 0.000 claims description 6
- 230000004048 modification Effects 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 5
- 238000007689 inspection Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims 4
- 238000012795 verification Methods 0.000 claims 2
- 230000000712 assembly Effects 0.000 description 7
- 238000000429 assembly Methods 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 230000005055 memory storage Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 2
- 230000002349 favourable effect Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000000344 soap Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
Abstract
虚拟化软件级别下的主机的至少一个目标配置基于源配置而被自动装配。描述源配置的基于策略的配置文件被处理。描述目标配置的配置规范基于描述源配置的基于策略的配置文件而被自动创建。配置规范被自动应用于目标配置,从而目标配置符合基于策略的配置文件。
Description
技术领域
本发明的一个或多个实施例一般地涉及虚拟计算,更具体地说,涉及对监管器(hypervisor)配置进行基于策略的管理。
背景技术
虚拟化技术在市场中正变得越来越流行。这些技术中的至少一些为客户操作系统提供虚拟硬件抽象,并且允许他们在主机计算机上的虚拟机中在功能隔离的环境下运行,而无需被修改。虚拟化允许一个或多个虚拟(客户)机在单个物理(主机)计算机上运行,提供对于处理器、存储器、存储装置等的功能与性能隔离。
如计算机科学领域中众所周知的,虚拟机是实际物理计算机系统的抽象,即“虚拟化”。图1示出了实现虚拟化的计算机系统(计算机系统700)的一种可能布置。如图1所示,虚拟机或“客户机”200被安装在“主机平台(或简称为主机)”上。主机平台包括系统硬件(即,硬件平台100)和一个或多个层或协同驻留的组件。所述一个或多个层或协同驻留的组件包括系统级别软件(例如操作性或类似的核)或虚拟机监视器或监管器201(见下文)或这些组件的某种组合。系统硬件典型地包括一个或多个处理器110、存储器130、某种形式的大容量存储器140以及各种其它设备170。
每个虚拟机200典型地将具有虚拟系统硬件201和客户系统软件202。虚拟系统硬件典型地包括至少一个虚拟CPU、虚拟存储器230、至少一个虚拟盘240、以及一个或多个虚拟设备270。注意盘,无论是虚拟的还是物理的,都是“设备”,但是由于盘的重要性其常被单独考量。通过使用公知技术来仿真相应的物理组件,虚拟机的所有虚拟硬件组件都可以以软件形式实现。客户系统软件包括客户操作系统(OS)220以及多种虚拟设备270所需的驱动器224。
注意,单个虚拟机200可以配置有不只一个虚拟化的处理器。为了让计算机系统扩展到能够执行更多数量的并发线程,开发出了多CPU系统。这些对称的多处理器(SMP)系统可以通过对PC平台的扩展或从别的供货商那里获得。实质上来说,SMP系统是将多个处理器连接到共享主存储器和共享I/O设备的硬件平台。虚拟机也可以被配置成SMP虚拟机。例如,图1图示出虚拟机200中的多个虚拟处理器210-0,210-1,...,210-m(VCPU0,VCPU1,...,VCPUm)。
在所谓的“多核”主机体系结构中存在另一种配置,其中不只一个物理CPU被制备在单个芯片上,具有其自己的一组功能单元(例如浮点单元以及算术/逻辑单元ALU),并且可以独立执行线程;多核处理器典型地仅共享非常有限的资源,例如某种高速缓存。提供多线程同时执行的另一种配置被称作“同时多线程”,其中不只一个逻辑CPU(硬件线程)同时在单个芯片上运行,但是逻辑CPU灵活地共享某些资源,例如高速缓存、缓冲器、功能单元等。本发明的一个或多个实施例可以在不考虑虚拟机中包含的处理器的数量或类型(物理和/或逻辑的)的情况下使用。
在许多情形中,运行在虚拟机200上的应用260将如同它们在“真实”计算机上运行那样进行运转,即使应用至少部分地并间接地通过客户O/S220和虚拟处理器运行。客户O/S将从虚拟盘240或虚拟存储器230访问可执行文件,其中虚拟盘240或虚拟存储器230将是实际物理盘140或存储器130分配给该虚拟机的部分。一旦应用被安装在虚拟机中,客户O/S从虚拟盘获取文件,就如同应用的传统安装之后文件被存储那样。虚拟机的设计与操作在计算机科学领域是众所周知的。
在虚拟机中的客户软件和底层硬件平台中的多种硬件组件和设备之间通常需要某接口。该接口(一般会被称为“虚拟化软件”)可以包括一个或多个软件组件和/或层,可能包括虚拟机技术领域已知的一个或多个软件组件,例如“虚拟机监视器”(VMM)、“监管器201”或“虚拟化核”。由于虚拟化术语随着时间不断演进并且尚未完全标准化,因此这些术语并不能总是提供对它们所指代的软件层和组件的明确区分。例如,术语“监管器201”通常用来描述VMM和核两者,VMM和核或者作为独立的但又相互协作的组件,或者一个或多个VMM被全部或部分并入核中。然而,术语“监管器201”有些时候又被用来指代VMM自身的某些变体,其与其它一些软件层或组件接口以支持虚拟化。并且,在一些系统中,某些虚拟化代码被包括在至少一个“超级”虚拟机中以帮助其它虚拟机的操作。此外,对于虚拟机的专门软件支持可以被包括在主机OS自身中。除非另外说明,这里描述的本发明的一个或多个实施例可以用于具有任何类型或配置的虚拟化软件的虚拟化计算机系统中。
图1示出了表现为区别于虚拟化软件的其它组件的单独实体的虚拟机监视器。此外,用来实现本发明一个或多个实施例的一些软件组件被示出并被描述成在“虚拟化层”之内,所述“虚拟化层”逻辑上位于所有虚拟机以及底层的硬件平台和/或系统级别主机软件之间。该虚拟化层可以被认为是总体的虚拟化软件的一部分,当然也可以以专门的硬件实现这个层的至少一部分。图示的实施例仅仅是出于简化和清晰的目的,并且是以举例说明的方式给出的。如上所述,划分并不总是这样清楚的。再次提醒,除非特别指出或从说明书看来很明显,本发明的一个或多个实施例将可以在虚拟化软件的总体结构内的任何地方实现,即使是在提供用于虚拟化的专门硬件支持的系统中也可以实现。
出于概念清晰的目的,虚拟机中的多个虚拟化硬件组件,例如虚拟CPU210-0,210-1,...,210-m,虚拟存储器230,虚拟盘240和虚拟设备270被示为虚拟机200的一部分。实际上,这些“组件”通常被实现为包括在VMM中的软件仿真230。
不同的系统可以实现不同级别的虚拟化。“虚拟化”通常涉及一个定义范围而非一个明确的定义,并且通常反映的是关于一方面速度与效率以及另一方面隔离性与普遍性之间折衷的设计选择。例如,“完全虚拟化”有时被用来表示这样一种系统,在该系统中,除了那些可以在非虚拟化计算机中找到的软件组件外,客户机中不包括任何形式的软件组件。因此,客户O/S可以是非定制的、可购买到的OS,其不包括专门支持在虚拟化环境中使用的任何组件。
与之相反,另一术语为“准虚拟化(para-virtualization)”(尚未成为普遍接受的定义)。如该术语所意味的,“准虚拟化”系统没有“完全”虚拟化,而是客户机以一定方式被配置进而提供帮助虚拟化的某些特征。例如,一些准虚拟化系统中的客户机被设计成避免难以虚拟化的操作和配置,例如通过避免某些特权指令、某些存储器地址范围等。作为另一示例,许多准虚拟化系统在客户机中包括接口,该接口能够显式调用虚拟化软件的其它组件。
对于一些示例,术语准虚拟化意味着客户O/S(具体而言,为其核)被专门设计成支持这样的接口。根据此观点,例如将Microsoft Windows XPTM的非定制版本作为客户O/S将与准虚拟化的概念不一致。其它示例对术语准虚拟化进行更宽泛的定义,进而包括具有任何以下代码的任何客户O/S,其中所述代码专门用来将信息直接提供给虚拟化软件的任何其它组件。根据此观点,加载模块(例如被设计用来与其它虚拟化组件通信的驱动器)将使系统准虚拟化,即使这里的客户O/S是非定制的、可购买到的、并非专门设计用来支持虚拟化计算机系统的OS。除非特别说明或显而易见的,本发明的实施例并不限制用于具有任何具体虚拟化“级别”的系统中,并且也不限于全部或部分(“准”)虚拟化的任何具体概念。
除了全部和部分(准)虚拟化之间有时模糊的区分之外,中间的系统级别软件层的两种安排通常使用:“基于主机”的配置以及非基于主机的配置(其在图1中示出)。在基于主机的虚拟化计算机系统中,现有的通用操作系统形成用来执行某些输入/输出(I/O)操作的“主机”OS,该“主机”OS在VMM的旁边并且有时在VMM的请求下执行操作。
如图1所示,在许多情形中,在软件层(核600)之上使用VMM是有利的,其中软件层是被构造专门用来提供对虚拟机的支持的。该配置常常被称为“非基于主机的”。核600还处理在其上运行的可以单独调度的任何其它应用,并且还处理在某些体系结构中被用来引导系统以及帮助与虚拟化软件的某些用户交互的控制台操作系统。
注意核600与客户O/S 220中的核不同,如众所周知的,每个操作系统都有其自身的核。还要注意,核600是上面定义的虚拟机/VMM的“主机”平台的一部分,即使图1示出的配置通常被命名为“非基于主机的”。并且,核可以即是主机的一部分又是虚拟化软件或“监管器201”的一部分。术语的差别是由于定义在虚拟化领域中仍在改进当中。
如本领域普通技术人员将理解的,计算机虚拟化使得主机硬件100能够用做用于运行虚拟机200的可交换的商品资源的集合。资源的可交换性使得信息服务能够被灵活管理,从而获得比非虚拟化环境更优的性能、可用性和可扩展性。对于额外信息服务扩展的要求,虚拟化通过在与当前资源利用率相称的规模上添加或移除商品资源来满足此需求。
当资源被添加到部署中时,通常存在相应的可处理性(manageability)成本。虚拟化环境通过从主机配置中分离专用于信息服务的定制化服务,帮助抑制可处理性成本的增加。例如,所需的CPU 110和存储器资源130的量是虚拟机200而非主机的规范。这样,虚拟化环境中主机之间配置的变动范围小于非虚拟化环境。扩展硬件资源100以满足资源要求在虚拟化环境中更易被处理,因为可处理性成本的增加被抑制了。
在虚拟机200和底层主机平台中的多种硬件组件和设备之间的强大的虚拟化软件接口之下,存在丰富的配置控制集,用于提供使管理者能够接触鲁棒级(robust level)的性能、可用性、可扩展性和可处理性的机制。如上所述,这种主机级别“虚拟化软件”在虚拟机技术领域中可以被称为“监管器201”、“虚拟机监视器”、“虚拟化核”或其它标签。为了方便讨论,这些组件这里将被称为监管器101,当然如何命名并不重要。
在任何一种情形中,与这些机制相关的成本包括使得管理者能够在收益和成本之间选择适当平衡的额外控制。因此,通过虚拟化获得的配置复杂性方面的一些降低作为需要配置监管器201以改进虚拟化信息服务的实时特性的交换而被抵消了。换句话说,在富含特征的监管器201的配置中会产生显著的总开销。
确保扩展硬件资源100的收益不会因在运行强大的监管器201时不断增长的可处理性成本(特别是在随着更多监管器201的实例被添加到部署中配置复杂性在增加的上下文中)而丧失是可取的。
发明内容
在一个实施例中,虚拟化软件级别下的主机的至少一个目标配置基于源配置而被自动装配。为了创建目标配置,描述源配置的基于策略的配置文件被处理。更具体地说,描述目标配置的配置规范基于描述源配置的基于策略的配置文件而被自动创建。配置规范被自动应用于目标配置,从而目标配置符合基于策略的配置文件。
在另一实施例中,公开了一种计算机实现的方法,该方法基于虚拟化软件级别下的主机的源配置自动装配虚拟化软件级别之下的主机的至少一个目标配置。该方法包括处理描述源配置的基于策略的配置文件。用于所述至少一个目标配置的配置规范基于描述所述源配置的基于策略的配置文件而被自动创建。然后,配置规范被自动应用于所述至少一个目标配置,从而所述至少一个目标配置是基于所述基于策略的配置文件的。
在又一实施例中,公开了一种计算机系统,该计算机系统基于虚拟化软件级别下的主机的源配置自动装配虚拟化软件级别之下的主机的至少一个目标配置。该计算机系统包括用于处理描述源配置的基于策略的配置文件、用于基于描述所述源配置的基于策略的配置文件而自动创建用于所述至少一个目标配置的配置规范、以及用于将配置规范自动应用于所述至少一个目标配置使得所述至少一个目标配置基于所述基于策略的配置文件的装置。
附图说明
图1是图示了现有技术虚拟化技术示例的框图。
图2是图示出根据本发明的一些实施例使用源监管器创建监管器配置文件的系统的框图。
图3是图示出根据本发明其他实施例使用监管器配置文件配置目标监管器的系统的框图。
具体实施方式
图2图示了根据本发明一些实施例的系统,在该系统中,给定的“模型”监管器201被用来创建监管器配置文件203,其中监管器配置文件203可以被用来配置另外的监管器201。应当理解尽管多种组件被示为单独的实体,但是每个示出的组件代表功能的集合,其可以被实现为软件、硬件、固件或这些形式的任意组合。当组件被实现为软件的时候,其可以被实现为独立式程序,但是还可以以其它方式实现,例如被实现为更大程序的一部分、被实现为多个单独的程序、被实现为核可加载的模块、被实现为一个或多个设备驱动器、或者被实现为一个或多个静态或动态链接库。
为了配置虚拟化软件级别下的主机,典型地规定了大量配置选项(例如,35-40)。例如,监管器101配置可以包括控制处理器管理、线程处理、网络配置(交换机、端口、NICS等)、路由、安全、虚拟软件许可、存储装置分配、存储器分区、防火墙管理的指令。在图2所示的实施例中,为了使能监管器201的类模板表达,创建模型监管器201的描述,其代表虚拟化软件级别下的主机的完全配置。该描述可以用做配置其它监管器201的基础。
更具体地说,通过将每个个体配置设置映射到监管器配置文件配置策略,从现有监管器201生成监管器配置文件203。用于监管器配置文件203的可应用且有效的策略集指出将规定哪些选项和参数以及哪些值是有效的。换句话说,监管器配置文件203的具体内容被自动限制在可应用且有效的策略集规定的边界范围内。监管器配置文件203可以被认为是策略的集合。策略驱动的方法在能够如何管理监管器201配置方面具有灵活性和可扩展性。可以使用多种配置策略来定义监管器配置文件203。
例如,推迟式配置策略允许值的设置推迟到基于配置文件203配置实际监管器201的时候。例如,配置文件203可以规定使用两个NICS,或者两个落入给定带宽标准的NICS。将使用的两个具体NICS随后将基于用户输入和/或自动收集的数据在实际配置时间被确定。这类策略对于处理给定主机专用的参数(例如,机器标识符)来说很有用。由于在目标主机上可以存在软件和硬件变体两者,因此策略也可以是条件式的,例如,如果三个可用则使用三个NICS,否则使用两个。
复合式策略可以被构建为一个或多个现有策略的组合。复合式策略使得混合并匹配类似策略进而建立新策略变得容易。基于要求的策略可以用来传递服务级别配置要求,而非具体的配置设置。分配资源策略可以规定用于配置的资源分配器的使用。示例包括基于每个请求来分配地址的IP地址池。
在一些实施例中,模型监管器201被分析并且最终的配置文件203由例如软件组件自动创建。在其他实施例中,这些过程中的一些或全部由用户执行。在任何一种情形中,用户通常可以编辑创建的配置文件203,进而例如消除错误或精调参数。一旦配置文件203被创建,其可以用来配置许多执行环境下的一个或多个监管器201,如下文更加详细地描述的那样。
现在参考图3,监管器配置文件引擎301通过翻译配置文件201产生描述目标监管器201配置的配置规范303,可以将监管器配置文件203应用于一个或多个另外的监管器201。更具体地说,如上面所解释的,监管器配置文件203是代表一组策略的数据。配置文件203被监管器配置文件引擎301读取,监管器配置文件引擎301使用这些输入策略(以及当前的主机配置规范)来确定应当如何定义输出配置规范303。由监管器配置文件引擎301输出的配置规范是脚本、可执行图像、数据等形式,以自动配置主机级别虚拟化软件(即,监管器101)。换句话说,监管器配置文件引擎301执行计算以将监管器配置文件203翻译成可以被用来配置实际监管器201的监管器专用配置规范303。配置规范303可以被应用于部署中的实际配置。
因为监管器配置文件203趋向于集中管理,而目标监管器201它们本质上是分散的,因此某些通信形式通常被使用以提供从监管器配置文件引擎301到进行配置的实际监管器201的配置指令。多种选项是可能的。在带内网络情形中,监管器配置文件引擎301从与进行配置的监管器201相同的通信网络311上的机器上运行。监管器配置文件引擎301通过网络311与监管器201通信以管理其配置。在引导加载网络配置中,监管器配置文件引擎301的拷贝连同可应用监管器配置文件203在引导期间被调配给进行配置的监管器201,作为通过基于网络的引导加载环境313(例如PXE)的引导过程的一部分。在另一情形中,使用了虚拟或物理介质315。在该情形中,监管器配置文件引擎301的拷贝连同可应用监管器配置文件203通过直接连接到目标监管器201的介质315被调配给进行配置的监管器201。
一旦部署中的一组目标监管器201被配置,确保监管器201仍旧根据配置文件203进行配置是可取的。为此,还可以从监管器配置文件203产生符合性规范305。符合性规范305实际上是引擎301从配置文件203中的配置描述生成的一组符合性检查。换句话说,符合性规范305描述将执行哪些检查来核实监管器201被正确配置了。不时地(例如,由用户规定或者以缺省的时间间隔),符合性组件307使用符合性规范305来核实基于配置文件203产生的监管器201仍旧与配置文件203相符合。响应于确定给定监管器201不具符合性,符合性组件307可以采取所希望的适合动作(例如,为用户产生警报或报告,更新配置等)。例如出于报告或更新的目的,符合性组件307能够标识出并描述现有配置和目标配置之间的差异(差值)。
可以对模型监管器201配置自身或监管器配置文件203进行更新。例如,模型监管器201可以被更新(或被替换),并且可以被用来产生更新的配置文件203。更新的配置文件203随后可以通过引擎301运行以创建更新的规范309以用于部署中的转出(roll-out)。在一些实施例中,更新规范309简单地描述现有和更新的配置之间的差异,这使得更新的转出过程更简单。现有的配置文件203还可以被直接编辑,或者以新配置文件203替换,所述新配置文件203例如是从外部源引进的。
如上所述,使用监管器配置文件203,可以提供用于建立和维护在超出尺寸范围的虚拟化部署中使用的监管器201配置的完整配置管理方案。策略可以描述具体配置设置而非应当如何管理配置状态(备份、快照等)。可以按照配置差异而非文件或快差异来描述配置文件203之间的差异。当应用配置文件203时,可以按照配置差值来描述目标配置和所创建配置之间的差异。类似地,当为符合性检查配置文件203时,目标配置和实际配置之间的差异被标识出并被描述。对配置文件的受限创建和编辑为用户在配置文件203编写方面提供了最大的灵活性。配置文件203根据多种配置专用策略(即,推迟式、复合式、要求式、分配式等)来配置最终的监管器201。配置文件203可以被用来核实监管器201根据配置策略被正确配置。配置文件203可以从源监管器201不间断地被更新,并且配置文件203更新可以被应用于对应的监管器201配置,同时具有最小的服务中断。
应当理解,上面的描述通篇使用术语“监管器”201,但是如上所述,术语监管器201可以与其它术语(例如VMM)类似交换地使用,并且任何这种主机级别软件虚拟化组件的使用都在本发明的范围之内。此外,本发明的多种实施例可以在上面背景技术部分讨论的多种虚拟化环境之下实现。
在一个或多个实施例中,提供了用于执行上述方法和系统的编程指令。该编程指令被存储在计算机可读介质中。
参考上述实施例,应当理解,本发明的一个或多个实施例可以使用涉及存储在计算机系统中的数据的多种计算机实现的操作。这些操作是需要对物理量进行物理操纵的那些操作。通常,尽管不是必需的,这些物理量采用能够被存储、传送、组合、比较以及以其它方式操纵的电或磁信号的形式。此外,所执行的操纵通常例如指的是产生、标识、确定或比较之类的术语。
这里描述的构成本发明一个或多个实施例一部分的任何操作都是有用的机器操作。本发明的一个或多个实施例还涉及用于执行这些操作的装置。所述装置可以为所需目的专门构建,例如上面讨论的载波网络,或者其可以是由存储在计算机中的计算机程序选择性地启动或配置的通用计算机。特别地,多种通用机器可以结合根据这里教导所编写的计算机程序一起使用,或者,构建执行所需操作的更为专门的装置可能是更有利的。
这里描述的编程模块和软件子系统可以使用诸如Flash、JAVATM、C++、C、C#、Visual Basic、JavaScript、PHP、XML、HTML等编程语言或编程语言的组合来实现。诸如SOAP/HTTP的常规可获得的协议可以用来实现编程模块之间的接口。如本领域普通技术人员将认识到的,上面以及其他地方描述的组件和功能可以通过使用适于桌面软件开发的任何编程语言在执行于虚拟化或非虚拟化环境下的任何桌面操作系统上实现,其中所述桌面操作系统例如是Mircosoft Windows、Apple Mac、Unix/X-Windows、Linux等。
包括配置文件以及以下安装文件的编程模块和辅助软件组件可以被存储在计算机可读介质上、所述安装文件用来提供在电信网络上为订户排除故障以及这里描述的相关功能的方法和装置。诸如闪存驱动、CD-ROM盘、光盘、软盘、硬驱动、共享驱动和适于提供来自相连计算机的下载的存储装置之类的任何计算机介质可以被用来存储编程模块和辅助软件组件。本领域普通技术人员应当认识到,任何存储介质都可以用来存储这些软件组件,只要存储介质能够被计算机系统读取即可。
本发明的一个或多个实施例可以利用其它计算机系统配置来实现,所述其它计算机系统配置包括手持设备、微处理器系统、基于微处理器的或可编程的消费电子设备、微机算计、大型计算机等。本发明还可以在分布式计算环境中实现,在分布式计算环境中,任务是由通过网络链接的远程处理设备执行的。
本发明的一个或多个实施例还可以实现为计算机可读介质上的计算机可读代码。计算机可读介质是可以存储数据的任何数据存储设备,所述数据存储设备随后可以由计算机系统读取。计算机可读介质的示例包括硬驱动、网络附接存储装置(NAS)、只读存储器、随机存取存储器、CD-ROM、CD-R、CD-RW、DVD、闪存、磁带、以及其它光和非光数据存储设备。计算机可读介质还可以分布在网络连接的计算机系统上,从而计算机可读代码可以以分布的方式存储和执行。
尽管已经描述了本发明的一个或多个实施例,但是本领域普通技术人员在阅读了说明书并研究了附图之后,将意识到可以实现对其的多种修改、添加、排列和等同物。因此本发明的实施例意在包括所有这些修改、添加、排列和等同物,这些也都落入权利要求限定的本发明真实精神与范围之内。因此,本发明的范围应当由权利要求限定,其包括权利要求等同物的范围。
Claims (22)
1.一种用于基于虚拟化软件级别下的主机的源配置自动装配虚拟化软件级别下的主机的至少一个目标配置的计算机实现的方法,所述方法包括以下步骤:
处理描述所述源配置的基于策略的配置文件;
基于描述所述源配置的所述基于策略的配置文件,自动创建用于所述至少一个目标配置的配置规范;以及
将所述配置规范自动应用于所述至少一个目标配置,使得所述至少一个目标配置是基于所述基于策略的配置文件的。
2.如权利要求1所述的方法,其中将所述配置规范自动应用于所述至少一个目标配置的步骤进一步包括执行下面一组步骤中的至少一个步骤:
通过网络配置至少一个目标;
在基于网络的引导环境中,作为引导过程一部分配置至少一个目标;
使用至少一个物理计算机可读介质作为传递设备来配置至少一个目标;以及
使用至少一个虚拟计算机可读介质作为传递设备来配置至少一个目标。
3.如权利要求1所述的方法,进一步包括:
基于描述所述源配置的所述基于策略的配置文件自动创建用于所述至少一个目标配置的符合性规范,所述符合性规范包括用来核实目标配置符合所述基于策略的配置文件的至少一个检查;以及
使用所述符合性规范来确定所述至少一个目标配置是否符合所述基于策略的配置文件。
4.如权利要求3所述的方法,进一步包括:响应于确定所述至少一个目标配置不符合所述基于策略的配置文件,执行下面一组步骤中的至少一个步骤:
确定不满足符合性的目标配置和符合的目标配置之间的差值;
提醒用户所述至少一个目标配置不符合所述基于策略的配置文件;
生成关于不符合所述基于策略的配置文件的所述至少一个目标配置的报告;以及
自动更新所述至少一个目标配置使得所述至少一个目标配置符合所述基于策略的配置文件。
5.如权利要求1所述的方法,进一步包括:
基于更新的描述所述源配置的基于策略的配置文件,自动创建用于所述至少一个目标配置的更新的配置规范;以及
将所述更新的配置规范自动应用于所述至少一个目标配置,使得所述至少一个目标配置是基于所述基于策略的配置文件的。
6.如权利要求5所述的方法,其中基于更新的描述所述源配置的基于策略的配置文件自动创建用于所述至少一个目标配置的更新的配置规范的步骤进一步包括:
自动创建描述现有目标配置和更新目标配置之间的差值以及描述更改所述目标配置以消除所述差值的至少一个操作的更新的配置规范。
7.如权利要求5所述的方法,进一步包括:
确定已对所述源配置做出所述至少一个修改;以及
响应于所述至少一个修改,创建描述所述源配置的所述更新的基于策略的配置文件。
8.如权利要求1所述的方法,进一步包括:
创建描述所述源配置的所述基于策略的配置文件,所述基于策略的配置文件代表虚拟化软件级别下的主机的完整配置。
9.如权利要求8所述的方法,其中创建描述所述源配置的所述基于策略的配置文件进一步包括:
将多个个体配置设置中的每个映射到配置文件策略。
10.如权利要求8所述的方法,进一步包括:
自动确保所述配置文件的具体内容落在可应用且有效的策略集规定的范围内。
11.如权利要求8所述的方法,其中创建描述所述源配置的所述基于策略的配置文件进一步包括规定以下一组策略类型中的至少一个策略类型:
推迟策略;
条件式策略;
复合式策略;
基于要求的策略;以及
分配资源策略。
12.一种用于基于虚拟化软件级别下的主机的源配置自动装配虚拟化软件级别下的主机的至少一个目标配置的装置,所述装置包括:
用于处理描述所述源配置的基于策略的配置文件的装置;
用于基于描述所述源配置的所述基于策略的配置文件自动创建用于所述至少一个目标配置的配置规范的装置;以及
用于将所述配置规范自动应用于所述至少一个目标配置使得所述至少一个目标配置基于所述基于策略的配置文件的装置。
13.如权利要求12所述的装置,其中用于将所述配置规范自动应用于所述至少一个目标配置的装置进一步包括执行下面一组步骤中的至少一个步骤的装置:
通过网络配置至少一个目标;
在基于网络的引导环境中,作为引导过程一部分配置至少一个目标;
使用至少一个物理计算机可读介质作为传递设备来配置至少一个目标;以及
使用至少一个虚拟计算机可读介质作为传递设备来配置至少一个目标。
14.如权利要求12所述的装置,进一步包括:
基于描述所述源配置的所述基于策略的配置文件自动创建用于所述至少一个目标配置的符合性规范的装置,所述符合性规范包括用来核实目标配置符合所述基于策略的配置文件的至少一个检查;以及
使用所述符合性规范来确定所述至少一个目标配置是否符合所述基于策略的配置文件的装置。
15.如权利要求14所述的装置,进一步包括响应于确定所述至少一个目标配置不符合所述基于策略的配置文件进而执行下面一组步骤中的至少一个步骤的装置:
确定不满足符合性的目标配置和符合的目标配置之间的差值;
提醒用户所述至少一个目标配置不符合所述基于策略的配置文件;
生成关于不符合所述基于策略的配置文件的所述至少一个目标配置的报告;以及
自动更新所述至少一个目标配置使得所述至少一个目标配置符合所述基于策略的配置文件。
16.如权利要求12所述的装置,进一步包括:
基于更新的描述所述源配置的基于策略的配置文件自动创建用于所述至少一个目标配置的更新的配置规范的装置;以及
将所述更新的配置规范自动应用于所述至少一个目标配置使得所述至少一个目标配置基于所述基于策略的配置文件的装置。
17.如权利要求16所述的装置,其中基于更新的描述所述源配置的基于策略的配置文件自动创建用于所述至少一个目标配置的更新的配置规范的装置进一步包括:
自动创建描述现有目标配置和更新目标配置之间的差值以及描述更改所述目标配置以消除所述差值的至少一个操作的更新配置规范的装置。
18.如权利要求16所述的装置,进一步包括:
确定已对所述源配置做出所述至少一个修改的装置;以及
响应于所述至少一个修改创建描述所述源配置的所述更新的基于策略的配置文件的装置。
19.如权利要求12所述的装置,进一步包括:
创建描述所述源配置的所述基于策略的配置文件的装置,所述基于策略的配置文件代表虚拟化软件级别下的主机的完整配置。
20.如权利要求19所述的装置,其中创建描述所述源配置的所述基于策略的配置文件的装置进一步包括:
将多个个体配置设置中的每个映射到配置文件策略的装置。
21.如权利要求19所述的装置,进一步包括:
自动确保所述配置文件的具体内容落在可应用且有效的策略集规定的范围内的装置。
22.如权利要求19所述的装置,其中创建描述所述源配置的所述基于策略的配置文件的装置进一步包括规定以下一组策略类型中的至少一个策略类型的装置:
推迟策略;
条件式策略;
复合式策略;
基于要求的策略;以及
分配资源策略。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/210,928 US9733959B2 (en) | 2008-09-15 | 2008-09-15 | Policy-based hypervisor configuration management |
US12/210,928 | 2008-09-15 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101676874A CN101676874A (zh) | 2010-03-24 |
CN101676874B true CN101676874B (zh) | 2014-06-18 |
Family
ID=42008396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910170244.3A Active CN101676874B (zh) | 2008-09-15 | 2009-09-08 | 基于策略的监管器配置管理 |
Country Status (2)
Country | Link |
---|---|
US (2) | US9733959B2 (zh) |
CN (1) | CN101676874B (zh) |
Families Citing this family (72)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8464164B2 (en) * | 2006-01-24 | 2013-06-11 | Simulat, Inc. | System and method to create a collaborative web-based multimedia contextual dialogue |
US9697019B1 (en) | 2006-10-17 | 2017-07-04 | Manageiq, Inc. | Adapt a virtual machine to comply with system enforced policies and derive an optimized variant of the adapted virtual machine |
US8949825B1 (en) | 2006-10-17 | 2015-02-03 | Manageiq, Inc. | Enforcement of compliance policies in managed virtual systems |
US8612971B1 (en) | 2006-10-17 | 2013-12-17 | Manageiq, Inc. | Automatic optimization for virtual systems |
US8752045B2 (en) | 2006-10-17 | 2014-06-10 | Manageiq, Inc. | Methods and apparatus for using tags to control and manage assets |
US8458695B2 (en) | 2006-10-17 | 2013-06-04 | Manageiq, Inc. | Automatic optimization for virtual systems |
US8949826B2 (en) | 2006-10-17 | 2015-02-03 | Managelq, Inc. | Control and management of virtual systems |
US9038062B2 (en) * | 2006-10-17 | 2015-05-19 | Manageiq, Inc. | Registering and accessing virtual systems for use in a managed system |
US9086917B1 (en) | 2006-10-17 | 2015-07-21 | Manageiq, Inc. | Registering and accessing virtual systems for use in a managed system |
US8234641B2 (en) | 2006-10-17 | 2012-07-31 | Managelq, Inc. | Compliance-based adaptations in managed virtual systems |
US9015703B2 (en) * | 2006-10-17 | 2015-04-21 | Manageiq, Inc. | Enforcement of compliance policies in managed virtual systems |
US8234640B1 (en) | 2006-10-17 | 2012-07-31 | Manageiq, Inc. | Compliance-based adaptations in managed virtual systems |
US8046694B1 (en) * | 2007-08-06 | 2011-10-25 | Gogrid, LLC | Multi-server control panel |
US8407688B2 (en) * | 2007-11-27 | 2013-03-26 | Managelq, Inc. | Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets |
US8418173B2 (en) | 2007-11-27 | 2013-04-09 | Manageiq, Inc. | Locating an unauthorized virtual machine and bypassing locator code by adjusting a boot pointer of a managed virtual machine in authorized environment |
US8468535B1 (en) * | 2008-09-23 | 2013-06-18 | Gogrid, LLC | Automated system and method to provision and allocate hosting resources |
CA3002975C (en) | 2009-04-01 | 2020-07-14 | Nicira, Inc. | Method and apparatus for implementing and managing virtual switches |
US20100306767A1 (en) * | 2009-05-29 | 2010-12-02 | Dehaan Michael Paul | Methods and systems for automated scaling of cloud computing systems |
US8639787B2 (en) | 2009-06-01 | 2014-01-28 | Oracle International Corporation | System and method for creating or reconfiguring a virtual server image for cloud deployment |
US8776053B2 (en) | 2009-09-25 | 2014-07-08 | Oracle International Corporation | System and method to reconfigure a virtual machine image suitable for cloud deployment |
US8856294B2 (en) * | 2009-06-01 | 2014-10-07 | Oracle International Corporation | System and method for converting a Java application into a virtual server image for cloud deployment |
US11132237B2 (en) * | 2009-09-24 | 2021-09-28 | Oracle International Corporation | System and method for usage-based application licensing in a hypervisor virtual execution environment |
US20110126197A1 (en) * | 2009-11-25 | 2011-05-26 | Novell, Inc. | System and method for controlling cloud and virtualized data centers in an intelligent workload management system |
US8468455B2 (en) | 2010-02-24 | 2013-06-18 | Novell, Inc. | System and method for providing virtual desktop extensions on a client desktop |
US8473587B1 (en) | 2010-05-20 | 2013-06-25 | Gogrid, LLC | System and method for caching server images in a hosting system |
US9128742B1 (en) * | 2010-11-19 | 2015-09-08 | Symantec Corporation | Systems and methods for enhancing virtual machine backup image data |
US8667495B1 (en) * | 2010-12-29 | 2014-03-04 | Amazon Technologies, Inc. | Virtual resource provider with virtual control planes |
US8954978B1 (en) | 2010-12-29 | 2015-02-10 | Amazon Technologies, Inc. | Reputation-based mediation of virtual control planes |
US8667399B1 (en) | 2010-12-29 | 2014-03-04 | Amazon Technologies, Inc. | Cost tracking for virtual control planes |
US9288117B1 (en) | 2011-02-08 | 2016-03-15 | Gogrid, LLC | System and method for managing virtual and dedicated servers |
US8880657B1 (en) | 2011-06-28 | 2014-11-04 | Gogrid, LLC | System and method for configuring and managing virtual grids |
US9390294B2 (en) * | 2011-09-30 | 2016-07-12 | Hewlett-Packard Development Company, L.P. | Virtualized device control in computer systems |
US9379937B2 (en) | 2012-02-23 | 2016-06-28 | International Business Machines Corporation | Policy-based resource management with target-driven remediation on server |
US9213564B1 (en) * | 2012-06-28 | 2015-12-15 | Amazon Technologies, Inc. | Network policy implementation with multiple interfaces |
US9779244B1 (en) * | 2012-08-14 | 2017-10-03 | Rockwell Collins, Inc. | Establishing secure initial state in a processing platform containing both high assurance security and safety-critical functions |
US8972713B2 (en) * | 2012-12-21 | 2015-03-03 | Intel Corporation | Cloud transformable device |
CN103780433B (zh) * | 2014-02-18 | 2017-05-24 | 成都致云科技有限公司 | 自愈式虚拟资源配置管理数据架构 |
US10826795B2 (en) * | 2014-05-05 | 2020-11-03 | Nutanix, Inc. | Architecture for implementing service level management for a virtualization environment |
US9374417B1 (en) * | 2014-05-27 | 2016-06-21 | Amazon Technologies, Inc. | Dynamic specification auditing for a distributed system |
US9400672B2 (en) * | 2014-06-06 | 2016-07-26 | International Business Machines Corporation | Placement of virtual CPUS using a hardware multithreading parameter |
US9384027B2 (en) * | 2014-06-06 | 2016-07-05 | International Business Machines Corporation | Selecting a host for a virtual machine using a hardware multithreading parameter |
US9304805B2 (en) * | 2014-06-06 | 2016-04-05 | Interinational Business Machines Corporation | Provisioning virtual CPUs using a hardware multithreading parameter in hosts with split core processors |
US9009468B1 (en) * | 2014-08-26 | 2015-04-14 | MagicCube, Inc. | System for transaction authentication |
US9851995B2 (en) | 2015-02-26 | 2017-12-26 | Red Hat Israel, Ltd. | Hypervisor adjustment for host transfer between clusters |
CN104679595B (zh) * | 2015-03-26 | 2017-10-13 | 南京大学 | 一种面向应用的IaaS层动态资源分配方法 |
US10613886B2 (en) * | 2015-06-30 | 2020-04-07 | Vmware, Inc. | Protecting virtual computing instances |
US9569249B1 (en) | 2015-09-08 | 2017-02-14 | International Business Machines Corporation | Pattern design for heterogeneous environments |
US9990222B2 (en) * | 2016-03-18 | 2018-06-05 | Airwatch Llc | Enforcing compliance rules against hypervisor and virtual machine using host management component |
US10318311B2 (en) | 2016-06-30 | 2019-06-11 | Amazon Technologies, Inc. | Memory allocation techniques at partially-offloaded virtualization managers |
US10127068B2 (en) | 2016-06-30 | 2018-11-13 | Amazon Technologies, Inc. | Performance variability reduction using an opportunistic hypervisor |
US10318737B2 (en) | 2016-06-30 | 2019-06-11 | Amazon Technologies, Inc. | Secure booting of virtualization managers |
US9983823B1 (en) | 2016-12-09 | 2018-05-29 | Amazon Technologies, Inc. | Pre-forking replicas for efficient scaling of a distribued data storage system |
US10582010B2 (en) | 2017-05-24 | 2020-03-03 | Red Hat Israel, Ltd. | Network beacon for hypervisor installations |
US11218364B2 (en) | 2018-06-25 | 2022-01-04 | Amazon Technologies, Inc. | Network-accessible computing service for micro virtual machines |
US11615208B2 (en) * | 2018-07-06 | 2023-03-28 | Capital One Services, Llc | Systems and methods for synthetic data generation |
US10833949B2 (en) | 2018-11-20 | 2020-11-10 | Amazon Technologies, Inc | Extension resource groups of provider network services |
US11190619B2 (en) | 2019-03-21 | 2021-11-30 | International Business Machines Corporation | Generation and application of meta-policies for application deployment environments |
US10848418B1 (en) | 2019-06-24 | 2020-11-24 | Amazon Technologies, Inc. | Packet processing service extensions at remote premises |
US11113046B1 (en) | 2019-09-24 | 2021-09-07 | Amazon Technologies, Inc. | Integration and remote control of a pre-assembled computer system into a server for a virtualization service |
US11243589B1 (en) | 2019-09-24 | 2022-02-08 | Amazon Technologies, Inc. | Remote power button actuation device for a pre-assembled computer system integrated into a server for a virtualization service |
US11064017B2 (en) | 2019-09-24 | 2021-07-13 | Amazon Technologies, Inc. | Peripheral device enabling virtualized computing service extensions |
US11520530B2 (en) | 2019-09-24 | 2022-12-06 | Amazon Technologies, Inc. | Peripheral device for configuring compute instances at client-selected servers |
US11853771B1 (en) | 2019-09-24 | 2023-12-26 | Amazon Technologies, Inc. | Offload card based virtualization of a pre-assembled computer system integrated into a server for a virtualization service |
US11704715B2 (en) | 2019-11-27 | 2023-07-18 | Amazon Technologies, Inc. | Quantum computing service supporting multiple quantum computing technologies |
US11650869B2 (en) | 2019-11-27 | 2023-05-16 | Amazon Technologies, Inc. | Quantum computing service with local edge devices supporting multiple quantum computing technologies |
US11605016B2 (en) | 2019-11-27 | 2023-03-14 | Amazon Technologies, Inc. | Quantum computing service supporting local execution of hybrid algorithms |
US11605033B2 (en) | 2019-11-27 | 2023-03-14 | Amazon Technologies, Inc. | Quantum computing task translation supporting multiple quantum computing technologies |
US11569997B1 (en) | 2020-03-09 | 2023-01-31 | Amazon Technologies, Inc. | Security mechanisms for data plane extensions of provider network services |
US11379424B2 (en) * | 2020-10-30 | 2022-07-05 | Docusign, Inc. | Edit interface in an online document system |
US20220413889A1 (en) * | 2021-06-28 | 2022-12-29 | VMware,Inc | Virtual-subsystem-migration validator |
US11797276B1 (en) | 2021-09-30 | 2023-10-24 | Amazon Technologies, Inc. | Assisted composition of quantum algorithms |
US11907092B2 (en) | 2021-11-12 | 2024-02-20 | Amazon Technologies, Inc. | Quantum computing monitoring system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101136778A (zh) * | 2006-08-02 | 2008-03-05 | 美国凹凸微系有限公司 | 防火墙/vpn安全网关设备的基于vpn配置的策略 |
CN101256495A (zh) * | 2007-02-27 | 2008-09-03 | 国际商业机器公司 | 用于中间件组件的基于策略自动配置的方法和装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004503011A (ja) * | 2000-07-05 | 2004-01-29 | アーンスト & ヤング エルエルピー | コンピュータサービスを提供するための方法および装置 |
US7577722B1 (en) * | 2002-04-05 | 2009-08-18 | Vmware, Inc. | Provisioning of computer systems using virtual machines |
US20060143617A1 (en) * | 2004-12-29 | 2006-06-29 | Knauerhase Robert C | Method, apparatus and system for dynamic allocation of virtual platform resources |
US7831820B2 (en) * | 2005-06-23 | 2010-11-09 | Microsoft Corporation | System and method for converting a target computing device to a virtual machine in response to a detected event |
US20090265707A1 (en) * | 2008-04-21 | 2009-10-22 | Microsoft Corporation | Optimizing application performance on virtual machines automatically with end-user preferences |
-
2008
- 2008-09-15 US US12/210,928 patent/US9733959B2/en active Active
-
2009
- 2009-09-08 CN CN200910170244.3A patent/CN101676874B/zh active Active
-
2017
- 2017-08-14 US US15/676,523 patent/US10552187B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101136778A (zh) * | 2006-08-02 | 2008-03-05 | 美国凹凸微系有限公司 | 防火墙/vpn安全网关设备的基于vpn配置的策略 |
CN101256495A (zh) * | 2007-02-27 | 2008-09-03 | 国际商业机器公司 | 用于中间件组件的基于策略自动配置的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US9733959B2 (en) | 2017-08-15 |
US10552187B2 (en) | 2020-02-04 |
CN101676874A (zh) | 2010-03-24 |
US20180011725A1 (en) | 2018-01-11 |
US20100070970A1 (en) | 2010-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101676874B (zh) | 基于策略的监管器配置管理 | |
US11182717B2 (en) | Methods and systems to optimize server utilization for a virtual data center | |
CN107534571B (zh) | 用于管理虚拟网络功能的方法、系统和计算机可读介质 | |
US8713566B2 (en) | Method and system for delivering and executing virtual container on logical partition of target computing device | |
US9413819B1 (en) | Operating system interface implementation using network-accessible services | |
US10908938B2 (en) | Methods and systems to determine application license costs in a virtualized data center for use in virtual machine consolidation | |
US11385883B2 (en) | Methods and systems that carry out live migration of multi-node applications | |
CN103200020B (zh) | 一种资源部署方法和系统 | |
US10212045B2 (en) | Method and system for testing and analyzing management servers | |
US20140006480A1 (en) | Dynamic resolution of servers in a distributed environment | |
US10620963B2 (en) | Providing fallback drivers for IO devices in a computing system | |
US11656888B2 (en) | Performing an application snapshot using process virtual machine resources | |
US11842210B2 (en) | Systems, methods, and apparatus for high availability application migration in a virtualized environment | |
US20220197633A1 (en) | Software defined build infrastructure for hybrid, virtualized and native build environments | |
CN115964128A (zh) | 一种异构gpu资源管理和调度方法和系统 | |
Meier et al. | IBM systems virtualization: Servers, storage, and software | |
Gerber | Containerization for HPC in the Cloud: Docker vs Singularity-A Comparative Performance Benchmark | |
US11347497B1 (en) | Uniform software and firmware management of clusters of heterogeneous server hardware | |
US11435997B2 (en) | Desired state model for managing lifecycle of virtualization software installed in heterogeneous cluster of hosts | |
US8555046B2 (en) | Computer system and its HW abstraction method | |
Kourai et al. | Virtual AMT for Unified Management of Physical and Virtual Desktops | |
Tatashin et al. | In-Place VM Migration for Fast Update of Hypervisor Stack | |
CN117075925A (zh) | libvirt管控面卸载方法、装置、设备及介质 | |
Evens | A comparison of containers and virtual machines for use with NFV | |
Kuutvuori | Nesting Virtual Environments |
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 |