平码五不中公式规律
  • / 46
  • 下载费用:30 金币  

映像的漂移管理.pdf

关 键 ?#21097;?/dt>
映像 漂移 管理
  专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
摘要
申请专利号:

CN201580037548.6

申请日:

2015.09.25

公开号:

CN106663008A

公开日:

2017.05.10

当前法律状态:

授权

?#34892;?#24615;:

有权

法?#19978;?#24773;: 授权|||实质审查的生效IPC(主分类):G06F 9/44申请日:20150925|||公开
IPC分类号: G06F9/44 主分类号: G06F9/44
申请人: 甲骨文国?#20351;?#21496;
发明人: B·库彻勃霍特拉; B·帕里沃尔; H·斯瑞尼瓦桑; K·库哈奴佳; S·桑克雷查; R·韦德哈亚那桑
地址: 美国加利福尼亚
优?#28909;ǎ?/td> 2014.09.26 US 62/056,391; 2015.01.23 US 14/603,532; 2015.01.23 US 14/603,804
专利代理机构: 中国国际贸?#29366;?#36827;委员会专利商标事务所 11038 代理人: 李晓芳
PDF完整版下载: PDF下载
法律状态
申请(专利)号:

CN201580037548.6

授权公告号:

||||||

法律状态公告日:

2018.11.06|||2017.06.06|||2017.05.10

法律状态类型:

授权|||实质审查的生效|||公开

摘要

描述了用于管理标准化环境内的漂移的技术。根据一个实施例,存储识别用于多个目标的源组件的标准集合的结束状态定义。漂移管理器确定该多个目标中的至少一个目标已经从由结束状态定义识别的源组件的标准集合漂移。在确定该多个目标中的该至少一个目标已经从由结束状态定义识别的源组件的标准集合漂移之后,漂移管理器将该至少一个目标与结束状态定义进行协调。

权利要求书

1.一种方法,包括:
存储识别用于多个目标的源组件的标准集合的结束状态定义;
确定所述多个目标中的至少一个目标已经从由所述结束状态定义识别的所述源组件
的标准集合漂移;
在确定所述多个目标中的所述至少一个目标已经从由所述结束状态定义识别的所述
源组件的标准集合漂移之后,使得指示所述至少一个目标已经以?#27779;?#26041;式漂移的信息被显
示。
2.如权利要求1所述的方法,还包括:
将所述至少一个目标与所述结束状态定义进行协调;
其中所述多个目标中的所述至少一个目标具有?#20174;?#25152;述结束状态定义识别的至少一
个补丁;以及
其中协调所述至少一个目标与所述结束状态定义包括更?#28388;?#36848;结束状态定义,以将识
别所述至少一个补丁的补丁信息包括到所述结束状态定义。
3.如权利要求2所述的方法,还包括:
基于更新的结束状态定义来更?#28388;?#36848;多个目标中的一个或多个目标;
其中被更新的一个或多个目标包括所述至少一个补丁。
4.如权利要求2或3中的任何一项权利要求所述的方法,其中当服务提供商为特定软件
系?#31243;?#20379;新补丁时,所述至少一个目标被协调;其中所述结束状态定义被进一步更新,以包
括识别来?#36816;?#36848;服务提供商的所述新补丁的补丁信息。
5.如权利要求1至4中的任何一项权利要求所述的方法,还包括:
将所述至少一个目标与所述结束状态定义进行协调;
其中所述多个目标中的所述至少一个目标丢失由所述结束状态定义识别的至少一个
补丁;以及
其中将所述至少一个目标与所述结束状态定义进行协调包括更?#28388;?#36848;至少一个目标,
以使得所述至少一个目标包括所述至少一个补丁。
6.如权利要求1至5中的任何一项权利要求所述的方法,其中确定所述多个目标中的所
述至少一个目标已经从由所述结束状态定义识别的所述源组件的标准集合漂移包括:
为表示结束状态定义的黄金映像生成配置级别签名;
将所述配置级别签名与用于所述多个目标中的每个相应目标的相应配置级别签名进
行比较;
响应于确定所述配置级别签名?#40644;?#37197;用于所述至少一个目标的相应配置级别签名,确
定所述至少一个目标已经从由所述结束状态定义识别的所述源组件的标准集合漂移。
7.如权利要求1至6中的任何一项权利要求所述的方法,还包括:
响应于检测到将导致目标从由所述结束状态定义识别的所述源组件的标准集合漂移
的补丁,向用户通知所述补丁。
8.如权利要求7所述的方法,还包括:
响应于来?#36816;?#36848;用户的阻断所述补丁的请求,阻止所述补丁在所述目标处被应用。
9.如权利要求1至7中的任何一项权利要求所述的方法,还包括基于所述多个目标中的
多少目标已经从由所述结束状态定义识别的所述源组件的标准集合漂移来确定所述多个
目标的合规率。
10.如权利要求9所述的方法,还包括使得向用户显示所述多个目标的合规率。
11.如权利要求1至9中的任何一项权利要求所述的方法,其中所述组件的标准集合包
括基于来自服务提供商的推荐、来自订阅特定映像的目标组的补丁的漂移信息或从用户请
求的定制补丁中的至少一个识别出的一个或多个补丁。
12.如权利要求1至11中的任何一项权利要求所述的方法,还包括:
通过更新由所述结束状态定义识别的所述源组件的标准集合来生成经修订的结束状
态定义;
其中在生成所述经修订的结束状态定义时,所述多个目标中的两个或更多个目标?#29615;?br />合所述经修订的结束状态定义。
13.如权利要求12所述的方法,还包括如果在阈值时间段内所述多个目标中的所述两
个或更多个目标?#29615;?#21512;所述经修订的结束状态定义,则确定所述两个或更多个目标已经漂
移。
14.如权利要求1至13中的任何一项权利要求所述的方法,还包括如果特定目标已经落
后于黄金映像阈值数量的版本,则确定所述特定目标已经漂移。
15.一个或多个非暂态计算机可读介?#21097;?#25152;述一个或多个非暂态计算机可读介质存储
指令,当所述指令由一个或多个处理器执行时,使得如权利要求1-14中的任何一项权利要
求所述的方法被执行。

说明书

映像的漂移管理

技术领域

本公开涉及部署资源的标准化。本公开更具体地涉及用于跨不同目标软件部署来
推荐、创建和管理标准化的配置级别的计算机实现的技术。

背景技术

本节中描述的方法是可以被追求的方法,但不一定是先前已经构想或追求的方
法。因此,除非另有指示,否则不应当假设本节中描述的方法中的任何方法仅仅由于它们被
包括在本节中而被认为是现有技术。

随着时间的推移,许多数据中心经历两种主要类型的变换。第一,随着软件部署的
数量?#25214;?#22686;加,典型的数据中心经历显著增长。第二,随着技术的进步或者对底层部署模型
的改变,数据中心内的软件架构通常被改进或更新。这些变换经常导致孤立、分散、变化和
复杂的软件部署。一些企业部署具有跨多个版本?#36879;?#31181;软件补丁级别的数百和数千个软件
部署。

数据中心内软件部署的?#25214;?#22686;加和差异化(divergent)的本质为系统管理员带来
了重大挑战。大的、变化的分布式环境可能需要相当数量的带外(out of band)紧?#22791;?#21464;和
自组织(ad-hoc)改变以保持系统正确地执行。由于差异?#20013;?#23384;在并且随着附加的部署?#36879;?br />新而增长,因此不?#31245;?#27979;的?#25910;?#21644;计划外停机的风险可能增加。此外,软件部署的变化?#36879;?br />杂的本质可能导致资源利用率差并且使计划的维护窗口存在问题。

附图说明

在附图的图中通过示例的方式而不是限制的方式?#22659;?#20102;各种实施例,在附图中相
似的附图标记指代相似的元件并?#31227;?#20013;:

图1?#22659;?#20102;用于管理部署资源的标准的示例系统;

图2?#22659;?#20102;用于将目标映射到推荐的软件配置级别的示例过程;

图3?#22659;?#20102;用于计算结束状态定义的示例过程;

图4?#22659;?#20102;用于跨与特定推荐桶相关联的不同目标来规格化(normalize)补丁的
示例过程;

图5?#22659;?#20102;可以被用来创建黄金映像(gold image)的不同方法;

图6?#22659;?#20102;随着补丁随时间?#29615;⒉级?#32467;束状态定义和对应黄金映像的更新;

图7?#22659;?#20102;黄金映像的基础版本和后续版本的创建;

图8?#22659;?#20102;用于跨多个目标维护标准的示例过程;

图9?#22659;?#20102;订阅映像并?#26131;?#24490;对可用的最新版本的更新的目标;

图10?#22659;?#20102;其中多个黄金映像被维护的示例数据中心环境;

图11?#22659;?#20102;将签名映射到对应的软件配置描述的示例散列表;

图12?#22659;?#20102;已经用多个签名标记的示例黄金映像;

图13?#22659;?#20102;使用软件配置级别签名执行合规性(compliance)检查的示例过程;

图14?#22659;?#20102;用于黄金映像的版本的不同状态之间的转移;

图15?#22659;?#20102;在新映像版本创建期间在黄金映像内发生的周期;

图16?#22659;?#20102;用于识别群集组内的离群(rogue)目标的示例过程;

图17?#22659;?#20102;基于离群目标如何?#29615;?#31867;来协调(reconcile)离群目标的不同方法;

图18?#22659;?#20102;合并离群目标的漂移(drift)补丁的示例映像更新;

图19A、19B、19C、19D、19E和19F?#22659;?#20102;可以被用来管理标准化过程的示例控制面
板(dashboard)和其它界面;以及

图20是?#22659;?#21487;以在其上实现实施例的计算机系统的框图。

具体实施方式

在下面的描述中,为了解释的目的,阐述了许多具体?#38468;冢?#20197;便于提供?#21592;?#20844;开的
透彻理解。然而,明显可以在没有这些具体?#38468;?#30340;情况下实践本发明。在其它实例中,以框
图形式?#22659;?#32467;构和设备,以便于避免不必要地使本发明模糊。

映像?#23435;?advisor)总体概述

在各种实施例中,描述了用于为了减少配置污染而生成推荐的计算机系统、存储
的指令和技术步骤。这些推荐一般可以识别受管理环境内的不同软件配置的数量可以被最
小化或以其它方式减少的方式。通过减少污染,环境可以变得更易于管理和安全。此外,由
孤立、分散、变化?#36879;?#26434;的部署消耗的计算资源的量可以被显著改进。

根据一个实施例,映像?#23435;?#21253;括用于基于与多个目标相关联的属性集合生成软件
配置分类集合的逻辑和接口。映像?#23435;?#23558;软件配置分类集合中的每个相应的软件配置分类
与该多个目标中的一个或多个目标相关联。对于软件配置分类集合中的每个相应的软件配
置分类,映像?#23435;?#29983;成并提供识别用于该多个目标中的该一个或多个目标的推荐的源组件
集合的推荐。

在另一个实施例中,映像?#23435;?#21253;括用于基于与多个目标相关联的一个或多个属性
的集合来确定当前软件配置级别集合的逻辑和接口。软件配置级别集合中的每个相应的当
前软件配置级别可以与该多个目标中当前在相应的当前软件配置级别被配置的至少一个
目标相关联。映像?#23435;?#36824;基于与该多个目标相关联的一个或多个属性的集合来确定推荐的
软件配置级别的集合。推荐的软件配置级别集合中的每个推荐的软件配置级别用于该多个
目标中的至少一个目标。映像?#23435;?#21487;以显?#38236;?#21069;配置级别和/或推荐的软件配置级别的集
合。

填充内容总体概述

数据中心或其它受管理环境内的软件资源可以在不同的配置级别被部署。例如,
软件资源的不同部署可以具有不同级别的补丁,以使得尚未在一个部署处应用的一个或多
个补丁在另一个部署处被应用。潜在的配置的数量可以对可管理性产生?#22909;?#24433;响并且使跨
不同部署的标准化变得复杂。

在各种实施例中,描述了用于为可能处于不同配置级别的多个软件部署确定推荐
的标准软件配置级别的计算机系统、存储的指令和技术步骤。基于该确定,可以生成满足推
荐的标准源组件集合的映像。该映像可以被用来更新不满足所推荐的标准的软件部署。

在一个实施例中,基于对多个目标软件部署的补丁级别的分析来创建映像的基础
版本。补丁信息可以跨该多个目标软件部署?#36824;?#26684;化,以提供要包括在推荐的映像的标准
和基础版本中的补丁的列表。

在一个实施例中,利用来自服务提供商的外部推荐来进一步扩充推荐的补丁信
息。外部推荐可以包括诸如针对特定软件产品的全球供应商推荐之类的租户通用的补丁推
荐,或者诸如用于诊断的支持单(diagnosed support ticket)的补丁之类的租户特定的补
丁推荐。扩充的补丁信息可以被合并到为该多个目标软件部署创建的映像的基础版本中。
推荐可以被用来确定将哪个配置级别作为标准推荐。

软件配置签名概述

描述与特定软件部署相关联的配置级别可以涉及许多属性。例如,示例描述可以
包括识别产品的名称、发布日期和平台以及唯一地识别被应用的每个补丁(如果有的话)的
信息的属性。作为另一个示例,复合目标可以由多个不同的软件产品/应用或其它元素组
成。每个软件应用可以包括多个插件或其它子元素,并且每个子元素可以是利用其自身的
生命周期和补丁能够独立更新的。鉴于这样的复?#26377;裕?#30830;定用于特定目标的配置级别可以
是涉及大量属性比较并且消耗宝贵处理资源的时间密集型过程。

在各种实施例中,描述了用于生成软件配置级别签名的计算机系统、存储的指令
和技术步骤。配置级别签名允许目标的配置级别的快速比较并?#20197;?#35768;合规性检查,以确定
特定目标是否满足特定配置级别。配置级别签名?#22266;?#20379;当部署的数量快速增加时执行配置
比较的可扩展性。

在一个实施例中,基于与软件部署相关联的摘要(digest)信息,为目标软件部署
生成软件配置级别签名。摘要信息可以包括属性的?#34892;?#38598;合,该属性的?#34892;?#38598;合描述或以
其它方式识别软件部署从其运行的源组件集合。例如,摘要信息可以识别软件系统的基础
版本和应用到该软件系统的所有补丁。摘要信息还可以识别软件映像内的所有组件及其对
应的补丁级别。在复合系统中,组件可以包括父软件单元以及共同作为父软件单元的一部
分的独立却相关联的子软件块。每个组件可以具有其自身的生命周期。配置级别签名可以
被存储为用于相关联的软件部署的目标特性。

在另一个实施例中,为源组件的目标集合生成签名。这个签名可以与和一个或多
个相应软件部署相关联的一个或多个签名的集合进行比较。如果特定软件部署的签名与用
于源组件的目标集合的签名?#40644;?#37197;,则该软件部署可以?#29615;?#31867;为不合规。

版本管理概述

数据中心和其它环境内的标准可?#36816;?#26102;间演变。例如,软件部署可以被?#20013;?#22320;添
加、修补或以其它方式修改。当软件升级和其它补丁?#29615;?#24067;时,标准可以被更新以捕获这些
改变。

在各种实施例中,描述了用于管理用于目标软件部署组的标准的计算机系统、存
储的指令和技术步骤。在一个实施例中,为订阅黄金映像的一组目标软件部署维护订阅数
据。黄金映像表示对于订阅的目标来说要遵循的标准。目标的组可以被称为“群集组?#20445;?#22240;为
目标遵循黄金映像的领导并且因此“群集”在一起。如果黄金映像改变,则订阅的目标遵循
并且应用改变,以跟上最新的标准。

黄金映像的多个映像版本可以被维护。每个不同版本表示不同的配置级别并且跟
踪黄金映像标准随时间的演变。例如,当创建映像的新版本时,一个或多个后续版本可以保
?#21482;?#21160;。这允许订阅的目标有时间改变到新标准,从而阻止不想要的和潜在的破坏性中断。

在一个实施例中,映像的新版本的创建导致映像的结束状态定义和对应的载荷
(payload)创建的修订。新映像版本的创建可以包括来自一个或多个源的附加补丁的计算。

映像的新版本可以遵循特定的生命周期。在一个实施例中,映像版本通过多个状
态转移,所述多个状态包括草案状态、活动受限状态、活动当前状态、活动状态和/或退休状
态中的一个或多个。

漂移管理概述

最初共享相同配置级别的不同软件部署可?#36816;?#26102;间漂移。例如,没有应用于一个
目标部署的自组织更新或其它补丁可以在另一个目标部署处被应用,或者由于错误或回滚
(rollback)一些更新可能没有在某些目标处应用。如果保持不受管理,则随着更多的补丁
?#29615;?#24067;和应用,软件部署可能进一步漂离。

在各种实施例中,描述了用于管理遵循标准的多个软件部署之间的漂移的计算机
系统、存储的指令和技术步骤。通过阻止或减少漂移,跨越潜在大量软件部署的标准可以被
更容易地维护。这允许更可管理和安全的环境,并且可以通过阻止部署变得太孤立、分散、
复杂和变化?#20174;?#21270;资源利用。

在一个实施例中,存储识别用于多个目标软件部署的标准配置级别的结束状态定
义。漂移管理系统可以确定目标软件部署是否已经从由结束状态定义识别的标准配置级别
漂移。如果至少一个目标软件部署已经漂移,则漂移管理系统可以执行协调,以使漂移者恢
?#20174;?#26631;准合规。

标准化管理系统

本文描述的技术可以由标准化管理系统实现,该标准化管理系?#31243;?#20379;从其跟踪监
控器并且维护数据中心或其它受管理环境内的软件资源的部署的集中式位置。标准化管理
系统可以支持与软件资源的标准化相关的各种功能,这些功能包括但不限于:

·识别与数据中心、云或其它环境内部署的目标相关联的不同配置;

·基于目标的分类为目标的组推荐标准化配置;

·生成表示用于不同的相应目标组的标准化配置的黄金映像;

·生成和分解唯一地表示标准化配置的签名;

·为一组目标维护黄金映像的多个版本;

·管理从黄金映像标准漂移的目标;和/或

·呈现用于精简(streamline)标准化过程的控制面板和/或其它图形用户界面
(GUI)元素。

图1?#22659;?#20102;根据实施例的、用于管理部署资源的标准的示例系统。系统100一般包
括主机110a至110n、数据收集器120、储存库(repository)130和标准化管理逻辑140。系统
100的组件可以在一个或多个数据中心、一个或多个云和/或一个或多个其它联网环境中实
现。

主机110a至110n表示一个或多个网络主机的集合并且一般包括目标112a至112n
和代理114a至114n。每个代理是在对应的主机机器上执行并且监控一个或多个相应目标的
进程,诸如服务或守护进程。本上下文中的“目标”是指软件部署,其中软件部署可以包括但
不限于系统100内部署的应用、系统程序、开发软件和/或其它软件系统。目标从源组件的集
合运行,其中用于软件部署的源组件包括但不限于作为例如修补配置、修改、更新或者新提
供或初始化软件的结果已产生的指令和/或配置的集合。术语“用于软件部署的源组件”与
术语“用于软件部署的配置级别”在本文中可互换使用。

虽然在图1中每个主机仅?#22659;?#20102;一个代理和目标,但是每个主机的代理和/或目标
的数量可以依实施方式而变化。例如,多个代理可以被安装在给定主机上,以监控不同的目
标应用或其它资源。

代理114a至114n与数据收集器120可通信地耦接并且根据一个或多个通信协议将
收集的数据发送到数据收集器120。可以被用来在代理和数据收集器120之间传输数据的示
例通信协议包括但不限于超文本传送协议(HTTP)、简单网络管理协议(SNMP)和互联网协议
族的其它通信协议。

数据收集器120聚集从代理114a至114n收集或以其它方式接收的数据,并且将聚
集的数据存储在储存库130中。在实施例中,数据收集器120由主机110a至110n之一执行。可
替代地,数据收集器120在不执行任?#26410;?#29702;的不同主机机器上执行。类似地,储存库130和标
准化管理逻辑140可以驻留在?#22659;?#30340;主机机器中的任何主机机器上或者可以在分开的主机
或主机集合(包括但不限于在云中的分开的主机或主机集合)上实现。

标准化管理逻辑140管理与主机110a至110n上部署的资源的标准化相关的各个方
面。标准化管理逻辑140可以包括但不限于映像?#23435;?42、映像创建器144、组管理器146、签
名生成器148、版本管理器150和/或漂移管理器152。这些组件中的每一个支持如在本文进
一步详细描述的不同的功能集合。

标准化管理逻辑140还可以包括控制操纵台154,其提供允许用户在?#38236;?#25110;从远程
网络位置监控和管理本文所描述的标准化过程的用户接口。用户接口可以包括但不限于图
形用户界面(GUI)、应用编程接口(API)、命令行界面(CLI)或者与用户交互的一些其它手
段。本上下文中的“用户”可以包括但不限于应用或诸如系统管理员之类的人类用户。

配置识别和分类

在一个实施例中,映像?#23435;?42包括用于将用于目标112a至112n的源组件的当前
集合进行识别和分类的逻辑。例如,映像?#23435;?42可以确定在系统100内部署了多少不同的
软件版本和补丁。映像?#23435;?42可以基于描述或以其它方式识别目标如何被配置的属性集
合来将目标的源组件的当前集合进行分类。通过识别用于目标112a至112n的当前配置级别
和源组件,可以形?#19978;?#32479;100内的配置污染(如果有的话)的全貌。

可以基于主属性和?#38382;?#24615;将用于不同软件部署的源组件和配置级别的集合进行
分类。主属性是在同一软件资源的不同部署之间不改变的属性。主属性可以被用来描述软
件部署的基础版本。示例主属性可以包括但不限于:

·目标类型:该属性主要在产品级别将目标进行分类,诸如识别产品名称和/或供
应商。该属性还可以识别产品的架构模型。例如,一些数据库管理系统支持在独立服务器
上、在集群环境内等的部署。

·软件发布版本:该属性识别目标资源的发布版本。在数据中心环境中可以存在
多个可用的发布版本。给定的发布可以具有带不同补丁的多个部署。

·操作系统(或平台)版本:该属性识别托管软件的操作系统(OS)或其它平台。在
数据中心中可以存在多于一个OS类型。因此,同一产品在不同平台上执行时可以被不同地
分类。

目标还可以基于应用的补丁属性来分类。该属性识别已在目标处应用的关键补丁
更新(critical patch update,CPU)、补丁集更新(patch set update,PSU)或其它补丁。如
本文所使用的“补丁”可以包括插件、错误修复、特征改进、自定义修改和/或对软件部署的
?#25345;?#20854;它更新。补丁在被应用时可以改变程序可执行文件(executable)。应用的同一版本
的不同部署可以具有在一个目标处被应用而没有在另一目标处被应用的补丁。

?#38382;?#24615;是在同一软件资源的不同部署之间可以不同的属性。?#38382;?#24615;可以被用来进
一步细化目标的配置分类。?#38382;?#24615;的示例可以包括但不限于:

·支持的应用:该属性识别由目标支持的应用。例如,数据库管理系统可以被用来
支持客户关系管理(CRM)应用、商业智能(BI)应用等。

·位置:该属性识别目标的位置。例如,给定的应用可以被部署在由同一标准化管
理逻辑管理的地理上不同的数据中心中。该属性可以识别目标所属的地理区域和/或特定
数据中心。

·业务线:该属性识别由目标支持的业务线(LOB)。例如,LOB可以包括诸如会计、
供应链管理、人力资源等之类的不同类别。

·租户:该属性识别目标与其相关联的租户。一些数据中心支持多租户环境,其中
不同的目标属于不同的租户或以其它方式与不同的租户相关联。

·定制特性:用户可以为目标创建定制特性。例如,管理员可以定义安全级别属
性,以便将高度敏感目标与同一数据中心内的其它目标分开分类。

在一个实施例中,数据收集器120为目标112a至112n中的每一个收集并且在储存
库130中存储上面的属性中的一个或多个。一旦所述上面的属性中的一个或多个被收集,则
映像?#23435;?42扫描目标特性,以确定用于目标112a至112n的当前软件配置。然后,映像?#23435;?br />142使用这些属性来识别系统100内的所有唯一的软件配置。例如,共享公共目标类型、软件
发布、操作系统和补丁集更新的所有目标可以?#29615;?#32452;为单个唯一的配置分类。在其它示例
中,附加的?#38382;?#24615;可以被用来细化分类。例如,属于不同位置、LOB和/或租户的组可以?#29615;?br />开分组。映像?#23435;?42可以向用户提供不同的配置分类以及多少目标属于每个不同的配置
分类,如下文进一步描述的。

上文识别的主属性和?#38382;?#24615;是通过示例的方式给出的,但是可以依实施方式而变
化。例如,在一些软件部署中,上文识别的主属性中的一个或多个主属性可以是?#38382;?#24615;,或
者反之亦然。在一些实施例中,主属性和?#38382;?#24615;可以基于域特定的规则或适用于特定应用
域的其它信息来确定。因此,定义一个软件配置分类的主属性可以不同于另一软件配置分
类的主属性。

推荐的结束状态配置级别

在一个实施例中,映像?#23435;?42包括用于为目标112a至112n确定和生成推荐的软
件源组件的逻辑。推荐的配置级别的逻辑描述在本文中被称为“结束状态定义”。结束状态
定义包括依据一个或多个推荐的目标属性来定义或以其它方式识别推荐的源组件集合的
数据。例如,结束状态定义可以指定为一组目标推荐的目标类型、软件版本、操作系统和补
丁。

在一个实施例中,映像?#23435;?42基于对目标112a至112n的目标属性的分析来计算
初始的结束状态定义。为了计算初始的结束状态定义,映像?#23435;?#21487;以基于主属性来执行粗
略分类。利用?#33268;?#20998;类,即使目标的?#38382;?#24615;可能不同,与相同主属性(例如,目标类型、软件
版本和平台)相关联的目标也被指派特定的结束状态定义或以其它方式与特定的结束状态
定义相关联。在这种情况下,主属性充当用于分组目标的最小公分母。因此,具有共同主属
性的目标共享同一推荐的源组件集合。

映像?#23435;?42还可以使用一个或多个?#38382;?#24615;来生成和/或精炼(refine)初始的结
束状态定义。即使目标可能共享相同的主属性,具有不同?#38382;?#24615;或?#38382;?#24615;的组合的目标也
可以?#29615;?#31867;在不同的组中。例如,在一个位置处的、具有与第二位置处的目标应用相同的主
属性的目标应用可以与不同的推荐的源组件集合和结束状态定义相关联。除了位置以外或
者作为位置的替代,一个或多个其它?#38382;?#24615;可以在分析中被使用,从而在分类目标时允许
不同的粒度级别。

图2?#22659;?#20102;用于将目标映射到推荐的软件配置级别的示例过程。该过程包括基于
分类属性将目标分组到推荐桶中,如下文进一步?#33268;?#30340;。如在本上下文中使用的“推荐桶”
或“软件配置分类”是指共享相同分类属性的一个或多个目标(例如,软件部署)的逻辑分
组。属于同一推荐桶/软件配置分类的目标与同一结束点定义和推荐的软件配置级别相关
联。

参照图2中所绘出的过程,在步骤202处,映像?#23435;?42为从目标112a至112n中选择
的目标识别分类属性集合。用于目标分类的分类属性集合可以依实施方式而变化。在一个
实施例中,在步骤202处识别的分类属性的集合包括所选择的目标的主属性以及零个或更
多个?#38382;?#24615;。

在步骤204处,映像?#23435;?42分析该属性集合,以确定所选择的目标是否适合现有
的推荐桶。如果分类属性集合与同一推荐桶内的其它目标的分类属性匹配,则目标适合推
荐桶。例如,即使在推荐桶中的目标之间诸如所应用的补丁或其它?#38382;?#24615;之类的其它属性
可能不同,具有相同目标类型、发布版本和平台的目标也可以?#29615;?#32452;到同一推荐桶中。

如果所选择的目标不适合相应的推荐桶或者还没有创建推荐桶,则在步骤206处,
映像?#23435;?42基于分类属性集合生成新的推荐桶。例如,当所选择的目标包括新的主属性
时,映像?#23435;?42创建新的推荐桶。本上下文中的“新?#24065;?#21619;着在分类过程期间在先前分析的
目标中没有遇到该主属性。

如果所选择的目标适合相应的推荐桶或者一旦桶已经在步骤206处被创建,则在
步骤208处,映像?#23435;?42将所选择的目标添加到推荐桶。在一些情况下,可以允许用户定义
分类标准,以使得目标适合多于一个推荐桶。在这样的场景中,在步骤208处仅选择桶中的
一个桶来添加目标。选择可以由用户进行或者可以由映像?#23435;?42自动确定。

在步骤210处,映像?#23435;?42确定是否存在要分析的任何剩余目标。如果存在尚未
被添加到推荐桶的剩余目标,则对于新选择的目标重复步骤202至208。可以重复该过程直
到目标112a至112n中的每一个已经?#29615;?#26512;和分类。

一旦目标已经?#29615;?#26512;和分类,则在步骤212处,映像?#23435;?42为推荐桶内的目标定
义结束状态。在一个实施例中,映像?#23435;?42为每个相应的推荐桶计算不同的结束状态定
义。然后,目标与它们所属的推荐桶的结束状态定义相关联。因此,同一推荐桶内的目标共
享相同的结束状态定义和推荐的源组件集合。分开的推荐桶内的目标与不同的结束状态定
义和不同的推荐的源组件集合相关联。

推荐精炼

映像?#23435;?42可以允许用户通过指定次标准来进一步过滤和分割推荐桶。例如,初
始分析可以仅使用主属性而不使用?#38382;?#24615;来对目标进行分组。因此,不管?#38382;?#24615;的任何差
异,具有相同主属性的目标?#29615;?#22312;同一个推荐桶中。然后用户可以输入一个或多个?#38382;?#24615;,
以滤出特定的目标或调整分组。在一个示例中,管理员可能不希望标准化过程涉及高度敏
感的目标。为了防止这样的场景,用户可以基于与目标相关联的安全级别属?#28304;?#25512;荐桶滤
出/移除目标。作为另一个示例,用户可以提交请求,以通过位置、LOB或?#25345;?#20854;它?#38382;?#24615;或
属性组合来进一步分割推荐桶。响应于接收到请求,映像?#23435;?42根据附加标准来调整推荐
桶。

附加的分割标准可?#28304;?#24314;推荐桶之间的更精细的粒度,从而导致更大数量的推荐
桶和结束状态定义。作为示例,特定推荐桶可以包括十个目标。这些目标中的五个目标可以
被安装在第一位置处,三个目标可以被安装在第二位置处,而两个目标可以被安装在第三
位置处。然后,如果用户请求通过位置的进一步分割,则推荐桶基于位置?#29615;指?#25104;三个新的
推荐桶。两个新推荐桶中的一个推荐桶包括来自第一位置的五个目标,第二推荐桶包括来
自第二位置的三个目标,而第三推荐桶包括来自第三位置的三个目标。这些桶中每一个可
以基于附加标准被进一步分割。该方法允许用户调整为了标准化而根据其将目标进行分组
的参数。

结束状态计算

对于给定的推荐桶,若干可能的结束状态定义和对应的源组件集合可以是可能
的。例如,特定推荐桶可以包括以若干不同方式配置的目标。在一些情况下,这些目标中的
一个目标可以根据优化的配?#32654;?#37197;置。在其它情况下,这些目标都不可以被最优地配置。

如上文所?#33268;?#30340;,映像?#23435;?42可以基于对目标112a至112n的分析来计算初始的
结束状态定义。为了计算用于特定推荐桶的结束状态定义,映像?#23435;?42可以规格化来自属
于特定推荐桶的目标的源组件集合。规格化可以涉及将目标的不同配置合并或以其它方式
组合成对应于推荐的标准源组件集合的单个结束状态定义。例如,映像?#23435;?#21487;以组合应用
到推荐桶内的每个目标的补丁,如本文进一步描述的。

在260处计算初始的结束状态定义之后,结束状态定义可以被进一步增强?#36879;?#26032;。
例如,映像?#23435;?42可以检查来自诸如供应商支持?#38236;?#20043;类的外部源的更新或其它推荐的
配置信息。在一个实施例中,映像?#23435;?42可以基于以下来修改结束状态定义:

·来自供应商或其它服务提供商的目标通用/租户通用的配置推荐;和/或

·来自供应商或其它服务提供商的目标特定/租户特定的配置推荐。

上面的上下文中的“目标通用的”或“租户通用的”推荐是指不管软件应用安装在
哪里或控制软件部署的实体是什么?#21152;?#29992;到特定软件应用的推荐。作为示例,供应商可以
向其所有客户发出全球CPU或PSU。

“目标特定的”或“租户特定的”推荐(本文也称为“定向(targeted)”推荐)是指应
用于特定目标或租户的推荐。例如,供应商可以针对特定客户的环境发出定制的补丁更新。

图3?#22659;?#20102;用于计算结束状态定义的示例过程。在步骤302处,映像?#23435;?42计算用
于特定推荐桶的初始结束状态定义。作为示例,映像?#23435;?#21487;以跨推荐桶内的目标来规格化
补丁信息数据,如下文进一步描述的。

在步骤304处,映像?#23435;?42确定是否存在任何目标/租户通用的推荐。映像?#23435;?br />142可以通过针对步骤302处计算的结束状态中不包括的附加的推荐配置而查询供应商的
支持?#38236;?#25110;其它外部服务来确定是否存在任何通用的推荐。

如果存在附加的推荐配置,则在步骤306处,相应地更新结束状态定义。如果不存
在附加的推荐配置或者更新在步骤306处已经完?#26705;?#21017;过程前进到步骤308。

在步骤308处,映像?#23435;?42确定是否存在没有包括在初始结束状态定义中的任何
目标或租户特定的推荐配置。在一个实施例中,映像?#23435;?#36890;过搜索与推荐桶中的目标相关
联的未决服务请求来识别配置。

如果存在任何附加的租户或目标特定的推荐配置,则在步骤310处,更新结束状态
定义以包括那些配置。如果不存在附加的推荐配置或者步骤310处的更新完?#26705;?#21017;过程前进
到步骤312,并且映像?#23435;?42提供用于推荐桶的推荐的结束状态。在本上下文中提供可以
包括但不限于经网络发送结束状态、将识别推荐的结束状态的数据存储在指定的存储位置
处、和/或使推荐的结束状态被显示。

跨目标的补丁规格化

如前面所指示的,同一推荐桶内的目标可以具有已经被应用的不同级别的补丁。
例如,一个目标可能已应用?#20174;?#29992;到同一推荐桶中的至少一个其它目标的一个或多个供应
商提供的补丁和/或一个或多个定制补丁。为了确定哪些补丁要包括在结束状态定义中,映
像?#23435;?42可以跨给定推荐桶内的目标集合来规格化补丁。

根据一个实施例,映像?#23435;?42执行安装在推荐桶内的目标上的所有补丁的并集
(union),以规格化补丁并且计算初始结束状态定义。并集操作保留已应用到目标的唯一补
丁并且丢弃冗余的补丁(即,已应用到多于一个目标的补丁)。

在另一个实施例中,映像?#23435;?42可以基于补丁跨推荐桶内的目标出现的?#24503;?#26469;
规格化补丁。出?#25351;?#20110;阈值?#24503;?#30340;补丁可以被添加到推荐的结束状态,而不满足阈值的补
丁可以被省略。

图4?#22659;?#20102;用于跨与特定推荐桶相关联的不同目标规格化补丁的示例过程。在步
骤402处,映像?#23435;?42分析选择的目标以识别哪些补丁(如果有的话)已经被应用。在一个
实施例中,由代理114a至114n和数据收集器120收集的目标特性包括识别哪些补丁已被应
用到目标112a至112n的补丁描述信息。映像?#23435;?42可?#36816;?#32034;所选择的目标的目标特性,以
确定哪些补丁已经被应用。

如果一个或多个补丁已经被应用到所选择的目标,则在步骤404处,映像?#23435;?42
确定这一个或多个补丁中的哪些补丁已经被添加到与结束状态定义相关联的推荐补丁的
列表。如果至少一个补丁没有包括在列表中,则过程继续到步骤406。否则,过程前进到步骤
408。

在步骤406处,映像?#23435;?42从所选择的目标的目标特性中提取没有包括在推荐补
丁列表中的每个补丁的补丁信息,并且将该补丁信息添加到列表。在一些实施例中,映像顾
问142可以在将补丁添加到列表之前检查例外列表。例如,例外列表可以识别不应当被添加
到要推荐的列表或补丁的不兼容或?#40644;?#26395;的补丁。如果特定补丁在例外列表上,则映像顾
问142可以继续而不添加该特定补丁。

在步骤408处,映像?#23435;?42确定在推荐桶内是否存在剩余的目标。如果存在尚未
?#29615;?#26512;的剩余目标,则过程重复剩余的目标。否则,过程继续到步骤412。

在步骤410处,映像?#23435;?42生成或更新包括推荐补丁的列表的结束状态定义。结
束状态定义与特定的推荐桶相关联,以便于推荐用于桶内的目标的标准化补丁级别。规格
化的补丁列表可以呈?#25351;?#29992;户,以使得用户可以查看和浏览推荐补丁的列表。

通用和定制补丁推荐

如前面所指出的,映像?#23435;?42可以基于通用或定向配置推荐来修改结束状态定
义。在一个实施例中,这些推荐包括来自供应商和/或其它服务提供商的推荐的补丁更新。
例如,可以通过添加来自以下的补丁进一步增强结束状态定义:

·供应商或其它服务提供商的补丁推荐,诸如CPU或PSU;和/或

·为已为其提供解决方案但?#24418;从?#29992;该解决方案的目标创建的支持单。

为了确定是否存在通用推荐,映像?#23435;?42可以向服务提供商的支持?#38236;?#21457;送请
求。该请求可以包括识别用于目标的特定桶的当前推荐结束状态的结束状态定义或其它数
据。响应于接收到请求,支持?#38236;?#21487;以针对用于对应软件产品的服务提供商发布的补丁来
检查推荐补丁。如果支持?#38236;?#27809;有识别出尚未包括在当前推荐的结束状态中的补丁,则支
持?#38236;?#21487;以向映像?#23435;?42发送指示不存在附加推荐的响应。否则,如果支持?#38236;?#35782;别出没
有包括在当前推荐的结束状态中的补丁,则支持?#38236;?#21487;以向映像?#23435;?42发送包括补丁或
指示可以下载补丁的位置的响应。然后映像?#23435;?42可以利用识别服务提供商的推荐补丁
的信息来更新结束状态定义。

在一个示例中,映像?#23435;?42可以针对推荐桶内的目标来搜索未决支持单。本上下
文中的“支持单”是指识别从客户或其它用户到服务提供商的服务请求的数据项。例如,支
持单可以包括改正特定错误或者为特定软件应用提供特定增强的请求。如果服务请求尚未
被解决或者如果解决方案(resolution)尚未被应用到服务请求所针对的目标(多个目标),
则支持单被称为未决的。如果映像?#23435;?42检测到仍然未决的针对目标中的一个目标的支
持单,则映像?#23435;?42可以向服务提供商的支持?#38236;?#21457;送状态请求。如果支持?#38236;?#30830;定服务
请求被解决,则支持?#38236;?#21487;以向映像?#23435;?42发送包括补丁或指示可以下载补丁的位置的
响应。然后映像?#23435;?42可以用识别服务提供商的推荐补丁的信息来更新结束状态定义。

黄金映像创建

结束状态定义是软件源组件集合的逻辑定义。例如,结束状态定义可以将源组件
集合定义为基础软件版本?#30001;?#35201;在其上应用的推荐的补丁。表示结束状态的物理软件二进
制组件在本文中被称为“黄金映像”。术语“黄金”是表示用于软件配置的最优或推荐标准或
级别的限定符。黄金映像可以被用来安装包括推荐的源组件集合的软件。

在一个实施例中,映像创建器144包括用于基于结束状态定义来创建黄金映像的
逻辑。为了创建黄金映像,映像创建器144确定由结束状态定义所定义的软件的配置级别。
例如,映像创建器144可以确定软件的基础版本?#30001;?#21738;些补丁被推荐。然后映像创建器144
生成包括包含由结束状态定义识别的源组件的二进制载荷或其它机器可读代码的黄金映
像。

映像创建器144生成用于黄金映像的载荷数据的方式可以依实施方式而变化。例
如,图5?#22659;?#20102;可以被用来创建黄金映像的不同方法。在场景502中,映像创建器从参考目标
挑选软件。例如,特定推荐桶内的一个或多个目标可能已经包括推荐的源组件集合。在这种
场景中,映像?#23435;?44可以指派这些目标中的一个充当黄金映像,或者可以将二进制载荷复
制到另一个位置。在场景504中,映像创建器从其上具有补丁的参考“烹制(cook)?#34987;?#37329;映
像。例如,如果存在被识别为推荐的附加补丁,则映像创建器144可以在测试目标上部署软
件应用的基础版本,然后应用所推荐的补丁。

一旦创建了黄金映像,则映像?#23435;?42将黄金映像映射到为其创建黄金映像的推
荐桶和相关联的目标。因此,每个推荐桶和其中的目标与定义推荐的源组件集合的特定结
束状态定义和包括包含该推荐的源组件集合的软件的物理载荷的黄金映像相关联。

结束状态和黄金映像更新

用于目标的最优配置级别可?#36816;?#26102;间改变。例如,插件、错误修复或其它补丁可以
由软件应用的供应商定期发布。为了考虑这样的更新,用于目标的特定桶的结束状态定义
和黄金映像可?#36816;?#26102;间改变。

在一个实施例中,结束状态定义和黄金映像的基础版本最初由标准化管理逻辑
140创建。在创建基础版本之后,发布的补丁在结束状态定义级别被引入,并且映像创建器
144可?#28304;?#24314;黄金映像的新版本。

图6?#22659;?#20102;随着补丁随时间?#29615;⒉级?#32467;束状态定义和对应黄金映像的更新。版本
602表示在时间T1处创建的结束状态定义的基础版本。结束状态定义的基础版本对应于软
件应用的基础版本?#30001;?#24212;用到其上的两个补丁。映像608是与由版本602定义的配置级别匹
配的黄金映像。在时间T2处,用于该软件应用的五个补丁?#29615;?#24067;。通过更新版本602以包括
附加补丁来创建结束状态定义的版本604,并且通过将附加补丁应用到映像608来创建映像
610。在时间T3处,PSU?#30001;?#20004;个补丁?#29615;?#24067;。通过将PSU和两个附加补丁添加到结束状态定
义的版本604来创建结束状态定义的版本606,并且通过将PSU和两个附加补丁应用到映像
610来创建映像612。在时间T3处,版本606表示结束状态定义的当前/最新版本,并且映像
612表示黄金映像的当前/最新版本。

图7?#22659;?#20102;黄金映像的基础版本和后续版本的创建。如前面所?#33268;?#30340;,映像的基础
版本可?#28304;?#21442;考目标直接拉取,或者通过烹制来自其上具有补丁的参考的映像。通过在基
础版本上应用新获取的补丁来创建新的映像版本。

群集组(flocking group)

为了标准化用于推荐桶内的目标的源组件集合,目标可以订阅黄金映像。订阅同
一黄金映像的一组目标在本文中被称为“群集组”。黄金映像充当群集组的领导。当黄金映
像因为改变而被修订时,订阅的目标遵循黄金映像,以跟上最新版本。

图8?#22659;?#20102;用于跨多个目标维护标准的示例过程。在802处,定义一个或多个结束
状态的集合。定义结束状态可以包括分析目标112a至112n并且将目标分组到推荐桶中,如
上文所描述的。

在804处,目标订阅特定的结束状态定义和对应的黄金映像。在一个实施例中,每
个推荐桶订阅单个结束状态定义和单个黄金映像。因此,同一推荐桶内的目标形成群集组。
组管理器146可以维护将群集组内的目标映射到特定结束状态定义的订阅数据。

在806处,结束状态定义被更新。例如,服务提供商可以发布用于与结束状态定义
相关联的特定软件应用的CPU或PSU。然后这些补丁可以被添加到结束状态定义,并且对应
的黄金映像可以被更新。

在808处,订阅结束状态定义的目标遵循该结束状态定义。例如,新发布的升级或
其它补丁被应用到同一群集组中的目标中的每个目标。因此,对黄金映像的改变被传播到
订阅的目标,从而便于大规模环境中的更新以及跨不同软件部署维护标准化的配置。

图9?#22659;?#20102;订阅映像并?#26131;?#24490;对可用的最新版本的更新的目标。映像902表示用于
在特定平台上运行的软件应用的特定发布版本的结束状态定义。映像902包括黄金映像的
多个版本。目标(多个目标)904表示订阅映像902的一个或多个目标。当映像902被更新时,
目标(多个目标)904跟随该映像,以使得目标的配置匹配映像902的配置。应用到映像902的
补丁也被传播到目标(多个目标)904中的每一个。

多映像管理

在一些情况下,可以为目标112a至112n维护多于一个黄金映像。例如,映像?#23435;?br />142可以推荐用于不同软件配置分类的不同结束状态定义,如上文所描述的。映像创建器
144可以生成不同的黄金映像,以表示每个相应的结束状态定义。然后,组管理器146可以基
于相应目标的软件配置分类自动地使每个相应目标订阅映像。附加地或可替代地,管理员
或其他用户可以手动选择要订阅映像的目标或目标组。

图10?#22659;?#20102;其中维护多个黄金映像的示例数据中心环境。映像1002表示用于第一
软件配置分类的黄金映像,映像1004表示用于第二软件配置分类的黄金映像,而映像1006
表示用于第三软件配置分类的黄金映像。目标(多个目标)1012包括适合第一软件配置分类
并且订阅黄金映像1002的一个或多个目标,目标(多个目标)1014包括适合第二软件配置分
类并且订阅黄金映像1004的一个或多个目标,而目标(多个目标)1016包括适合第三软件配
置分类并且订阅黄金映像1006的一个或多个目标。

当存在多个黄金映像时,目标遵循它们订阅的映像,而不遵循其它黄金映像。例
如,如果映像1002被更新,则黄金映像的新版本被创建。然后,目标(多个目标)1012可以应
用更新以遵循该黄金映像的新版本。但是,目标(多个目标)1014和1016不应用更新,因为它
们没有订阅映像1002。类似地,对映像1004的更新被应用到目标(多个目标)1014,而不应用
到目标(多个目标)1012和1016,并且对映像1006的更新被应用到目标(多个目标)1016,而
不应用到目标(多个目标)1012和1014。

签名生成

在一个实施例中,签名生成器148从与目标或黄金映像版本相关联的摘要信息生
成软件配置级别签名。本上下文中的“摘要信息”是指识别源组件集合的数据。例如,摘要信
息可以包括描述或以其它方式识别相应目标的特点的属性的?#34892;?#38598;合。包括在摘要中的任
何条目或修改软件安装的任何条目可以被认为是源组件。

签名生成器148可以通过挖掘和整理(collate)识别目标的源组件的目标特性(诸
如上文描述的那些目标特性)的集合来提取摘要信息。一般而言,被挖掘并且用来生成签名
的属性包括识别软件系统的基础版本和已经应用到软件的补丁的属性。

属性被整理的顺序可以依实施方式而变化。在一个实施例中,签名生成器148从应
用到目标的最外壳的属性开始。然后签名生成器148向内工作,以整理应用到元素、子元素
等的特性。作为示例,签名生成器可?#28304;?#24314;?#22336;?#20018;,该?#22336;?#20018;以描述外壳的主属性(例如,主
属性)开始,随后是识别作为目标的一部分并且在外壳内的目标组件(例如,插件或其它应
用)的属性,随后是识别应用到组件中的每个组件的子组件(例如,补丁)的属性。

在一个实施例中,签名是通过对摘要信息应用散列函数而获得的散列值。当应用
散列函数时,摘要信息充当输入到散列函数中的散列键。响应于接收到摘要信息,散列函数
将摘要信息映射到可以被用来唯一地识别摘要信息中所描述的软件源组件的散列值。对摘
要信息应用的散列函数可以依实施方式而变化。示例可以包括但不限于?#29992;?#25955;列函数和非
?#29992;?#25955;列函数。

签名映射

在一个实施例中,签名生成器148维护将签名映射到对应摘要信息的签名到摘要
映射。例如,签名生成器148可以维护散列表或其它数据结构内的映射。因此,给定特定签
名,可?#28304;?#31614;名到摘要映射确定和提取对应的软件配置级别。此外,可以确定和提取包括在
摘要信息中的各个属性或属性组。例如,对于给定的签名可以确定和提取目标类型、发布版
本、平台和/或补丁。

图11?#22659;?#20102;将签名映射到对应的软件配置描述的示例散列表。参考散列表1100,
散列值1102映射到散列表中的条目1112,该条目存储描述第一软件配置的摘要信息。类似
地,散列值1104和1106分别映射到存储对应的摘要信息的条目1114和1116。通过将散列函
数1120应用到用于每个相应目标的摘要信息来获得散列值。

黄金映像的签名标记

在一个实施例中,签名生成器148包括用于为黄金映像生成签名的逻辑。可以为单
个黄金映像生成多个签名,以区?#21482;?#37329;映像的不同版本。例如,当创建黄金映像的新版本
时,签名生成器148可以对结束状态定义应用散列函数,以生成配置级别签名。签名生成器
148可以将得到的签名映射到新的映像版本和对应的结束状态定义。这个过程可以在每次
生成新版本时继续,从而产生每个映像版本的签名标记。

图12?#22659;?#20102;已经用多个签名标记的示例黄金映像。在第一时间点处,黄金映像
1200的版本1202由映像创建器144创建。版本1202包括应用到软件系统的基础版本的两个
补丁。当映像被创建时,签名生成器148可以对与版本1202相关联的摘要信息(例如,结束状
态定义)应用散列函数,以生成签名1212。然后签名生成器148存储版本1202和签名1212之
间的映射。签名1212还可以被映射到描述或以其它方式指示映像版本1202的源组件的摘要
信息。

在第二时间点处,五个补丁可以被添加到黄金映像1200,?#28304;?#24314;版本1204。签名生
成器148可以对与版本1204相关联的更新的摘要信息应用散列函数,以生成签名1214。签名
生成器148将签名1214映射到映像版本1204和对应的摘要信息。

签名生成器148可以对黄金映像的每个新版本继续这个过程。因此,签名1216被映
射到版本1206及其对应的摘要信息。由于不同映像版本之间的不同补丁级别,签名生成器
148为每个版本生成唯一地识别相应映像版本的对应源组件的不同签名。签名可以被用来
确定群集组的?#31245;?#36981;循映像的哪个版本,如下文进一步描述的。

对于目标的签名管理

在一个实施例中,签名生成器148包括用于生成和存储用于目标112a至112n的配
置级别签名的逻辑。例如,如上文所描述的,签名生成器148可以对用于每个相应目标的摘
要信息应用散列函数,以生成和映射表示相应目标的配置级别的签名。散列值/配置级别签
名可以作为目标的特性的部分存储在目标处,和/或可以作为所收集的信息的部分存储在
储存库130中。

取决于特定实施方式,签名生成器148可以定期或按需生成签名。作为示例,代理
114a至114n可以定期地收集目标特性并且向数据收集器120发送该目标特性。在接收时,签
名生成器148可?#28304;?#30446;标特性生成配置级别签名并且将该签名作为目标特性存储在储存库
130中。因此,用于每个目标的配置级别签名可以被定期更新和存储。在另一个示例中,每当
补丁被应用到目标112a至112n中的一个时,签名生成器148可以生成签名。

基于签名的合规性查询

在一个实施例中,签名生成器148包括用于识别符合映像版本的目标的逻辑。在合
规性检查期间,签名生成器148将为映像生成的签名与为目标生成的签名进行比较。这种技
术允许快速计算合规性,从而避免在定义配置级别时所涉及的潜在大量属性之间的复杂比
较。

图13?#22659;?#20102;用于使用软件配置级别签名来执行合规性检查的示例过程。在步骤
1302处,为特定黄金映像生成一个或多个签名的集合。签名集合可以包括用于黄金映像的
不同版本的多个签名。签名集合中的每个相应签名可以基于对应映像版本的结束状态定义
来生?#26705;?#22914;上文所描述的。

在步骤1304处,为目标集合中的每个目标生成签名。在一个实施例中,该目标集合
是遵循黄金映像的群集组的一部分。每个签名可以基于相应目标的目标特性来生?#26705;?#22914;上
文所描述的。

在步骤1306处,接收检查目标集合与特定黄金映像的合规性的请求。合规性请求
可以?#29615;?#20986;,以确定多少目标当前符合黄金映像和/或确定目标中的每个目标正在遵循黄
金映像的哪个版本(如果有的话)。

响应于合规性请求,在步骤1308处,用于特定黄金映像的该一个或多个签名的集
合与为目标集合中的每个目标生成的签名进行比较。

在步骤1310处,基于签名比较来确定目标集合的合规性。如果用于目标的签名与
用于映像版本的签名之间的签名匹配,则目标遵循那个映像版本并且可以被确定为合规。
如果对于特定目标不存在匹配,则目标可以被确定为不合规。

在步骤1312处,向用户提供合规性结果。例如,合规性结果可以指示目标集合内的
目标遵循黄金映像的百分比以及总共多少目标遵循黄金映像。合规性结果还可以指示映像
特定的信息,诸如多少目标遵循每个不同的映像。还可以向用户通知任何漂移者,如下文进
一步描述的。因此,配置级别签名可以被用来快速确定合规性状态并且为订阅黄金映像的
目标更新进度。

映像生命周期概述

黄金映像及其相关联的版本在其生命期间可以经历不同的状态,因为它被用来更
新订阅的目标。例如,当?#29366;?#21457;布黄金映像的新版本时,可能需要花时间将订阅的目标移动
到新版本。目标可以?#26144;?#20999;换到新版本,以避免由应用更新或出于其它原因导致的服务中
断。为了支持这样的目标,映像的旧版本可以保?#21482;?#21160;,尽管它不是黄金映像的最新版本。
一旦不存在处于旧映像版本上的订阅的目标,则映像的那个版本可以退休。在另一个示例
中,黄金映像的新版本在?#36824;?#24067;到订阅的目标之前可以经历测试阶段。

用于黄金映像及其版本的示例生命周期状态可以包括但不限于:

·草?#31119;?#26144;像版本的初始状态。从映像版本的创建到映像版本的测试阶段,映像版
本可以保持在这个状态中。

·活动:受限:对目标的子集而不是订阅的目标的完整集合执行试验的映像测试
发布的状态。

·活动:当前:公开的映像的最新版本的状态。本上下文中的公共意味着该版本对
于所有订阅的目标可用(例如,不是在草案状态或受限状态中)。

·活动:尚未退休的映像的旧版本的状态。

·退休:映像版本的生命结束状态。当没有订阅的目标时,映像版本可?#28304;?#27963;动使
用中退休。

用于更新的映像的测试阶段

如上文所指示的,黄金映像的新版本在?#36824;?#24067;到所有订阅的映像之前可以被测
试。在测试阶段期间,订阅黄金映像的一个或多个目标的子集或某个其它测试目标集合可
以利用黄金映像的新版本来更新。测试阶段给予管理员分析测试目标上的新映像版本的机
会,以便在新版本推出到生产目标之前识别潜在的难题(problem)或其它问题(issue)。如
果遇到难题,则管理员可以尝试解决问题或者将黄金映像的新版本回滚到先前的版本。

在一个实施例中,组管理器146为每个群集组维护测试目标的列表。当接收到对黄
金映像的更新时,组管理器146向列表上的测试目标发布更新,但是不向群集组的其它?#31245;?br />发布更新。管理员或其他用户可?#28304;?#24314;和修改列表,以指定目标中的哪些目标被用作测试
目标。

用于映像版本的状态转移

图14?#22659;?#20102;用于黄金映像的版本的不同状态之间的转移。黄金映像的新版本(基
础版本或后续版本)在草案状态1402下开始。在这个状态下,用于新版本的载荷已被创建,
但是尚未变为活动的并且尚未被用来更新订阅的目标。

从草案状态1402,映像版本可以被(例如,由管理员或其他用户)提升到在活动受
限状态1404或活动当前状态1406下的活动使用。如果映像版本被提升到活动受限状态
1404,则映像版本?#29615;?#24067;到受限的测试目标集合以用于beta测试(beta testing),如上文
所描述的。一旦测试完?#26705;?#21017;映像版本可以被提升到活动当前状态1406。

当在活动当前状态1406下时,映像的新版本向所有订阅的目标公布。本上下文中
的“公布?#24065;?#21619;着映像对于所有订阅的目标可用以在更新过程中被使用。在一些情况下,通
知可以?#29615;?#36865;到订阅的目标中的一个或多个,以指示映像的新版本可用。然后订阅的目标
可以开始更新到映像的新版本的过程。映像版本保持在活动当前状态1406下,直到有更新
的(newer)映像版本被提升到这个状态。?#22791;?#26032;的映像版本被提升到活动当前状态1406时,
前任者(predecessor)被推到活动状态1408。

当在活动状态1410下时,映像版本可以支持尚未被移动到黄金映像的最当前版本
的一个或多个遵循者。例如,订阅的目标可以?#26144;?#26356;新到黄金映像的新版本直到稍后的日
期。一旦不再存在遵循特定版本的订阅映像的任何目标,则那个版本可?#28304;?#27963;动状态1410
转移到退休状态1412。

当映像版本在退休状态1412下时,所有订阅的目标已经被更新到黄金映像的后续
版本,并且没有目标遵循该退休的版本。在退休状态1412下的黄金映像的较旧版本可以被
归档或?#22659;?br />

图15?#22659;?#20102;在新映像版本的创建期间黄金映像内发生的周期。在开始时,存在黄
金映像的三个活动版本:版本1501、1502和1503。在创建后,版本1504作为草案版本开始。然
后版本1504被提升到受限状态。当在受限状态下时,映像版本1501、1502和1503保?#21482;?#21160;。
然后版本1504可以被提升为黄金映像的当前版本。在提升后,版本1503从活动当前状态被
推到活动状态。在稍后的时间点处,遵循版本1501的所有目标都可以被更新为黄金映像的
后续版本。因此,版本1501转移到退休状态。

离群目标

在一些情况下,作为群集组的一部分的目标可?#28304;?#32676;集组漂移。当补丁以不遵循
黄金映像的方式被应用、省略或移除时,目标被认为从群集漂移。在一些场景中,例如,即使
所应用的补丁不包括在黄金映像的结束状态定义中,目标也可以以自组织或紧急的方式被
修补以解决出现的问题。在其它场景中,补丁可能会回滚或丢失。在黄金映像的结束状态定
义之外被修补的目标在本文中被称为“离群”目标。在黄金映像的结束状态定义之外的补丁
在本文中被称为“漂移”补丁。

离群目标可以?#29615;?#31867;为不同的类别。第一,离群目标可以具有不包括在黄金映像
的当前版本中的附加补丁。第二,离群目标可以具有比黄金映像的当前版本更少的补丁。漂
移管理器152可以基于其分类来管理离群目标,如下文进一步详细描述的。

在一些实施例中,具有比黄金映像的当前版本更多或更少的补丁、但是遵循黄金
映像的其它活动版本的目标不?#29615;?#31867;为离群的。例如,特定目标可以遵循在活动受限状态
下或者在活动的但不是当前的状态下的目标。遵循这样的版本的目标可以被认为符合黄金
映像标准,因为黄金映像的这些版本还没有退休。

离群识别

在一个实施例中,漂移管理器152包括用于将离群目标进行识别和分类的逻辑。为
了识别离群目标,漂移管理器152可以将用于黄金映像的活动版本的软件配置级别签名与
订阅的目标的软件配置级别签名进行比较。如果没有检测到匹配,则订阅的目标可以?#29615;?br />类为离群的。漂移管理器152还可以基于漂移补丁是否已被应用或者离群目标是否丢失了
属于黄金映像的当前活动版本的补丁来对离群目标进行分类。

图16?#22659;?#20102;用于识别群集组内的离群目标的示例过程。在步骤1602处,漂移管理
器152将用于黄金映像的活动版本的软件配置级别签名与订阅的目标的软件配置级别签名
进行比较。

在步骤1604处,漂移管理器确定配置级别签名是否匹配。如果签名匹配,则订阅的
目标不是离群的,并且过程继续到步骤1610。如果签名?#40644;?#37197;,则在步骤1606处,漂移管理
器152确定是否存在黄金映像的剩余活动版本。

如果在步骤1606处确定存在订阅的目标尚未针对其进行检查的剩余活动版本,则
过程返回到步骤1602,以将用于剩余活动版本的配置级别签名与离群目标的配置级别签名
进行比较。如果所有剩余的活动版本都已经?#29615;?#26512;并且仍然不存在匹配,则过程继续到步
骤1608,并且目标?#29615;?#31867;为离群的。

在步骤1610处,漂移管理器152确定群集组中是否存在尚未?#29615;?#26512;的任何剩余的
订阅的目标。如果存在,则过程对剩余的订阅的目标重复。否则,过程结束。

漂移控制

在一个实施例中,漂移管理器152包括用于控制群集组内的漂移的逻辑。如果更新
导致订阅的目标漂移并?#20918;?#20026;离群的,则漂移管理器152可以阻止带外更新,直到其通过正
确的改变管理批准为止。例如,用户可以请求或以其它方式尝试对订阅的目标应用补丁。漂
移管理器152可以拦截更新并且确定其是否符合结束状态定义。如果更新将导致目标漂移,
则漂移管理器152可以阻止该更新并且通知数据中心管理器或其他管理员。然后,管理员可
以选择允许更新并?#20197;?#35768;目标漂移,或者阻止更新,从而维护由黄金映像表示的标准。

漂移通知

在一个实施例中,漂移管理器152包括用于在目标漂移时显示和存储通知和/或其
它指示的逻辑。通知可以指示目标已经以什么方式从群集组漂移。例如,通知可以指示目标
是否具有太多补丁、太少补丁,或者是否存在不兼容的补丁。如果目标具有一个或多个附加
的漂移补丁,则漂移管理器152可以提供识别在离群目标处被应用的漂移补丁的补丁信息。
如果目标丢失一个或多个补丁,则通知可以识别目标缺少哪些补丁。

对于给定的群集组,漂移管理器152可以向用户呈现合规性信息。合规性信息可以
显示群集组中的多少目标已漂移。合规性信息还可以呈现用于离群目标的目标信息,从而
允许用户准确地查明(pinpoint)哪个目标(哪些目标)已经从群集组漂移。用户可以向下深
究(drilldown)到特定目标,以识别导致目标(多个目标)漂移的补丁(或补丁的缺少)。

离群协调

在一个实施例中,漂移管理器152包括用于协调离群目标的逻辑。协调的过程包括
使离群目标?#25351;从?#32467;束状态定义合规。一旦目标被协调,则离群的分类可以被移除,并且目
标可以遵循黄金映像,如上文所描述的。

对于离群目标的不同分类,协调过程可以不同。根据一个实施例,当漂移由附加补
丁引起时,漂移管理器152将这些补丁应用到黄金映像的当前版本,?#28304;?#24314;黄金映像的新版
本。用于群集组的结束状态定义也被更新,以包括附加的补丁。一旦黄金映像的新版本?#36824;?br />布,则可以用附加的补丁更新群集组的每个?#31245;薄?#22240;此,在离群目标处应用的自组织或紧急
补丁可以被传播到群集组的其它?#31245;薄?br />

在一个实施例中,当漂移由丢失补丁引起时,漂移管理器152通过将丢失的补丁应
用到离群目标来协调离群目标。例如,当补丁在其它改变管理活动期间回滚或丢失时,订阅
的目标可以开始漂移。为了应用丢失的补丁,可以用映像的当前版本重写(overwrite)离群
目标的软件副本。

图17?#22659;?#20102;基于离群目标如何分类来协调离群目标的不同方法。在步骤1702处,
分析离群目标以确定漂移由附加的补丁还是丢失的补丁引起。例如,漂移管理器152可以分
析离群目标的目标特性,以确定哪些补丁已经在目标处被应用。漂移管理器152可以将所应
用的补丁与用于群集组的结束状态定义进行比较,以确定漂移的原因。

如果漂移由附加的漂移补丁(或附加的补丁和丢失的补丁的组合)引起,则在步骤
1704处,创建来自离群的新的映像版本并且将该新的映像版本添加到黄金标准。新映像版
本包括导致离群目标漂移的附加补丁以及离群目标丢失的补丁(如果有的话)。如果漂移由
丢失的补丁而不是附加的补丁引起,则在步骤1706处,用映像的当前版本的重写离群目标。

用新的更新协调离群

在一些实施例中,可以允许离群目标漂移,直到创建了黄金映像的新版本。例如,
管理员可以以?#29615;?#21512;结束状态定义的方式在特定软件应用处应用自组织或紧急补丁。漂移
管理器152可以允许软件应用继续在带外操作,直到从供应商或其它服务提供商发布软件
应用的新更新。一旦更新?#29615;?#24067;,则漂移管理器152可以将离群目标协调回受管理的映像版
本。

图18?#22659;?#20102;合并离群目标的漂移补丁的示例映像更新。在1802处,V2是黄金映像
的当前版本。响应于供应商或服务提供商推荐更新,映像创建器144在1804处创建黄金映像
的新版本。为了创建新的映像版本V3,除了来自服务提供商的推荐补丁之外,映像创建器
144还应用来自一个或多个离群目标的一个或多个漂移补丁的集合。映像版本V3被添加到
黄金映像,并且在1806处可以被提升为活动状态。

目标添加

在一些情况下,新的目标或目标组可以在黄金映像已被创建并且订阅已被形成之
后被添加到系统100并在系统100内初始化。当新目标被添加时,映像?#23435;?42可以分析目标
的属性(例如,主属性和/或?#38382;?#24615;),以对目标进行分类并且为新目标确定要加入的群集
组。例如,当接收到初始化目标的请求时,新目标可以被添加到共享相同目标类型、软件发
布版本和平台的目标的群集组。一旦被添加到群集组,则新目标可以被更新,以匹配黄金映
像的最新版本。如果目标不适合任何其它群集组,则可以形成新的群集组。

在一个实施例中,用于新初始化的目标的漂移信息可以由漂移管理器152生成和
显示。响应于接收到初始化新目标的请求,漂移管理器152可以将新目标的配置级别与在用
于新目标被添加到的群集组的结束状态定义中指定的源组件进行比较。如果漂移管理器
152确定新目标不满足用于该群集组的推荐的结束状态,则漂移管理器152可以生成和显示
指示新目标不同于标准配置级别的信息。漂移管理器还可以指示新目标以什么方式不同于
标准配置级别。例如,漂移管理器152可以显示新目标的补丁级别与和结束状态定义相关联
的推荐补丁级别的差异。

示例映像管理接口

在一个实施例中,映像?#23435;?42提供集中式接口和工作流程集合,用户可以通过集
成式接口和工作流程集合来最小化配置污染以及管理系统100内的标准。集中式接口可以
包括识别目标112a至112n的当前配置级别和/或推荐不同配置级别的控制面板或其它用户
接口元素的集合。

图19A至19F描绘了可以被用来管理标准化过程的示例控制面板和其它接口。图19
?#22659;?#20102;控制面板1900,其显示数据中心内的软件配置的当前状态以及同一数据中心内的软
件配置的推荐状态。由控制面板1900绘出的显示内容是在数据库软件安装的背景下,并且
指示数据中心内数据库安装的总数。然而,除了显示用于数据库安装的推荐之外或作为显
示用于数据库安装的推荐的替代,控制面板可以被用来显示用于其它类型的软件安装的配
置级别。

饼图1902?#22659;?#20102;数据中心内当前安装的软件配置的总数。饼图1902的每个切片对
应于不同的软件配置级别。饼图1902的每个切片还表示数据中心内在对应软件配置级别配
置的一个或多个目标。

饼图1904?#22659;?#20102;数据中心内的软件配置的推荐数量。饼图1904的每个切片对应于
不同的推荐配置级别和结束状态定义。饼图1904的每个切片还表示?#29615;?#32452;在对应的推荐桶
内的一个或多个目标。用户可以选择按钮1906来查看用于推荐桶中的每个推荐桶的推荐的
结束状态定义和黄金映像。

图19B?#22659;?#20102;控制面板1910,其显示用于不同推荐桶的推荐结束状态定义。在控制
面板1910内,用户可以导航以查看数据中心的分析,该数据中心的分析呈?#31181;?#22914;控制面板
1900中所绘出的显示内容。用户还可以查看和分类推荐的黄金映像和结束状态定义。用户
可以基于推荐创建新的黄金映像,或者可以精炼推荐标准以生成新的推荐。

图19C?#22659;?#20102;控制面板1920,其显示用于监控映像和订阅的?#31245;?#30340;集中式接口。该
接口允许用户查看数据中心内遵循特定黄金映像的订阅的目标和活动部署的总数。该接口
还绘出了黄金映像的活动版本的数量以及符合黄金映像的订阅的目标的百分比。

控制面板1920还绘出了用于黄金映像的组的统计数据。例如,尽管对于12.1.0.1
发布存在四个分开的黄金映像,但是也为12.1.0.1发?#38469;境?#20102;订阅的目标的总数、合规性
百分比以及其它组合的统计数据。附加地,控制面板1920描绘了用于数据中心环境内的黄
金映像的完整集合的订阅的目标、部署、活动版本的总数和合规性百分比。

图19D?#22659;?#20102;控制面板1930,其显示关于选择的黄金映像及其版本的信息。控制面
板1930识别黄金映像的哪个版本是当前的以及黄金映像的哪些较旧的版本仍然活动。控制
面板1930还描绘了多少部署遵循黄金映像的每个活动版本以及多少部署是离群的。

图19E?#22659;?#20102;控制面板1940,其显示用于管理黄金映像内的不同映像版本的状态
的选项。控制面板1940允许用户向下深究到与黄金映像相关联的不同版本和订阅中。控制
面板1940还允许用户管理新创建的映像版本的状态。例如,用户可?#28304;?#24314;、编辑或?#22659;?#40644;金
映像的草案版本。用户还可以将映像版本提升为活动受限或活动当前状态,或者将受限版
本?#25351;?#21040;草案状态。

图19F?#22659;?#20102;控制面板1950,其显示用于管理订阅的目标的动作中心。从控制面板
1950,用户可以执行包括添?#26377;魯稍薄?#26356;新不合规?#31245;薄?#22788;理离群目标以及查看目标的更新
状态的动作。

上面的控制面板允许用户理解在任何给定时间点处环境内的配置污染和标准化
的状态。控制面板?#22266;?#20379;用于跟踪库存和趋势的图表和其它接口元素,以帮助管理员理解
数据中心环境内的蔓延(sprawl)和进行中的变化。

硬件概述

根据一个实施例,本文所描述的技术由一个或多个专用计算设备实现。专用计算
设备可以是硬连线的以执行技术,或者可以包括诸如被永久性地编程以执行技术的一个或
多个专用集成电路(ASIC)或现场可编程门阵列(FPGA)的数字电?#30001;?#22791;,或者可以包括被编
程为按照固件、存储器、其它存储装置或者其组合中的程序指令执行技术的一个或多个通
用硬件处理器。这样的专用计算设备还可以将定制的硬连线逻辑、ASIC或FPGA与定制的编
程结合来实现技术。专用计算设备可以是桌上型计算机系统、便携式计算机系统、手持式设
备、联网设备或者结合硬连线和/或程序逻辑来实现技术的任何其它设备。

例如,图20是?#22659;?#21487;以在其上实现本发明的实施例的计算机系统2000的框图。计
算机系统2000包括总线2002或者用于传送信息的其它通信机制,以及与总线2002耦接以用
于处理信息的硬件处理器2004。硬件处理器2004可以是例如通用微处理器。

计算机系统2000还包括耦接到总线2002以用于存储信息和要由处理器2004执行
的指令的主存储器2006,诸如随机存取存储器(RAM)或其它动态存储设备。主存储器2006还
可以用于在要由处理器2004执行的指令的执行期间存储临时变量或其它中间信息。当被存
储在处理器2004可访问的非暂态存储介质中时,这样的指令使计算机系统2000成为被定制
以执行指令中指定的操作的专用机器。

计算机系统2000还包括耦接到总线2002以用于为处理器2004存储静态信息和指
令的只读存储器(ROM)2008或者其它静态存储设备。诸如磁盘、光盘或固态驱动器之类的存
储设备2010被提供并且耦接到总线2002,以用于存储信息和指令。

计算机系统2000可以经由总线2002耦接到诸如液晶显示器(LCD)或发光二极管
(LED)显示器之类的显示器2012以用于向计算机用户显示信息。包括字母数字和其它键的
输入设备2014耦接到总线2002,以用于向处理器2004传送信息和命令选择。另一种类型的
用户输入设备是诸如鼠标、轨迹球或者游标方向键之类的游标控制器2016,以用于向处理
器2004传送方向信息和命令选择以及用于控制显示器2012上的游标移动。这种输入设备通
常具有允许设备指定平面中的位置的在两个轴(第一个轴(例如,x)和第二个轴(例如,y))
上的两个自由度。

计算机系统2000可以使用与计算机系统结合使得计算机系统2000成为专用机器
或者将计算机系统2000编程为专用机器的定制的硬连线逻辑、一个或多个ASIC或FPGA、固
件和/或程序逻辑来实现本文所描述的技术。根据一个实施例,本文的技术由计算机系统
2000响应于处理器2004执行包含在主存储器2006中的一条或多条指令的一个或多个序列
而执行。这样的指令可?#28304;?#35832;如存储设备2010之类的另一存储介?#35782;?#21462;到主存储器2006
中。包含在主存储器2006中的指令序列的执行使处理器2004执行本文所描述的过程步骤。
在可替代的实施例中,硬连线的电路系统可?#28304;?#26367;软件指令或者与软件指令结合使用。

如在本文所使用的,术语“存储介质”指存储使机器以特定方式操作的数据和/或
指令的任何非暂态介质。这样的存储介质可以包括非?#36164;?#24615;介质和/或?#36164;?#24615;介质。非?#36164;?br />性介质包括例如光盘或磁盘,诸如存储设备2010。?#36164;?#24615;介质包括动态存储器,诸如主存储
器2006。存储介质的常见形式包括例如软盘、柔性盘、硬盘、固态驱动器、磁带,或者任何其
它磁性数据存储介质、CD-ROM、任何其它光学数据存储介质、具有孔的图案的任何物理介
质、RAM、PROM以及EPROM、FLASH-EPROM、NVRAM、任何其它存储器芯片或盒式磁带。

如本文所使用的,术语“逻辑”包括被配置为执行一个或多个功能或动作和/或引
起来自另一逻辑、方法和/或系统的一个或多个功能或动作的计算机或电气硬件组件(多个
电气硬件组件)、固件、存储指令的非暂态计算机可读介质和/或这些组件的组合。逻辑可以
包括由可执行代码控制的微处理器、离散逻辑(例如ASIC)、模拟电路、数字电路、编程的逻
辑器件、包含当被执行时执行算法的指令的存储器设备等等。逻辑可以包括一个或多个门、
门的组合或其它电路组件。在描述多个逻辑单元的地方,将多个逻辑单元并入一个物理逻
辑组件中可以是可能的。类似地,在描述单个逻辑单元的地方,在多个物理逻辑组件之间分
布单个逻辑单元可以是可能的。

存储介质不同于传输介?#23454;?#26159;可以与其结合使用。传输介质参与在存储介质之间
传送信息。例如,传输介质包括同轴电缆、铜线和光纤,这些同轴电缆、铜线和光纤包括包含
总线2002的线。传输介质还可以采取声波或光波的形式,诸如在无线电波数据通信和红外
数据通信中生成的那些声波或光波。

将一条或多条指令的一个或多个序列承载到处理器2004以供执行可以涉及各种
形式的介质。例如,指令最初可以被承载在远程计算机的磁盘或固态驱动器上。远程计算机
可以把指令加载到其动态存储器中并且使用调制解调器经电话线发送指令。计算机系统
2000?#38236;?#30340;调制解调器可以接收电话线上的数据并且使用红外发射器把数据转换成红外
信号。红外检测器可以接收红外信号中承载的数据,而?#23454;?#30340;电路系统可以把数据放在总
线2002上。总线2002把数据承载到主存储器2006,处理器2004从主存储器2006检索指令并
且执行指令。由主存储器2006接收的指令可以可选地在由处理器2004执行之前或之后被存
储在存储设备2010上。

计算机系统2000还包括耦接到总线2002的通信接口2018。通信接口2018提供耦接
到网络链路2020的双向数据通信,其中网络链路2020连接到局域网2022。例如,通信接口
2018可以是提供到对应类型的电话线的数据通信连接的综合业务数字网络(ISDN)卡、线缆
调制解调器、卫星调制解调器或调制解调器。作为另一个示例,通信接口2018可以是提供到
兼容的局域网(LAN)的数据通信连接的LAN卡。无线链路也可以被实现。在任何这样的实现
中,通信接口2018发送和接收承载表示各种类型的信息的数字数据流的电信号、电磁信号
或光信号。

网络链路2020通常通过一个或多个网络提供到其它数据设备的数据通信。例如,
网络链路2020可以通过局域网2022提供到主机计算机2024或者到由互联网服务提供商
(ISP)2026运营的数据设备的连接。ISP 2026又通过现在通常被称为“因特网”2028的全球
分组数据通信网络提供数据通信服务。局域网2022和因特网2028两者都使用承载数字数据
流的电信号、电磁信号或光信号。通过各种网络的信号以及在网络链路2020上并且通过通
信接口2018的信号是传输介质的示例形式,其中这些信号把数字数据承载到计算机系统
2000或者承载来自计算机系统2000的数字数据。

计算机系统2000可以通过网络(多个网络)、网络链路2020和通信接口2018发送消
息和接收包括程序代码的数据。在因特网示例中,服务器2030可以通过因特网2028、ISP
2026、局域网2022和通信接口2018传送对应用程序的请求代码。

接收的代码可以由处理器2004在它被接收到时执行,和/或被存储在存储设备
2010或其它非?#36164;?#24615;存储装置中以供以后执行。

云计算概述

本文所描述的技术是使用一个或多个处理解决方案实现的,该一个或多个处理解
决方案的示例包括分布式系统、集群计算系统和云计算系统。在实施例中,系统100是云计
算系统的一部分。云计算系统实现以下的一个或多个:云存储、云处理、云通信和任何其它
类型的云计算服务。此外,云计算系统可以按现使用?#25351;?#36153;(pay-for-what-you-use-as-
you-use-it)模型操作、按固定订阅模型操作等。在这个实施例中,归因于系统100或归因于
本描述内的其它实体的功能中的任何部分(或全部)可经由在云计算系统处暴露的接口来
控制。

扩展和可替代物

在前面的说明书中,参考依实施方式不同的许多具体?#38468;?#25551;述了本发明的实施
例。因此,说明书?#36879;酵加Φ币运?#26126;性意义而不是限制性意义来考虑。本发明?#27573;?#30340;唯一且
排他的指示物以及申请人意图要作为本发明?#27573;?#30340;是以权利要求发布的具体形式从本申
请发布的权利要求集合的字面和等价?#27573;В?#21253;括任何后续补正。

关于本文
本文标题:映像的漂移管理.pdf
链接地址:http://www.pqiex.tw/p-6091753.html
关于我们 - 网站声明 - 网?#38236;?#22270; - 资源地图 - 友情链接 - 网站客服 - 联系我们

[email protected] 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备17046363号-1 
 


收起
展开
平码五不中公式规律 上海快三开奖走势图一定牛 快三河南走势图豹子遗漏 金堂乐翻天官网 贵州施秉开什么店赚钱 老快3历史开奖结果查询 内蒙古时时昨天开奖结果 葫芦兄弟游戏破解版 老虎机咋玩 万喜堂娱乐 AG百搭二王秘诀