掌桥专利:专业的专利平台
掌桥专利
首页

用于实时环境的动态计算资源指派和可扩展计算环境生成

文献发布时间:2023-06-19 09:30:39


用于实时环境的动态计算资源指派和可扩展计算环境生成

背景技术

越来越多地,计算环境不需要由与利用这样的计算环境的用户物理上位于同一地点的硬件来支持,而是可以由被聚集到物理上远离用户的大型数据中心中的网络化计算硬件来支持。通常,这样的计算环境被称为“云计算环境”,并且可以为用户提供不同计算环境,不同计算环境通常由提供稳定性、冗余性和高可用性大量计算硬件所发布的虚拟机所支持。典型地,诸如虚拟机的计算环境的建置(provision)可以诸如由管理员执行一次,然后产生的经建置计算环境可以被提供给用户来利用,以持续的方式开发这样的对计算资源的利用。而对计算资源的这样的利用以持续的方式记清单(invoiced)。通常,即使对于熟练的管理员来说,计算环境的生成和建置也可能是乏味且耗时的,特别是在待生成的这样的计算环境的量多的情况下。

在可变团队设置中,可能需要重复生成和建置多个计算环境。例如,由可能事先未知或已知的多个不同个体组成的团队需要根据这样的团队的个体成员将执行的多个不同任务或项目来建置针对每个这样的个体的多个计算环境。通常,这样的情况出现在演示性和/或教育性上下文中。作为一个示例,计算机科学教授可以寻求教育他的一个班级利用数据库应用来实施功能性,而可以教育他的另一班级利用特定应用开发工具集合来进行编程。在这样的示例中,教授被要求建立针对班级中的每个个体的一个计算环境集合,以利用数据库应用来实施功能性,然后将进一步被要求建立针对班级中的每个个体的另一计算环境集合,以使用特定应用开发工具集合进行编程。如果第一班级随后被指派了针对图像编辑应用的项目,则教授可能再次被要求建立针对班级中的每个个体的完全不同的计算环境集合。如果这样的班级包括数十或数百名学生,则待建立的计算环境的量可能很快变得难以为继。作为另一示例,诸如在会议上的演示者可以寻求向与会者提供对特定计算环境的访问,作为演示的一部分。但是,特定个体、甚至实际上是个体的总数都可能是未知的,并且可以在演示之前甚至演示期间动态变化。在这样的示例中,演示者将被要求让每个个体与会者参与生成他们自己的计算环境的多步骤过程,从而导致与会者之中的混乱,并使得整个演示的效率和效用降低。附加地,要求每个与会者参与生成自己的计算环境的多步骤过程转移了与会者的注意力,并延迟了演示者对有用材料的演示。

此外,资源消耗限制可以使得教授或演示者的困难进一步复杂化,因为通常这样的教授可能无法获得附加的资源消耗积分或者演示者可能不知道将需要多少资源消耗。具体地,虽然资源消耗限制可以通过单个管理员(诸如上述示例中的教授或演示者)被建立,但是典型的云计算环境是单独被记清单的,因此需要在被建置的多个不同计算环境之中手动划分或分配资源消耗限制。这样的资源消耗限制的分散可能进一步加剧在这样的团队设置中手动建立计算环境的可能性。

发明内容

计算环境可以基于与沙箱组的单独定义的容器相关联的元数据而被可扩展地生成和建置。沙箱组的每个容器是其自身的数字化构造(digital construct),并且通过元数据被包装,元数据定义分组的性质和各方面,包括枚举团队中的个体成员、指派的因素或属性等。元数据因此可以标识待生成的沙箱并且可以在这些沙箱内标识待生成的计算环境以及这样的计算环境如何被建置。沙箱可以被并行生成并且计算环境可以被并行建置、或者基于个体用户访问来交错。附加地,随着相关元数据被改变,已创建的计算环境和沙箱可以被修改或被删除,并且新的计算环境和沙箱可以被生成。消耗限制的指派可以基于预定量或基于根据变化因素所确定的量(诸如当前在容器中的个体沙箱的量)被单独地指派。容器构造然后在被聚集的基础上提供对这样的消耗限制的监视和调整。

提供本发明内容来以简化形式介绍一些概念,这些概念将在下面的具体实施方式中进一步描述。本发明内容既不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。

通过参考附图进行的以下详细描述,附加特征和优点将变得显而易见。

附图说明

结合附图,可以更好地理解以下详细描述,其中:

图1是提供用于计算环境生成的示例性系统的系统图;

图2是提供可扩展计算环境生成的示例性系统的系统图;

图3是提供可更新的计算环境生成的示例性系统的系统图;

图4是示例性计算环境生成和建置机制的流程图;以及

图5是示例性计算设备的框图。

具体实施方式

以下描述涉及针对个体用户的沙箱的可扩展生成和建置、以及这些沙箱内由这样的用户可用的计算环境。这样的沙箱和计算环境可以基于与沙箱组的被单独定义的容器相关联的元数据被可扩展地生成和建置。沙箱组的每个容器可以是其自身的数字化构造,并且可以通过元数据被包装,元数据定义分组的性质和各方面,包括枚举团队中的个体成员、指派的因素或属性等。元数据因此可以标识待生成的沙箱并且可以在这些沙箱内标识待生成的计算环境以及这样的计算环境如何被建置。沙箱可以被并行生成并且计算环境可以被并行建置、或者基于个体用户访问来交错。附加地,随着相关元数据被改变,已创建的计算环境和沙箱可以被修改或被删除,并且新的计算环境和沙箱可以被生成。消耗限制的指派可以基于预定量或基于根据变化因素所确定的量(诸如当前在容器中的个体沙箱的量)被单独地指派。容器构造然后在被聚集的基础上提供对这样的消耗限制的监视和调整。

尽管不是必需的,但是以下描述将在由计算设备执行的计算机可执行指令(例如,程序模块)的整体上下文中。更具体地,除非另外指出,否则描述将参考由一个或多个计算设备或外围设备执行的操作的动作和符号表示。这样,将理解,有时被称为被计算机执行的这样的动作和操作包括由处理单元对表示结构化形式的数据的电信号的操纵。该操纵对数据进行变换或将其维持在存储器中的位置处,以本领域技术人员熟知的方式重新配置或以其他方式更改计算设备或外围设备的操作。数据被维持的数据结构是物理位置,物理位置具有由数据格式定义的具体性质。

通常,程序模块包括执行具体任务或实施具体抽象数据类型的例程、程序、对象、组件、数据结构等。而且,本领域技术人员将理解,计算设备不必限于常规的个人计算机,并且包括其他计算配置,包括服务器、手持设备、多处理器系统、基于微处理器的或可编程的消费电子器件、网络PC、小型计算机、大型计算机等。类似地,计算设备不必限于单机计算设备,因为机制也可以在分散式计算环境中被实践,在分散式计算环境中,任务由通过通信网络而被链接的远程处理设备来执行。在分散式计算环境中,程序模块可以位于本地和远程存储器存储设备两者中。

参考图1,图示了示例性系统100,示例性系统100为以下描述提供了上下文。管理员(诸如示例性管理员110)可以向计算环境生成器(诸如示例性计算环境生成器140)提供一个或多个团队定义(诸如示例性团队定义120)以及一个或多个项目定义(诸如示例性项目定义130)。出于例示底层计算硬件上下文的目的,管理员110可以利用计算设备(诸如示例性个人计算设备111),计算设备可以经由计算机通信网络(诸如示例性网络190)而被通信耦合到一个或多个服务器计算设备(诸如示例性服务器计算设备151、152和153)。

根据一个方面,诸如团队定义120中的一个团队定义可以包括标识信息(诸如名称)、以及与建立计算资源项目和限制有关的信息。例如,团队定义可以包括以任何适当的计算资源度量表示的计算资源的量的指示。例如,团队定义可以包括在处理器小时量、成本(dollar)、存储器消耗、或其他类似计算资源的量化方面的计算资源的枚举。随着计算环境执行计算或其他类似的计算机处理,计算资源因此被消耗或被占用。这样的计算资源可能已通过授权或其他类似的资源指派机制而被指派给了可以是班级教授的管理员110。备选地或附加地,这样的计算资源能够在被需要或动态的基础上供管理员110使用,管理员可以是发言者或会议研讨会或实验室的演示者。因此,根据一个方面,计算资源可以在诸如授权限制或每用户限制的限制方面被枚举,一旦所有这样的计算资源被用尽或以其他方式被计算环境上的计算的执行所消耗,该限制可以被耗尽,从而导致进一步的计算功能性的终止。

团队定义还可以包括作为团队的一部分的个体的名册或清单。包括图1中所示的团队定义120中的一个团队定义的这样的个体(诸如初始团队定义的一部分)可以被首先枚举。备选地或附加地,个体可以例如通过以下详细描述的机制而在随后的时间加入团队。

除了示例性团队定义120之外,诸如示例性管理员110的管理员可以提供一个或多个项目定义,诸如示例性项目定义130。根据一个方面,项目定义可以包括指示待被生成的计算环境的信息以及标识信息(诸如项目的名称)以及与项目的发起、执行或完成相关的指导或其他基础材料。例如,针对数据库操作的项目可以具有与其相关联的项目定义,该项目定义将待被生成以用于这样的项目的计算环境标识为包括给定类型、速度或其他类似处理器指示属性的处理器、大量的存储器、大量的存储容量以及相关的应用程序(诸如数据库应用)。执行这样的项目的每个个体因此可以被提供有适合这样的项目的计算环境(诸如由为班级授课的教授所设计的计算环境)。附加地,针对数据库操作的项目可以包括手册、教学大纲、指导、或者可以诸如由为班级讲授有关数据库操作的教授提供的其他类似信息。

如由生成动作141所示,在接收到团队和项目定义(诸如示例性团队定义120和项目定义130)时,计算环境生成器(诸如示例性计算环境生成器140)可以生成多个计算环境(诸如示例性计算环境161和162)。更具体地,根据一个方面,计算环境生成器可以生成计算环境以用于针对每个当前所枚举的团队成员的每个项目。因此,例如,如果团队定义120中的一个团队定义枚举了十个实体作为给定团队的一部分,并且项目定义130中的两个项目定义指示它们已被指派给该团队,则计算环境生成器140可以生成二十个计算环境,生成针对与第一项目相对应的十人团队的每个成员的一个,并且生成针对与第二项目相对应的相同十人团队的每个成员的另一个。根据另一方面,一个或多个计算环境可以由计算环境生成器140预先生成,诸如以当这样的用户加入由示例性团队定义120定义的一个或多个团队时,随后与个体用户相关联。附加地,计算环境生成器140可以基于生成动作141被执行时的相关元数据来多次执行生成动作141。例如,如果团队定义枚举了五个团队成员,并且仅单个项目定义标识了团队,则示例性计算环境生成器140可以生成五个计算环境。继续这样的示例,如果团队随后包括第六个体,则计算环境生成器140可以在该随后的时间生成另一(第六)计算环境。备选地或附加地,生成动作141可以被调度用于预定时间。例如,如果团队定义枚举了五个团队成员,并且只有单个项目定义标识了团队,则示例性计算环境生成器140可以将生成五个计算环境延迟直到随后的指定的时间。如果在此时间之前,第六个体加入团队,则计算环境生成器140可以继续将计算环境的生成延迟直到所调度的时间,但是,在所调度的时间处,可以同时生成所有六个计算环境。根据又一方面,计算环境生成器140可以确定哪些计算环境需要被生成,但是可以延迟生成这样的计算环境,听候后续动作,诸如用户接受邀请。

计算环境生成器可以针对被这样的计算环境消耗的计算资源来指派限制或其他类似的控制。为了提供安全性和对这样的计算环境的控制,诸如示例性计算环境生成器140的计算环境生成器可以建立管理性和安全性策略,诸如标识将被授予对这样的计算环境的用户访问的个体用户,同时还将诸如示例性部门110的管理员标识为具有对这样的环境的管理特权,管理特权包括例如能够修改这样的环境的参数或资源以及其他管理性控制权。

根据一个方面,所生成的计算环境(诸如示例性计算环境161和162)可以是由计算设备151、152和153中的一个或多个所托管的虚拟机。这样的虚拟机可以呈现虚拟化的计算环境,虚拟化的计算环境通过虚拟机监控器和其他类似机制而最终由主机计算设备(诸如示例性计算设备151、152和153)的硬件和软件来支持。根据一个方面,计算设备151、152和153可以是基于数据中心的服务器计算设备,基于数据中心的服务器计算设备可以提供冗余和并行化的硬件和软件以用于托管诸如云计算服务的远程可访问计算服务。这样的服务可以包括托管虚拟机或其他类似计算环境。这样的托管服务的用户(例如示例性用户170和180)可以具有帐户或其他类似的构造,用户访问托管服务以及利用其硬件和软件的能力通过帐户或其他类似的构造被控制。通常,这样的帐户采用订阅的形式,订阅枚举用户对托管服务的硬件和软件的访问的暂时性、计算性和其他类似的限制。如本文所使用的,术语“沙箱”是指为用户利用基于计算的托管服务提供的订阅或者暂时性、计算性或其他类似能力的其他类似枚举,或者对用户利用基于计算的托管服务的限制。如下文将详细介绍的,尽管由主机服务托管而因此可访问的沙箱和计算环境的精确层次结构可以与本文的描述正交,但是参考计算环境的生成,诸如由示例性计算环境生成器140生成示例性计算环境161和162可以包括生成一个或多个沙箱,这样的计算环境可以通过一个或多个沙箱而被访问和被利用,如由托管服务的硬件和软件(诸如由图1中所示的计算设备151、152和153图形表示的硬件)来托管的以及在由托管服务的硬件和软件上所执行的。

除了生成计算环境之外,示例性计算环境生成器140还可以生成可以被链接到计算环境的数字化构造,从而有助于其管理。例如,对于团队定义120中的每一个,团队可以由计算环境生成器140来创建,其中如本文所使用的术语“团队”是指数字化构造,数字化构造是用户身份的收集,并且元数据可以利用数字化构造而被关联,以向其链接附加信息。例如,团队元数据可以包括针对团队的标识符(例如,团队名称)、以及适用于团队的计算资源限制或可用性。

以类似的方式,对于项目定义130中的每一个项目定义,计算环境生成器140可以生成项目,其中本文中使用的术语“项目”是指用于记录元数据(诸如标识信息、指导性材料、定义计算环境的属性的模板、计算资源限制、以及其他类似的元数据)的数字化构造。一旦计算环境生成器140生成一个或多个团队和一个或多个项目,计算环境生成器140就可以将特定项目链接到特定团队。附加地,计算环境生成器140可以将所生成的计算环境(例如,示例性计算环境161和162)链接至项目,这样的计算环境被生成以用于该项目。诸如示例性个体用户170和180的个体用户可以利用诸如示例性计算设备171和181的计算设备来访问由计算环境生成器140生成的计算环境,诸如示例性计算环境161和162。更具体地,示例性计算设备171和181可以通过诸如示例性网络190的计算机通信网络而被通信耦合到一个或多个服务器计算设备,诸如示例性服务器计算设备151、152和153。如图1中通过利用动作178所示,诸如示例性用户170和180的用户可以利用由计算环境生成器140生成的计算环境(诸如示例性计算环境161和162)来执行项目并且在该过程中消耗计算资源。

转到图2,其中所示的示例性系统200图示了计算环境、沙箱、项目以及团队之间的示例性链接。诸如示例性团队210和220的团队以及诸如示例性项目230和240的项目可以基于从团队和项目定义所接收的信息而被生成。例如,示例性团队210可以包括包装器,包装器可以包括指示团队的名称、呈用户身份的形式的个体的名册、以及其他类似信息的元数据,个体的名册包括团队210。类似地,示例性项目230可以包括包装器,包装器可以包括如下述的元数据以及其他类似的元数据:元数据指示项目的名称、指导、或者适用于发起、执行或完成项目的其他类似资源、与项目相关联的计算资源限制、定义将在其上执行项目的计算环境的计算环境模板。附加地,项目230可以被指派给团队210。因此,如箭头213所示,链接可以在项目230和团队210之间被建立。

图2所示的示例性系统200图示了被指派给团队210的多个项目,包括例如项目230和项目240。根据一个示例,这样的项目可以表示家庭作业项目,或者被指派给班级学生的学校作业项目,其中团队210表示该班级。

附加链接可以在个体计算环境和它们所对应的项目之间被形成。例如,项目230可以已指定并且可以已包括计算环境定义模板作为元数据231的一部分。如前所述,这样的模板可以包括处理器的量、类型、速度以及其他类似定义属性的标识,这些定义属性将在这样的计算环境内被仿真或被表示。如先前还指出的,这样的模板可以包括存储器的量、存储容量以及其他类似的计算环境属性的标识。附加地,这样的模板可以包括计算机软件类型的标识,诸如待被安装在计算环境上的操作系统和应用程序。多个计算环境(诸如示例性计算环境251和252)可以基于计算环境定义模板被创建,计算环境定义模板可以是元数据231中所枚举的模板之一。根据一个方面,一个计算环境可以被生成以用于团队210的名册中所枚举的每个个体,项目230被链接到团队210,这样的计算环境被生成以用于项目230。以类似的方式,计算环境261和262可以被生成。

所生成的计算环境(诸如示例性计算环境251、252、261和262)可以采用由服务托管的虚拟机的形式,服务提供硬件和软件来支持这样的虚拟机的托管。在这样的情况下,个体计算环境的生成(例如,个体虚拟机图像的生成)以及随后使用虚拟化软件加载这样的虚拟机图像可以是计算环境的前述生成的一部分,虚拟化软件包括虚拟机监控器或其他类似虚拟化软件。另一部分可以是在托管服务本身的上下文内的沙箱(例如,订阅、帐户或其他类似构造)的生成,沙箱可以提供用户可以通过其来访问和利用计算环境的机制。例如,这样的沙箱可以提供通过其可以被限制或被跟踪对服务的访问的机制。因此,计算环境的生成可能需要沙箱的生成,在沙箱内来访问该计算环境。

沙箱(例如,示例性沙箱271)也可以基于诸如沙箱模板的模板被生成,模板可以是与项目230相关联的元数据231的模板中的一个。沙箱模板可以指定沙箱的各方面,诸如帐户或订阅的类型、对这样的帐户或订阅施加的预先建立的限制或授予的能力以及其他类似的定义性或属性的方面。

一旦被生成,就可以建立针对计算环境以及包含这样的计算环境的沙箱的安全性和管理性边界。例如,计算环境251可以由诸如示例性用户170的用户通过诸如示例性沙箱271的沙箱来访问,沙箱可以表示使得计算环境能够被用户170、而不被例如用户180访问的安全性和管理性边界。换言之,计算环境251和沙箱271可以与特定用户(例如,示例性用户170)相关联,使得用户170可以访问沙箱271并且利用计算环境251,以排除其他用户(例如,示例性用户180)。以类似的方式,与不同项目相对应的计算环境261也可以由用户170、但是不可以由用户180来访问。相反,计算环境252和262可以由用户180来访问,以排除用户170。

根据一个方面,这样的多个计算环境可以通过适当的图形用户界面(例如,可以向给定用户图形表示这样的用户可用的所有计算环境的帐户或订阅图形用户界面)而被呈现给用户。这样的图形用户界面可以附加地呈现来自与用户沙箱链接的团队或项目的信息。例如,用户170在访问沙箱271时可以被提供有图形用户界面,图形用户界面不仅显示用户170可以通过其来访问计算环境251的机制,而且还显示关于项目230的信息,例如诸如项目名称、项目指导、手册、注释和其他类似信息性材料、以及可以作为项目230的元数据231的一部分的其他方面。附加地,用户170可以被类似地提供有从与团队210相关联的元数据211获取的信息(例如,诸如团队名称)。

如前所述,沙箱可以是帐户或订阅的形式。因此,每个个体用户可以仅与单个沙箱唯一地关联,并且可以从该单个沙箱内访问多个不同的计算环境。例如,沙箱271和281两者都可以是与示例性用户170相关联的单个沙箱,并且以类似的方式,沙箱272和282可以同样地都是与示例性用户180相关联的单个沙箱。在这样的实施例中,诸如示例性用户170的用户在访问其沙箱时可以诸如通过上述图形用户界面而被呈现用户可以被允许访问的多个不同计算环境。例如,示例性用户170可以被呈现有计算环境251和计算环境261。如前所述,图形用户界面可以进一步指示计算环境251与项目230相关联,包括例如提供项目名称或其他类似标识符,并且同样可以指示计算环境261与项目240相关联,当用户的一部分是团队210的成员(诸如,例如用户170是其学生被枚举为团队210的教育班级的一部分)时,计算环境261和项目240可能都已经被指派给用户170。以类似的方式,用户180可以在访问再次作为单独图示的沙箱272和282的组合的单个沙箱时,被呈现有允许用户180选择计算环境252、计算环境262、和该单个沙箱内的任何其他计算环境的图形用户界面。

为了有助于对计算环境的管理和营运,计算环境251、252、261和262中的每一个、以及这样的计算环境在其上下文内被访问的沙箱(例如,示例性沙箱271、272、281和282)也可以与可以被授予给一个或多个用户的管理性特权相关联。在图2的系统200所图示的特定示例中,管理员110被示出为具有被授予的这样的管理性访问。如先前所指示的,管理员110可以是正在将项目指派给班级的个体学生的班级教授。管理员110也可以被提供有监视仪表板或其他类似的用户界面,通过监视仪表板或其他类似的用户界面,管理员110可以被呈现有当诸如由用户170和180对邀请接受时的当前状态、各种沙箱的创建以及各种计算环境的创建。这样的用户界面可以提供有关个体沙箱和计算环境创建的明细、以及如下所述的经聚集的信息。

根据一个方面,可以在个体计算环境或沙箱级别占用计算资源的消耗。因此,基于团队或项目所指派的计算资源可以分散在团队容器或项目容器内所包含的正在被创建的各种计算环境之中。例如,计算资源限制或可用性可以在这样的限制或可用性应用的所有计算环境之中均等分散。例如,在元数据231中所枚举的并且适用于项目230的计算资源限制可以在计算环境251和252之中被复制。然而,根据一个方面,这样的默认项目可以诸如由管理员(诸如示例性管理员110)在生成计算环境(诸如示例性计算环境251和252)时或在随后的时间手动改变。

计算资源的分配以及其消耗或利用的后续监视可以以分层的方式被执行。因此,例如,计算资源可以被分配给团队210,并且可以在与团队210相关联的元数据211中被枚举。这样的计算资源的部分然后也可以被分配给项目230和240中的每一个、以及任何其他被指派给团队210的项目。通过例如项目230和240中的每一个被指派给向团队210指派的计算资源的一半,这样的部分可以是相等的部分。备选地,这样的部分可以不相似。附加地,例如在团队级别,一些计算资源量可以被保留用于将来的项目或者用于将来分配给现有项目(例如,示例性项目230和240)。继续分层示例,诸如从团队级别被指派给每个项目的计算资源的部分然后可以进一步分散在与这样的项目链接的计算环境之中。因此,从团队210被指派给项目230的计算资源的部分可以例如以上述方式进一步分散在计算环境251和252之中。任何层级之中的分散式计算资源的机制可以被等同地应用于任何其他层级。

根据另一方面,计算资源的分配可以在每个用户或每个沙箱级别上被执行,在这样的情况下,如以下将参考图3的详细说明,只要附加用户被允许加入一个或多个团队,计算资源的聚集量就可以不受限制。

计算资源限制还可以包括对一个或多个被允许或被约束的服务的枚举。例如,计算环境251和252可以被约束为防止执行特定被枚举的软件封装。相反地或附加地,计算环境251和252可以被约束为仅允许执行特定被枚举的服务,或者不论其他限制如何,可以被明确地允许访问特定服务。

适当地,对这样的计算资源的消耗的监视然后还可以在项目和团队级别被聚集。例如,由用户170和180分别利用计算环境251和252所消耗的计算资源可以被聚集,并且被与和项目230相关联的元数据231中所枚举的计算资源限制进行比较。以类似方式,如果计算资源限制或可用量在团队范围基础上被枚举,则个体计算环境的计算资源消耗可以在项目级别被聚集,然后这样的聚集可以在团队级别被进一步聚集。

转到图3,其中所示的示例性系统300图示了现有团队(例如,示例性团队310)与新用户(例如,示例性用户372)的示例性扩展。更具体地,诸如示例性管理员110的管理员可能已提供一个或多个团队定义以及一个或多个项目定义,一个或多个团队定义以及一个或多个项目定义可以导致创建一个或多个团队容器(例如,示例性团队310)和一个或多个项目容器(例如,示例性项目330)。例如,示例性管理员110可以是会议上的演示者。因此,尽管示例性管理员110能够建立针对由其会议的与会者使用的计算环境的模板,但是示例性管理员110可能不知道确切地将有多少与会者出席。例如,会议可能不需要与会者预先注册,或者可能允许与会者在演示之间自由移动。在这样的情况下,管理员可以提供不包括名册或仅包括那些已提前注册的个体的名册的团队定义。随后加入的个体然后可以被动态地添加到名册,并且在与生成针对其他用户的沙箱和计算环境不同的时间,可以生成针对他们的适当的沙箱和计算环境。

例如,在由图3的系统300所示的示例中,以上述的方式,可能已创建了针对用户170和371的沙箱341和342。附加地,诸如示例性计算环境351和352的计算环境可以已被生成,并且诸如以先前也详述的方式,分别例如基于与项目330相关联的模板或其他类似的元数据而在沙箱341和342内能够被访问。作为团队310的创建的一部分,诸如示例性管理员110的管理员可以被提供有诸如示例性标识符360的标识符,标识符可以是系统所生成的并且可以唯一地标识团队310,并且以其他方式使得过程能够更新团队310的元数据,例如诸如更新团队310的名册以包括新成员。更具体地,管理员110可以与可能有兴趣加入团队310的其他用户共享标识符360。例如,管理员110可以向会议的所有参加者提供标识符360,以使得那些参加者能够加入管理员110在该会议上进行的演示。

如图3的示例性系统300中所示,诸如示例性用户372的用户可以例如通过由管理员110触发的分散动作381来接收标识符360。这样的标识符然后可以被提供给可以利用标识符来将用户(例如,示例性用户372)添加到团队(例如,示例性团队310)的计算机可执行指令。例如,示例性用户372可以将标识符360提供给可以充当前端的网页以用于可以接受这样的标识符、然后利用它来将用户372添加到团队310的名册的过程。

如动作382和383所示,一旦团队310的元数据被修改为包括经更新的名册,则后续处理可以生成新的沙箱和/或新的计算环境来考虑团队的元数据的变化310。例如,一旦动作382将310处的团队的元数据更新为将用户372包括在名册中,则创建动作383可以被触发,以创建可以与用户372相关联的沙箱343,并且计算环境353可以经由沙箱343而被生成并且对用户372可用,其中计算环境353符合模板和可以作为项目330的元数据的一部分的其他类似信息,在本示例中,项目330可以表示呈管理员110形式的演示者正在会议上呈现的演示。

如前所述,如动作382所示,创建动作383不需要通过团队310的元数据的修改(诸如通过将用户372添加到团队310的名册)来被触发。例如,与由团队310的元数据的修改来触发相反,创建动作383可以基于与预定时间匹配的当前时间被调度或被触发。在这样的示例中,自上次执行创建动作383以来,被添加到团队310的名册的任何用户可以具有在创建动作383的后续执行时为其创建的沙箱和/或计算环境。例如,管理员110可以触发沙箱341和342以及计算环境351和352的创建,以供提前注册管理员会议演示的用户使用。管理员110然后可以进一步指定寻求参加演示的任何其他用户必须不迟于演示开始前十分钟参加。在演示开始之前的十分钟,创建动作383可以标识任何附加用户,自初始沙箱341和342以及初始计算环境351和352被创建的时间以来,附加用户已被添加到团队310的名册。自该时间以来,这样的创建动作383可以将用户372标识为已被添加到团队310的名册,并且在演示开始之前的十分钟,创建动作383可以创建沙箱343和计算环境353,从而允许用户372访问由演示的演示者所设计的计算环境。备选地,所有沙箱和计算环境的创建可以在一个或多个预定时间被触发。更具体地,对于在管理员提供相关团队和项目定义时预先注册管理员会议演示的用户,管理员110不必触发沙箱341和342以及计算环境351和352的创建,而是沙箱341和342以及计算环境351和352的创建可以与在计算环境353中创建沙箱343同时(即,例如,演示开始之前十分钟)被执行。在另一方面,可能不需要对新用户的检查,并且新用户可以被临时添加到系统。

沙箱和计算环境的创建可以被彼此独立地触发。例如,由于计算环境的创建可能是耗时的,因此在诸如图2的示例性系统200所示的情况下,这样的计算环境的创建可以被延迟。例如,返回图2,呈管理员110形式的教授可以提供相关团队定义和项目定义,团队定义和项目定义能够在项目容器230和240中创建团队容器210。进而,沙箱371、372、381和382可以例如以前述方式被创建。诸如示例性用户170和180的用户可能直到更晚的时间点才能访问那些沙箱。例如,呈管理员110形式的教授可以在课程开始前几天、几周甚至几个月提供相关信息。此外,个体用户可以在不同的时间登录,其中一些用户在课程开始前几天登录,一些其他用户在该课程的第一次会议时登录,另外一些其他用户随后登录。因此,为了分散在创建计算环境时产生的处理载荷,根据一个方面,诸如示例性计算环境251、252、261和262的计算环境的创建可以被延迟,直到用户实际登录并且寻求利用这样的计算环境。因此,例如,如果用户170在课程开始前的晚上登录,则示例性计算环境251和261可以在该时间被生成,而计算环境252和262的生成可以被延迟,直到用户180诸如例如在课程开始之前仅几分钟或者甚至在课程已开始之后登录的后续时间。以这样的方式,计算环境的创建可以跨时间在分散上被时移,从而减少了任一时间点处的处理载荷。

作为另一示例,在诸如图3的示例性系统300所示的情况下,计算环境的创建可以向前加速。例如,返回图3,呈管理员110形式的会议演示者可能不确定有多少用户将参加他们的演示。然而,会议演示者可以预期例如二十个用户将参加演示。因此,例如,除了等待用户加入之外,管理员110可以触发保持沙箱的创建,保持沙箱可以与任何特定用户、而不是管理员110本身相关联。这样的保持沙箱可能然后已在其中创建二十个计算环境,诸如符合针对项目330的其他类似元数据的模板的计算环境。随着个体用户例如被添加动作382添加到团队310的名册,在用户被添加到名册时或在预定时间,可以再次创建针对这些用户的新沙箱。一旦这样的新沙箱被创建,来自保持沙箱的计算环境就可以被重新指派给新创建的沙箱,从而将创建这样的计算环境的处理载荷移到过去,并且允许用户在被添加到名册之后可以更快地访问这样的计算环境。因此,例如,计算环境353可能已被事先创建并且可能已被指派给保持沙箱。在创建沙箱343时,如创建动作383所示,计算环境353可以简单地从保持沙箱被重新指派给沙箱343,这比在沙箱343内创建全新的计算环境要快得多,并且效率更高。

如先前所指示,为了有助于对计算环境的管理和营运,计算环境351、352和353中的每一个、以及这样的计算环境在其上下文内被访问的沙箱(例如,示例性沙箱341、342和343)还可以与可以被授予给一个或多个用户的管理性特权相关联。在图3的系统300图示的特定示例中,管理员110被示出为被授予这样的管理性访问。管理员110还可以被提供有监视仪表板或其他类似的用户界面,通过监视仪表板或其他类似的用户界面,管理员110可以被呈现有当诸如例如用户170、371和/或372对邀请接受时的当前状态、各种沙箱的创建和各种计算环境的创建。这样的用户界面可以提供有关个体沙箱和计算环境创建的明细、以及经聚集的信息。

转到图4,其中所示的流程图400图示了示例性的系列步骤,通过这些步骤可以大规模创建计算环境。最初,在步骤410处,团队定义和项目定义可以被接收。如前所述,这样的定义可以包括团队名册、项目计算资源模板、以及以上详述的其他类似信息。随后,在步骤415和420处,可以从在步骤410处所接收的定义来生成团队和项目,并且包括在这样的定义中所枚举的信息的元数据可以被包装在这样的团队和项目周围。在步骤425处,可以在与被指派了这样的项目的团队相对应的项目之间建立链接。

在步骤430处,可以创建针对如下用户的一个或多个沙箱:被列出在团队名册中的用户、或者分别由在步骤415和420处所接收的团队或项目元数据所标识的用户。如前所述,步骤430可以被各种事件(例如,用户接受、特定时间等)触发。在步骤435处,诸如以上述方式,一个或多个计算环境可以在步骤430处所创建的沙箱内被生成。如前所述,虚拟机的创建例如可能是耗时的过程,因此步骤435的各方面可以并行执行或者以交错方式执行。关于后者,根据一个方面,如上所述,虚拟机图像的创建可以由用户尝试登录其帐户或者以其他方式访问与该用户相关联的沙箱而被触发。在这样的情况下,一旦计算环境的按需创建完成,用户将能够在沙箱的上下文内访问计算环境。如上所述,例如在计算环境被生成并且被保持在保持沙箱中、直到被指派给在步骤430处所创建的一个或多个沙箱的示例中,步骤435的各个方面可以被移至步骤430之前。

一旦沙箱和计算环境被创建,处理就可以前进到步骤440,并且可以建立针对在步骤350处所创建的每个个体沙箱和计算环境的计算资源限制或者可用性。如前所述,步骤440可以引起初始分散,诸如跨与项目相关联的每个计算环境的均等分散,其中在该项目级别定义了这样的计算资源可用性或限制,或者跨与团队相关联的每个计算环境的均等分散,其中在该团队级别定义了这样的计算资源可用性或限制。步骤440还可以引起利用预定量的计算资源来建置每个沙箱。例如,在会议设置中,不论加入演示的其他与会者有多少,每个与会者都可以具有预定量的计算资源。然而,作为步骤440的一部分,默认分散可以例如由管理员预先修改或者随后修改,在预先修改的情况下,可以在步骤440处应用这样的修改,在随后修改的情况下,这样的修改将不作为示例性流程图400的步骤的初始执行的一部分。

随后,在步骤445处,可以生成针对在步骤430和435处所生成的每个沙箱和计算环境的管理性和安全性边界。这样的边界可以包括定义在这样的沙箱的上下文内将对这样的计算环境具有用户访问权的个体用户、以及定义对这样的计算环境的管理性访问权。如前所述,具有对多个计算环境的访问权的用户可以通过帐户图形用户界面或其他类似的统一访问机制而被呈现有这样的多个计算环境。在步骤450处,可以在个体计算环境和与项目相对应的项目沙箱之间创建链接,这样的计算环境被创建以用于该项目。

如上所述,可以对团队和/或项目的元数据进行修改,修改包括将新用户添加到团队的名册,或者从团队的名册移除现有用户。如果发生这样的变化,则在步骤455处,处理可以触发步骤460的执行,在该点处,团队的元数据被修改,以容纳新用户或者移除现有用户。处理然后可以返回到步骤430,在步骤430中,可以创建针对新用户的沙箱,或者删除针对被移除用户的沙箱。然后可以再次执行剩余的步骤435至450。如前所述,可以在检测到例如新用户被添加到团队时触发步骤455,因为步骤455可以按预定的计划表(schedule)或在预定的时间(例如,演示开始前十分钟)被执行。如果没有对团队或项目的元数据进行任何改变(诸如在步骤455中所确定的),则相关处理可以在步骤465处结束。

转到图5,图示了可以执行上述一些或所有机制和动作的示例性计算设备500。示例性计算设备500可以包括但不限于一个或多个中央处理单元(CPU)520、系统存储器530和系统总线521,系统总线521将包括系统存储器的各种系统组件耦合到处理单元520。系统总线521可以是若干类型的总线结构中的任一种,包括使用各种总线架构中的任一个的存储器总线或存储器控制器、外围总线和局部总线。计算设备500可以可选地包括图形硬件,图形硬件包括但不限于图形硬件接口560和显示设备561,显示设备561可以包括能够接收基于触摸的用户输入的显示设备(例如,触敏或多点触控显示设备)。根据特定的物理实现,CPU 520、系统存储器530和计算设备500的其他组件中的一个或多个可以在物理上位于同一地点(例如,在单个芯片上)。在这样的情况下,系统总线521的一些或全部可以仅是单个芯片结构内的硅路径,并且其在图5中的图示可以仅是为了例示方便。

计算设备500通常还包括计算机可读介质,计算机可读介质可以包括计算设备500可以访问的任何可用介质,并且包括易失性和非易失性介质以及可移动和不可移动介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以任何方法或技术实施的用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的内容的介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能磁盘(DVD)或其他光盘存储装置、磁带盒、磁带、磁盘存储或装置其他磁性存储设备或者可以被用于存储期望内容并且由计算设备500可访问的任何其他介质。但是,计算机存储介质不包括通信介质。通信介质通常在诸如载波或其他传输机制的调制数据信号中体现计算机可读指令、数据结构、程序模块或其他数据,并且包括任何内容传递介质。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接的有线介质,以及诸如声学、RF、红外和其他无线介质的无线介质。以上任何内容的组合也应包括在计算机可读介质的范围内。

系统存储器530包括易失性和/或非易失性存储器形式的计算机存储介质,例如,只读存储器(ROM)531和随机存取存储器(RAM)532。基本输入/输出系统533(BIOS)包含帮助例如在启动期间在计算设备500内的元件之间传送内容的基本例程,基本输入/输出系统533通常被存储在ROM 531中。RAM 532通常包含可立即访问和/或当前正在由处理单元520操作的数据和/或程序模块。作为示例而非限制,图5图示了操作系统534、其他程序模块535和程序数据536。

计算设备500还可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图5图示了从不可移动非易失性磁性介质读取或向不可移动非易失性磁性介质写入的硬盘驱动541。可以与示例性计算设备一起使用的其他可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM以及上文定义和描述的其他计算机存储介质。硬盘驱动541通常通过诸如接口540的非易失性存储器接口而被连接到系统总线521。

上面讨论并在图5中图示的驱动及其相关联的计算机存储介质为计算设备500提供了计算机可读指令、数据结构、程序模块和其他数据的存储。在图5中,例如,硬盘驱动541被图示为存储操作系统544、其他程序模块545和程序数据546。注意,这些组件可以与操作系统534、其他程序模块535和程序数据536相同或不同。操作系统544、其他程序模块545和程序数据546被赋予不同的附图标记,以例示它们至少是不同的副本。

计算设备500可以使用到一个或多个远程计算机的逻辑连接而在网络化环境中操作。计算设备500被图示为通过网络接口或适配器550而被连接到通用网络连接551(到网络190),网络接口或适配器进而被连接到系统总线521。在网络化环境中,所描绘的程序模块相对于计算设备500或其一部分或外围设备可以被存储在通过通用网络连接561而被通信耦合到计算设备500的一个或多个其他计算设备的存储器中。将理解,所示出的网络连接是示例性的,并且可以使用在计算设备之间建立通信链路的其他方式。

尽管描述了单个物理设备,但是示例性计算设备500可以是虚拟计算设备,在这样的情况下,上述物理组件(例如,CPU 520、系统存储器530、网络接口540以及其他类似的组件)的功能性可以由计算机可执行指令来提供。这样的计算机可执行指令可以在单个物理计算设备上执行,或者可以跨多个物理计算设备被分散,包括以动态方式跨多个物理计算设备被分散,使得托管这样的计算机可执行指令的特定物理计算设备可以根据需要和可用性而随时间动态变化。在示例性计算设备500是虚拟化设备的情况下,托管这样的虚拟化计算设备的基础物理计算设备本身可以包括与上述类似并且以相似的方式操作的物理组件。此外,虚拟计算设备可以在多个层中被利用,其中一个虚拟计算设备在另一虚拟计算设备的构造内执行。如本文所使用的术语“计算设备”因此是指物理计算设备或包括虚拟计算设备的虚拟化计算环境,在虚拟化计算环境内可以以与物理计算设备执行它们的方式一致的方式来执行计算机可执行指令。类似地,如本文所使用的,指代计算设备的物理组件的术语是指执行相同或等效功能的那些物理组件或其虚拟化。

作为第一示例,以上描述包括用于生成多个虚拟计算环境的集合并且在多个虚拟计算环境的集合之中分配计算资源的方法,方法包括:生成多个虚拟计算环境的第一集合,其中每个虚拟计算环境包括由第一模板所指定的计算硬件的仿真;向由团队名册所枚举的团队的每个成员提供对多个虚拟计算环境的第一集合中的唯一虚拟计算环境的用户访问;向第一管理员提供对多个虚拟计算环境的第一集合中的每个虚拟计算环境的管理员访问;将多个虚拟计算环境的第一集合中的每个虚拟计算环境链接到第一项目,第一项目与包括第一模板的第一项目元数据相关联;将第一项目链接到与包括团队名册的团队元数据相关联的团队;向多个虚拟计算环境的第一集合中的每个虚拟计算环境分配计算资源的初始分配,其中由虚拟计算环境进行的仿真计算消耗被分配给虚拟计算环境的计算资源;在多个虚拟计算环境的第一集合的生成之后,确定一个或多个新添加成员已被添加到团队名册;向一个或多个新添加成员中的每个成员提供对唯一虚拟计算环境的用户访问;以及向被提供给一个或多个新添加成员中的每个成员的每个虚拟计算环境分配计算资源的初始分配。

第二示例是根据第一示例所述的方法,还包括:在确定之后,生成多个虚拟计算环境的第二集合,其中每个虚拟计算环境包括由第一模板所指定的计算硬件的仿真;其中被提供给一个或多个新添加成员中的每个成员的唯一虚拟计算环境来自多个虚拟计算环境的第二集合。

第三示例是根据第一示例所述的方法,其中被提供给一个或多个新添加成员中的每个成员的唯一虚拟计算环境来自多个虚拟计算环境的第一集合。

第四示例是根据第一示例所述的方法,其中生成多个虚拟计算环境的第一集合并且提供对多个虚拟计算环境的第一集合中的唯一虚拟计算环境的用户访问包括:在被指派给由团队名册所枚举的团队的每个成员的唯一沙箱内,生成多个虚拟计算环境的第一集合中的每个虚拟计算环境。

第五示例是根据第一示例所述的方法,其中生成多个虚拟计算环境的第一集合包括:在被指派给第一管理员的保持沙箱内,生成多个虚拟计算环境的第一集合;并且其中提供对多个虚拟计算环境的第一集合中的唯一虚拟计算环境的用户访问还包括:将多个虚拟计算环境的第一集合中的个体虚拟计算环境从保持沙箱重新关联到被指派给由团队名册所枚举的团队的每个成员的唯一沙箱。

第六示例是根据第五示例所述的方法,其中向一个或多个新添加成员中的每个成员提供对唯一虚拟计算环境的用户访问还包括:将多个虚拟计算环境的第一集合中的其他个体虚拟计算环境从保持沙箱重新关联到被指派给一个或多个新添加成员中的每个成员的唯一沙箱。

第七示例是根据第一示例所述的方法,还包括:从新用户接收唯一标识符;以及修改团队元数据,以将团队名册更新为现在包括新用户,修改通过从新用户接收到唯一标识符而被触发。

第八示例是根据第一示例所述的方法,还包括:对于多个虚拟计算环境的第一集合中的每个虚拟计算环境,监视计算资源的第一初始分配的消耗;以及如果所监视的计算资源的第一初始分配的消耗高于阈值,生成对第一管理员的通知。

第九示例是根据第一示例所述的方法,还包括:如果多个虚拟计算环境的第一集合中的第一虚拟计算环境已消耗了先前被分配给第一虚拟计算环境的所有计算资源,则防止第一虚拟计算环境执行进一步的仿真计算。

第十示例是根据第一示例所述的方法,还包括:如果多个虚拟计算环境的第一集合中的第一虚拟计算环境正在以比阈值速率快的速率消耗先前被分配给第一虚拟计算环境的计算资源,即使先前被分配给第一虚拟计算环境的计算资源尚未被全部消耗,也防止第一虚拟计算环境执行进一步的仿真计算。

第十一示例是根据第一示例所述的方法,还包括:向第一管理员呈现多个模板;接收从多个模板对第一模板的选择;以及基于选择,修改第一项目元数据,以包括第一模板。

第十二示例是根据第一示例所述的方法,还包括:从第一管理员接收第一资源消耗限制;以及如果先前被分配给多个虚拟计算环境的第一集合中的第一虚拟计算环境的第一虚拟计算环境的计算资源的消耗超过第一资源消耗限制,即使先前被分配给第一虚拟计算环境的计算资源尚未被全部消耗,也防止第一虚拟计算环境执行进一步的仿真计算。

第十三示例是根据第一示例所述的方法,其中在多个虚拟计算环境的第一集合中以及在被提供给一个或多个新添加成员中的每个成员的虚拟计算环境中,计算资源的初始分配是针对每个虚拟计算环境的相同分配。

第十四示例是聚集的计算设备集合,计算设备集合包括:处理单元;以及包括计算机可执行指令的一个或多个计算机可读存储介质,计算机可执行指令在由处理单元中的至少一些处理单元执行时,使计算设备集合中的至少一些计算设备执行以下操作:生成多个虚拟计算环境的第一集合,其中每个虚拟计算环境包括由第一模板所指定的计算硬件的仿真;向由团队名册所枚举的团队的每个成员提供对多个虚拟计算环境的第一集合中的唯一虚拟计算环境的用户访问;向第一管理员提供对多个虚拟计算环境的第一集合中的每个虚拟计算环境的管理员访问;将多个虚拟计算环境的第一集合中的每个虚拟计算环境链接到第一项目,第一项目与包括第一模板的第一项目元数据相关联;将第一项目链接到与包括团队名册的团队元数据相关联的团队;向多个虚拟计算环境的第一集合中的每个虚拟计算环境分配计算资源的初始分配,其中由虚拟计算环境进行的仿真计算消耗被分配给虚拟计算环境的计算资源;在多个虚拟计算环境的第一集合的生成之后,确定一个或多个新添加成员已被添加到团队名册;向一个或多个新添加成员中的每个成员提供对唯一虚拟计算环境的用户访问;以及向被提供给一个或多个新添加成员中的每个成员的每个虚拟计算环境分配计算资源的初始分配。

第十五示例是根据第十四示例所述的计算设备集合,其中一个或多个计算机可读存储介质包括另外的计算机可执行指令,另外的计算机可执行指令在由处理单元中的至少一些处理单元执行时,使计算设备集合中的至少一些计算设备进一步执行以下操作:在确定之后,生成多个虚拟计算环境的第二集合,其中每个虚拟计算环境包括由第一模板所指定的计算硬件的仿真;其中被提供给一个或多个新添加成员中的每个成员的唯一虚拟计算环境来自多个虚拟计算环境的第二集合。

第十六示例是根据第十四示例所述的计算设备集合,其中被提供给一个或多个新添加成员中的每个成员的唯一虚拟计算环境来自多个虚拟计算环境的第一集合。

第十七示例是根据第十四示例所述的计算设备集合,其中使得生成多个虚拟计算环境的第一集合并且提供对多个虚拟计算环境的第一集合中的唯一虚拟计算环境的用户访问的计算机可执行指令包括如下计算机可执行指令:其在由处理单元中的至少一些处理单元执行时,使计算设备集合中的至少一些计算设备:在被指派给由团队名册所枚举的团队的每个成员的唯一沙箱内,生成所述多个虚拟计算环境的第一集合中的每个虚拟计算环境。

第十八示例是根据第十四示例所述的计算设备集合,其中使得生成多个虚拟计算环境的第一集合并且提供对第一多个虚拟计算环境集合中的唯一虚拟计算环境的用户访问的计算机可执行指令包括如下计算机可执行指令:其在由处理单元中的至少一些处理单元执行时,使计算设备集合中的至少一些计算设备:在被指派给由团队名册所枚举的团队的每个成员的唯一沙箱内,生成所述多个虚拟计算环境的第一集合中的每个虚拟计算环境。

第十九示例是根据第十四示例所述的计算设备集合,其中一个或多个计算机可读存储介质包括其他计算机可执行指令,其他计算机可执行指令在由处理单元中的至少一些处理单元执行时,使计算设备集合中的至少一些计算设备进一步执行以下操作:从新用户接收唯一标识符;以及修改团队元数据,以将团队名册更新为现在包括新用户,修改通过从新用户接收到唯一标识符而被触发。

第二十示例是包括计算机可执行指令的一个或多个计算机可读存储介质,计算机可执行指令在由计算设备执行时,使计算设备执行以下操作:生成多个虚拟计算环境的第一集合,其中每个虚拟计算环境包括由第一模板所指定的计算硬件的仿真;向由团队名册所枚举的团队的每个成员提供对多个虚拟计算环境的第一集合中的唯一虚拟计算环境的用户访问;向第一管理员提供对多个虚拟计算环境的第一集合中的每个虚拟计算环境的管理员访问;将多个虚拟计算环境的第一集合中的每个虚拟计算环境链接到第一项目,第一项目与包括第一模板的第一项目元数据相关联;将第一项目链接到与包括团队名册的团队元数据相关联的团队;向多个虚拟计算环境的第一集合中的每个虚拟计算环境分配计算资源的初始分配的,其中由虚拟计算环境进行的仿真计算消耗被分配给虚拟计算环境的计算资源;在多个虚拟计算环境的第一集合的生成之后,确定一个或多个新添加成员已被添加到团队名册;向一个或多个新添加成员中的每个成员提供对唯一虚拟计算环境的用户访问;以及向被提供给一个或多个新添加成员中的每一个成员的每个虚拟计算环境分配计算资源的初始分配。

从以上描述可以看出,已呈现了用于可扩展地生成和提供计算环境的机制。考虑到本文所述主题的许多可能的变化,我们要求保护落入所附权利要求及其等同物范围内的所有这样的实施例作为本发明。

相关技术
  • 用于实时环境的动态计算资源指派和可扩展计算环境生成
  • 一种应用于分布式计算环境的计算资源分配装置
技术分类

06120112196506