CN101512507A - 动态配置、分配和部署计算*** - Google Patents

动态配置、分配和部署计算*** Download PDF

Info

Publication number
CN101512507A
CN101512507A CNA2007800325105A CN200780032510A CN101512507A CN 101512507 A CN101512507 A CN 101512507A CN A2007800325105 A CNA2007800325105 A CN A2007800325105A CN 200780032510 A CN200780032510 A CN 200780032510A CN 101512507 A CN101512507 A CN 101512507A
Authority
CN
China
Prior art keywords
record
comparison
office
package
flavor
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
CNA2007800325105A
Other languages
English (en)
Other versions
CN101512507B (zh
Inventor
C-M·林
S·周
D·南丹
J·L·埃尔伯特森
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN101512507A publication Critical patent/CN101512507A/zh
Application granted granted Critical
Publication of CN101512507B publication Critical patent/CN101512507B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • 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/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

计算***可基于用户要求动态配置、分配和部署。例如,用户可请求用于动态配置、分配和部署的多个服务器。各实施例向用户提供一种使用诸如一服务器簇的一个或多个计算***来测试代码和程序、调试代码和程序、和/或执行其它配置和测试操作的快速和高效的方法。预订***可根据用户要求用必需代码和/或内容动态配置。一旦预订到期,预订的***簇就可返回到可用池,从而使被返回的***能针对后续预订使用。

Description

动态配置、分配和部署计算***
背景
在许多(如果不是大多数)业务模型的日常操作中,技术已变成一组成部分。一些业务模型在日常操作中依赖于大量的计算***;常常被称为企业设置。当前,许多管理员和相关联的技术支持都有配置和部署每个计算***的困难且常常耗时的工作的任务。例如,管理员和技术支持会花很多时日来为一机构设立和配置服务器场。此外,在特定情形中,先前配置的计算***可能需要针对特定用途而重新配置。该重新配置与初始部署相比所花的时间会一样长或更长。这是一个低效且昂贵的过程。
一示例用来说明配置和部署若干计算***的这种低效、昂贵、且在许多情形中麻烦的过程。在该示例中,测试人员需要复制服务器簇来执行内容测试。测试人员首先需要呼入该复制请求或发出复制请求的电子邮件。在接收到该请求之后,***工程师搜索满足该请求的可用服务器。如果有请求数目的服务器可用,则***工程师根据配置请求重建服务器,并向相关各方发出状态电子邮件(或进行呼叫)。
接着,***工程师不得不手动重建新的machine(机器).xml文件,包括添加新的服务器名。***工程师然后拉取特定簇的运送文件。运送文件可被描述为包括已被部署到某一特定簇和/或环境的代码和内容工作的文件或程序。***工程师然后使用部署工具(例如命令行分派程序)来将相关位部署到服务器上。
一旦每个服务器都已被成功配置和部署之后,***工程师就向相关各方发送确认电子邮件或进行呼叫,包括一旦不再需要服务器就通知工程师的请求。雪上加霜的是,***工程师没有跟踪与特定配置和部署相关联的所有信息的简单方法。因而,配置和部署多个计算***的当前技术水平通常需要许多工时并且会是昂贵和易于出错的过程。
概述
提供本概述以便以简化形式介绍将在以下的详细描述中进一步描述的一些概念。该概述不旨在标识所要求保护的主题的关键特征或本质特征,也不旨在用于帮助确定所要求保护的主题的范围。
提供了基于用户要求和/或输入动态配置、分配和/或部署一个或多个计算***的多个实施例。预订***可根据用户要求用必需代码和/或内容动态配置。例如,可根据用户请求动态配置、分配和部署多个服务器。该动态部署的服务器可用来快速和高效地测试代码和程序、调试代码和程序、和/或执行其它配置和测试操作。
一旦预订到期,预订***簇就可返回到可用池,从而使被返回的***能被针对后续预订重新配置、重新分配、和/或重新部署。例如,服务器可从一个配置重新配置到一不同配置。服务器还可从一种服务类型重新分配到一种不同服务类型。在各个实施例中,可针对特定使用要求预订比如服务器的计算***和/或将其预订指定时间量。基于预订要求,计算***可被动态配置成在预订期保持一特定配置。
通过阅读以下详细描述和审阅相关联附图,这些和其他特征和优点将是显而易见的。可以理解,前述一般描述和以下详细描述均仅是说明性,且不限制所要求保护的本发明。
附图简述
图1示出计算网络的框图。
图2是示出多个表格的示图。
图3A-3B示出一个或多个服务计算机的配置、分配和部署的流程图,
图4A-4I示出网络和一个或多个服务计算机的配置、分配和部署的功能框图。
图5A-5C示出用户界面的各个实例。
图6是示出多个表格的示图。
图7是示出用于实现本文中所述的各个实施例的计算环境的框图。
详细描述
提供了在网络中动态配置、分配和/或部署一个或多个计算环境的多个实施例。在一实施例中,用户可预订一服务器簇,其中该簇根据用户要求动态配置、分配和部署。各实施例向用户提供一种使用诸如一服务器簇的一个或多个计算***来测试代码和程序、调试代码和程序、和/或执行其它配置和测试操作的快速和高效的方法。例如,可根据一期望实现以特定部署细节预订或请求多个服务器。该多个服务器然后可从一公用池中分配。一旦分配,该多个服务器就可通过根据所请求的部署细节安装操作***(OS)、中间件、和/或测试位来配置。经配置的服务器然后可及时部署以赶上预订的开始时间。任何必要的通知和状态信息可被自动提供给一个或多个用户以与所预订簇成功交互(例如用于测试、调试等)。
图1是根据一实施例的计算网络100的示图。如下所述,计算网络100的组件被配置成并可用来在网络100或另一网络中动态配置、分配和/或部署一个或多个计算***。例如,计算网络100的组件被配置成并可用来在网络100中配置、分配和/或部署***池(例如***池102、***池104)的一个或多个***。此外,这些组件可被用来针对一个或多个任务预订一个或多个计算***并将其预订所需时间量。
计算网络100的组件被进一步配置成并可用来在网络100或另一网络中动态地重新配置、重新分配和/或重新部署一个或多个计算***。如在本文中使用地,计算***指任一计算设备或***,包括服务器、台式机、手持式计算机、膝上型计算机、以及其它计算设备和***。如在本文中使用地,术语“网络”包括传送和处理信息的计算设备的任何配置,并可被实现为有线网络、无线网络、和/或有线和无线网络的组合。尽管图1示出一网络化配置,但其它配置也是可用的。
如图1所示,网络100包括网络A和网络B。如下所述,一个或多个web组件和其它组件与网络100相关联,包括网络A和网络B。网络A和网络B包括多个组件,它们被配置成提供来自一个或多个***池102和104的多个计算***(诸如来自服务器池的一个或多个服务器)的动态配置、分配和/或部署。尽管各个组件被示为包括在网络100中,但各个组件能以其它方式放置和/或在一个或多个网络之间共享。此外,网络100可包括更多或更少数目的组件。
在一实施例中,网络A和网络B经由存储区网络(SAN)通信。SAN被配置成使软件库计算机用户组(share)保持同步。SAN被配置成使数据和其它信息存储可从计算***(例如服务器)去耦并直接附连到网络100。通过共享网络100上的存储,SAN启用了高度可缩放和灵活的存储资源分配、高效率的备份方案、以及更佳的存储利用率。
网络A和网络B各自分别包括软件库106和108。在一实施例中,软件库106和108包括可被访问和使用以配置计算***的文件、程序包、版本和/或其它数据/信息。即,软件库被配置为可被访问以配置计算***的中央储存库或参考资料库(reference),但并不受限于此。网络A和网络B各自还可分别包括操作***服务110和112。操作***服务110和12被配置成在不同时间执行不同任务,如下所述。例如,操作***服务110和112被配置成执行部署步骤、执行***维护、跟踪预订状态、将服务器返回到服务器池、开始并继续配置步骤、发送通知等。
在一实施例中,操作***服务110和112被配置成执行所需的一个或多个部署步骤(如下所述)。操作***服务110和112对第一数目的部署步骤调用数据库122和126中的存储过程。操作***服务110和112包括实现其余部署步骤(例如分派和添加用户)的功能。操作***服务110和112还发出代理调用以管理预订状态、部署状态、可用性状态,并跟踪数据库114中的状态改变(例如预订到期、新作出的预订、部署步骤完成等)。操作***服务110和112被进一步配置成发送通知,包括但不限于:开始预订;到预订到期尚余24小时或预订到期;对预订的部署开始、完成或出错;向软件库108推送新BUILD(编译)版本(例如OFFICE BUILD版本);在数据库114中维护BUILD版本的条目;以及清除与文件共享相关联的machine.xml和运送文件的积累。
操作***服务110和112被进一步配置成通过周期性地查询诸如数据库114的数据库判定是否有任何任务要执行。操作***服务110和112使用例如代理类经由web服务116执行这些查询。操作***服务110和112还可经由web服务116修改数据库114中的数据和其它信息。Web服务被配置成处理网络100的各个组件之间的通信,诸如操作***服务110和112与数据库114之间的通信。尽管web服务116被示为与网络A和网络B通信,但并不受限于此。
在一实施例中,web服务116包括以下函数,但并不受限于此:
DoDeploymentSteps(int iResvID,int iDeploymentStepFlags)-调用prc_do_depl_steps以设置预订的未决部署步骤并将其预订状态设定为部署。
ScheduleEvent(string strTestServerName,string strEventName)-通过调用sp_ins_event_schedule_IPO调度一事件。
CreateResv(...)-通过调用prc_create_resv创建一新预订。输入对应于prc_create_resv的参数。返回新作出的预订的ID。
IsClusterAvailNow(int ResvID)-通过调用prc_is_cluster_avail_now返回一布尔值,指示是否可立即开始对所指预订的部署。输入是所指预订的ID。
CancelResv(int ResvID)-通过调用prc_cancel_resv取消预订。输入是要取消的预订的ID。
GetResvInfo(int ResvID)-通过调用prc_get_resv_info返回有关预订的信息。所返回记录集中的字段对应于tblResvs中的列。输入是所指预订的ID。
UpdateResvInfo(intResvID,...)-通过调用prc_update_resv_info更新有关tblResvs中预订的信息。输入是所指预订的ID,于是对应于tblResvs中的列。
GetServerAvailCount(int iDomainID,DateTime dtStart,DateTime dtEnd)-通过调用prc_get_server_avail_count_info返回域中在一日期范围可用的服务器池服务器的数量。输入是所指域的域ID、日期范围的开始日期、日期范围的结束日期。
GetShipmentFileList()-通过查询CMDB返回可用运送文件的记录集以供dispatch.exe使用。
GetOfficeBuilds()-通过调用prc_get_office_builds返回可用公开OFFICEBuilds版本的列表,以供部署到预订簇。
GetExpiredResvs()-通过调用prc_get_expired_resvs获取到期预订ID的列表。
GetNewResvs()-通过调用prc_get_new_resvs获取新预订ID的列表。
继续参看图1,web服务116包括用户界面118。用户界面118可用来与网络100的组件交互。例如,用户可使用用户界面118和web服务116来访问存储在数据库114中的各个过程以创建和管理预订,并查看预订和可用性状态。在一实施例中,用户界面118由三个页面构成:主页、新预订(New Reservation)/编辑预订页面(Edit Reservation)、以及我的预订(My Reservations)/管理页面(参见图5A-5C)。用户界面118被配置成经由对web访问116的调用查询和更新数据。用户使用用户界面118提交的数据被储存在数据库114中。
数据库114包括完成一个或多个计算***的配置、分配和/或部署(比如多个测试服务器的配置、分配和/或部署)所需的信息。数据库114可包括以下进一步描述的预订细节和状态、部署细节和状态、可用性细节和状态等。例如,数据库114可包括诸如服务器池中服务器的数量、服务器名、服务器类型(type)、服务器角色(role)、服务器预订开始/结束时间、过往预订、服务器部署选项的信息以及其它关联信息。尽管数据库114被示为包括为网络A的一部分,但在替换实施例中网络B也可包括类似数据库。
继续参考图1,网络A包括多个脚本120和一个关联数据库122。网络B也包括多个脚本124和一个关联数据库126。***池102和104中的各个服务器也可包括多个脚本,如下所述。脚本包括用于执行一个或多个部署过程或步骤的批量脚本,如下所述。例如,每个脚本可与一个事件相关联。这些关联和其它事件数据可被储存在数据库122和126中。当所调度时间的事件发生时,可执行与该事件相关联的脚本。
在一实施例中,这些脚本包括但不限于:
OS安装脚本(InstallOS.bat)-安装一OS并将服务器加入(join)一域。代码可从INETNUKE1.bat和INETNUKE2.bat共享。
调试工具安装脚本(InstallDebuggingTools.bat)-安装针对预订的调试工具。
类型脚本包括:
i.IIS.bat-安装软件、设定配置设置以创建一web服务器。
ii.SQL.bat-安装软件、设定配置设置以创建一SQL服务器。
iii.SEA.bat-安装软件、设定配置设置以创建一搜索服务器。
iv.CDS.bat-安装软件、设定配置设置以创建一内容服务器。
角色脚本包括:
i.IIS-A WS1.bat-对匿名访问的AWS web服务在IIS盒上安装软件、设定配置设置
ii.IIS-A WS2.bat-对带通行证认证的AWS服务在IIS服务器上安装软件、设定配置设置
iii.IIS-Redir.bat-对OFFICE重定向服务和客户机/服务器重定向服务在IIS服务器上安装软件、设定配置设置
iv.IIS-R&R.bat-对OFFICE研究和参考服务在IIS服务器上安装软件、设定配置设置
v.SQL-AWS.bat-对AWS服务在SQL服务器上安装软件、设定配置设置
vi.CDS-R&R.bat-对R&R服务在CDS服务器上安装软件、设定配置设置
vii.CDS-Search.bat-对AWS服务在CDS服务器上安装软件、设定配置设置
viii.IIS-IPOTool.bat-对IPO工具前端在IIS服务器上安装软件、设定配置设置
ix.IIS-IPOservice.bat-对IPO工具服务在IIS服务器上安装软件、设定配置设置
x.SQL-IPOTools.bat-对IPO工具在SQL服务器上安装软件、设定配置设置
对计算***(例如数据中心服务计算机)而言基于一种类型具有不同硬件配置并非是不常见的。例如,SQL服务器与web服务器相比通常具有更大的硬盘。不同的硬件配置在比如分区设置的设立时会需要不同的配置。部分地由于这些硬件差异,将具有一种类型的硬件配置的***用作另一种类型的***会是困难的。因而,在一实施例中,在***池102和104中区分并集聚具有类似硬件配置的***。
在一实施例中,可根据所请求类型配置***。例如,通用服务器类型包括SQL服务器、内容服务器和web服务器。在设立过程期间,相同类型的***可安装有不同的中层软件,其部分地是由于要主存的服务的。例如,一种类型的AWS web前端安装有通行证,而另一AWS web服务器不需要通行证。因而,动态服务分配和设立过程(例如NNP过程)可根据对关联预订的主存服务将不同中层组件应用于同种类型的***。
如在本文中使用地,“类型”指可安装在计算***上的一种平台软件。“角色”指关联计算***的功能。示例性角色包括但不限于:FE-AWS1,指用于匿名访问的AWS web服务的前端服务器;FE-AWS2,指用于带通行证认证的AWS服务的前端服务器;FE-Redir,指用于OFFICE重定向服务和客户机/服务器重定向定位的前端服务器;FE-R&R,指用于OFFICE研究和参考服务的前端服务器;SQL-AWS,指用于AWS服务的后端SQL服务器;CDS-R&R,指用于R&R服务的内容服务器;CDS-搜索,指用于AWS服务的搜索服务器;FE-IPOTool,指用于IPO工具的web服务器;FE-IPOservice,指用于IPO工具的服务器;以及SQL-IPOTool,指用于IPO工具的SQL服务器。
角色的第一部分(短划线之前)是类型,第二部分(短划线之后)指示它可主存的服务。NNP脚本可针对每个服务器类型和角色调制。因而,每个角色可与一种类型(例如IIS(Web)、SQL(数据库)、CDS(内容)、SEA(搜索))相关联。此外,计算***可承担一个以上角色,但在特定情形中,每个这样的角色具有相同类型。例如,测试计算***可承担SQL-AWS1和SQL-AWS2角色,而不是IIS-AWS1和SQL-AWS1角色。
动态配置和分配也可指其中相似类型的计算***可用来安装不同服务(比如OFFICE服务)的情形。此外,计算***的角色针对不同预订可随时改变,并可取决于其动态配置和分配。作为示例,在一预订中可主存AWS服务的前端服务器在另一预订中可作为R&R服务器。machine.xml文件可被修改以支持这样的部署。machine.xml文件可被描述为定义哪些机器接收哪些程序包和特定服务配置的XML格式文件。如下所述,machine.xml文件可由分派组件使用以根据所需实现执行部署。该分派组件被配置成控制程序包、服务在诸如一个或多个远程服务器的远程计算***上的安装,以及运行时参数在其上的配置。因而,角色可用来指示根据预订应用于一类型的计算***所需的配置和代码(例如OFFICE)。
根据一实施例并使用类型和角色的概念,在部署到计算***时有七个步骤,其包括但不限于:1.OS安装;2.调试工具安装;3.类型应用;4.角色应用;5.Hotfix应用;6.分派;以及7.添加用户。各部署步骤各自具有相应的部署阶段,包括附加部署阶段,其包括但不限于:0.尚未开始;1.OS安装;2.调试工具安装;3.类型应用;4.角色应用;5.Hotfix应用;6.分派;7.添加用户;以及8.完成。
部署步骤可用多个部署标记跟踪。在一实施例中,部署标记值对应于2的最初7个幂。下表示出部署标记值和相应的部署步骤。
                 表格
部署步骤                      标记值
OS安装                        2^0=1
调试工具安装                  2^1=2
类型应用                      2^2=4
角色应用                      2^3=8
Hotfix应用                    2^4=16
分派                          2^5=32
添加用户                      2^6=64
如上所述,各个计算***可能不必进行所有的7个部署步骤。部署标记可用来用单个值指示在预订中应用于计算***的所有部署步骤。例如,所有的7个部署步骤可通过使对应于所有的7个部署步骤的标记相加来指示。1+2+4+8+16+32+64=127。如果不需要调试工具安装步骤,则这可用值1+4+8+16+32+64=125指示。
在一实施例中,有各种对应于部署步骤的脚本,这些包括但不限于:1.OS安装脚本用来在预订时在各个计算***上执行代码;2.调试工具安装脚本用来在预订时在各个计算***上执行代码;3.类型应用脚本对应于根据各个类型执行不同代码的脚本;4.角色应用脚本对应于根据各个角色执行不同代码的脚本;以及5.Hotfix应用脚本用来在预订时在各个计算***上执行代码。
此外,如上所述,每个脚本可与数据库122和126中的一事件相关联。事件可由操作***服务110或112针对特定计算***调度。操作***110或112被配置成调用相应数据库122和126中的存储过程以调度相关联事件。当到了所调度事件的时间时,与该事件相关联的脚本由操作***服务110或112推送到目标计算***上并执行。即,各个脚本被配置成在部署有该脚本的计算***上本地运行。当与所调度事件相关联的脚本执行时,脚本执行开始时间、结束时间、成功/失败状态、错误代码等可被写入关联数据库122或126。脚本执行数据然后由操作***服务110或112通过代理web服务116推送到数据库114。
如上所述,数据库114用作与一个或多个计算***的配置、分配和/或部署相关联的信息的储存库。在一实施例中,数据库114储存提供测试服务器簇的动态部署所需的预订信息。如下所述,数据库114还维护多个状态标识符,诸如:整个预订的预订状态、预订中每个计算***的部署状态、以及***池中每个计算***的可用性状态,但不受限于此。
预订信息包括但不限于:预订开始和结束日期;预订类型(例如:基本、OFFICE BUILD、专用版本、复制簇);簇预订中***的数量;预订中每个***的角色和类型;与预订相关联的任一machine.xml和运送文件的位置;以及预订的友好名称和用途。在一实施例中,预订信息被储存在数据库114的预订表中。图2是示出多个表格的示图,包括一实施例的预订表结构。如上所述,部署步骤可按部署类型变化,并且可被储存在DeplSteps字段中。DeplSteps字段值是部署步骤标记的组合,这些标记表示特定预订的必要部署步骤。
继续参看图2,预订的状态或预订状态被储存在ResvStatusID字段中。ResvStatusID字段被加入ResvStatusID_ReservationStatusName表格。预订状态包括:尚未开始、部署中、就绪、到期、以及归档。当创建一新预订时,预订状态被设定为尚未开始。预订状态在以下情况被设定为部署中:到达预订开始日期、用户重新部署一预订、和/或管理员或OPM对一预订采取行动。当预订的最后一个部署步骤完成时,预订状态被设定为就绪。当预订的时间到期时,或者当用户使预订到期(例如结束)时,预订状态被设定为到期。一旦预订到期,就释放任何所预订的计算***,并且预订状态被设定为归档。
部署的状态或部署状态被储存在Resvs_Servers表中。Resvs_Servers表包括三个字段:部署阶段字段(DeplStageID);含以下三个值之一的字段(DeplStatusValueID):运行中、出错或完成;以及错误代码字段(DeplStatusError)。如果DeplStatusValueID不是出错,则该值将为0。当创建一新预订时,预订中每个计算***的部署状态字段的值被设定为尚未开始、完成和0。当部署步骤开始时,DeplStageID、DeplStatusValueID和DeplStatusErr值被分别设定为与部署步骤、运行中和0相对应的部署阶段ID。如果在部署步骤中出错,则DeplStatusValueID和DeplStatusErr值被分别设定为出错和错误代码。如果部署步骤无差错地完成,则DeplStatusValueID值被设定为完成。当最后一个部署步骤完成时,部署状态字段值被设定为就绪、完成和0。(此外,如上所述,当预订的最后一个部署步骤完成时,预订状态被设定为就绪。)
计算***的可用性(例如服务器可用性)或可用性状态被储存在图2的服务器表的SrvAvailStatusID字段中。SrvAvailStatusID字段被加入SrvAvailStatusID_SrvAvailStatus Name表格。该表定义三个可用性状态:未预订、已预订和使用中。在初始***设立期间,所有计算***的可用性状态被设定为未预订。当作出新预订时,预订中这些计算***的可用性状态被设定为已预订。当预订开始时,预订中计算***的可用性状态被设定为使用中。在特定情形中预订还可被归档。如果计算***已被分配给其预订状态为尚未开始的另一预订,则可用性状态被设定为已预订;否则,可用性状态被设定为未预订。
如上所述,存在多个与图2所述表格相关联的多个存储过程。在一实施例中,表格中信息的处理通过存储过程完成。存储过程包括但不限于:创建新预订;获取/设定预订数据(开始日期、结束日期、预订类型、部署步骤等);获取/设定预订状态;获取/设定哪些***与预订相关联;获取/设定预订的***的类型和角色;获取/设定要在预订内***上执行的部署步骤;获取必需对其执行下一部署步骤的***的列表(例如刚刚到达开始日期的预订);获取***的下一部署步骤;获取已到期的预订的列表;获取/设定部署状态;以及获取/设定可用性状态。
在一实施例中,数据库114中的多个存储过程包括但不限于:
prc_create_resv(...)-通过在tblResvs中创建一新的行来基于对新预订/编辑预订页面的用户输入创建一新预订。输入对应于tblResvs中的列。返回新作出的预订的ID。
prc_is_cluster_avail_now(ResvID)-返回一布尔值,指示是否可立即开始对所指预订的部署。输入是所指预订的ID。
prc_do_depl_steps(ResvID,DeplStepFlags)-将预订的DeplSteps值设定为DeplStepFlags,然后将其预订状态设定为部署中。当操作***醒来时,它将开始部署步骤的执行。
prc_set_depl_steps(ResvID,DeplStepFlags)-将预订的DeplSteps值设定为DeplStepFlags。
prc_cancel_resv(ResvID)-通过在预订表中将其标记为归档来取消一预订。输入是要取消的预订的ID。
prc_get_resv_info(iResvID)-返回有关一预订的信息;所返回记录集中的字段对应于预订表中的列。输入是所指预订的ID。
prc_update_resv_info(ResvID,...)-更新有关预订表中的预订的信息。输入是所指预订的ID,然后对应于tblResvs中的列。
prc_ad_d_user(UserName,ResvID)-通过添加到预订表中的用户字段使新用户与预订相关联。输入是要添加的用户的ID,以及预订的ID。
prc_get_servers_by_ResvID(ResvID)-通过查询Resvs_Servers返回与预订相关联的服务器。输入是所指预订的ID。
prc_get_expired_resvs(日期)-通过查询预订表返回在日期结束时到期的预订的ID。输入是所指日期。
prc_get_new_resvs(日期)-通过查询预订表返回在日期开始时开始的预订的ID。输入是所指日期。
prc_release_servers(ResvID)-供预订结束时使用。重置与预订ID相关联的服务器的服务器表中的可用性状态。输入是所指预订的ID。
prc_get_dispatch_info(ResvID)-通过查询预订表返回分派执行所需的信息。输入是所指预订的ID。
prc_get_users_by_ResvID(ResvID)-通过查询预订表返回与预订相关联的用户的名字。输入是所指预订的ID。
prc_get_server_avail_count_info(iDomainID,iStart,iEnd)-返回域中针对日期范围可用的服务器的数量。输入是所指域的域ID、日期范围的开始日期、日期范围的结束日期。
prc_get_office_builds()-返回可用公开OFFICE Builds版本的列表,以供从OfficeBuilds表部署到预订簇。
数据库122和126还包含多个存储过程,包括但不限于:
    CREATE(创建)  procedure(过程)sp_ins_event_schedule_IPO
    @event_id     int,
    @name(名称)      varchar(64),
    @next_task_seq    int=0,
    @defer_mins int=1
    为
       declare(声明)  @schedule_id int
    declare@schedule_id2 int
    declare@computer_id int
    选择@computer_id=computer_id
    从计算机
    其中name(名称)=@name
    exec@schedule_id=sp_get_next_system_id′EVENT_SCHEDULE_ID′
    exec@schedule_id2=sp_del_event_schedule_comp_event@computer_id,
@event_id
    开始事务
    ***event_schedule
    (schedule_id,computer_id,event_id,start_time,next_task_seq,defer_mins)
    值
    (@schedule_id,@computer_id,@event_id,GetDate(),@next_task_seq,
@defer_mins)
if(@@error(差错)!=0)
开始
回退事务
返回1
end
提交事务
选择@schedule_id作为schedule_id
    Go
根据一实施例,预订算法被配置成基于用户使用用户界面118的输入预订***池102和104的一个或多个计算***。在一实施例中,如果计算***没有任何当前预订,则预订算法首先分配一计算***。如果预订算法不得不分配已有预订的计算***,则基于现有预订与新预订之间的最大时隙选择一计算***。预订数据可被排序或以其它方式结构化(例如表格或视图格式),从而使预订算法能被简化和流线化。预订算法使用预订的开始和结束日期来创建表格,如下所述。数据可在每次请求新预订时生成。
在一实施例中,表格具有三个字段:ComputerName指计算***名称;LatestLastEnd指最接近所请求预订的开始日期的之前预订的结束日期;以及EarliestNextStart指最接近所请求预订的结束日期的之后预订的开始日期。有可能LatestLastEnd和EarliestNextStart会为空。在这种情形中,它们可被设定为任意值。通过将预订表中所有的非归档的预订加入Resvs_Servers表,来使表格的数据可用。在特定情形中,所得的加入在每个服务器可具有一个以上条目,因为某些服务器可被预订到一个以上预订。
预订算法的一个实施例如下:
        n是预订所需服务器的数量
        ResvID是新预订的唯一预订id
        StartDate和EndDate是所请求预订的开始日期和结束日期
        返回是否能对预订分配足够的服务器
        boolean AllocateServers(n,StartDate,EndDate,ResvID)
          declareStackResvServers
        //首先分配未被预订的服务器(平凡函数)
        nAllocatedUnreservedServers = AllocateUnreservedServers(n,
   StackResvServers)
        nNeededServers=n-nAllocatedUnreservedServers;
      while nNeededServers大于0
         if存在nNeededServers服务器where((StartDate-
LatestLastEnd>0)
                &&(EarliestNextStart-EndDate>0))
            选择具有最大StartDate-LatestEndDate的
ComputerName;
            将ComputerName推送到StackOfAllocatedServers上;
            递减nNeededServers;
            //应当将算法略作修改以允许新创建预订有更大的
            //可前向扩展性
        else
            return false;
            //不能分配足够的服务器
            //可改为用替换预订日期迭代地调用AllocateServers,
            //然后提供用户替换预订
    end if
    end while
    while StackResvServers不空
        从StackResvServers弹出ComputerName
        用ResvID和ComputerName创建Resvs_Servers表中的条目
    end while
    return true
    End Function(结束函数)
现在参看图3A-3B,流程图示出根据一实施例的一个或多个服务计算机或服务器的配置、分配和部署。在300,使用web客户机或浏览器的用户访问用户界面118以请求预订。在302,用户使用用户界面118来选择与该预订相关联的时槽。在304,用户可选择部署的类型。如果用户仅选择服务器设立,则流程继续到306。如果用户选择运送文件安装,则流程继续到308。否则,流程继续到310以提供OFFICE BUILD/PR安装。在312,如果用户选择可运送文件安装选项或OFFICE BUILD/PR安装选项,则用户可选择与安装相关联的文件模板,诸如XML文件模板。
在314,用户可选择服务器类型和角色。在316,用户然后可选择与各个服务器类型相关联的服务器的数量。在318,确定在一个或多个服务器池中是否有所请求的服务器可用。如果服务器不可用,则在320,用户具有选择一不同时槽和/或请求不同数量服务器的选择权。如果所请求服务器可用,则在322,生成machine.xml文件且流程继续到324。
参看图3B,在324,与当前预订相关联的信息被保存到数据库114。在326,部署开始,包括根据用户请求(例如类型/角色)配置服务器。在328,确定所请求的部署是否成功。如果部署没有成功,则在330确定是否是machine.xml文件造成了不成功的部署。如果machine.xml文件不是不成功部署的起因,则在332,向SE和关联于预订的用户发送通知。在334,实现故障诊断过程,并且一旦故障诊断过程完成流程就返回326。
然而,如果machine.xml文件是不成功部署的起因,则在336,向用户和/或OPM发送通知。在338,machine.xml被校正且流程返回到326。另一方面,如果在328部署成功,则流程继续到340,且成功部署的通知被发送给用户,包括任何访问信息(例如用户名、口令等)。在342,所部署的服务器现在能由该用户和任何其它获授权用户用于测试和其它目的。在342,用户具有许多选项,诸如在344延长测试周期或在346请求重新部署该簇。
如果用户请求一延长的测试周期,则在348确定是否有可用服务器满足该请求。如果没有满足该请求的可用服务器,则流程继续到350,其中用户和任何其它用户可完成测试并退出。然后,流程继续到354且服务器然后被释放回服务器池。如果在348有服务器可用,则在352更新预订信息且流程继续到342。如果用户已请求重新部署所请求的服务器,则在356改变或更新machine.xml文件且流程返回到326。否则,流程继续到354且服务器然后被释放回服务器池。
图4A-4I示出网络400和用于配置、分配和部署一个或多个计算***(诸如一个或多个服务器池402和404的一个或多个测试服务器)的各个组件的功能框图。在以下描述中引用图2的元件。如图4B所示,在I.a,操作***服务406醒来并通过代理调用web服务408,以获取测试服务器列表和每个测试服务器上所需的下一部署步骤。在I.b,web服务408在数据库410中查询其预订状态为部署中或到期的预订。
web服务408还在预订中寻找其在Resvs_Servers表中的DeplStatusValueID对应于完成的测试服务器。对于这些服务器,web服务408从预订表中获取预订DeplSteps值并解析部署步骤标记的值。部署步骤标记然后与测试服务器的DeplStatusStageID值作比较以确定下一部署步骤。在I.c,web服务408将测试服务器/下一部署步骤对返回给操作***服务406。
现在参看图4C,在I.d,操作***服务406迭代通过所返回的测试服务器/下一部署步骤对。如果下一部署步骤是部署步骤1-5,则在I.1-5,操作***服务406调用存储过程以调度对应于该步骤的事件。在I.f,操作***服务406通过代理调用更新部署状态以更新部署状态。在I.g,web服务408使用存储过程来将测试服务器的DeplStageID设置为与部署步骤相对应的部署阶段,并将DeplStatusValueID设置为运行中。
参看图4D,如果下一部署步骤为分派,则在I.e.i.6,操作***服务406通过代理调用web服务408,以查询机器和运送文件位置。如果下一部署步骤为添加用户,则在I.e.i.7,操作***服务406通过代理调用web服务408,以查询预订用户。在I.e.ii,web服务408在数据库410中查询信息。如果下一部署步骤为分派,则在I.e.iii.6,操作***服务406创建一进程并开始对预订分派。如果下一部署步骤为添加用户,则在I.e.iii.7,操作***服务406创建一进程并开始对测试服务器添加用户。在I.f,操作***服务406调用web服务408以更新部署状态(Update Deployment Status)。在I.g,web服务408使用数据库410中的存储过程来将测试服务器的DeplStageID设置为与部署步骤相对应的部署阶段,并将DeplStatusValueID设置为运行中。
参看图4E,在II.a.i.1-5,当关联脚本执行时,脚本执行状态被写入数据库412。在II.a.ii.1-5,操作***服务406醒来并从数据库412获取执行事件的状态。在II.a.iii.1-5,操作***服务406通过代理调用web服务408以将状态推入数据库410。在II.a.6-7,当分派或添加用户部署步骤执行时,操作***服务406通过代理调用web服务408以更新部署状态。如果部署步骤完成或出错,则在II.b,操作***服务406调用存储过程并将DeplStatusValueID值从运行中重置为完成或出错。
如果DeplStatusValueID为完成,但DeplStageID不表示预订的DeplSteps中所指示的最后一个部署步骤,则操作***服务406将在它下一次醒来时开始下一部署,如上所述。如果DeplStatusValueID为完成,DeplStageID确实表示预订的DeplSteps中所指示的最后一个部署步骤,且如果预订的预订状态为部署中,则预订状态被重置为就绪。如果预订的预订状态为到期,则预订状态被重置为归档,且预订中所有服务器的可用性状态从使用中重置为已预订或未预订。
参看图4F,用户创建一新预订。在III.a,如果预订类型是专用版本(PR),则用户将该PR保存至软件库414。在III.b,用户使用用户界面416提交新的预订信息。在III.c,数据库410使用存储过程和web服务408来将所提交的预订数据写入数据库410。这些过程导致:将预订状态集设定为尚未开始;将预订中每个测试服务器的部署状态字段设定为尚未开始、完成和0;将预订中每个测试服务器的服务器可用性状态设定为已预订;以及将预订的DeplSteps值设定为包含预订类型所需的每个部署步骤的部署步骤标记(例如,如果预订类型为基本,则不需要角色应用步骤)。
参看图4G,新预订开始。在IV.a,操作***406醒来并使用web服务408代理类在数据库410中查询部署应当对其开始的新预订。在IV.b,web服务408使用数据库410中的存储过程来查询这些预订,且存储过程返回对应于各预订的预订ID。继续新预订并参看图4H,在IV.c,web服务408在数据库410中根据预订ID查询预订细节。如果预订类型是复制簇,则在IV.d,web服务408在CMDB web服务418中查询运送文件,并将该运送文件复制到文件共享中。
如果用户尚未上传machine.xml文件,则在IV.e,web服务408基于machine.xml模板生成machine.xml文件,并将该machine.xml文件复制到文件共享中。在IV.f,新预订的部署已准备好开始。使用预订ID和数据库410中的存储过程,web服务408将预订的预订状态从尚未开始重置为部署中,并将预订中各个测试服务器的服务器可用性状态从已预订重置为使用中。因为预订状态现在是部署中,且预订中各个测试服务器的部署状态值为尚未开始、完成和0,所以操作***服务406在其下次醒来时开始预订的部署步骤,如上所述。
参看图4I,在V.a,用户使用用户界面410的“我的预订”页面来结束预订,这使得预订到期。在V.b.,web服务408:将预订的DeplSteps值设定为仅含OS安装部署步骤标记;将预订中每个测试服务器的部署状态字段设定为尚未开始、完成和0;以及将预订状态设定为到期。当操作***服务406下次醒来时,它将在预订中所有测试服务器上开始OS安装部署步骤,如上所述。因为OS安装是DeplSteps值中指示的唯一步骤,所以当OS安装步骤在预订中所有测试服务器上完成时,最后的部署步骤完成。如上所述,操作***服务406现在重置预订状态。因为预订状态为到期,所以操作***服务406将把预订状态重置为归档,并重置预订中所有测试服务器的可用性状态。
图5A-5C示出用户界面500的各个实例,用户界面500使用户能作出新的预订和/或管理现有的预订,但并不受限于此。作为示例,用户能使用用户界面500来为特定测试目的预订多个服务器。然后用户界面500向给定域中的服务器池呈现服务器可用性信息。一旦提交了请求,上述组件就用来根据用户请求动态地配置、分配、和/或部署多个服务器。如上所述,一旦请求已被完成用户就接收到通知(例如电子邮件),并且配置、分配和部署服务器。如图5A所示,用户界面500包括用于显示用来警告和通知用户的各种信息的告示区域502。用户界面500包括其中呈现多个选项供用户交互的导航区域504。
用户界面500还包括其中用户可查看特定时段内(例如每天、每周等)的服务器可用性的日历表区域506。例如,假定用户想要作出出于某测试目的需要2个服务器的新预订。用户可使用用户界面500看到在一服务器池中Redmond位置具有54个服务器,而在一服务器池中Redmond以外位置具有26个服务器。用户还能使用用户界面500查看其它用户的预订。例如,用户能看到,从1/27/2004-1/28/2004预订了9个服务器,从1/28/2004-1/29/2004预订了5个服务器,而从1/28/2004-1/31/2004预订了3个服务器。
参看图5B,用户已从导航区504选择了新预订。新预订信息包括一般信息区域508。该一般信息区域508包括当前用户、附加用户、预订用途、OPM、服务器指定、以及调试工具查询。新预订信息包括预订时间区域510。用户可使用下拉日历或通过键入日期来选择开始和结束日期。预订时间区域510包括一旦用户输入了优选开始和结束日期就通知一时段内可用的服务器的数量。新预订信息还包括部署信息区域512。该部署信息区域512包括部署类型、BUILD编号、服务、运送或调试BUILD选项,machine.xml模板选项、定制machine.xml选项、以及类型/角色选项。如图5B所示,用户已请求了2个FE-AWS1服务器、1个SQL-AWS服务器、以及1个CDS-AWS服务器。如上所述,用户输入被各个组件用来配置、分配和部署所请求项。
图5C示出用户已从导航区域504选择我的预订之后的用户界面500。如图5C所示,用户能审阅所有与各个预订相关联的相关细节。用户具有多个可用选项,诸如:编辑预订、取消预订、将服务器返回到服务器池、延长预订、以及重新运行特定部署。本文中所述的用户界面500可根据所需优选配置,且本发明并非旨在受限于本文中所述的任何特定示例和/或实施例。
如图5C所示,用户界面500包括“当前状态”字段。在一实施例中,“当前状态”字段可包括多个值,诸如:“尚未开始”(在所预订的机器上部署尚未开始);“部署中”(在部署过程中);“完成”(部署已成功完成且用户现在能使用机器);“XML文件出错”(所使用的机器xml文件出错。需要用户或OPM校正机器xml文件);以及“***出错”(部署过程的问题)。
测试人员使用用户界面的的一个示例如下。在开发人员能检查代码并将MSI程序包加入SH/ST簇之前,该测试人员需要验证OFFICE AWS网站中的一个功能部件。测试人员使用web浏览器来载入用户界面500。使用用户界面500,测试人员为下一天登记AWS型簇。测试人员还使用用户界面500编辑machine.xml文件以添加新程序包并指定PR撤消的路径。测试人员在第二天上午接收到电子邮件通知,其列示所登记簇中的服务器并按所输入信息指示部署完成。测试人员然后可对该簇运行任何测试,同时还本地地登录到服务器上以检查各种功能。在验证到一切良好之后,测试人员发送电子邮件以便开发员检查代码。测试人员可退出我的预订,这使预订到期。
以下是调试示例。开发人员是AWS团队的一部分。在一集成簇上,一功能部件神秘失效。开发人员不能在集成环境中直接调试,因为它会影响整个簇和其它服务。开发人员使用用户界面500来登记AWS型簇,并从集成中选择了最新的运送文件。基于输入,实际内容和代码根据所选运送文件如本文所述地安装到所登记的簇。开发人员现在具有类似的调试用环境而不影响原始的集成簇。
图6示出根据一实施例的与各个脚本和相应事件相关联的多个事件和脚本表格。每个脚本都可在事件表中具有相应的事件目录,并且每个事件可由图6所示的script_task(脚本任务)表中的一个条目链接到相应脚本中。当为比如测试服务器的一计算***调度一事件时,在event_schedule(事件调度)表中创建新的条目,该表包括对计算***的引用和该事件。当到达调度事件的调度时间时,脚本的执行状态在计算***上被写入event_schedule表中的其它字段:starrt_time(开始时间)、end_time(结束时间)、status(状态)、status_code(状态码,例如对于出错代码)等。
各个部署配置使用上述各个组件可用。以下呈现多种部署可能性。
所发布的OFFICE BUILD安装通过使用官方的OFFICE BUILD来设立服务器簇。用户首先可决定Build版本,然后选择要使用的machine.xml文件模板。如上所述,用户还可使用定制的machine.xml文件模板,其需要上传和校验。机器类型列表被列示,以供根据模板中所定义的服务器角色安装。
用户还可确定各个服务器角色所需的服务器的数量。所请求的数量的服务器自动从服务器池中选择,且machine.xml文件使用来自服务器池的所选服务器的服务器名生成。用户在必要时可审阅machine.xml文件,包括手动更新。经更新的版本可被提交并保存,从而可将其用于部署。在经更新的machine.xml文件被保存之前,在其中自动验证句法和标记。
安装可支持多个服务,包括但不限于:共享组件、ULS、AWS、重定向服务、R&R、Watson、IPO工具、Visio。包括在用户界面内的是多个按服务归组的预定义xml模板。每个服务有多个模板,其对每个服务定义通用安装情形(例如,在共享服务器上安装所有可能组件的紧凑安装,有内容或没有内容的Build版本)。还有具有当前针对特定环境(例如,TC5、集成等)安装的所有服务的模板。
运送文件安装是要包括所有当前部署给一簇或环境的作业(例如代码或内容)。现有簇能使用运送文件安装快速复制。此安装对需要模拟特定环境的调试或测试有用。基于运送文件的部署也是安装具有相应内容的代码的一种高效方法。一些运送文件包括Selfhost(自主存)、Selftest(自测试)、集成等。每当一作业被部署给这些簇,特定簇的运送文件被更新并保存至CMDB服务。先前的运送文件然后被标记为归档。最新Build版本的代码也被包括在运送文件中。
在用户选择运送文件之后,用户还能选择要使用的machine.xml文件模板。通过使用不同的machine.xml文件,用户能定制所部署的内容。例如,用户可选择安装英语而非所有语言。必需的服务器角色基于machine.xml文件中所包括的信息自动确定。用户然后能决定用于各服务器角色的的服务器的数量,并且所预订的服务器的名称被自动添加以生成正确的machine.xml文件。
PR安装与所发布的OFFICE BUILD安装相似。然而,用户不使用官方的OFFICE BUILD,而是请求现有服务或新服务的PR版本。用户可通过指定PR位置来安装PR位。也可能需要其它改变,比如新服务(例如添加新的自动唱机属性等)。
基本的服务器设立安装在设立期间将不应用OFFICE代码。用户能选择服务器类型,然后确定服务器的数量。基本的服务器设立安装将把OS加上通用配置项安装到预订服务器。基本的服务器设立安装可通过快速设立多个干净服务器来用于OFFICE服务器设立。可添加其它步骤以安装其它服务器组件。
例如,服务器簇可被动态地配置、分配、和/或部署以在主存供、集成和最终发布服务之前测试该服务。作为另一示例,用户可在所需时间(例如每天)预订服务器簇。所预订的服务器簇可根据用户请求用必需的代码和/或内容动态配置。此外,能基于预订内容对用户指定访问许可。然后,一个或多个用户能在所分配的服务器簇上执行测试与其它性能和配置方案。该服务器簇可在预订一到期时就被返回到可用服务器池,且所释放的服务器可用于后续预订。各实施例还被配置成出于一不平常目的配置一特定簇。例如,大簇通常是性能测试所需要的。该大簇可通过将所有可用服务器归组到一大簇来配置、分配、和/或部署。
示例性操作环境
现在参看图7,以下讨论旨在提供对在其中可以实现本发明实施例的合适计算环境的简要一般描述。尽管将在结合在个人计算机上的操作***上运行的应用程序执行的程序模块的一般上下文中描述本发明,但本领域的技术人员可以认识到,本发明也可结合其他类型的计算***和程序模块实现。
一般而言,程序模块包括例程、程序、对象、组件、数据结构和其他类型的结构,它们执行特定任务角色或实现特定的抽象数据类型。而且,本领域的技术人员可以理解,本发明方法可以使用其它计算机***配置来实现,包括手持式设备、多处理器、基于微处理器或可编程消费电子产品、小型机、大型机等。本发明也可以在分布式计算环境中实现,其中任务角色由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
现在参看图7,将描述用于本发明各实施例的例示性操作环境。如图7所示,计算机2包括通用台式机、膝上型计算机、手持式计算机、或能执行一个或多个应用程序的其它类型的计算机。计算机2包括至少一个中央处理单元8(“CPU”)、包括随机存取存储器18(“RAM”)和只读存储器(“ROM”)20的***存储器12、以及将存储器耦合至CPU 8的***总线10。基本输入/输出***包含如在启动过程中帮助在计算机中的元件之间传输信息的基本例程,并储存在ROM 20中。计算机2还包括用于储存操作***32、应用程序、以及其它程序模块的大容量存储设备14。
大容量存储设备14通过连接至总线10的大容量存储控制器(未示出)与CPU 8相连接。大容量存储设备14及其关联计算机可读介质为计算机2提供非易失性存储。尽管此处包含的计算机可读介质的描述指的是大容量存储设备,诸如硬盘或CD-ROM驱动器,但本领域的技术人员应理解,计算机可读介质可以是可由计算***2访问或利用的任何可用介质。
作为示例,而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括易失性和非易失性、可移动和不可移动介质,它们以任意方法或技术实现,用于存储诸如计算机可读指令、数据结构、程序模块或其它数据之类的信息。计算机存储介质包括,但不限于,RAM、ROM、EPROM、EEPROM、闪存或其它固态存储器技术、CD-ROM、数字多功能盘(DVD)或其它光学存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算设备2访问的任何其它介质。
根据本发明的各个实施例,计算机2可在使用通过诸如局域网、因特网等的网络4与远程计算机的逻辑连接的联网环境中操作。计算机2可通过连接至总线10的网络接口单元16与网络4相连。应理解,网络接口单元16也可用于连接至其他类型的网络和远程计算机***。计算机2也可包括输入/输出控制器22,用于接收和处理来自多个其他设备,包括键盘、鼠标等(未示出)的输入。类似地,输入/输出控制器22可以为显示屏、打印机或其他类型的输出设备提供输出。
如前简述的那样,多个程序模块和数据文件可以存储在计算机2的大容量存储设备14和RAM 18内,包括适于控制联网个人计算机操作的操作***32,诸如来自华盛顿州雷德蒙市的微软公司的WINDOWS XP操作***。大容量存储设备14和RAM 18还可以存储一个或多个程序模块。具体地,大容量存储设备14和RAM 18可储存应用程序,诸如文字处理应用程序28、电子表应用程序30、电子邮件应用程序34、绘图应用程序等。
应当了解,各种实施例的逻辑操作可被实现为(1)运行于计算机***上的一系列计算机实现的动作或程序模块,以及/或者(2)计算机***内互连的机器逻辑电路或电路模块。该实现是取决于实现本发明的计算机***的性能要求来选择的。因此,包括相关算法的逻辑操作可被不同地称为操作、结构设备、动作或模块。本领域技术人员将认识到,这些操作、结构设备、动作和模块可用软件、固件、专用数字逻辑、及其任意组合实现,而不背离如本文中阐述的权利要求内陈述的本发明精神和范围。
尽管已结合各个示例性实施例描述了本发明,但本领域普通技术人员将理解,可在所附权利要求的范围内对其作出许多修改。因此,并不旨在以任何方式将本发明的范围限于以上的说明,而是应该完全参照所附权利要求书来确定。
以下的附录A和B例示一实施例中的代表性模式文件,供动态配置、分配和部署多个计算***使用。
附录A
      -<Courier>
      <Include>\\tk2offdsl201\Serviceteams\DNR\Hacks\bug262118\AccountIncludes.xml</Incl
ude>
      -<Group>
        <Certificate>my1702.pfx</Certificate>
        <Wire/>
      -<!--  属性(Property)
        -->
        <Property Name="DOMAIN">FIRST LOCATION</Property>
        <Property Name="SMFWEBPORT">80</Property>
        <Property Name="NOSSL">1</Property>
        <Property Name="IPOCMDBDBFILE">D:\mssql\data\cmdb_data.mdf</Property>
        <Property Name="IPOCMDBLOGFILE">D:\mssql\data\cmdb_log.ldf</Property>
        <Property Name="SMFIISACCOUNT">opsdep</Property>
        <Property Name="SMFIISACCOUNTDOMAIN">location</Property>
        <Property Name="SMFIISSERVER">%IIS-SMF%</Property>
        <Property Name="TARGETDIR">D:</Property>
        </Group>
      -<Group Name="smf">
      -<!--流派(Genre)
        -->
      -<Genre Name="IdentityMExistProxyInfo">
        <Record Type="int">0</Record>
      -<!--  0不使用代理,任何其它值使用代理
        -->
        <Record Type="string"/>
      -<!--代理列表,对于缺省代理使用空字符串
  -->
  <Record Type="string"/>
-<!--代理旁路列表,对于无代理旁路使用空字符串
  -->
  </Genre>
-<Genre Name="SharedCoreFE">
  <Record Type="string">.officeint.microsoft.com</Record>
-<!--注意需要前导(.)
  -->
-<!--用于Utility.kwzDomainForSharedCookie(所有者:JohnFan)的值
  -->
  </Genre>
-<Genre Name="SMTPServer">
  <Record Type="string">xsmarthost.partners.extranet.microsoft.com</Record>
-<!--SMTP服务器名或IP地址(使用CorpNet"s SMTP服务器)
  -->
  </Genre>
-<Genre Name="SMFUseLiveEmail">
  <Record Type="int">1</Record>
-<!--定义是否使用真实或测试电子邮件,1为真和0为假(缺省)
  -->
  </Genre>
-<Port Name="ipolocalcmdb.iis"Protocol="http">
  <Wire>http://%IIS-SMF%/cmdbwebservice/cmdbutil.asmx</Wire>
  </Port>
-<Port Name="ipoproductioncmdb.iis"Protocol="http">
  <Wire>http://%IIS-SMF%/cmdbwebservice/cmdbutil.asmx</Wire>
  </Port>
  </Group>
-<Package Name="office.ipo.smfweb"Flavor="ship"Version="1">
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1033"/>
  <Dependency Package="office.ipo.ulscommon"Flavor="ship"Language="1033"/>
  <Dependency Package="office.ipo.smf.iis"Flavor="ship"Language="1033"/>
  <Dependency Package="office.ipo.CMDB"Flavor="ship"Language="1033"/>
  </Package>
-<Package Name="office.iposmf.backend"Flavor="ship"Version="1">
  <Dependency Package="office.ipo.smf.sql"Flavor="ship"Language="1033"/>
  <Dependency Package="office.ipo.ipocmdbsql"Flavor="ship"Language="1033"/>
  <Dependency Package="office.ipo.smf.cmdb.sql"Flavor="ship"Language="1033"/>
  </Package>
-<Machine Name="%IIS-SMF%"Group="smf">
  <Install Package="office.ipo.smfweb"Flavor="ship"/>
  </Machine>
-<Machine Name="%SQL%"Group="smf">
  <Install Package="office.iposmf.backend"Flavor="ship"/>
  </Machine>
  </Courier>
附录B
       -<Courier>
       -<Group>
         <Certificate>TCCorp.pfx</Certificate>
         <Wire/>
       -<!--属性
         -->
         <Property Name="ContentFolder">d:\Content\</Property>
         <Property Name="ServicesFolder">d:\Office11.0\Services\</Property>
         <Property Name="BitBucketFolder">d:\Office11.0\Services\BitBucket\</Property>
         <Property Name="ORedirFolder">d:\Office11.0\Services\ORedir\</Property>
         <Property
Name="LegacyRedirContentFolder">d:\Office11.0\SERVICES\LegacyRedir\</Property>
         <Property Name="OUContentFolder">d:\Office11.0\Services\SES\catalog\</Property>
         <Property
Name="AWSCONTENTRATINGDBFILE">h:\mssql\data\contentrating.mdf</Property>
         <Property
Name="AWSCONTENTRATINGLOGFILE">o:\mssql\data\contentrating.ldf</Property>
         <Property Name="AWSCONTENTRATINGDBSIZE">1000MB</Property>
         <Property Name="AWSCONTENTRATINGLOGSIZE">250MB</Property>
         <Property
Name="AWSLOGGINGDBFILE">h:\mssql\data\awslogging.mdf</Property>
         <Property
Name="AWSLOGGINGLOGFILE">o:\mssql\data\awslogging.ldf</Property>
         <Property Name="AWSLOGGINGDBSIZE">1000MB</Property>
         <Property Name="AWSLOGGINGLOGSIZE">250MB</Property>
         <Property
Name="AWSMARKETPLACEDBFILE">h:\mssql\data\marketplace.mdf</Property>
         <Property
Name="AWSMARKETPLACELOGFILE">o:\mssql\data\marketplace.ldf</Property>
         <Property Name="AWSMARKETPLACEDBSIZE">1000MB</Property>
         <Property Name="AWSMARKETPLACELOGSIZE">250MB</Property>
         <Property Name="TARGETDIR">d:\</Property>
         <Property Name="INSTALLDIR">d:\Office11.0\Services\AWS\</Property>
         <Property Name="INSTALLSHARE">true</Property>
       -<!--剪贴板DB SQL文件缺省的属性
         -->
         <Property Name="AWSCLIPARTSEARCHINSTALLALL">1</Property>
         <Property Name="AWSCLIPARTSEARCHDBGROWTHSIZE">10MB</Property>
         <Property Name="AWSCLIPARTSEARCHDBMAXSIZE">100MB</Property>
         <Property Name="AWSCLIPARTSEARCHDBSIZE">50MB</Property>
         <Property Name="AWSCLIPARTSEARCHLOGGROWTHSIZE">10MB</Property>
         <Property Name="AWSCLIPARTSEARCHLOGMAXSIZE">10MB</Property>
         <Property Name="AWSCLIPARTSEARCHLOGSIZE">10MB</Property>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1033">h:\mssql\data\dbmediasearch1033_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1033">o:\mssql\data\dbmediasearch1033_log.ldf</Pro
perty>
       -<!--TC21包括
         -->
       -<Property Name="SSLCERTIFICATE">
         <Source>\\tk2offds1201\ServiceTeams\DNR\SSL Certs\tc21.pfx</Source>
         </Property>
         <Property Name="SSLPFXPASSWORD">OOOU_01</Property>
       -<!--Watson属性
         -->
       -<Property Name="WATSONSSLCERTIFICATE1">
         <Source>\\tk2offds1201\ServiceTeams\DNR\SSL Certs\watson.tc21.pfx</Source>
         </Property>
         <Property Name="WATSONSSLPFXPASSWORD1">OOOU_01</Property>
       -<!--对所有TC使用相同数据驱动的每种语言的剪贴板DB文件位置的属性
         -->
         <Property
Name="AWSCLIPARTSEARCHDBFILE1025">h:\mssql\data\dbmediasearch1025_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1026">h:\mssql\data\dbmediasearch1026_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1028">h:\mssql\data\dbmediasearch1028_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1029">h:\mssql\data\dbmediasearch1029_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1030">h:\mssql\data\dbmediasearch1030_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1031">h:\mssql\data\dbmediasearch1031_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1032">h:\mssql\data\dbmediasearch1032_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1035">h:\mssql\data\dbmediasearch1035_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1036">h:\mssql\data\dbmediasearch1036_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1037">h:\mssql\data\dbmediasearch1037_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1038">h:\mssql\data\dbmediasearch1038_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1040">h:\mssql\data\dbmediasearch1040_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1041">h:\mssql\data\dbmediasearch1041_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1042">h:\mssql\data\dbmediasearch1042_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1043">h:\mssql\data\dbmediasearch1043_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1044">h:\mssql\data\dbmediasearch1044_data.mdf</Pr
operty>
         <Property
Name="AWsCLIPARTsEARCHDBFILE1045">h:\mssql\data\dbmediasearch1045_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1046">h:\mssql\data\dbmediasearch1046_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1048">h:\mssql\data\dbmediasearch1048_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1049">h:\mssql\data\dbmediasearch1049_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1050">h:\mssql\data\dbmediasearch1050_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1051">h:\mssql\data\dbmediasearch1051_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1053">h:\mssql\data\dbmediasearch1053_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1054">h:\mssql\data\dbmediasearch1054_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1055">h:\mssql\data\dbmediasearch1055_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1058">h:\mssql\data\dbmediasearch1058_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1060">h:\mssql\data\dbmediasearch1060_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1061">h:\mssql\data\dbmediasearch1061_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1062">h:\mssql\data\dbmediasearch1062_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1063">h:\mssql\data\dbmediasearch1063_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE1081">h:\mssql\data\dbmediasearch1081_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE2052">h:\mssql\data\dbmediasearch2052_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE2070">h:\mssql\data\dbmediasearch2070_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE2074">h:\mssql\data\dbmediasearch2074_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE3076">h:\mssql\data\dbmediasearch3076_data.mdf</Pr
operty>
         <Property
Name="AWSCLIPARTSEARCHDBFILE3082">h:\mssql\data\dbmediasearch3082_data.mdf</Pr
operty>
       -<!--每种语言的剪贴板DB文件记录位置的属性
         -->
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1025">o:\mssql\data\dbmediasearch1025_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1026">o:\mssql\data\dbmediasearch1026_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1028">o:\mssql\data\dbmediasearch1028_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1029">o:\mssql\data\dbmediasearch1029_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1030">o:\mssql\data\dbmediasearch1030_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1031">o:\mssql\data\dbmediasearch1031_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1032">o:\mssql\data\dbmediasearch1032_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1035">o:\mssql\data\dbmediasearch1035_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1036">o:\mssql\data\dbmediasearch1036_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1037">o:\mssql\data\dbmediasearch1037_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1038">o:\mssql\data\dbmediasearch1038_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1040">o:\mssql\data\dbmediasearch1040_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1041">o:\mssql\data\dbmediasearch1041_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1042">o:\mssql\data\dbmediasearch1042_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1043">o:\mssql\data\dbmediasearch1043_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1044">o:\mssql\data\dbmediasearch1044_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1045">o:\mssql\data\dbmediasearch1045_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1046">o:\mssql\data\dbmediasearch1046_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1048">o:\mssql\data\dbmediasearch1048_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1049">o:\mssql\data\dbmediasearch1049_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1050">o:\mssql\data\dbmediasearch1050_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1051">o:\mssql\data\dbmediasearch1051_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1053">o:\mssql\data\dbmediasearch1053_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1054">o:\mssql\data\dbmediasearch1054_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1055">o:\mssql\data\dbmediasearch1055_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1058">o:\mssql\data\dbmediasearch1058_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1060">o:\mssql\data\dbmediasearch1060_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1061">o:\mssql\data\dbmediasearch1061_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1062">o:\mssql\data\dbmediasearch1062_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1063">o:\mssql\data\dbmediasearch1063_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE1081">o:\mssql\data\dbmediasearch1081_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE2052">o:\mssql\data\dbmediasearch2052_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE2070">o:\mssql\data\dbmediasearch2070_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE2074">o:\mssql\data\dbmediasearch2074_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE3076">o:\mssql\data\dbmediasearch3076_log.ldf</Pro
perty>
         <Property
Name="AWSCLIPARTSEARCHLOGFILE3082">o:\mssql\data\dbmediasearch3082_log.ldf</Pro
perty>
         </Group>
       -<Group Name="shovel">
       -<!--外部
         -->
         <External Name="www">%IIS-AWS1%</External>
         <External Name="services">services.%IIS-AWS1%</External>
         <External Name="config">config.%IIS-AWS1%</External>
         <External Name="redirect">%IIS-Redir l%</External>
         <External Name="images">i.%IIS-AWS1%</External>
       -<!--流派
         -->
       -<!--ULSMONITORCONFIG
         -->
       -<Genre Name="ULSMonitorConfig">
       -<Record Type="string">
       -<![CDATA[
       <?xml version="1.0"encoding="utf-8"?>
                      <ulsconfig>
                      <monitorconfig>
                      <generalconfig>
                          <maxmeasurementspan>1800</maxmeasurementspan>
                          <thresholdcheckinterval>5</thresholdcheckinterval>
                          <nteventwriteinterval>120</nteventwriteinterval>
                   <droppedeventsthreshold>1</droppedeventsthreshold>
               </generalconfig>
               <countingrules>
           <!--Office 11规则-->
           <rule id="347" eventid="1969776999" timespan="30" comparison="3" />
<!--标记ID uhig-->
           <rule id="348" eventid="1953589113" timespan="30" comparison="3" />
<!--标记ID tqgy-->
           <rule id="349" eventid="1969846391" timespan="30" comparison="3" />
<!--标记ID uixw-->
           <rule id="350" eventid="1969846392" timespan="30" comparison="3" />
<!--标记ID uixx-->
           <rule id="351" eventid="1969846393" timespan="30" comparison="3" />
<!--标记ID uixy-->
           <rule id="352" eventid="1969846625" timespan="30" comparison="3" />
<!--标记ID uiya-->
           <rule id="353" eventid="1969846626" timespan="30" comparison="3" />
<!--标记ID uiyb-->
           <rule id="354" eventid="1969846627" timespan="30" comparison="3" />
<!--标记ID uiyc-->
           <rule id="357" eventid="1953589099" timespan="1800" comparison="3" />
<!--标记ID tqgk-->
           <rule id="359" eventid="1953589106" timespan="1800" comparison="3" />
<!--标记ID tqgr-->
           <rule id="360" eventid="1969846388" timespan="1800" comparison="3" />
<!--标记ID uixt-->
           <rule id="361" eventid="1986749806" timespan="30" comparison="3" />
<!--标记ID vken-->
            <rule id="362" eventid="1986749807" timespan="30" comparison="3" />
<!--标记ID vkeo-->
           <rule id="365" eventid="1986749803" timespan="1800" comparison="3" />
<!--标记ID vkek-->
           <rule id="367" eventid="1986817642" timespan="1800" comparison="3" />
<!--标记ID vlnj-->
           <rule id="368" eventid="1986817643" timespan="1800" comparison="3" />
<!--标记ID vlnk-->
           <rule id="369" eventid="1986817643" timespan="600" comparison="3" />
<!--标记ID vlnk-->
           <rule id="370" eventid="1986817644" timespan="900" comparison="3" />
<!--标记ID vlnl-->
           <rule id="372" eventid="1986749805" timespan="30" comparison="3" />
<!--标记ID vkem-->
           <rule id="373" eventid="1970961000" timespan="30" comparison="3" />
<!--仍需要转换-->
           <rule id="385" eventid="1970959481" timespan="30" comparison="3" />
<!--仍需要转换-->
           <rule id="387" eventid="1970959715" timespan="30" comparison="3" />
<!--仍需要转换-->
           <rule id="390" eventid="1970959718" timespan="30" comparison="3" />
<!--仍需要转换-->
            <rule id="391" eventid="1970959719" timespan="30" comparison="3" />
<!--仍需要转换-->
            <rule id="411" eventid="1987142755" timespan="30" comparison="3" />
<!--标记ID vqdc-->
           <rule id="412" eventid="1987142756" timespan="30" comparison="3" />
<!--标记ID vqdd-->
           <rule id="427" eventid="2004185722" timespan="60" comparison="3" />
<!--标记ID wurz-->
           <rule id="429" eventid="1987537012" timespan="30" comparison="3" />
<!--标记ID vwht-->
           <rule id="431" eventid="2020571755" timespan="30" comparison="3" />
<!--标记ID xozk-->
           <rule id="432" eventid="2020571756" timespan="30" comparison="3" />
<!--标记ID xozl-->
           <rule id="433" eventid="2020044408" timespan="30" comparison="3" />
<!--标记ID xgnx-->
           <rule id="434" eventid="2020044409" timespan="30" comparison="3" />
<!--标记ID xgny-->
           <rule id="435" eventid="2020697195" timespan="60" comparison="3" />
<!--标记ID xqdk-->
           <rule id="436" eventid="2020369519" timespan="60" comparison="3" />
<!--标记ID xldo-->
           <rule id="437" eventid="2020369530" timespan="60" comparison="3" />
<!--标记ID xldz-->
           <rule id="438" eventid="2020634984" timespan="60" comparison="3" />
<!--标记ID xpqh-->
           <rule id="439" eventid="1986946170" timespan="1800" comparison="3" />
<!--标记ID vndz-->
           <rule id="441" eventid="2020828002" timespan="1800" comparison="3" />
<!--标记ID xscb-->
           <rule id="442" eventid="2020828003" timespan="1800" comparison="3" />
<!--标记ID xscc-->
           <rule id="443" eventid="2020828004" timespan="1800" comparison="3" />
<!--标记ID xscd-->
           <rule id="444" eventid="2020828005" timespan="1800" comparison="3" />
<!--标记ID xsce-->
           <rule id="445" eventid="2020828006" timespan="1800" comparison="3" />
<!--标记ID xscf-->
           <rule id="446" eventid="2020828007" timespan="1800" comparison="3" />
<!--标记ID xscg-->
           <rule id="447" eventid="1987605114" timespan="1800" comparison="3" />
<!--标记ID vxrz-->
           <rule id="448" eventid="1987605345" timespan="1800" comparison="3" />
<!--标记ID vxsa-->
           <rule id="449" eventid="2003465082" timespan="1800" comparison="3" />
<!--标记ID wjsz-->
           <rule id="450" eventid="2004312930" timespan="1800" comparison="3" />
<!--标记ID wwcb-->
           <rule id="451" eventid="2020566648" timespan="1800" comparison="3" />
<!--标记ID xofx-->
           <rule id="452" eventid="2003007350" timespan="1800" comparison="3" />
<!--标记ID wcwv-->
           <rule id="454" eventid="2003138408" timespan="1800" comparison="3" />
<!--标记ID wewh-->
           <rule id="455" eventid="2020566644" timespan="1800" comparison="3" />
<!--标记ID xoft-->
           <rule id="457" eventid="2020566643" timespan="1800" comparison="3" />
<!--标记ID xofs-->
           <rule id="458" eventid="2020369511" timespan="1800" comparison="3" />
<!--标记ID xldg-->
           <rule id="459" eventid="2020369512" timespan="1800" comparison="3" />
<!--标记ID xldh-->
           <rule id="460" eventid="2020369513" timespan="1800" comparison="3" />
<!--标记ID xldi-->
           <rule id="461" eventid="1986820209" timespan="1800" comparison="3" />
<!--仍需要转换-->
           <rule id="462" eventid="1986820211" timespan="30" comparison="3" />
<!--仍需要转换-->
           <ruleid="463" eventid="1986820214" timespan="30" comparison="3" />
<!--仍需要转换-->
           <ruleid="464" eventid="1986820215" timespan="30" comparison="3" />
<!--仍需要转换-->
           <ruleid="465" eventid="1987733105" timespan="30" comparison="3" />
<!--仍需要转换-->
           <ruleid="467" eventid="1969846391" timespan="30" comparison="3" />
<!--标记ID uixw-->
           <ruleid="468" eventid="1969846392" timespan="30" comparison="3" />
<!--标记ID uixx-->
           <ruleid="469" eventid="2037146991" timespan="1800" comparison="3" />
<!--标记ID yleo-->
           <ruleid="470" eventid="2037146992" timespan="600" comparison="3" />
<!--标记IDylep-->
           <rule id="473" eventid="2020702824" timespan="300" comparison="3" />
<!--标记ID xqzh-->
           <rule id="474" eventid="1987537263" timespan="300" comparison="3" />
<!--标记ID vwio-->
           <rule id="475" eventid="1986820199" timespan="300" comparison="3" />
<!--标记ID vlxg-->
           <ruleid="477" eventid="2003202931" timespan="30" comparison="3" />
<!--标记ID wfss-->
           <rule id="478" eventid="2054648673" timespan="60" comparison="3" />
<!--标记ID zwsa-->
           <rule id="479" eventid="2054648674" timespan="60" comparison="3" />
<!--标记ID zwsb-->
           <rule id="480" eventid="2054648675" timespan="60" comparison="3" />
<!--标记ID zwsc-->
           <rule id="481" eventid="2054648676" timespan="60" comparison="3" />
<!--标记ID zwsd-->
           <rule id="482" eventid="2054648677" timespan="60" comparison="3" />
<!--标记ID zwse-->
           <rule id="483" eventid="2054648678" timespan="60" comparison="3" />
<!--标记ID zwsf-->
           <rule id="484" eventid="2054648679" timespan="60" comparison="3" />
<!--标记ID zwsg-->
           <rule id="485" eventid="2054648680" timespan="60" comparison="3" />
<!--标记ID zwsh-->
           <rule id="486" eventid="2054648682" timespan="60" comparison="3" />
<!--标记ID zwsj-->
           <rule id="487" eventid="2054648684" timespan="60" comparison="3" />
<!--标记ID zwsl-->
           <rule id="488" eventid="2054648685" timespan="60" comparison="3" />
<!--标记ID zwsm-->
           <rule id="489" eventid="2054648686" timespan="60" comparison="3" />
<!--标记ID zwsn-->
           <rule id="490" eventid="2054648687" timespan="60" comparison="3" />
<!--标记ID zwso-->
           <rule id="491" eventid="2054648688" timespan="60" comparison="3" />
<!--标记ID zwsp-->
           <rule id="492" eventid="2054648689" timespan="60" comparison="3" />
<!--标记ID zwsq-->
           <rule id="493" eventid="2054648690" timespan="60" comparison="3" />
<!--标记ID zwsr-->
           <rule id="494" eventid="2054648691" timespan="60" comparison="3" />
<!--标记ID zwss-->
           <rule id="495" eventid="2054648692" timespan="60" comparison="3" />
<!--标记ID zwst-->
           <rule id="496" eventid="2054648693" timespan="60" comparison="3" />
<!--标记ID zwsu-->
           <rule id="497" eventid="2054648695" timespan="60" comparison="3" />
<!--标记ID zwsw-->
           <rule id="498" eventid="2054648696" timespan="60" comparison="3" />
<!--标记ID zwsx-->
           <rule id="499" eventid="2054648697" timespan="60" comparison="3" />
<!--标记ID zwsy-->
           <rule id="500" eventid="2054648698" timespan="60" comparison="3" />
<!--标记ID zwsz-->
           <rule id="501" eventid="2054648929" timespan="60" comparison="3" />
<!--标记ID zwta-->
           <rule id="502" eventid="2054648930" timespan="60" comparison="3" />
<!--标记ID zwtb-->
           <rule id="503" eventid="2054648931" timespan="60" comparison="3" />
<!--标记ID zwtc-->
           <rule id="504" eventid="2054648933" timespan="60" comparison="3" />
<!--标记ID zwte-->
           <rule id="505" eventid="2054648943" timespan="60" comparison="3" />
<!--标记ID zwto-->
           <rule id="506" eventid="2054648945" timespan="60" comparison="3" />
<!--标记ID zwtq-->
           <rule id="507" eventid="2054648947" timespan="60" comparison="3" />
<!--标记ID zwts-->
           <rule id="508" eventid="2054648949" timespan="60" comparison="3" />
<!--标记ID zwtu-->
           <rule id="509" eventid="2054648950" timespan="60" comparison="3" />
<!--标记ID zwtv-->
           <rule id="510" eventid="2054648954" timespan="60" comparison="3" />
<!--标记ID zwtz-->
           <rule id="511" eventid="2054649186" timespan="60" comparison="3" />
<!--标记ID zwub-->
           <rule id="512" eventid="2054649187" timespan="60" comparison="3" />
<!--标记ID zwuc-->
           <rule id="513" eventid="2054649188" timespan="60" comparison="3" />
<!--标记ID zwud-->
           <rule id="514" eventid="2054649189" timespan="60" comparison="3" />
<!--标记ID zwue-->
           <rule id="515" eventid="2054649190" timespan="60" comparison="3" />
<!--标记ID zwuf-->
           <rule id="516" eventid="2054649191" timespan="60" comparison="3" />
<!--标记ID zwug-->
           <rule id="517" eventid="2054649192" timespan="60" comparison="3" />
<!--标记ID zwuh-->
           <rule id="518" eventid="2054649193" timespan="60" comparison="3" />
<!--标记ID zwui-->
           <rule id="519" eventid="2054649194" timespan="60" comparison="3" />
<!--标记ID zwuj-->
           <rule id="520" eventid="2054649195" timespan="60" comparison="3" />
<!--标记ID zwuk-->
           <rule id="521" eventid="2054649196" timespan="60" comparison="3" />
<!--标记ID zwul-->
           <rule id="522" eventid="2054649197" timespan="60" comparison="3" />
<!--标记ID zwum-->
           <rule id="523" eventid="2054649198" timespan="60" comparison="3" />
<!--标记ID zwun-->
           <rule id="524" eventid="2054649199" timespan="60" comparison="3" />
<!--标记ID zwuo-->
           <rule id="525" eventid="2054649200" timespan="60" comparison="3" />
<!--标记ID zwup-->
           <rule id="526" eventid="2054649201" timespan="60" comparison="3" />
<!--标记ID zwuq-->
           <rule id="527" eventid="2054649202" timespan="60" comparison="3" />
<!--标记ID zwur-->
           <rule id="528" eventid="2054649203" timespan="60" comparison="3" />
<!--标记ID zwus-->
           <rule id="529" eventid="2054649204" timespan="60" comparison="3" />
<!--标记ID zwut-->
           <rule id="530" eventid="2054649205" timespan="60" comparison="3" />
<!--标记ID zwuu-->
           <rule id="531" eventid="2054649206" timespan="60" comparison="3" />
<!--标记ID zwuv-->
           <rule id="532" eventid="2054649207" timespan="60" comparison="3" />
<!--标记ID zwuw-->
           <rule id="533" eventid="2054649209" timespan="60" comparison="3" />
<!--标记ID zwuy-->
           <rule id="534" eventid="2054649210" timespan="60" comparison="3" />
<!--标记ID zwuz-->
           <rule id="535" eventid="2054649442" timespan="60" comparison="3" />
<!--标记ID zwvb-->
           <rule id="536" eventid="2054649445" timespan="60" comparison="3" />
<!--标记ID zwve-->
           <rule id="537" eventid="2054649447" timespan="60" comparison="3" />
<!--标记ID zwvg-->
           <rule id="538" eventid="2054649448" timespan="60" comparison="3" />
<!--标记ID zwvh-->
           <rule id="539" eventid="2054649449" timespan="60" comparison="3" />
<!--标记ID zwvi-->
           <rule id="540" eventid="2054649450" timespan="60" comparison="3" />
<!--标记ID zwvj-->
           <rule id="541" eventid="2054649451" timespan="60" comparison="3" />
<!--标记ID zwvk-->
           <rule id="542" eventid="2054649452" timespan="60" comparison="3" />
<!--标记ID zwvl-->
           <rule id="543" eventid="2054649453" timespan="60" comparison="3" />
<!--标记ID zwvm-->
           <rule id="544" eventid="2054649454" timespan="60" comparison="3" />
<!--标记ID zwvn-->
           <rule id="545" eventid="2054649455" timespan="60" comparison="3" />
<!--标记ID zwvo-->
           <rule id="546" eventid="2054649456" timespan="60" comparison="3" />
<!--标记ID zwvp-->
           <rule id="547" eventid="2054649457" timespan="60" comparison="3" />
<!--标记ID zwvq-->
           <rule id="548" eventid="2054649458" timespan="60" comparison="3" />
<!--标记ID zwvr-->
           <rule id="549" eventid="2054649459" timespan="60" comparison="3" />
<!--标记ID zwvs-->
           <rule id="550" eventid="2054649465" timespan="60" comparison="3" />
<!--标记ID zwvy-->
           <rule id="551" eventid="2054649466" timespan="60" comparison="3" />
<!--标记ID zwvz-->
           <rule id="552" eventid="2054649697" timespan="60" comparison="3" />
<!--标记ID zwwa-->
           <rule id="553" eventid="2054649698" timespan="60" comparison="3" />
<!--标记ID zwwb-->
           <rule id="554" eventid="2054649699" timespan="60" comparison="3" />
<!--标记ID zwwc-->
           <rule id="558" eventid="2054776678" timespan="60" comparison="3" />
<!--标记ID zygf-->
           <rule id="559" eventid="2003202933" timespan="60" comparison="3" />
<!--标记ID wfsu-->
           <rule id="560" eventid="1987537016" timespan="60" comparison="3" />
<!--标记ID vwhx-->
           <rule id="561" eventid="808810804" timespan="60" comparison="3" />
<!--标记ID 05y4-->
           <rule id="562" eventid="808810854" timespan="60" comparison="3" />
<!--标记ID 05yf-->
           <!--Office 12规则-->
           <rule id="647" eventid="879388217" timespan="30" comparison="3" />
<!--标记ID 4jf9-->
           <rule id="648" eventid="879325234" timespan="30" comparison="3" />
<!--标记ID 4ip2-->
          <rule id="649" eventid="879325284" timespan="30" comparison="3" />
<!--标记ID 4ipd-->
          <rule id="650" eventid="879325285" timespan="30" comparison="3" />
<!--标记ID 4ipe-->
           <rule id="651" eventid="879325286" timespan="30" comparison="3" />
<!--标记ID 4ipf-->
           <rule id="652" eventid="879325288" timespan="30" comparison="3" />
<!--标记ID 4iph-->
           <rule id="653" eventid="879325290" timespan="30" comparison="3" />
<!--标记ID 4ipj-->
           <rule id="654" eventid="879325291" timespan="30" comparison="3" />
<!--标记ID 4ipk-->
           <rule id="657" eventid="879325544" timespan="1800" comparison="3" />
<!--标记ID 4iqh-->
           <rule id="659" eventid="879325546" timespan="1800" comparison="3" />
<!--标记ID 4iqj-->
           <rule id="660" eventid="879325547" timespan="1800" comparison="3" />
<!--标记ID 4iqk-->
           <rule id="661" eventid="879325235" timespan="30" comparison="3" />
<!--标记ID 4ip3-->
           <rule id="662" eventid="879325236" timespan="30" comparison="3" />
<!--标记ID 4ip4-->
           <rule id="665" eventid="879325549" timespan="1800" comparison="3" />
<!--标记ID 4iqm-->
           <rule id="667" eventid="879325495" timespan="1800" comparison="3" />
<!--标记ID 4iq7-->
           <rule id="668" eventid="879325496" timespan="1800" comparison="3" />
<!--标记ID 4iq8-->
           <rule id="669" eventid="879325496" timespan="600" comparison="3" />
<!--标记ID 4iq8-->
           <rule id="670" eventid="879325497" timespan="900" comparison="3" />
<!--标记ID 4iq9-->
           <rule id="672" eventid="879325551" timespan="30" comparison="3" />
<!--标记ID 4iqo-->
           <rule id="711" eventid="879385268" timespan="30" comparison="3" />
<!--标记ID 4jfl-->
           <rule id="712" eventid="879388269" timespan="30" comparison="3" />
<!--标记ID 4jfm-->
           <rule id="727" eventid="879326060" timespan="60" comparison="3" />
<!--标记ID 4isl-->
           <rule id="729" eventid="879388264" timespan="30" comparison="3" />
<!--标记ID 4jfh-->
           <rule id="731" eventid="879388260" timespan="30" comparison="3" />
<!--标记ID 4jfd-->
           <rule id="732" eventid="879388263" timespan="30" comparison="3" />
<!--标记ID 4jfg-->
           <rule id="733" eventid="892826425" timespan="30" comparison="3" />
<!--标记ID 57s9-->
           <rule id="734" eventid="892826466" timespan="30" comparison="3" />
<!--标记ID 57sb-->
           <rule id="735" eventid="879326315" timespan="60" comparison="3" />
<!--标记ID 4itk-->
           <rule id="736" eventid="879325810" timespan="60" comparison="3" />
<!--标记ID 4irr-->
           <rule id="737" eventid="879326311" timespan="60" comparison="3" />
<!--标记ID 4itg-->
           <rule id="738" eventid="879325815" timespan="60" comparison="3" />
<!--标记ID 4irw-->
           <rule id="739" eventid="879325548" timespan="1800" comparison="3" />
<!--标记ID 4iql-->
           <rule id="741" eventid="879325238" timespan="1800" comparison="3" />
<!--标记ID 4ip6-->
           <rule id="742" eventid="879325239" timespan="1800" comparison="3" />
<!--标记ID 4ip7-->
           <rule id="743" eventid="879325240" timespan="1800" comparison="3" />
<!--标记ID 4ip8-->
           <rule id="744" eventid="879325241" timespan="1800" comparison="3" />
<!--标记ID 4ip9-->
           <rule id="745" eventid="879325281" timespan="1800" comparison="3" />
<!--标记ID 4ipa-->
           <rule id="746" eventid="879325282" timespan="1800" comparison="3" />
<!--标记ID 4ipb-->
           <rule id="747" eventid="879325304" timespan="1800" comparison="3" />
<!--标记ID 4ipx-->
           <rule id="748" eventid="879325305" timespan="1800" comparison="3" />
<!--标记ID 4ipy-->
           <rule id="749" eventid="879325302" timespan="1800" comparison="3" />
<!--标记ID 4ipv-->
           <rule id="750" eventid="879325303" timespan="1800" comparison="3" />
<!--标记ID 4ipw-->
           <rule id="751" eventid="879325494" timespan="1800" comparison="3" />
<!--标记ID 4iq6-->
           <rule id="752" eventid="879325289" timespan="1800" comparison="3" />
<!--标记ID 4ipi-->
           <rule id="754" eventid="879325488" timespan="1800" comparison="3" />
<!--标记ID 4iq0-->
           <rule id="755" eventid="879325306" timespan="1800" comparison="3" />
<!--标记ID 4ipz-->
           <rule id="757" eventid="879325292" timespan="1800" comparison="3" />
<!--标记ID 4ipl-->
           <rule id="758" eventid="879325293" timespan="1800" comparison="3" />
<!--标记ID 4ipm-->
           <rule id="759" eventid="879325294" timespan="1800" comparison="3" />
<!--标记ID 4ipn-->
           <rule id="760" eventid="879325295" timespan="1800" comparison="3" />
<!--标记ID 4ipo-->
           <rule id="767" eventid="879325284" timespan="30" comparison="3" />
<!--标记ID 4ipd-->
           <rule id="768" eventid="879325285" timespan="30" comparison="3" />
<!--标记ID 4ipe-->
           <rule id="769" eventid="879386995" timespan="1800" comparison="3" />
<!--标记ID 4jas-->
           <rule id="770" eventid="879387507" timespan="600" comparison="3" />
<!--标记ID 4jcs-->
           <rule id="773" eventid="879324214" timespan="300" comparison="3" />
<!--标记ID 4il6-->
           <rule id="774" eventid="879323759" timespan="300" comparison="3" />
<!--标记ID 4ijo-->
           <rule id="775" eventid="879386994" timespan="300" comparison="3" />
<!--标记ID 4jar-->
           <rule id="777" eventid="879386934" timespan="30" comparison="3" />
<!--标记ID 4ja6-->
           <rule id="778" eventid="876176504" timespan="60" comparison="3" />
<!--标记ID 49dx-->
           <rule id="779" eventid="876176505" timespan="60" comparison="3" />
<!--标记ID 49dy-->
           <rule id="780" eventid="876176506" timespan="60" comparison="3" />
<!--标记ID 49dz-->
           <rule id="781" eventid="876176688" timespan="60" comparison="3" />
<!--标记ID 49e0-->
           <rule id="782" eventid="876176689" timespan="60" comparison="3" />
<!--标记ID 49el-->
           <rule id="783" eventid="876176690" timespan="60" comparison="3" />
<!--标记ID 49e2-->
           <rule id="784" eventid="876176691" timespan="60" comparison="3" />
<!--标记ID 49e3-->
           <rule id="785" eventid="876176692" timespan="60" comparison="3" />
<!--标记ID 49e4-->
           <rule id="786" eventid="876176694" timespan="60" comparison="3" />
<!--标记ID 49e6-->
           <rule id="787" eventid="876176696" timespan="60" comparison="3" />
<!--标记ID 49e8-->
           <rule id="788" eventid="876176697" timespan="60" comparison="3" />
<!--标记ID 49e9-->
           <rule id="789" eventid="876176737" timespan="60" comparison="3" />
<!--标记ID 49ea-->
           <rule id="790" eventid="876176738" timespan="60" comparison="3" />
<!--标记ID 49eb-->
           <rule id="791" eventid="876176739" timespan="60" comparison="3" />
<!--标记ID 49ec-->
           <rule id="792" eventid="876176740" timespan="60" comparison="3" />
<!--标记ID 49ed-->
           <rule id="793" eventid="876176741" timespan="60" comparison="3" />
<!--标记ID 49ee-->
           <rule id="794" eventid="876176742" timespan="60" comparison="3" />
<!--标记ID 49ef-->
           <rule id="795" eventid="876176743" timespan="60" comparison="3" />
<!--标记ID 49eg-->
           <rule id="796" eventid="876176744" timespan="60" comparison="3" />
<!--标记ID 49eh-->
           <rule id="797" eventid="876176746" timespan="60" comparison="3" />
<!--标记ID 49ej-->
           <rule id="798" eventid="876176747" timespan="60" comparison="3" />
<!--标记ID 49ek-->
           <rule id="799" eventid="876176748" timespan="60" comparison="3" />
<!--标记ID 49el-->
           <rule id="800" eventid="876176749" timespan="60" comparison="3" />
<!--标记ID 49em-->
           <rule id="801" eventid="876176750" timespan="60" comparison="3" />
<!--标记ID 49en-->
           <rule id="802" eventid="876176751" timespan="60" comparison="3" />
<!--标记ID 49eo-->
           <rule id="803" eventid="876176752" timespan="60" comparison="3" />
<!--标记ID 49ep-->
           <rule id="804" eventid="876176754" timespan="60" comparison="3" />
<!--标记ID 49er-->
           <rule id="805" eventid="876176945" timespan="60" comparison="3" />
<!--标记ID 49f1-->
           <rule id="806" eventid="876176947" timespan="60" comparison="3" />
<!--标记ID 49f3-->
           <rule id="807" eventid="876176949" timespan="60" comparison="3" />
<!--标记ID 49f5-->
           <rule id="808" eventid="876176951" timespan="60" comparison="3" />
<!--标记ID 49f7-->
           <rule id="809" eventid="876176952" timespan="60" comparison="3" />
<!--标记ID 49f8-->
           <rule id="810" eventid="876176995" timespan="60" comparison="3" />
<!--标记ID 49fc-->
           <rule id="811" eventid="876176997" timespan="60" comparison="3" />
<!--标记ID 49fe-->
           <rule id="812" eventid="876176998" timespan="60" comparison="3" />
<!--标记ID 49ff-->
           <rule id="813" eventid="876176999" timespan="60" comparison="3" />
<!--标记ID 49fg-->
           <rule id="814" eventid="876177000" timespan="60" comparison="3" />
<!--标记ID 49fh-->
           <rule id="815" eventid="876177001" timespan="60" comparison="3" />
<!--标记ID 49fi-->
           <rule id="816" eventid="876177002" timespan="60" comparison="3" />
<!--标记ID 49fj-->
           <rule id="817" eventid="876177003" timespan="60" comparison="3" />
<!--标记ID 49fk-->
           <rule id="818" eventid="876177004" timespan="60" comparison="3" />
<!--标记ID 49f1-->
           <rule id="819" eventid="876177005" timespan="60" comparison="3" />
<!--标记ID 49fm-->
           <rule id="820" eventid="876177006" timespan="60" comparison="3" />
<!--标记ID 49fh-->
           <rule id="821" eventid="876177007" timespan="60" comparison="3" />
<!--标记ID 49fo-->
           <rule id="822" eventid="876177008" timespan="60" comparison="3" />
<!--标记ID 49fp-->
           <rule id="823" eventid="876177009" timespan="60" comparison="3" />
<!--标记ID 49fq-->
           <rule id="824" eventid="876177010" timespan="60" comparison="3" />
<!--标记ID 49fr-->
           <rule id="825" eventid="876177011" timespan="60" comparison="3" />
<!--标记ID 49fs-->
           <rule id="826" eventid="876177012" timespan="60" comparison="3" />
<!--标记ID 49ft-->
           <rule id="827" eventid="876177013" timespan="60" comparison="3" />
<!--标记ID 49fu-->
           <rule id="828" eventid="876177014" timespan="60" comparison="3" />
<!--标记ID 49fv-->
           <rule id="829" eventid="876177015" timespan="60" comparison="3" />
<!--标记ID 49fw-->
           <rule id="830" eventid="876177016" timespan="60" comparison="3" />
<!--标记ID 49fx-->
           <rule id="831" eventid="876177017" timespan="60" comparison="3" />
<!--标记ID 49fy-->
           <rule id="832" eventid="876177018" timespan="60" comparison="3" />
<!--标记ID 49fz-->
           <rule id="833" eventid="876177201" timespan="60" comparison="3" />
<!--标记ID 49gl-->
          <rule id="834" eventid="876177202" timespan="60" comparison="3" />
<!--标记ID 49g2-->
          <rule id="835" eventid="876177204" timespan="60" comparison="3" />
<!--标记ID 49g4-->
          <rule id="836" eventid="876177207" timespan="60" comparison="3" />
<!--标记ID 49g7-->
          <rule id="837" eventid="876177209" timespan="60" comparison="3" />
<!--标记ID 49g9-->
          <rule id="838" eventid="876177249" timespan="60" comparison="3" />
<!--标记ID 49ga-->
          <rule id="839" eventid="876177250" timespan="60" comparison="3" />
<!--标记ID 49gb-->
          <rule id="840" eventid="876177251" timespan="60" comparison="3" />
<!--标记ID 49gc-->
          <rule id="841" eventid="876177252" timespan="60" comparison="3" />
<!--标记ID 49gd-->
          <rule id="842" eventid="876177253" timespan="60" comparison="3" />
<!--标记ID 49ge-->
          <rule id="843" eventid="876177254" timespan="60" comparison="3" />
<!--标记ID 49gf-->
          <rule id="844" eventid="876177255" timespan="60" comparison="3" />
<!--标记ID 49gg-->
          <rule id="845" eventid="876177256" timespan="60" comparison="3" />
<!--标记ID 49gh-->
          <rule id="846" eventid="876177257" timespan="60" comparison="3" />
<!--标记ID 49gi-->
          <rule id="847" eventid="876177258" timespan="60" comparison="3" />
<!--标记ID 49gj-->
           <rule id="848" eventid="876177259" timespan="60" comparison="3" />
<!--标记ID 49gk-->
           <rule id="849" eventid="876177260" timespan="60" comparison="3" />
<!--标记ID 49gl-->
           <rule id="850" eventid="876177266" timespan="60" comparison="3" />
<!--标记ID 49gr-->
           <rule id="851" eventid="876177267" timespan="60" comparison="3" />
<!--标记ID 49gs-->
           <rule id="852" eventid="876177268" timespan="60" comparison="3" />
<!--标记ID 49gt-->
           <rule id="853" eventid="876177269" timespan="60" comparison="3" />
<!--标记ID 49gu-->
           <rule id="854" eventid="876177270" timespan="60" comparison="3" />
<!--标记ID 49gv-->
           <rule id="858" eventid="879387189" timespan="60" comparison="3" />
<!--标记ID 4jb5-->
           <rule id="859" eventid="879386977" timespan="60" comparison="3" />
<!--标记ID 4jaa-->
           <rule id="860" eventid="879376755" timespan="60" comparison="3" />
<!--标记ID 4j9s-->
           <rule id="861" eventid="879387705" timespan="60" comparison="3" />
<!--标记ID 4jd9-->
           <rule id="862" eventid="879388003" timespan="60" comparison="3" />
<!--标记ID 4jec-->
       </countingrules>
       <thresholds>
           <!--Office 11阈值-->
           <threshold id="442"ruleid="347"value="0"comparison="2"/>
           <threshold id="443"ruleid="348"value="0"comparison="2"/>
               <threshold id="444"ruleid="349"value="0"comparison="2"/>
               <threshold id="445"ruleid="350"value="0"comparison="2"/>
               <threshold id="446"ruleid="351"value="0"comparison="2"/>
               <threshold id="447"ruleid="352"value="0"comparison="2"/>
               <threshold id="448"ruleid="353"value="5"comparison="2"/>
               <threshold id="449"ruleid="354"value="0"comparison="2"/>
               <threshold id="452"ruleid="357"value="2"comparison="2"/>
               <threshold id="454"ruleid="359"value="50"comparison="2"/>
               <threshold id="455"ruleid="360"value="50"comparison="2"/>
               <threshold id="456"ruleid="361"value="0"comparison="2"/>
               <threshold id="457"ruleid="362"value="0"comparison="2"/>
               <threshold id="460"ruleid="365"value="50"comparison="2"/>
               <threshold id="462"ruleid="367"value="50"comparison="2"/>
               <threshold id="463"ruleid="368"value="50"comparison="2"/>
               <threshold id="464"ruleid="369"value="30"comparison="2"/>
               <threshold id="465"ruleid="370"value="50"comparison="2"/>
               <threshold id="467"ruleid="372"value="0"comparison="2"/>
               <threshold id="468"ruleid="373"value="0"comparison="2"/>   <!--仍需要
转换-->
               <threshold id="480"ruleid="385"value="0"comparison="2"/>  <!--仍需要
转换-->
               <threshold id="482"ruleid="387"value="0"comparison="2"/>  <!--仍需要
转换-->
               <threshold id="485"ruleid="390"value="0"comparison="2"/>  <!--仍需要
转换-->
               <threshold id="486"ruleid="391"value="0"comparison="2"/>  <!--仍需要
转换-->
               <threshold id="506"ruleid="411"value="0"comparison="2"/>
               <threshold id="507"ruleid="412"value="0"comparison="2"/>
      <threshold id="522"ruleid="427"value="1"comparison="2"/>
      <threshold id="524"ruleid="429"value="0"comparison="2"/>
      <threshold id="526"ruleid="431"value="0"comparison="2"/>
      <threshold id="527"ruleid="432"value="0"comparison="2"/>
      <threshold id="528"ruleid="433"value="0"comparison="2"/>
      <threshold id="529"ruleid="434"value="0"comparison="2"/>
      <threshold id="530"ruleid="435"value="1"comparison="2"/>
      <threshold id="531"ruleid="436"value="1"comparison="2"/>
      <threshold id="531"ruleid="437"value="10"comparison="2"/>
      <threshold id="533"ruleid="438"value="1"comparison="2"/>
      <threshold id="534"ruleid="439"value="5"comparison="2"/>
      <threshold id="536"ruleid="441"value="5"comparison="2"/>
      <threshold id="537"ruleid="442"value="5"comparison="2"/>
      <threshold id="538"ruleid="443"value="5"comparison="2"/>
      <threshold id="539"ruleid="444"value="5"comparison="2"/>
      <threshold id="540"ruleid="445"value="5"comparison="2"/>
      <threshold id="541"ruleid="446"value="5"comparison="2"/>
      <threshold id="542"ruleid="447"value="25"comparison="2"/>
      <threshold id="543"ruleid="448"value="50"comparison="2"/>
      <threshold id="544"ruleid="449"value="2"comparison="2"/>
      <threshold id="545"ruleid="450"value="50"comparison="2"/>
      <threshold id="546"ruleid="451"value="50"comparison="2"/>
      <threshold id="547"ruleid="452"value="5"comparison="2"/>
      <threshold id="549"ruleid="454"value="50"comparison="2"/>
      <threshold id="550"ruleid="455"value="50"comparison="2"/>
      <threshold id="552"ruleid="457"value="2"comparison="2"/>
      <threshold id="553"ruleid="458"value="10"comparison="2"/>
      <threshold id="554"ruleid="459"value="50"comparison="2"/>
      <threshold id="555"ruleid="460"value="50"comparison="2"/>
              <threshold id="556"ruleid="461"value="0"comparison="2"/><!--仍需要
转换-->
              <threshold id="557"ruleid="462"value="0"comparison="2"/><!--仍需要
转换-->
              <threshold id="558"ruleid="463"value="0"comparison="2"/><!--仍需要
转换-->
              <threshold id="559"ruleid="464"value="0"comparison="2"/><!--仍需要
转换-->
              <threshold id="560"ruleid="465"value="0"comparison="2"/><!--仍需要
转换-->
              <threshold id="562"ruleid="467"value="0"comparison="2"/>
              <threshold id="563"ruleid="468"value="0"comparison="2"/>
              <threshold id="564"ruleid="469"value="11"comparison="2"/>
              <threshold id="565"ruleid="470"value="11"comparison="2"/>
              <threshold id="568"ruleid="473"value="100"comparison="2"/>
              <threshold id="569"ruleid="474"value="100"comparison="2"/>
              <threshold id="570"ruleid="475"value="50"comparison="2"/>
              <threshold id="572"ruleid="477"value="3"comparison="2"/>
              <threshold id="573"ruleid="478"value="5"comparison="2"/>
              <threshold id="574"ruleid="479"value="3"comparison="2"/>
              <threshold id="575"ruleid="480"value="3"comparison="2"/>
              <threshold id="576"ruleid="481"value="3"comparison="2"/>
              <threshold id="577"ruleid="482"value="3"comparison="2"/>
              <threshold id="578"ruleid="483"value="3"comparison="2"/>
              <threshold id="579"ruleid="484"value="3"comparison="2"/>
              <threshold id="580"ruleid="485"value="3"comparison="2"/>
              <threshold id="581"ruleid="486"value="3"comparison="2"/>
              <threshold id="582"ruleid="487"value="3"comparison="2"/>
              <threshold id="583"ruleid="488"value="3"comparison="2"/>
        <threshold id="584"ruleid="489"value="3"comparison="2"/>
        <threshold id="585"ruleid="490"value="3"comparison="2"/>
        <threshold id="586"ruleid="491"value="3"comparison="2"/>
        <threshold id="587"ruleid="492"value="3"comparison="2"/>
        <threshold id="588"ruleid="493"value="3"comparison="2"/>
        <threshold id="589"ruleid="494"value="3"comparison="2"/>
        <threshold id="590"ruleid="495"value="3"comparison="2"/>
        <threshold id="591"ruleid="496"value="3"comparison="2"/>
        <threshold id="592"ruleid="497"value="3"comparison="2"/>
        <threshold id="593"ruleid="498"value="3"comparison="2"/>
        <threshold id="594"ruleid="499"value="3"comparison="2"/>
        <threshold id="595"ruleid="500"value="3"comparison="2"/>
        <threshold id="596"ruleid="501"value="3"comparison="2"/>
        <threshold id="597"ruleid="502"value="3"comparison="2"/>
        <threshold id="598"ruleid="503"value="3"comparison="2"/>
        <threshold id="599"ruleid="504"value="3"comparison="2"/>
        <threshold id="600"ruleid="505"value="3"comparison="2"/>
        <threshold id="601"ruleid="506"value="3"comparison="2"/>
        <threshold id="602"ruleid="507"value="3"comparison="2"/>
        <threshold id="603"ruleid="508"value="3"comparison="2"/>
        <threshold id="604"ruleid="509"value="3"comparison="2"/>
        <threshold id="605"ruleid="510"value="3"comparison="2"/>
        <threshold id="606"ruleid="511"value="3"comparison="2"/>
        <threshold id="607"ruleid="512"value="3"comparison="2"/>
        <threshold id="608"ruleid="513"value="3"comparison="2"/>
        <threshold id="609"ruleid="514"value="3"comparison="2"/>
        <threshold id="610"ruleid="515"value="3"comparison="2"/>
        <threshold id="611"ruleid="516"value="3"comparison="2"/>
        <threshold id="612"ruleid="517"value="3"comparison="2"/>
        <threshold id="613"ruleid="518"value="3"comparison="2"/>
        <threshold id="614"ruleid="519"value="3"comparison="2"/>
        <threshold id="615"ruleid="520"value="3"comparison="2"/>
        <threshold id="616"ruleid="521"value="3"comparison="2"/>
        <threshold id="617"ruleid="522"value="3"comparison="2"/>
        <threshold id="618"ruleid="523"value="3"comparison="2"/>
        <threshold id="619"ruleid="524"value="3"comparison="2"/>
        <threshold id="620"ruleid="525"value="3"comparison="2"/>
        <threshold id="621"ruleid="526"value="3"comparison="2"/>
        <threshold id="622"ruleid="527"value="3"comparison="2"/>
        <threshold id="623"ruleid="528"value="3"comparison="2"/>
        <threshold id="624"ruleid="529"value="3"comparison="2"/>
        <threshold id="625"ruleid="530"value="3"comparison="2"/>
        <threshold id="626"ruleid="531"value="3"comparison="2"/>
        <threshold id="627"ruleid="532"value="3"comparison="2"/>
        <threshold id="628"ruleid="533"value="3"comparison="2"/>
        <threshold id="629"ruleid="534"value="3"comparison="2"/>
        <threshold id="630"ruleid="535"value="3"comparison="2"/>
        <threshold id="631"ruleid="536"value="3"comparison="2"/>
        <threshold id="632"ruleid="537"value="3"comparison="2"/>
        <threshold id="633"ruleid="538"value="3"comparison="2"/>
        <threshold id="634"ruleid="539"value="3"comparison="2"/>
        <threshold id="635"ruleid="540"value="3"comparison="2"/>
        <threshold id="636"ruleid="541"value="3"comparison="2"/>
        <threshold id="637"ruleid="542"value="3"comparison="2"/>
        <threshold id="638"ruleid="543"value="3"comparison="2"/>
        <threshold id="639"ruleid="544"value="3"comparison="2"/>
        <threshold id="640"ruleid="545"value="3"comparison="2"/>
        <threshold id="641"ruleid="546"value="3"comparison="2"/>
        <threshold id="642"ruleid="547"value="3"comparison="2"/>
        <threshold id="643"ruleid="548"value="3"comparison="2"/>
        <threshold id="644"ruleid="549"value="3"comparison="2"/>
        <threshold id="645"ruleid="550"value="3"comparison="2"/>
        <threshold id="646"ruleid="551"value="3"comparison="2"/>
        <threshold id="647"ruleid="552"value="3"comparison="2"/>
        <threshold id="648"ruleid="553"value="3"comparison="2"/>
        <threshold id="649"ruleid="554"value="3"comparison="2"/>
        <threshold id="653"ruleid="558"value="1"comparison="2"/>
        <threshold id="654"ruleid="559"value="1"comparison="2"/>
        <threshold id="655"ruleid="560"value="1"comparison="2"/>
        <threshold id="656"ruleid="561"value="1"comparison="2"/>
        <threshold id="657"ruleid="562"value="1"comparison="2"/>
        <!--Office 12阈值-->
        <threshold id="670"ruleid="647"value="0"comparison="2"/>
        <threshold id="671"ruleid="648"value="0"comparison="2"/>
        <threshold id="672"ruleid="649"value="0"comparison="2"/>
        <threshold id="673"ruleid="650"value="0"comparison="2"/>
        <threshold id="674"ruleid="651"value="0"comparison="2"/>
        <threshold id="675"ruleid="652"value="0"comparison="2"/>
        <threshold id="676"ruleid="653"value="5"comparison="2"/>
        <threshold id="677"ruleid="654"value="0"comparison="2"/>
        <threshold id="678"ruleid="657"value="2"comparison="2"/>
        <threshold id="679"ruleid="659"value="50"comparison="2"/>
        <threshold id="680"ruleid="660"value="50"comparison="2"/>
        <threshold id="681"ruleid="661"value="0"comparison="2"/>
        <threshold id="682"ruleid="662"value="0"comparison="2"/>
        <threshold id="683"ruleid="665"value="50"comparison="2"/>
        <threshold id="684"ruleid="667"value="50"comparison="2"/>
         <threshold id="685"ruleid="668"value="50"comparison="2"/>
         <threshold id="686"ruleid="669"value="30"comparison="2"/>
         <threshold id="687"ruleid="670"value="50"comparison="2"/>
         <threshold id="688"ruleid="672"value="0"comparison="2"/>
         <threshold id="689"ruleid="711"value="0"comparison="2"/>
         <threshold id="690"ruleid="712"value="0"comparison="2"/>
         <threshold id="691"ruleid="727"value="1"comparison="2"/>
         <threshold id="692"ruleid="729"value="0"comparison="2"/>
         <threshold id="693"ruleid="731"value="0"comparison="2"/>
         <threshold id="694"ruleid="732"value="0"comparison="2"/>
         <threshold id="658"ruleid="733"value="0"comparison="2"/>
         <threshold id="659"ruleid="734"value="0"comparison="2"/>
         <threshold id="695"ruleid="735"value="1"comparison="2"/>
         <threshold id="696"ruleid="736"value="1"comparison="2"/>
         <threshold id="697"ruleid="737"value="10"comparison="2"/>
         <threshold id="698"ruleid="738"value="1"comparison="2"/>
         <threshold id="699"ruleid="739"value="5"comparison="2"/>
         <threshold id="700"ruleid="741"value="5"comparison="2"/>
         <threshold id="701"ruleid="742"value="5"comparison="2"/>
         <threshold id="702"ruleid="743"value="5"comparison="2"/>
         <threshold id="703"ruleid="744"value="5"comparison="2"/>
         <threshold id="704"ruleid="745"value="5"comparison="2"/>
         <threshold id="705"ruleid="746"value="5"comparison="2"/>
         <threshold id="706"ruleid="747"value="25"comparison="2"/>
         <threshold id="707"ruleid="748"value="50"comparison="2"/>
         <threshold id="708"ruleid="749"value="2"comparison="2"/>
         <threshold id="709"ruleid="750"value="50"comparison="2"/>
         <threshold id="710"ruleid="751"value="50"comparison="2"/>
         <threshold id="711"ruleid="752"value="5"comparison="2"/>
        <threshold id="712"ruleid="754"value="50"comparison="2"/>
        <threshold id="713"ruleid="755"value="50"comparison="2"/>
        <threshold id="714"ruleid="757"value="2"comparison="2"/>
        <threshold id="715"ruleid="758"value="10"comparison="2"/>
        <threshold id="716"ruleid="759"value="50"comparison="2"/>
        <threshold id="717"ruleid="760"value="50"comparison="2"/>
        <threshold id="718"ruleid="767"value="0"comparison="2"/>
        <threshold id="719"ruleid="768"value="0"comparison="2"/>
        <threshold id="720"ruleid="769"value="11"comparison="2"/>
        <threshold id="721"ruleid="770"value="11"comparison="2"/>
        <threshold id="722"ruleid="773"value="100"comparison="2"/>
        <threshold id="723"ruleid="774"value="100"comparison="2"/>
        <threshold id="724"ruleid="775"value="50"comparison="2"/>
        <threshold id="725"ruleid="777"value="3"comparison="2"/>
        <threshold id="726"ruleid="778"value="5"comparison="2"/>
        <threshold id="727"ruleid="779"value="3"comparison="2"/>
        <threshold id="728"ruleid="780"value="3"comparison="2"/>
        <threshold id="729"ruleid="781"value="3"comparison="2"/>
        <threshold id="730"ruleid="782"value="3"comparison="2"/>
        <threshold id="731"ruleid="783"value="3"comparison="2"/>
        <threshold id="732"ruleid="784"value="3"comparison="2"/>
        <threshold id="733"ruleid="785"value="3"comparison="2"/>
        <threshold id="734"ruleid="786"value="3"comparison="2"/>
        <threshold id="735"ruleid="787"value="3"comparison="2"/>
        <threshold id="736"ruleid="788"value="3"comparison="2"/>
        <threshold id="737"ruleid="789"value="3"comparison="2"/>
        <threshold id="738"ruleid="790"value="3"comparison="2"/>
        <threshold id="739"ruleid="791"value="3"comparison="2"/>
        <threshold id="740"ruleid="792"value="3"comparison="2"/>
       <threshold id="741"ruleid="793"value="3"comparison="2"/>
       <threshold id="742"ruleid="794"value="3"comparison="2"/>
       <threshold id="743"ruleid="795"value="3"comparison="2"/>
       <threshold id="744"ruleid="796"value="3"comparison="2"/>
       <threshold id="745"ruleid="797"value="3"comparison="2"/>
       <threshold id="746"ruleid="798"value="3"comparison="2"/>
       <threshold id="747"ruleid="799"value="3"comparison="2"/>
       <threshold id="748"ruleid="800"value="3"comparison="2"/>
       <threshold id="749"ruleid="801"value="3"comparison="2"/>
       <threshold id="750"ruleid="802"value="3"comparison="2"/>
       <threshold id="751"ruleid="803"value="3"comparison="2"/>
       <threshold id="752"ruleid="804"value="3"comparison="2"/>
       <threshold id="753"ruleid="805"value="3"comparison="2"/>
       <threshold id="754"ruleid="806"value="3"comparison="2"/>
       <threshold id="755"ruleid="807"value="3"comparison="2"/>
       <threshold id="756"ruleid="808"value="3"comparison="2"/>
       <threshold id="757"ruleid="809"value="3"comparison="2"/>
       <threshold id="758"ruleid="810"value="3"comparison="2"/>
       <threshold id="759"ruleid="811"value="3"comparison="2"/>
       <threshold id="760"ruleid="812"value="3"comparison="2"/>
       <threshold id="761"ruleid="813"value="3"comparison="2"/>
       <threshold id="762"ruleid="814"value="3"comparison="2"/>
       <threshold id="763"ruleid="815"value="3"comparison="2"/>
       <threshold id="764"ruleid="816"value="3"comparison="2"/>
       <threshold id="765"ruleid="817"value="3"comparison="2"/>
       <threshold id="766"ruleid="818"value="3"comparison="2"/>
       <threshold id="767"ruleid="819"value="3"comparison="2"/>
       <threshold id="768"ruleid="820"value="3"comparison="2"/>
       <threshold id="769"ruleid="821"value="3"comparison="2"/>
        <threshold id="770"ruleid="822"value="3"comparison="2"/>
        <threshold id="771"ruleid="823"value="3"comparison="2"/>
        <threshold id="772"ruleid="824"value="3"comparison="2"/>
        <threshold id="773"ruleid="825"value="3"comparison="2"/>
        <threshold id="774"ruleid="826"value="3"comparison="2"/>
        <threshold id="775"ruleid="827"value="3"comparison="2"/>
        <threshold id="776"ruleid="828"value="3"comparison="2"/>
        <threshold id="777"ruleid="829"value="3"comparison="2"/>
        <threshold id="778"ruleid="830"value="3"comparison="2"/>
        <threshold id="779"ruleid="831"value="3"comparison="2"/>
        <threshold id="780"ruleid="832"value="3"comparison="2"/>
        <threshold id="781"ruleid="833"value="3"comparison="2"/>
        <threshold id="782"ruleid="834"value="3"comparison="2"/>
        <threshold id="783"ruleid="835"value="3"comparison="2"/>
        <threshold id="784"ruleid="836"value="3"comparison="2"/>
        <threshold id="785"ruleid="837"value="3"comparison="2"/>
        <threshold id="786"ruleid="838"value="3"comparison="2"/>
        <threshold id="787"ruleid="839"value="3"comparison="2"/>
        <threshold id="788"ruleid="840"value="3"comparison="2"/>
        <threshold id="789"ruleid="841"value="3"comparison="2"/>
        <threshold id="790"ruleid="842"value="3"comparison="2"/>
        <threshold id="791"ruleid="843"value="3"comparison="2"/>
        <threshold id="792"ruleid="844"value="3"comparison="2"/>
        <threshold id="793"ruleid="845"value="3"comparison="2"/>
        <threshold id="794"ruleid="846"value="3"comparison="2"/>
        <threshold id="795"ruleid="847"value="3"comparison="2"/>
        <threshold id="796"ruleid="848"value="3"comparison="2"/>
        <threshold id="797"ruleid="849"value="3"comparison="2"/>
        <threshold id="798"ruleid="850"value="3"comparison="2"/>
          <threshold id="799"ruleid="851"value="3"comparison="2"/>
          <threshold id="800"ruleid="852"value="3"comparison="2"/>
          <threshold id="801"ruleid="853"value="3"comparison="2"/>
          <threshold id="802"ruleid="854"value="3"comparison="2"/>
          <threshold id="803"ruleid="858"value="1"comparison="2"/>
          <threshold id="804"ruleid="859"value="1"comparison="2"/>
          <threshold id="805"ruleid="860"value="1"comparison="2"/>
          <threshold id="806"ruleid="861"value="1"comparison="2"/>
          <threshold id="807"ruleid="862"value="1"comparison="2"/>
     </thresholds>
          </monitorconfig>
          </ulsconfig>
  ]]>
  </Record>
  </Genre>
-<!--ULSAPICONFIG
  -->
-<Genre Name="ULSControl">
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引10
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引20
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引30
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引40
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引50
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引60
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引70
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引80
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引90
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引100
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引110
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引120
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引130
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引140
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
- <!--索引150
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引160
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引170
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引180
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引190
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引200
  -->
  <Record Type="int">100</Record>
  <Record Type="int">20</Record>
  <Record Type="int">100</Record>
  <Record Type="int">20</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">20</Record>
  <Record Type="int">100</Record>
-<!--索引210
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引220
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引230
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引240
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引250
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引260
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引270
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引280
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引290
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引300
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引310
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引320
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引330
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引340
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引350
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引360
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引370
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引380
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引390
  -->
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
  <Record Type="int">100</Record>
-<!--索引400
  -->
  </Genre>
-<Genre Name="SharedCoreFE">
  <Record Type="string">.%IIS-AWS1%</Record>
-<!--注意需要前导(.)
  -->
-<!--用于Utility.kwzDomainForSharedCookie(所有者:JohnFan)的值
  -->
  </Genre>
-<!--子网的AWS智能打开/关闭开关
  -->
-<Genre Name="AWSMarketplaceOn">
  <Record Type="int">1</Record>
-<!--除0之外的任一值表示该功能部件打开
  -->
  </Genre>
-<Genre Name="AWSMarketplacePartnerOn">
  <Record Type="int">1</Record>
-<!--除0之外的任一值表示该功能部件打开
  -->
  </Genre>
-<Genre Name="AWSTemplateOn">
  <Record Type="int">1</Record>
-<!--除0之外的任一值表示该功能部件打开
  -->
  </Genre>
-<Genre Name="AWSClipartOn">
  <Record Type="int">1</Record>
-<!--除0之外的任一值表示该功能部件打开
  -->
  </Genre>
-<Genre Name="AWSTrainingOn">
  <Record Type="int">1</Record>
-<!--除0之外的任一值表示该功能部件打开
  -->
  </Genre>
-<Genre Name="AWSAssistanceOn">
  <Record Type="int">1</Record>
-<!--除0之外的任一值表示该功能部件打开
  -->
  </Genre>
-<Genre Name="AWSServerSearchOn">
  <Record Type="int">1</Record>
-<!--除0之外的任一值表示该功能部件打开
  -->
  </Genre>
-<Genre Name="AWSContentRatingOn">
  <Record Type="int">1</Record>
-<!--除0之外的任一值表示该功能部件打开
  -->
  </Genre>
-<Genre Name="AWSLoggingOn">
  <Record Type="int">1</Record>
-<!--除0之外的任一值表示该功能部件打开
  -->
  </Genre>
-<!--Courier中记录率的缺省值为每隔100人-此覆盖将该值变成2。
  -->
-<Genre Name="AWSLoggingRate">
  <Record Type="int">2</Record>
  </Genre>
-<Genre Name="AWSMarketplacePartnerOn">
  <Record Type="int">1</Record>
-<!--除0之外的任一值表示该功能部件打开
  -->
  </Genre>
-<Genre Name="AWSAPCloneQueryLCIDs">
  <Record Type="string"/>
-<!--我们支持克隆AWS查询以发送至AP的逗号分开的LCID列表。
  -->
  </Genre>
-<Genre Name="AWSAPExecuteQueryLCIDs">
  <Record Type="string"/>
-<!--我们支持向AP发送AWS查询以返回结果的逗号分开的LCID列表。
  -->
  </Genre>
-<Genre Name="AWSAPFreetextRate">
  <Record Type="int">0</Record>
-<!--我们仅向AP发送1/AWSAPFreetextRate查询。<1表示禁用。
  -->
  </Genre>
-<Genre Name="AWSAPFreetextWSUrl">
  <Record Type="string"/>
-<!--AP搜索web服务的URL。
  -->
  </Genre>
  </Group>
-<!--机器角色
  -->
-<Package Name="office.ipo.redirect"Flavor="ship"Version="1">
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1033"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1031"/>
  <Dependency Package="office.shared.ftontend"Flavor="ship"Language="1041"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1025"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1042"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1036"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1028"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="2052"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="3076"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1030"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1040"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1043"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1046"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="3082"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1053"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1044"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1045"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1037"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1054"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1035"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1029"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="2070"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1038"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1049"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1032"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1055"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1048"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1081"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1060"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1061"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1051"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1050"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1062"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1026"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1058"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1063"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="2074"/>
         <Dependency Package="office.shared.frontend.passport.test"Flavor="ship"
Language="1033"/>
         <Dependency Package="clientconfig.frontend"Flavor="ship"Language="1033"/>
         <Dependency Package="office.uis.oredir"Flavor="ship"Language="1033"/>
         <Dependency Package="office.content.webs.oredir"Flavor="ship"Language="1033"/>
         <Dependency Package="office.ipo.ulscommon"Flavor="ship"Language="1033"/>
         <Dependency Package="office.uis.legacyredir"Flavor="ship"Language="1033"/>
         <Dependency Package="office.content.webs.legacyredir"Flavor="ship"
Language="1033"/>
         </Package>
       -<Package Name="office.ipo.aws"Flavor="ship"Version="1">
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1033"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1031"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1041"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1025"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1042"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1036"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1028"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="2052"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="3076"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1030"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1040"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1043"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1046"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="3082"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1053"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1044"/>
       <Dependency Package="office.shared.trontend"Flavor="ship"Language="1045"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1037"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1054"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1035"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1029"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="2070"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1038"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1049"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1032"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1055"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1048"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1081"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1060"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1061"/>
       <Dependency Package="office.shared.frontend"Flavor="ship"Language="1051"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1050"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1062"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1026"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1058"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1063"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="2074"/>
         <Dependency      Package="office.shared.frontend.passport.test"     Flavor="ship"
Language="1033"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1033"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1031"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1041"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1025"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1042"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1036"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1028"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="2052"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="3076"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1030"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1040"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1043"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1046"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="3082"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1053"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1044"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1045"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1037"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1054"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1035"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1029"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="2070"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1038"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1049"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1032"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1055"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1048"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1081"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1060"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1061"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1051"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1050"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1062"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1026"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1058"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1063"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="2074"/>
      -<!--   <Dependency           Package="office.aws.web.test"          Flavor="ship"
Language="1033"/>
         -->
         <Dependency Package="office.content.media"Flavor="ship"Language="1033"/>
         <Dependency Package="office.content.media"Flavor="ship"Language="1031"/>
         <Dependency Package="office.content.media"Flavor="ship"Language="1041"/>
         <Dependency Package="office.content.media"Flavor="ship"Language="1025"/>
         <Dependency Package="office.content.media"Flavor="ship"Language="1042"/>
         <Dependency Package="office.content.media"Flavor="ship"Language="1036"/>
         <Dependency Package="office.content.media"Flavor="ship"Language="1028"/>
         <Dependency Package="office.content.media"Flavor="ship"Language="2052"/>
         <Dependency Package="office.content.media"Flavor="ship"Language="3076"/>
         <Dependency Package="office.content.media"Flavor="ship"Language="1030"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1040"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1043"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1046"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="3082"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1053"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1044"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1045"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1037"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1054"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1035"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1029"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="2070"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1038"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1049"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1032"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1055"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1048"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1081"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1060"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="106l"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1051"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1050"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1062"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1026"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1058"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="1063"/>
      <Dependency Package="office.content.media"Flavor="ship"Language="2074"/>
      <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1033"/>
      <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1031"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1041"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1025"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1042"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1036"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1028"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="2052"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="3076"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1030"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1040"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1043"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1046"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="3082"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1053"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1044"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1045"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1037"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1054"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1035"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1029"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="2070"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1038"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1049"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1032"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1055"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1048"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1081"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1060"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1061"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1051"/>
         <Dependency Package="office.content.n onmedia"Flavor="ship"Language="1050"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1062"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1026"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1058"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1063"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="2074"/>
         <Dependency Package="officeupdate.content.media"Flavor="ship"Language="1033"
/>
         <Dependency Package="office.uis.bitbucket"Flavor="ship"Language="1033"/>
         <Dependency Package="office.ipo.ulscommon"Flavor="ship"Language="1033"/>
         <Dependency        Package="office.content.watson.watsonrc"          Flavor="ship"
Language="1033"/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1033"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1031"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1041"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1025"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1042"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1036"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1028"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="2052"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1030"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1040"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1043"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1046"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="3082"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1053"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1044"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1045"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1037"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1054"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1035"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1029"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="2070"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1038"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1049"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1032"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1055"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1048"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1081"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1060"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1061"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1051"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1050"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1062"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1026"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1058"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="1063"
/>
         <Dependency Package="office.content.watson.alrtintl"Flavor="ship"Language="2074"
/>
         <Dependency Package="office.content.ppt"Flavor="ship"Language="1033"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1033"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1031"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1041"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1025"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1042"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1036"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1028"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="2052"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="3076"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1030"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1040"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1043"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1046"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="3082"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1053"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1044"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1045"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1037"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1054"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1035"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1029"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="2070"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1038"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1049"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1032"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1055"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1048"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1081"/>
      <Dependency Package="office.authoring.research"Flavor="ship"Language="1060"/>
    <Dependency Package="office.authoring.research"Flavor="ship"Language="1061"/>
    <Dependency Package="office.authoring.research"Flavor="ship"Language="1051"/>
    <Dependency Package="office.authoring.research"Flavor="ship"Language="1050"/>
    <Dependency Package="office.authoring.research"Flavor="ship"Language="1062"/>
    <Dependency Package="office.authoring.research"Flavor="ship"Language="1026"/>
    <Dependency Package="office.authoring.research"Flavor="ship"Language="1058"/>
    <Dependency Package="office.authoring.research"Flavor="ship"Language="1063"/>
    <Dependency Package="office.authoring.research"Flavor="ship"Language="2074"/>
    <Dependency Package="office.ipo.ipocsa"Flavor="ship"Language="1033"/>
    <Dependency Package="office.aws.web.static"Flavor="ship"Language="1033"/>
-<!--   <Dependency Package="office.aws.web.csc"Flavor="ship"Language="1033"/>
  -->
  </Package>
-<Package Name="office.ipo.awswebssl"Flavor="ship"Version="1">
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1033"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1031"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1041"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1025"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1042"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1036"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1028"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="2052"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="3076"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1030"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1040"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1043"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1046"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="3082"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1053"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1044"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1045"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1037"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1054"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1035"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1029"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="2070"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1038"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1049"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1032"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1055"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1048"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1081"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1060"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1061"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1051"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1050"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1062"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1026"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1058"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1063"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="2074"/>
         <Dependency      Package="office.shared.frontend.passport.test"     Flavor="ship"
Language="1033"/>
         <Dependency Package="office.ipo.ulscommon"Flavor="ship"Language="1033"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1033"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1031"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1041"/>
         <Dependency Package="office.aws.web"Flavor="ship"Language="1042"/>
       <Dependency Package="office.aws.web"Flavor="ship"Language="1036"/>
       <Dependency Package="office.aws.web"Flavor="ship"Language="1028"/>
       <Dependency Package="office.aws.web"Flavor="ship"Language="3076"/>
       <Dependency Package="office.aws.web"Flavor="ship"Language="1043"/>
       <Dependency Package="office.aws.web"Flavor="ship"Language="3082"/>
       <Dependency Package="office.aws.web"Flavor="ship"Language="1053"/>
       <Dependency Package="office.aws.web"Flavor="ship"Language="1049"/>
       <Dependency Package="office.aws.web"Flavor="ship"Language="1040"/>
       <Dependency Package="office.aws.web"Flavor="ship"Language="1046"/>
       <Dependency Package="office.aws.web"Flavor="ship"Language="2052"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1033"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1031"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1041"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1042"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1036"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1028"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="3076"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1043"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="3082"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1053"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1049"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1040"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="1046"/>
       <Dependency Package="office.aws.web.ssl"Flavor="ship"Language="2052"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1033"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1031"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1041"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1042"/>
       <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1036"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1028"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="3076"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1043"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="3082"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1053"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1049"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1040"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="1046"/>
         <Dependency Package="office.content.nonmedia"Flavor="ship"Language="2052"/>
         <Dependency Package="office.ipo.ipocsa"Flavor="ship"Language="1033"/>
         </Package>
       -<Package Name="office.ipo.awsbackend"Flavor="ship"Version="1">
         <Dependency         Package="office.aws.contentrating.backend"       Flavor="ship"
Language="1033"/>
         <Dependency         Package="office.aws.querylogging.backend"        Flavor="ship"
Language="1033"/>
         <Dependency         Package="office.aws.marketplace.database"        Flavor="ship"
Language="1033"/>
       -<!--    <Dependency         Package="office.aws.csc.database"        Flavor="ship"
Language="1033"/>
         -->
         <Dependency        Package="office.aws.clipartsearch.database"       Flavor="ship"
Language="1033"/>
         <Dependency Package="office.sql.media"Flavor="ship"Language="1033"/>
         <Dependency Package="office.sql.media"Flavor="ship"Language="1031"/>
         <Dependency Package="office.sql.media"Flavor="ship"Language="1041"/>
         <Dependency Package="office.sql.media"Flavor="ship"Language="1025"/>
         <Dependency Package="office.sql.media"Flavor="ship"Language="1042"/>
         <Dependency Package="office.sql.media"Flavor="ship"Language="1036"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1028"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="2052"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="3076"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1030"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1040"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1043"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1046"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="3082"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1053"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1044"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1045"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1037"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1054"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1035"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1029"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="2070"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1038"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1049"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1032"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1055"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1048"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1081"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1060"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1061"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1051"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1050"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1062"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1026"/>
     <Dependency Package="office.sql.media"Flavor="ship"Language="1058"/>
  <Dependency Package="office.sql.media"Flavor="ship"Language="1063"/>
  <Dependency Package="office.sql.media"Flavor="ship"Language="2074"/>
  </Package>
-<Package Name="office.ipo.referencecontent"Flavor="ship"Version="1">
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1033"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1031"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1041"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1025"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1042"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1036"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1028"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="2052"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="3076"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1030"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1040"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1043"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1046"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="3082"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1053"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1044"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1045"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1037"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1054"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1035"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1029"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="2070"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1038"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1049"/>
  <Dependency Package="office.shared.frontend"Flavor="ship"Language="1032"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1055"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1048"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1081"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1060"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1061"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1051"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1050"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1062"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1026"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1058"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="1063"/>
         <Dependency Package="office.shared.frontend"Flavor="ship"Language="2074"/>
         <Dependency      Package="office.shared.frontend.passport.test"      Flavor="ship"
Language="1033"/>
         <Dependency Package="office.authoring.reference"Flavor="ship"Language="1033"/>
         <Dependency Package="office.ipo.ulscommon"Flavor="ship"Language="1033"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1033"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1031"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1041"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1025"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1042"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1036"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1028"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="2052"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="3076"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1030"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1040"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1043"/>
         <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1046"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="3082"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1053"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1044"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1045"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1037"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1054"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1035"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1029"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="2070"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1038"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1049"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1032"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1055"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1048"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1081"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1060"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1061"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1051"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1050"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1062"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1026"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1058"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="1063"/>
  <Dependency Package="office.index.nonmedia"Flavor="ship"Language="2074"/>
  <Dependency Package="J31421033C.content"Flavor="ship"Language="1033"/>
  </Package>
-<!--******Office.Net客户机和服务重定向FE******
  -->
-<Machine Name="%IIS-Redirl%"Group="shovel">
  <Install Package="office.ipo.redirect"Flavor="ship"/>
  </Machine>
-<!--******Office.Net AWS和研究FE******
  -->
-<Machine Name="%IIS-AWS1%"Group="shovel">
  <Account Name="office.aws.default.user"Domain="first location"User="opsdep"/>
  <Install Package="office.ipo.aws"Flavor="ship"/>
-<PortName="research.encarta"Protocol="http"Server="no">
  <Wire>http://EncartaSR.msn-ppe.com:54321/services/search.asmx</Wire>
  </Port>
-<Port Name="ohlapi.REFERENCE"Protocol="http"Server="no">
  <Wire>http://IPODNRCDS105/_services/reference/bin/RRISAPI.dll</Wire>
  </Port>
  </Machine>
-<!--******Office.Net SSL FE服务******
  -->
-<Machine Name="%IIS-AWS2%"Group="shovel">
  <Install Package="office.ipo.awswebssl"Flavor="ship"/>
  </Machine>
-<!--******Office.Net SQL BE******
  -->
-<Machine Name="%SQL%"Group="shovel">
  <Install Package="office.ipo.awsbackend"Flavor="ship"/>
  </Machine>
-<!--******Office.Net参考BE******
  -->
-<Machine Name="%W2K3-SEARCH%"Group="shovel">
  <Install Package="office.ipo.referencecontent"Flavor="ship"/>
  </Machine>
</Courier>

Claims (20)

1.一种在网络中动态部署一个或多个计算***的***,所述***包括:
数据库组件,包括多个存储过程和信息,其中所述信息包括配置状态、可用性状态以及部署状态的至少之一;
操作***服务组件,用于为执行一个或多个任务而与所述数据库组件通信;以及
web服务组件,在所述数据库组件和所述操作***服务组件之间提供通信接口,其中所述组件一起用来部署所述一个或多个计算***,包括配置和分配所述一个或多个计算***。
2.如权利要求1所述的***,其特征在于,数据库包括与部署配置相关联的信息,其中所述信息进一步包括***角色和***类型的至少之一。
3.如权利要求2所述的***,其特征在于,数据库包括与测试配置和调试配置的至少之一相关联的信息。
4.如权利要求2所述的***,其特征在于,所述***类型从基本、OFFICE、专用版本、以及复制簇的至少之一中选择。
5.如权利要求1所述的***,其特征在于,还包括脚本组件,用于执行一个或多个配置、分配和部署过程,其中所述脚本组件包括与至少一个事件相关联的至少一个脚本,且所述至少一个脚本关联于所述至少一个事件的发生而执行。
6.如权利要求5所述的***,其特征在于,所述至少一个脚本从操作***(OS)安装脚本、调试工具安装脚本、类型脚本、以及角色脚本的至少之一中选择。
7.如权利要求1所述的***,其特征在于,所述操作***服务进一步被配置成向至少一个用户提供所述部署完成且已准备好使用的电子通知。
8.如权利要求1所述的***,其特征在于,还包括一公用服务器池和预订算法,其中所述服务器池的至少一个服务器至少部分基于所述预订算法预订。
9.如权利要求8所述的***,其特征在于,所述预订算法被配置成基于空闲服务器和在所述空闲服务器不可用时预订服务器之间的时间量的至少之一分配所述至少一个服务器。
10.一种包括可执行指令的计算机可读介质,所述可执行指令在执行时通过以下步骤从服务器池分配至少一个服务器:
使用部署输入来配置所述服务器池的所述至少一个服务器,其中所述部署输入包括部署类型、部署开始时间、以及部署结束时间的至少之一;
部分基于所述部署输入确定所述至少一个服务器的可用性;
如果所述服务器池的所述至少一个服务器可用,则储存所述部署输入;以及
部分基于所述至少一个服务器的所述可用性部署所述服务器池的所述至少一个服务器,其中所述至少一个服务器的所述部署包括根据所述部署输入动态配置所述至少一个服务器。
11.如权利要求10所述的计算机可读介质,其特征在于,所述指令在执行时通过使用部署类型输入从服务器池分配至少一个服务器,其中所述部署类型输入从基本类型、OFFICE类型、专用版本类型和复制簇类型的至少之一选择。
12.如权利要求11所述的计算机可读介质,其特征在于,所述指令在执行时通过使用与所述部署类型的服务器数量相关联的数字输入从服务器池分配至少一个服务器。
13.如权利要求10所述的计算机可读介质,其特征在于,所述指令在执行时通过确定至少一个服务器的部署是否成功而从服务器池分配所述至少一个服务器。
14.如权利要求13所述的计算机可读介质,其特征在于,所述指令在执行时通过在至少一个服务器的部署不成功时评估相关联的机器文件而从服务器池分配所述至少一个服务器。
15.如权利要求10所述的计算机可读介质,其特征在于,所述指令在执行时通过在至少一个服务器的部署成功之后发送通知而从服务器池分配所述至少一个服务器。
16.如权利要求10所述的计算机可读介质,其特征在于,所述指令在执行时通过在所述部署结束时间到期之后将至少一个服务器从分配释放而从服务器池分配所述至少一个服务器。
17.如权利要求10所述的计算机可读介质,其特征在于,所述指令在执行时通过延长部署而从服务器池分配至少一个服务器。
18.一种在计算***池中动态配置多个计算***的方法,所述方法包括:
接收与所述多个计算***的部署配置相关联的输入,其中所述输入包括所述多个计算***的部署类型与所述多个计算***的部署时段;
部分基于所述多个计算***在所述时段内的可用性分配所述多个计算***;
如果所述多个计算***在所述时段内可用,则在所述时段内部署所述多个计算***,其中所述部署包括根据所述部署类型动态配置所述多个计算***。
19.如权利要求18所述的方法,其特征在于,进一步包括自动向用户通知所述多个计算***的所述部署。
20.如权利要求18所述的方法,其特征在于,所述部署进一步包括在所述多个计算***上自动安装OS、中间件、以及一个或多个测试位的至少之一。
CN2007800325105A 2006-08-30 2007-08-30 动态配置、分配和部署计算*** Expired - Fee Related CN101512507B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/512,785 US7761538B2 (en) 2006-08-30 2006-08-30 Dynamically configuring, allocating and deploying computing systems
US11/512,785 2006-08-30
PCT/US2007/077183 WO2008028008A1 (en) 2006-08-30 2007-08-30 Dynamically configuring, allocating and deploying computing systems

Publications (2)

Publication Number Publication Date
CN101512507A true CN101512507A (zh) 2009-08-19
CN101512507B CN101512507B (zh) 2011-10-05

Family

ID=39136291

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800325105A Expired - Fee Related CN101512507B (zh) 2006-08-30 2007-08-30 动态配置、分配和部署计算***

Country Status (9)

Country Link
US (1) US7761538B2 (zh)
EP (1) EP2062154A4 (zh)
JP (1) JP2010503074A (zh)
CN (1) CN101512507B (zh)
AU (1) AU2007289177B9 (zh)
BR (1) BRPI0715058A2 (zh)
MX (1) MX2009001641A (zh)
RU (1) RU2429529C2 (zh)
WO (1) WO2008028008A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101945013A (zh) * 2010-09-20 2011-01-12 中兴通讯股份有限公司 一种实现服务器配置管理的***及方法
CN102763102A (zh) * 2009-10-07 2012-10-31 亚马逊技术股份有限公司 用于数据环境的自服务配置
US9218245B1 (en) 2009-03-31 2015-12-22 Amazon Technologies, Inc. Cloning and recovery of data volumes
WO2016106486A1 (en) * 2014-12-29 2016-07-07 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for configuring a communication system
US9705888B2 (en) 2009-03-31 2017-07-11 Amazon Technologies, Inc. Managing security groups for data instances
US9806978B2 (en) 2009-10-26 2017-10-31 Amazon Technologies, Inc. Monitoring of replicated data instances
US9817727B2 (en) 2009-10-26 2017-11-14 Amazon Technologies, Inc. Failover and recovery for replicated data instances
US10127149B2 (en) 2009-03-31 2018-11-13 Amazon Technologies, Inc. Control service for data management
US10282231B1 (en) 2009-03-31 2019-05-07 Amazon Technologies, Inc. Monitoring and automatic scaling of data volumes

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7188352B2 (en) 1995-07-11 2007-03-06 Touchtunes Music Corporation Intelligent digital audiovisual playback system
CA2201909C (fr) 1994-10-12 2006-05-02 Technical Maintenance Corporation Systeme de reproduction audiovisuelle numerique intelligent
FR2769165B1 (fr) 1997-09-26 2002-11-29 Technical Maintenance Corp Systeme sans fil a transmission numerique pour haut-parleurs
FR2781582B1 (fr) * 1998-07-21 2001-01-12 Technical Maintenance Corp Systeme de telechargement d'objets ou de fichiers pour mise a jour de logiciels
FR2781591B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Systeme de reproduction audiovisuelle
US8028318B2 (en) 1999-07-21 2011-09-27 Touchtunes Music Corporation Remote control unit for activating and deactivating means for payment and for displaying payment status
FR2781580B1 (fr) 1998-07-22 2000-09-22 Technical Maintenance Corp Circuit de commande de son pour systeme de reproduction audiovisuelle numerique intelligent
FR2796482B1 (fr) 1999-07-16 2002-09-06 Touchtunes Music Corp Systeme de gestion a distance d'au moins un dispositif de reproduction d'informations audiovisuelles
FR2805377B1 (fr) 2000-02-23 2003-09-12 Touchtunes Music Corp Procede de commande anticipee d'une selection, systeme numerique et juke-box permettant la mise en oeuvre du procede
FR2805060B1 (fr) 2000-02-16 2005-04-08 Touchtunes Music Corp Procede de reception de fichiers lors d'un telechargement
FR2805072B1 (fr) 2000-02-16 2002-04-05 Touchtunes Music Corp Procede d'ajustement du volume sonore d'un enregistrement sonore numerique
FR2808906B1 (fr) 2000-05-10 2005-02-11 Touchtunes Music Corp Dispositif et procede de gestion a distance d'un reseau de systemes de reproduction d'informations audiovisuelles
FR2811175B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Procede de distribution d'informations audiovisuelles et systeme de distribution d'informations audiovisuelles
FR2811114B1 (fr) 2000-06-29 2002-12-27 Touchtunes Music Corp Dispositif et procede de communication entre un systeme de reproduction d'informations audiovisuelles et d'une machine electronique de divertissement
FR2814085B1 (fr) 2000-09-15 2005-02-11 Touchtunes Music Corp Procede de divertissement base sur les jeux concours a choix multiples
US8332895B2 (en) 2002-09-16 2012-12-11 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US8584175B2 (en) 2002-09-16 2013-11-12 Touchtunes Music Corporation Digital downloading jukebox system with user-tailored music management, communications, and other tools
US9646339B2 (en) 2002-09-16 2017-05-09 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US8103589B2 (en) 2002-09-16 2012-01-24 Touchtunes Music Corporation Digital downloading jukebox system with central and local music servers
US11029823B2 (en) 2002-09-16 2021-06-08 Touchtunes Music Corporation Jukebox with customizable avatar
US10373420B2 (en) 2002-09-16 2019-08-06 Touchtunes Music Corporation Digital downloading jukebox with enhanced communication features
US7822687B2 (en) 2002-09-16 2010-10-26 Francois Brillon Jukebox with customizable avatar
US7761538B2 (en) 2006-08-30 2010-07-20 Microsoft Corporation Dynamically configuring, allocating and deploying computing systems
US9171419B2 (en) 2007-01-17 2015-10-27 Touchtunes Music Corporation Coin operated entertainment system
US8752059B2 (en) * 2007-03-27 2014-06-10 International Business Machines Corporation Computer data processing capacity planning using dependency relationships from a configuration management database
US9058438B2 (en) * 2007-04-30 2015-06-16 International Business Machines Corporation Application-requirement based configuration designer for distributed computing systems
US10290006B2 (en) 2008-08-15 2019-05-14 Touchtunes Music Corporation Digital signage and gaming services to comply with federal and state alcohol and beverage laws and regulations
US8332887B2 (en) 2008-01-10 2012-12-11 Touchtunes Music Corporation System and/or methods for distributing advertisements from a central advertisement network to a peripheral device via a local advertisement server
CN101398762A (zh) * 2007-09-29 2009-04-01 联想(北京)有限公司 一种在计算机上自动安装操作***的方法和装置
US8413130B2 (en) * 2007-10-03 2013-04-02 International Business Machines Corporation System and method for self policing of authorized configuration by end points
US8849435B2 (en) 2008-07-09 2014-09-30 Touchtunes Music Corporation Digital downloading jukebox with revenue-enhancing features
US9576258B1 (en) * 2008-10-30 2017-02-21 Hewlett Packard Enterprise Development Lp Computer executable service
US9292166B2 (en) 2009-03-18 2016-03-22 Touchtunes Music Corporation Digital jukebox device with improved karaoke-related user interfaces, and associated methods
US10564804B2 (en) 2009-03-18 2020-02-18 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
US9076155B2 (en) 2009-03-18 2015-07-07 Touchtunes Music Corporation Jukebox with connection to external social networking services and associated systems and methods
US10719149B2 (en) 2009-03-18 2020-07-21 Touchtunes Music Corporation Digital jukebox device with improved user interfaces, and associated methods
US9003411B2 (en) * 2009-05-13 2015-04-07 Verizon Patent And Licensing Inc. Automated provisioning and configuration of virtual and physical servers
US9537730B2 (en) * 2009-09-18 2017-01-03 Nokia Solutions And Networks Gmbh & Co. Kg Virtual network controller
US8744490B2 (en) * 2009-12-03 2014-06-03 Osocad Remote Limited Liability Company System and method for migrating agents between mobile devices
US9122536B2 (en) * 2009-12-30 2015-09-01 Bmc Software, Inc. Automating application provisioning for heterogeneous datacenter environments
JP5571200B2 (ja) 2010-01-26 2014-08-13 タッチチューンズ ミュージック コーポレイション 改善されたユーザインターフェースを備えたデジタルジュークボックス装置および関連手法
WO2011146883A2 (en) * 2010-05-21 2011-11-24 Unisys Corporation Configuring the cluster
US8661120B2 (en) 2010-09-21 2014-02-25 Amazon Technologies, Inc. Methods and systems for dynamically managing requests for computing capacity
US20120144044A1 (en) * 2010-12-06 2012-06-07 Verizon Patent And Licensing Inc. System for and method of dynamically deploying servers
US9448824B1 (en) * 2010-12-28 2016-09-20 Amazon Technologies, Inc. Capacity availability aware auto scaling
EP2759126B8 (en) 2011-09-18 2021-03-31 Touchtunes Music Corporation Digital jukebox device with karaoke and/or photo booth features, and associated methods
WO2013042078A1 (en) 2011-09-22 2013-03-28 International Business Machines Corporation Provisioning of resources
US11151224B2 (en) 2012-01-09 2021-10-19 Touchtunes Music Corporation Systems and/or methods for monitoring audio inputs to jukebox devices
US20130262845A1 (en) * 2012-03-29 2013-10-03 Verizon Patent And Licensing Inc. Method and system for generating a standardized system build file
US9940162B2 (en) 2012-09-28 2018-04-10 Cycle Computing, Llc Realtime optimization of compute infrastructure in a virtualized environment
US9244720B2 (en) * 2012-10-17 2016-01-26 Cisco Technology, Inc. Automated technique to configure and provision components of a converged infrastructure
KR102033999B1 (ko) * 2012-12-21 2019-10-21 삼성전자주식회사 컨텐트 중심 네트워크에서의 통신 방법 및 장치
KR101540631B1 (ko) * 2012-12-28 2015-07-30 삼성에스디에스 주식회사 가상 클러스터의 동적 확장 시스템, 방법 및 그 프로그램이 저장된 기록매체
US9396160B1 (en) * 2013-02-28 2016-07-19 Amazon Technologies, Inc. Automated test generation service
US9444717B1 (en) * 2013-02-28 2016-09-13 Amazon Technologies, Inc. Test generation service
US9436725B1 (en) * 2013-02-28 2016-09-06 Amazon Technologies, Inc. Live data center test framework
US9317410B2 (en) 2013-03-15 2016-04-19 International Business Machines Corporation Testing functional correctness and idempotence of software automation scripts
US20140325275A1 (en) * 2013-04-30 2014-10-30 Hewlett-Packard Development Company, L.P. Using customer computing system to test other customer computing systems
US9569205B1 (en) * 2013-06-10 2017-02-14 Symantec Corporation Systems and methods for remotely configuring applications
WO2015065383A1 (en) * 2013-10-30 2015-05-07 Intel Corporation Processing of messages using theme and modality criteria
WO2015070070A1 (en) 2013-11-07 2015-05-14 Touchtunes Music Corporation Techniques for generating electronic menu graphical user interface layouts for use in connection with electronic devices
US9875123B2 (en) * 2013-11-25 2018-01-23 Red Hat Israel, Ltd. Host reservation system
CN106489125B (zh) 2014-03-25 2021-12-21 踏途音乐公司 具有改进的用户界面的数字点播设备和相关方法
US10057325B2 (en) * 2014-03-31 2018-08-21 Nuvestack, Inc. Remote desktop infrastructure
US20160063119A1 (en) * 2014-09-03 2016-03-03 Bank Of America Corporation Test data reservation system
US9953053B2 (en) * 2014-12-18 2018-04-24 International Business Machines Corporation Reliability improvement of distributed transaction processing optimizations based on connection status
CN111427827B (zh) 2015-12-29 2023-03-17 超聚变数字技术有限公司 一种cpu及多cpu***管理方法
JP6630442B2 (ja) 2016-06-07 2020-01-15 株式会社日立製作所 適切なitリソース上にアプリケーションを配備するための管理コンピュータ及び非一時的なコンピュータ可読媒体
CN110401553B (zh) 2018-04-25 2022-06-03 阿里巴巴集团控股有限公司 服务器配置的方法和装置
US11328462B1 (en) * 2018-11-30 2022-05-10 United Services Automobile Association (Usaa) Visualization tool for server management and method of use
US11288104B2 (en) * 2019-08-06 2022-03-29 International Business Machines Corporation Automatic dynamic operating system provisioning
CN111651190B (zh) * 2020-04-30 2023-03-07 北京临近空间飞行器***工程研究所 一种基于多维融合元素的发射控制软件动态装配方法
US11677810B2 (en) * 2021-07-23 2023-06-13 International Business Machines Corporation Configuration tool for deploying an application on a server
CN115361277B (zh) * 2022-07-08 2023-06-20 天津车之家软件有限公司 通用集群***部署方法、装置、设备及介质
CN115499304B (zh) * 2022-07-29 2024-03-08 天翼云科技有限公司 一种分布式存储的自动化部署方法、装置、设备及产品

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761380A (en) * 1996-02-12 1998-06-02 International Business Machines Corporation Coordinating installation of distributed software components
US6006034A (en) 1996-09-05 1999-12-21 Open Software Associates, Ltd. Systems and methods for automatic application version upgrading and maintenance
US6202206B1 (en) 1998-05-14 2001-03-13 International Business Machines Corporation Simultaneous installation and configuration of programs and components into a network of server and client computers
US6275987B1 (en) * 1998-11-05 2001-08-14 International Business Machines Corporation Adaptive, predictive progress indicator
US6385766B1 (en) * 1999-05-20 2002-05-07 Dell Usa L.P. Method and apparatus for windows-based installation for installing software on build-to-order computer systems
EP1087293A3 (en) * 1999-09-24 2006-02-01 Hitachi, Ltd. A computer system and a program install method thereof
US6748429B1 (en) * 2000-01-10 2004-06-08 Sun Microsystems, Inc. Method to dynamically change cluster or distributed system configuration
US8612553B2 (en) * 2000-01-14 2013-12-17 Microsoft Corporation Method and system for dynamically purposing a computing device
JP2002074125A (ja) 2000-08-31 2002-03-15 Sony Corp コンテンツ配信の通知方法、予約管理装置およびプログラム格納媒体
JP2002074123A (ja) 2000-08-31 2002-03-15 Sony Corp サーバの使用予約方法、予約管理装置およびプログラム格納媒体
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
US7743147B2 (en) * 2001-04-20 2010-06-22 Hewlett-Packard Development Company, L.P. Automated provisioning of computing networks using a network database data model
EP1389316B1 (en) * 2001-05-22 2016-10-19 United Parcel Service Of America, Inc. System, method, and computer program product for configuring computing systems
US7174379B2 (en) 2001-08-03 2007-02-06 International Business Machines Corporation Managing server resources for hosted applications
US6854112B2 (en) 2001-08-29 2005-02-08 International Business Machines Corporation System and method for the automatic installation and configuration of an operating system
US6986135B2 (en) * 2001-09-06 2006-01-10 Cognos Incorporated Deployment manager for organizing and deploying an application in a distributed computing environment
US7213065B2 (en) 2001-11-08 2007-05-01 Racemi, Inc. System and method for dynamic server allocation and provisioning
US7246159B2 (en) * 2002-11-01 2007-07-17 Fidelia Technology, Inc Distributed data gathering and storage for use in a fault and performance monitoring system
US7783759B2 (en) 2002-12-10 2010-08-24 International Business Machines Corporation Methods and apparatus for dynamic allocation of servers to a plurality of customers to maximize the revenue of a server farm
FR2851389B1 (fr) 2003-02-14 2005-04-29 Canon Kk Procede et dispositif de gestion de requetes dans une architecture du type client-serveur
US7080126B2 (en) * 2003-02-28 2006-07-18 Bea Systems, Inc. Computer program product for performing resource pool maintenance by maintaining resources in several deques
US7072807B2 (en) * 2003-03-06 2006-07-04 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US7181740B2 (en) * 2003-03-31 2007-02-20 Sony Corporation Method and system for automated provision of build images
FI20030866A0 (fi) * 2003-06-10 2003-06-10 Nokia Corp Menetelmä, ohjain, järjestely ja tietokoneohjelma tietokoneryväksen konfiguraation hallintaan
US7603443B2 (en) * 2003-08-28 2009-10-13 International Business Machines Corporation Generic method for defining resource configuration profiles in provisioning systems
US20050091215A1 (en) 2003-09-29 2005-04-28 Chandra Tushar D. Technique for provisioning storage for servers in an on-demand environment
US7103809B2 (en) 2003-10-24 2006-09-05 Motorola, Inc. Server selection method
WO2005089246A2 (en) * 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providiing advanced reservations in a compute environment
US8024476B2 (en) 2004-05-21 2011-09-20 Microsoft Corporation Efficient message routing when using server pools
US20060080389A1 (en) * 2004-10-06 2006-04-13 Digipede Technologies, Llc Distributed processing system
US7788671B2 (en) 2004-11-01 2010-08-31 International Business Machines Corporation On-demand application resource allocation through dynamic reconfiguration of application cluster size and placement
US20070168861A1 (en) * 2006-01-17 2007-07-19 Bell Denise A Method for indicating completion status of user initiated and system created tasks
US7784021B2 (en) 2006-05-02 2010-08-24 International Business Machines Corporation Method for specifying, deploying and dynamically updating work flows
US7761538B2 (en) 2006-08-30 2010-07-20 Microsoft Corporation Dynamically configuring, allocating and deploying computing systems

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10225262B2 (en) 2009-03-31 2019-03-05 Amazon Technologies, Inc. Managing security groups for data instances
US11132227B2 (en) 2009-03-31 2021-09-28 Amazon Technologies, Inc. Monitoring and automatic scaling of data volumes
US10282231B1 (en) 2009-03-31 2019-05-07 Amazon Technologies, Inc. Monitoring and automatic scaling of data volumes
US9218245B1 (en) 2009-03-31 2015-12-22 Amazon Technologies, Inc. Cloning and recovery of data volumes
US11770381B2 (en) 2009-03-31 2023-09-26 Amazon Technologies, Inc. Managing security groups for data instances
US11550630B2 (en) 2009-03-31 2023-01-10 Amazon Technologies, Inc. Monitoring and automatic scaling of data volumes
US9705888B2 (en) 2009-03-31 2017-07-11 Amazon Technologies, Inc. Managing security groups for data instances
US11379332B2 (en) 2009-03-31 2022-07-05 Amazon Technologies, Inc. Control service for data management
US10798101B2 (en) 2009-03-31 2020-10-06 Amazon Technologies, Inc. Managing security groups for data instances
US10761975B2 (en) 2009-03-31 2020-09-01 Amazon Technologies, Inc. Control service for data management
US10127149B2 (en) 2009-03-31 2018-11-13 Amazon Technologies, Inc. Control service for data management
US10162715B1 (en) 2009-03-31 2018-12-25 Amazon Technologies, Inc. Cloning and recovery of data volumes
US11385969B2 (en) 2009-03-31 2022-07-12 Amazon Technologies, Inc. Cloning and recovery of data volumes
US11914486B2 (en) 2009-03-31 2024-02-27 Amazon Technologies, Inc. Cloning and recovery of data volumes
CN105302862B (zh) * 2009-10-07 2019-08-02 亚马逊技术股份有限公司 用于数据环境的自服务配置
US10977226B2 (en) 2009-10-07 2021-04-13 Amazon Technologies, Inc. Self-service configuration for data environment
CN102763102B (zh) * 2009-10-07 2015-11-25 亚马逊技术股份有限公司 用于数据环境的自服务配置
CN102763102A (zh) * 2009-10-07 2012-10-31 亚马逊技术股份有限公司 用于数据环境的自服务配置
CN105302862A (zh) * 2009-10-07 2016-02-03 亚马逊技术股份有限公司 用于数据环境的自服务配置
US9817727B2 (en) 2009-10-26 2017-11-14 Amazon Technologies, Inc. Failover and recovery for replicated data instances
US10860439B2 (en) 2009-10-26 2020-12-08 Amazon Technologies, Inc. Failover and recovery for replicated data instances
US11477105B2 (en) 2009-10-26 2022-10-18 Amazon Technologies, Inc. Monitoring of replicated data instances
US9806978B2 (en) 2009-10-26 2017-10-31 Amazon Technologies, Inc. Monitoring of replicated data instances
US11714726B2 (en) 2009-10-26 2023-08-01 Amazon Technologies, Inc. Failover and recovery for replicated data instances
CN101945013A (zh) * 2010-09-20 2011-01-12 中兴通讯股份有限公司 一种实现服务器配置管理的***及方法
US9847903B2 (en) 2014-12-29 2017-12-19 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for configuring a communication system
WO2016106486A1 (en) * 2014-12-29 2016-07-07 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for configuring a communication system

Also Published As

Publication number Publication date
RU2429529C2 (ru) 2011-09-20
EP2062154A4 (en) 2011-01-19
US20080059610A1 (en) 2008-03-06
MX2009001641A (es) 2009-02-23
CN101512507B (zh) 2011-10-05
BRPI0715058A2 (pt) 2013-05-28
AU2007289177B9 (en) 2011-09-08
RU2009107189A (ru) 2010-09-10
WO2008028008A1 (en) 2008-03-06
US7761538B2 (en) 2010-07-20
AU2007289177A1 (en) 2008-03-06
AU2007289177B2 (en) 2011-08-04
JP2010503074A (ja) 2010-01-28
EP2062154A1 (en) 2009-05-27

Similar Documents

Publication Publication Date Title
CN101512507B (zh) 动态配置、分配和部署计算***
US10592229B1 (en) Method and system for restoring software
US7831968B1 (en) Method and system for restoring software
CN102763102B (zh) 用于数据环境的自服务配置
US7636782B2 (en) System and method to facilitate manageable and agile deployment of services in accordance with various topologies
CA2777443C (en) Automated enterprise software development
US7802247B1 (en) Method and system for restoring software
US9342364B2 (en) Workflow managed composite applications
CA3096768A1 (en) System and method for automated microservice source code generation and deployment
US8544007B2 (en) Customization, deployment and management of virtual and physical machine images in an enterprise system
CN100545851C (zh) 使用命令行环境的远程***管理
EP1978672B1 (en) Method for implementing management software, hardware with pre-configured software and implementing method thereof
CN102349052A (zh) 服务提供装置、服务提供***、用于处理服务提供装置中的数据的方法以及计算机程序
US20120066670A1 (en) Systems and Methods for Private Cloud Computing
US20080313626A1 (en) Applicable patch selection device and applicable patch selection method
US20120116751A1 (en) Providing message text translations
US20080127082A1 (en) System and method for requirements-based application configuration
CN104317610A (zh) 一种hadoop平台自动安装部署的方法及装置
US20060117311A1 (en) Method for effecting software maintenance in a software system landscape and computer system
US9172773B2 (en) Managing technology resources across multiple platforms
CN102007756B (zh) 用于数据处理环境中的动态供应的方法和装置
US11282021B2 (en) System and method for implementing a federated forecasting framework
US7877730B2 (en) Method for effecting a preliminary software service in a productive system of a software system landscape and computer system
US9170779B2 (en) Managing an application development environment
US9513890B1 (en) Method and system for installing software

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
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150430

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150430

Address after: Washington State

Patentee after: MICROSOFT TECHNOLOGY LICENSING, LLC

Address before: Washington State

Patentee before: Microsoft Corp.

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

Granted publication date: 20111005