CN119816811A - 容器软件管理集群在混合云中的模块化分解和组合 - Google Patents
容器软件管理集群在混合云中的模块化分解和组合 Download PDFInfo
- Publication number
- CN119816811A CN119816811A CN202380043664.3A CN202380043664A CN119816811A CN 119816811 A CN119816811 A CN 119816811A CN 202380043664 A CN202380043664 A CN 202380043664A CN 119816811 A CN119816811 A CN 119816811A
- Authority
- CN
- China
- Prior art keywords
- software
- computing environment
- cluster
- computer
- operator
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45591—Monitoring or debugging support
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/505—Clust
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
在另一计算环境中复制包括控制软件和容器的软件集群可以包括软件操作符,所述软件操作符可以与控制软件集群的模块化功能相关地被生成。软件操作符通过分析控制软件群集被导出。软件操作符还通过分析包括容器的控制软件集群的代码以及通过分析用于控制软件集群的软件配置被导出。软件操作符的生成可以至少部分地包括确定用于控制软件集群的软件配置要求。软件操作符的生成至少部分地包括基于确定的软件配置要求和对另一软件计算环境的分析来创建用于控制软件集群的模板。可以在另一软件计算环境中复制控制软件集群的软件操作符的全部或部分。
Description
背景技术
本公开涉及使用控制软件将包括容器的软件集群复制到另一计算环境,例如,混合云计算环境。
在环境中,存在用于使用通过UI(用户界面)级抽象层对外来集群的舱(pod)实例化以及在集群间对等来迁移、备份/恢复、克隆的已知方法。与上述方法相关联的问题可能包括缺乏在多部署场景中可用的整体灾难恢复解决方案。在另一示例中,已知的解决方案可能需要预先存在的目标集群就位。在另一示例中,迁移的执行可能需要活动的手动干预。其他示例可以包括要求对技术栈的深度技能知识,并且解决方案可能缺少功能的模块化组件。在另一示例中,已知的解决方案缺乏一种方式来管理开销,例如,更多的组件需要更多的管理,并且为了管理资源开销,例如,更多的组件消耗更多的资源。
在一个示例中,灾难恢复可以使用云资源。创建考虑用于多云环境的计划会是复杂的,因为每个云平台可能具有其自己独特的灾难恢复计划。在一个示例中,灾难恢复计划可以包括具有容器即服务的本地部署;公共云容器服务;或基于容器的平台即服务(PaaS)。一些企业使用多于一种类型的部署。每种方法都内置了一些容器恢复能力,但没有一种方法提供整体解决方案。用于在灾难恢复中部署容器的管理软件(例如)可以包括对各种Kubernetes解决方案的仔细评估,其中可以将问题的不同答案应用于每个云环境。容器可以在公共云中表示新的共享责任切换,而不总是清楚地定义边界或识别间隙。大规模的编排容器可以使事情更具挑战性。供应商可以负责维护跨可用性区域运行的控制平面以实现弹性。利用其他服务或第三方工具,可能需要额外的解决方案用于完成灾难恢复。更大的共享责任、透明度和简便化可以帮助使云策略的其他方面变得清晰。
发明内容
本公开认识到与用于在混合云环境中部署软件集群的当前技术相关联的缺点和问题。
根据本发明的优选实施例,提供了一种用于在混合云环境中部署软件集群的统一解决方案,所述解决方案可以(例如,使用操作符)以整体方式执行,并且为用户提供以模块化方式选择用例的灵活性。由此,简化了整体架构(例如,从多个解决方案到用于用例的一个解决方案)。
在根据本发明的一个方面,一种使用控制软件将包括容器的软件集群复制到另一计算环境的计算机实现的方法,包括使用计算机生成与控制软件集群的模块化功能相关的软件操作符。软件操作符通过分析控制软件集群被导出,控制软件集群包括软件计算环境中的容器。软件操作符还通过分析包括容器的控制软件集群的代码以及通过分析用于控制软件集群的软件配置被导出。软件操作符的生成至少部分地包括确定用于控制软件集群的软件配置要求。控制软件集群包括用于在另一软件计算环境中运行控制软件集群的软件操作符的容器。软件操作符的生成至少部分地包括分析用于运行控制软件集群的软件操作符的另一软件计算环境。软件操作符的生成至少部分地包括基于所确定的软件配置要求和对另一软件计算环境的分析来创建用于控制软件集群的模板。模板包括用于在另一软件计算环境中运行软件操作符的定制资源定义的数据。所述方法包括基于对另一软件计算环境的分析和软件配置要求,在另一软件计算环境中复制控制软件集群的软件操作符的全部或部分。
根据一个实施例,其中对另一软件计算环境的分析包括将控制软件集群的配置要求与另一软件计算环境进行比较。
根据一个实施例,所述方法还包括在计算机处接收来自操作员的用于软件操作符的生成的软件计算环境的组件的选择。
根据一个实施例,所述方法还包括分析软件操作符以确定用于软件操作符的每一个的层级;以及基于层级,在另一软件计算环境中重新创建控制软件集群的实例。
根据一个实施例,控制软件集群是计算环境中的运行应用,其中运行应用包括被处理器执行的软件代码。
根据一个实施例,软件计算环境和另一软件计算环境是不同的云计算环境。
根据一个实施例,软件操作符是响应于对另一软件计算环境的分析和模板的创建来创建的,对控制软件集群的容器的分析用于确定软件操作符中的每一个的层级。
根据一个实施例,所述方法还包括使用计算机生成模型,所述模型包括以下:更新对用于控制软件集群的软件配置要求的确定;更新对用于运行控制软件集群的软件操作符的另一软件计算环境的分析;更新对软件操作符的生成至少部分地包括对基于所确定的软件配置要求和对另一软件计算环境的分析来创建用于控制软件集群的模板的更新。所述方法包括基于对另一软件计算环境的更新的分析和软件配置要求,更新控制软件集群的软件操作符的全部或部分在另一软件计算环境中的复制。
根据一个实施例,所述方法还包括迭代地生成模型以产生更新的模型。
在根据本发明的另一方面,一种使用控制软件和容器的用于在另一计算环境中复制软件集群的系统,所述系统包括:计算机系统,包括;计算机处理器、计算机可读存储介质和存储在计算机可读存储介质上的程序指令,程序指令可由处理器执行,以使得计算机系统执行以下功能:使用计算机生成与控制软件集群的模块化功能相关的软件操作符,软件操作符通过分析控制软件集群被导出,控制软件集群包括软件计算环境中的容器,软件操作符还通过分析包括容器的控制软件集群的代码以及通过分析用于控制软件集群的软件配置被导出;软件操作符的生成至少部分地包括确定用于控制软件集群的软件配置要求,控制软件集群包括用于在另一软件计算环境中运行控制软件集群的软件操作符的容器;软件操作符的生成至少部分地包括分析用于运行控制软件集群的软件操作符的另一软件计算环境;软件操作符的生成至少部分地包括基于所确定的软件配置要求和对另一软件计算环境的分析来创建用于控制软件集群的模板,模板包括用于在另一软件计算环境中运行软件操作符的定制资源定义的数据;以及基于对另一软件计算环境的分析和软件配置要求,在另一软件计算环境中复制控制软件集群的软件操作符的全部或部分。
根据一个实施例,对另一软件计算环境的分析包括将控制软件集群的配置要求与另一软件计算环境进行比较。
根据一个实施例,所述系统还包括执行用于在计算机处接收来自操作员的用于生成软件操作符的软件计算环境的组件的选择的功能。
根据一个实施例,所述系统还包括执行以下功能:分析软件操作符以确定用于软件操作符的每一个的层级;以及基于层级,在另一软件计算环境中重新创建控制软件集群的实例。
根据一个实施例,控制软件集群是计算环境中的运行应用,其中运行应用包括由处理器执行的软件代码。
根据一个实施例,软件计算环境和另一软件计算环境是不同的云计算环境。
根据一个实施例,软件操作符是响应于对另一软件计算环境的分析和模板的创建来创建的,对控制软件集群的容器的分析用于确定软件操作符中的每一个的层级。
在根据本发明的另一方面,一种使用控制软件和容器的用于在另一计算环境中复制软件集群的计算机程序产品,计算机程序产品包括包含有程序指令的计算机可读存储介质。程序指令可由计算机执行以使计算机通过计算机执行功能,所述功能包括:使用计算机生成与控制软件集群的模块化功能相关的软件操作符,软件操作符通过分析控制软件集群被导出,控制软件集群包括软件计算环境中的容器,软件操作符还通过分析包括容器的控制软件集群的代码以及通过分析用于控制软件集群的软件配置被导出;软件操作符的生成至少部分地包括确定用于控制软件集群的软件配置要求,控制软件集群包括用于在另一软件计算环境中运行控制软件集群的软件操作符的容器;软件操作符的生成至少部分地包括分析用于运行控制软件集群的软件操作符的另一软件计算环境;软件操作符的生成至少部分地包括基于所确定的软件配置要求和对另一软件计算环境的分析来创建用于控制软件集群的模板,模板包括用于在另一软件计算环境中运行软件操作符的定制资源定义的数据;以及基于对另一软件计算环境的分析和软件配置要求,在另一软件计算环境中复制控制软件集群的软件操作符的全部或部分。
根据一个实施例,对另一软件计算环境的分析包括将控制软件集群的配置要求与另一软件计算环境进行比较。
根据一个实施例,计算机程序产品还包括用于在计算机处接收来自操作员的用于软件操作符的生成的软件计算环境的组件的选择的功能。
根据一个实施例,计算机程序产品还包括以下功能:分析软件操作符以确定用于软件操作符的每一个的层级;以及基于层级,在另一软件计算环境中重新创建控制软件集群的实例。
附图说明
现在将仅以示例的方式并参考以下发明来描述本发明的优选实施例:
图1是示出根据本公开的实施例的用于将包括容器的软件集群复制到另一计算环境的方法的流程图。
图2是示出根据本发明的实施例的用于将包括容器的软件集群复制到另一计算环境的系统、系统特征或组件以及方法的概述的示意性框图。
图3是示出根据本发明的实施例的使用图2所示的系统实现的用于将包括容器的软件集群复制到另一计算环境的方法的流程图。
图4是示出根据本发明的实施例的从图3的流程图继续的用于将包括容器的软件集群复制到另一计算环境的另一方法的流程图。
图5是描绘根据本发明的实施例的可以全部或部分地结合在一个或多个计算机或设备中并且与图中所示的系统和方法协作的计算机系统的示意性框图。
图6是描绘根据本发明的实施例的云计算环境的框图。
图7是描绘根据本发明的实施例的抽象模型层的框图。
附图的各种特征不是按比例的,因为图示是为了清楚地帮助本领域技术人员结合具体实施方式理解本发明。
具体实施方式
提供参考附图的以下描述以帮助全面理解由权利要求及其等同物限定的本发明的示例性实施例。描述包括各种具体细节以帮助理解,但是这些细节仅被认为是示例性的,并且有助于提供清楚和简明。因此,本领域普通技术人员将认识到,在不背离本发明的范围和精神的情况下,可以对本文描述的实施例进行各种改变和修改。此外,可以省略对公知的功能和构造的描述。
在以下描述和权利要求中使用的术语和词语不限于书面含义,而是仅用于使得能够清楚且一致地理解本发明。因此,对于本领域技术人员显而易见的是,提供本发明的示例性实施例的以下描述仅用于说明目的,而不是用于限制由所附权利要求及其等同物限定的本发明的目的。
应当理解,除非上下文另有明确说明,否则单数形式“一”、“一个”和“所述”包括复数指示物。因此,例如,除非上下文另有明确规定,否则对“组件表面”的引用包括对一个或多个这样的表面的引用。
实施例和示例
本公开的实施例和附图可以具有与其他实施例相同或相似的部件。这样的附图和描述示出并解释了根据本公开的其他示例和实施例。本公开的实施例可以包括操作动作和/或过程。方法(诸如计算机实现的方法)可以包括用于实现根据本公开的实施例的一系列操作框,其可以包括与图中所示的一个或多个系统的协作。根据本公开的方法和系统的操作框可以包括用于实现根据本公开的操作的功能的技术、机制、模块等。类似的部件可以具有相同的附图标记。组件可以与计算机实现的方法协同操作。
根据本公开的实施例,一种方法和系统可以包括以操作符的形式分解运行的管理软件集群或容器编排器(例如,集群)。软件集群可以包括部署、舱、路由、秘密、服务、配置映射、软件存储库、图像位置、守护进程集合、副本集合、定制资源定义(CRD)、命名空间、永久虚拟电路(PVC)、用户和操作员。方法和系统可以包括为在管理软件集群中运行的期望的或所需的编码知识创建操作符,例如,用于运行软件定义的网络配置的操作符、用于软件部署服务配置的操作符以及用于用户特权的操作符等。
参考图1,根据本发明的实施例,用于在另一计算环境中复制包括控制软件和容器的软件集群的计算机实现的系统100包括下面描述的特征。
系统100包括使用包括命令行工具的操作符软件工具(操作符SDK)将软件集群分解成操作符,以为操作符创建包括定制资源定义(CRD)的框架的新模板,如在操作框104中。由此,系统生成操作符模板,如框108所示。
系统包括根据需要生成CRD(定制资源定义)的数据,以将模板扩展为更有用的内容。这是通过将用于配置文件的编程语言中典型的现有文件作为基础,并从应用代码中提取数据并从代码存储库中提取代码或提取密钥信息作为DevOps工具链的一部分来实现的,如框116所示。
使用外部探针,如框120所示,通过运行舱116来检查实际配置,并将其用作CRD的基础。还可以使用云资源(例如,网络、节点、存储等),并且可以基于云服务平台(CSP)API(应用编程接口)来检索信息。
系统可以完成模板以生成具有添加的CRD数据124的最终操作符模板112,CRD数据124针对运行的集群进行验证并打包以供将来使用。
另外,系统包括分析操作符以确定操作符层级。因此,在将现有容器配置分解为多个操作符之后,然后可以通过运行分解的操作符来在另一个位置(诸如在云计算环境中)重新创建现有集群的相同实例。然而,操作符不能仅以随机顺序应用,而是操作符要求或参数需要在它们可以运行之前执行配置的某些资源或比特。
例如,典型的集群可以需要以下内容。确保网络可用,并且如果不可用,则启动网络。启动注册表或确保如果注册表是远程的可以访问注册表。启动可以被集群使用的网络存储(例如,通常使用网络协议)。在一个示例中,系统可以包括启动主节点、应用安全配置、启动工作节点和启动舱。每个操作符包括检查先决条件是否在运行之前就位。操作符还需要确保对于较长时间运行的配置任务,配置活动的状态被跟踪到完成并且任何错误条件被解决。这可以进一步插入分层服务,并且RPO/RTO(恢复点目标/恢复时间目标)可以相应地被译码在操作符内。用户也可以改变配置。
在一个示例中,模块化分解可以包括多个功能,每个功能可以表示特定要求或对象。多个模块中的每一个可以表示特定功能。分解器可以作为服务运行,并且与其控制器一起运行,并且由用户通过安全路由访问。在另一示例中,目标选择器让用户选择目标环境,并选择正确的引导器操作符,并且可以触发引导器操作符的执行。
在另一示例中,识别引导过程,并且当引导过程返回关于目标的信息时,验证步骤确保例如目标具有足够的空间/节点来运行正被提出的配置。如果没有足够的资源,则通知用户。此时,用户可以决定选择另一个目标位置,或者仅将操作符的子集实现到此环境中,使得配置的子集现在将适合。所创建的操作符的层级与分解集群有关。操作符应当按需运行来构建集群的顺序。需要知道操作符在资源方面的先决条件以便运行操作符。
在一个示例中,系统包括触发用户指定目标的构成以及在目标实体处的执行。引导程序过程操作符可以启动定义的服务开通。分解的操作符可以在目标处扩展容器编排器软件。用于定义的任务的专用控制器可以查看定义的期望状态,将其与集群的状态进行比较,并且对资源采取动作以使所述状态成为集群中的现实(例如,添加副本、添加/创建部署)。系统建立在这些概念上,提供定制控制器,所述定制控制器知道如何观察特定事件,知道集群内的内部状态,并采取动作以通过我们在处理程序集中提供的代码来协调一致。表征通过扩展被称为定制资源的编排器软件(其可以包括API(应用编程接口))来定义特定知识的信息。自定义资源(CR)由自定义资源定义(CRD)定义,并且CRD是API中设计和预期的扩展点。操作符可以在设施上构建以利用平台特征和抽象层。
在一个示例中,模块化功能可以包括以下内容。部件可以分解成期望的部件。用户可为目标构成选择特定操作符。用户可以使用接口通过路由用于分解、引导程序、目标位置等的功能。用户可以指定分解的时间段,并且用户可以指定分解操作符的保留,并且用户可以指定源集群(例如,分解集群)的删除时间。
根据本公开的实施例可以包括将软件集群划分为两个平面(诸如控制平面/操作符和数据平面),其中控制平面包括舱的集合并实现控制循环,所述控制循环重复地将集群的期望状态与其实际状态进行比较并创建集群状态的快照以用于灾难恢复。实施例还可以包括创建操作符以通过使用公共资源描述符(CRD)来部署和管理软件应用的多个实例,以从灾难中恢复数据/应用并将工作量迁移到新的基础设施/云/可用性区。实施例可以包括基于配置一个应用系统的每个操作符的特征值和获得的关于属于操作符的资源的信息来确定操作符和资源之间的关系,从而掌握资源的状态并促进应用到容器编排平台的迁移,并使用户能够在应用系统构建单元的操作符管理图形用户界面(GUI)中选择和布置期望的操作符,以构建具有期望配置的应用系统。实施例可以通过分析现有配置、产生可以运行以在替代云环境或任何目标环境或着陆区中再现配置的一组操作符,在灾难恢复(DR)中以及在系统从一个云提供商迁移到另一云提供商或从本地迁移到任何云提供商的平台(反之亦然)中具有实用性,来进一步复制软件集群或其配置。实施例还可以包括使用模块化功能,使得用户能够仅将期望的组件(例如,现有的软件集群配置)分解为操作符,并且仅选择特定操作符或选择它们中的全部用于目标构成。可以为每个云环境和定制的本地部署环境选择唯一的引导程序,并且零接触DR可以用译码的人类知识来实现,并为用户提供挑选和选择DR的组件的灵活性。可以为可插拔系统提供分层服务,从而实现可配置的恢复点目标(RPO)/恢复时间目标(RTO)。使用自动引导操作符的基于成熟度的方法和引导操作符,可以提供用户界面(UI)以用于容易的用户级消费,并且可以从所有底层云提供商启用抽象层以用于整体DR。
在根据本公开的另一示例中,可以通过分解运行配置并自动构建重新创建集群所需的操作符和操作符的层级来实现构建操作符。所创建的操作符的自动创建消除了用户错误渐渐产生的机会,并且显著加快了使用本发明保护应用以及在另一位置部署新实例所花费的时间。层级结构以正确的顺序部署先决条件,而不是仅仅专注于恢复应用。将环境自动分解为操作符的层次结构允许复制整个集群。这样做不需要用户干预。因此,本公开的实施例不要求操作符预先存在,从而允许没有现有操作符、具有一些现有操作符或具有所有现有所需操作符的管理环境。由本发明发现的层级结构或操作符允许管理所有环境,而不是其中一切都被预定义的环境。可以捕获实际运行配置而不是经由GUI捕获的配置。考虑应用已经按比例放大并且正在运行更多实例的情况。在这种情况下,根据本公开的实施例可以处理。因此,例如,在迁移或灾难的情况下,可以将运行的应用部署到新实例或部署到新位置。操作符构造可以用于捕获现有应用的配置,并且通过该捕获的配置,将其(重新)部署在不同的位置。
参考图2和图3,在根据本公开的另一个实施例中,计算机实现的方法300(参考系统200)使用控制软件238和容器,用于在另一个计算环境(例如第二计算环境)中复制例如第一计算环境230中的控制软件集群236。第一计算环境包括计算机231,计算机231包括用于执行代码的处理器232。计算机231包括可以存储应用235和软件集群236的存储介质234。第二计算环境还可以包括计算机241。用户或操作员246可以使用计算机231发起和管理操作过程。
方法300包括使用计算机生成与控制软件集群的模块化功能相关的软件操作符248。软件操作符通过分析包括第一软件计算环境中的容器的控制软件集群236导出。软件操作符还通过分析包括容器的控制软件集群的代码以及通过分析控制软件集群的软件配置导出,如操作框304所示。
方法300包括生成软件操作符,其至少部分地包括确定控制软件集群的软件配置要求。控制软件集群包括用于在另一个或第二软件计算环境中运行控制软件集群的软件操作符的容器,如框308中所示。软件操作符的生成至少部分地包括分析用于运行控制软件集群的软件操作符的另一个或第二软件计算环境,例如第二计算环境240,如框312所示。
此外,软件操作符的生成至少部分地包括基于所确定的软件配置要求和对另一个或第二软件计算环境的分析来创建用于控制软件集群的模板。模板包括用于在另一个或第二软件计算环境中运行软件操作符的定制资源定义的数据,如框316所示。
如果在框320处软件操作符是不可接受的,则方法返回到框308。如果软件操作符是可接受的,则方法前进到框324。方法包括基于对第二软件计算环境的分析和软件配置要求,在诸如第二计算环境240的另一软件计算环境中复制控制软件集群的所有或部分软件操作符,如框324所示。
在一个示例中,对另一个或第二软件计算环境的分析包括将控制软件集群的配置要求与另一个软件计算环境进行比较。在另一示例中,方法还可以包括在计算机处接收来自操作员的用于软件操作符的生成的软件计算环境的组件的选择。
在一个示例中,方法还可以包括分析软件操作符以确定每个软件操作符的层级,并且基于层级在另一个或第二软件计算环境中重新创建控制软件集群的实例。在另一示例中,控制软件集群是计算环境中的运行应用,并且运行应用包括由处理器执行的软件代码。在另一示例中,软件计算环境和另一个或第二软件计算环境是不同的云计算环境。
在另一示例中,软件操作符是响应于对另一或第二软件计算环境的分析和模板的创建来创建的,并且对控制软件集群的容器的分析确定软件操作符中的每一个的层级。
参考图4,方法400在框324处从方法300继续。方法400包含使用计算机生成模型,如在框404中,所述模型包含以下操作。方法包括更新对用于控制软件集群的软件配置要求的确定,如框406中所示。方法包括更新对用于运行控制软件集群的软件操作符的第二软件计算环境的分析,如框408所示。方法包括更新软件操作符的生成,至少部分地包括对基于所确定的软件配置要求和对第二软件计算环境的分析来创建用于控制软件集群模板的更新。方法包括基于对另一个或第二软件计算环境的更新的分析和软件配置要求,更新在另一个或第二软件计算环境中控制软件集群的所有或部分软件操作符的复制,如框412所示。在一个示例中,方法可以包括迭代地生成模型以产生更新的模型。
附加示例和实施例
参考附图(以及例如图2),计算机231可以与设备集成或与设备通信。远离计算机的计算机290可以全部或部分地与作为控制系统270的一部分的计算机272进行电子通信。控制系统可以包括具有可以存储一个或多个程序274的计算机可读存储介质273的计算机272,以及用于执行程序指令的处理器275。控制系统还可以包括存储介质,所述存储介质可以包括用户或实体(这样的实体可以包括机器人实体)的注册和/或账户数据282和简档283作为用户账户281的一部分。用户账户281可以存储在存储介质280上,存储介质280是控制系统270的一部分。用户账户281可以包括注册和账户数据282以及用户简档283。控制系统还可以包括具有计算机可读存储介质273的计算机272,计算机可读存储介质273可以存储嵌入在存储介质上的程序或代码。程序代码可以由处理器275执行。计算机272可以与数据库276通信。控制系统270还可以包括用于存储如上所述的这种数据的全部或部分以及其他数据的数据库276。
控制系统还可以与计算机系统290通信,计算机系统290可以包括学习引擎/模块292和知识语料库或数据库296。计算机系统290还可以与计算机231通信,并且可以远离计算机。在另一实例中,计算机系统290可为控制系统的全部或部分,或设备的全部或部分。计算机系统290以及系统200的其他组件的描绘被示出为根据本公开的一个示例。一个或多个计算机系统可以与通信网络260(例如,互联网)通信。例如,计算机290和控制系统270可以与通信网络260通信,并且计算机231可以与本地通信网络通信,本地通信网络可以与通信网络260通信。
在一个示例中,新的或不同的AI(人工智能)生态系统或技术/通信或IT(信息技术)生态系统可以包括可以与通信网络260通信的本地通信网络。系统200可以包括学习引擎/模块292,其可以是控制系统的至少一部分或与控制系统通信,以用于生成模型或学习模型。
在另一示例中,计算机231可以是设备的一部分。计算机可以包括处理器和可以存储应用235的计算机可读存储介质,在一个示例中,应用235可以体现本公开的方法的全部或部分。应用程序可以包括实现本公开的方法的全部或部分指令,这些指令体现在代码中并存储在计算机可读存储介质上。在一个示例中,设备可以包括显示器。设备可以全部或部分地通过通信网络(例如,互联网)与远程服务器结合操作。
方法可以包括基于接收到的数据生成模型的分析。模型也可以至少部分地由AI系统生成。在一个示例中,AI系统可以使用使用机器学习的AI系统分析来生成模型。
在附图所示的本公开中的其他实施例和示例中,计算机可以是远程计算机或远程服务器(例如,远程服务器)的一部分。在另一示例中,计算机可以是控制系统的一部分并且提供本公开的功能的执行。在另一个实施例中,计算机可以是移动设备的一部分并且提供本公开的功能的执行。在又一实施例中,本公开的功能的执行的部分可以在控制系统计算机和移动设备计算机之间共享,例如,控制系统用作体现本公开的一个或多个程序的后端,并且移动设备计算机用作一个或多个程序的前端。设备(例如移动设备或移动电话)可以属于一个或多个用户,并且可以经由通信网络与控制系统通信。
计算机可以是移动设备的一部分,或者是与移动设备通信的远程计算机。在另一示例中,移动设备和远程计算机可以组合工作以使用存储的程序代码或指令来执行本文描述的方法的特征来实现本公开的方法。在一个示例中,设备可以包括具有处理器和存储应用的存储介质的计算机,并且计算机包括显示器。应用可以包含用于使用处理器执行本公开的特征的程序指令。在另一示例中,移动设备应用程序或计算机软件可以具有软件应用程序的前端可执行的程序指令,软件应用程序在程序指令中包含本公开的方法的特征,而存储在控制系统的计算机上的软件应用程序的一个或多个后端程序与移动设备计算机通信并执行方法的其他特征。控制系统和设备(例如,移动设备或计算机)可以使用通信网络(例如,互联网)进行通信。
因此,在一个示例中,控制系统可以与计算机或设备通信,并且计算机可以包括应用程序或软件。计算机或移动设备中的计算机可以使用通信网络与控制系统通信。在另一示例中,控制系统可以具有属于一个或多个用户的前端计算机,以及体现为控制系统的后端计算机。
根据本公开的实施例的方法和系统可以并入存储在电子存储介质上的一个或多个计算机程序或应用中,并且可以由处理器执行,作为移动设备上的计算机的一部分。例如,移动设备可以与控制系统通信,并且在另一示例中,诸如视频馈送设备的设备可以直接与控制系统通信。其他用户(未示出)可以具有类似的移动设备,其类似地与控制系统通信。应用程序可以全部或部分地存储在计算机或移动设备中的计算机上以及例如使用通信网络(诸如互联网)与移动设备通信的控制系统处。设想应用可以访问全部或部分程序指令以实现本公开的方法。程序或应用可以经由通信网络(例如,互联网)与远程计算机系统通信并访问数据,并且与存储在远程计算机系统上的程序协作。这样的交互和机制在本文中进一步详细描述,并且关于计算机系统的组件(诸如计算机可读存储介质)被提及,其在本文的一个或多个实施例中示出并且关于其参考本文描述的一个或多个计算机和系统被更详细地描述。
此外,参考附图,设备可以包括计算机、计算机可读存储介质和操作系统、和/或程序、和/或软件应用,其可以包括使用处理器可执行的程序指令。这些特征的实施例在本文中在附图中示出。根据本公开的方法可以包括用于实现根据本公开的方法的特征的计算机,作为控制系统的一部分。在另一示例中,作为控制系统的一部分的计算机可以与移动设备计算机协同工作,移动设备计算机与通信系统协同用于实现根据本公开的方法的特征。在另一示例中,用于实现方法的特征的计算机可以是移动设备的一部分,并且因此在本地实现方法。
控制系统可以包括用于维护用户及其设备的注册以用于分析音频输入的存储介质。这样的注册可以包括用户简档,其可以包括由用户提供的关于注册和设置账户的用户数据。在实施例中,结合本公开的方法和系统包括与方法和系统的前端(其可以是应用)组合和协作的控制系统(通常称为后端)。在一个示例中,应用存储在设备(例如,计算机或现场设备)上,并且可以访问应用(例如,控制系统)的后端处的数据和附加程序。
控制系统还可以是软件应用实现的一部分,和/或表示具有前端用户部分和提供功能的后端部分的软件应用。在一个实施例中,结合本公开的方法和系统包括与纳入设备处的本申请的方法和系统的另一部分的软件应用的前端组合和协作的控制系统(其通常可以被称为软件应用的后端,其结合本申请的实施例的方法和系统的一部分)。应用程序存储在设备或计算机上,并且可以访问(例如,存储在控制系统中的(一个或多个)程序中的)应用程序后端的数据和附加程序。
(一个或多个)程序可以全部或部分地包括用于实现本公开的方法的一系列可执行步骤。结合本方法的程序可以全部或部分地存储在控制系统上的计算机可读存储介质中,或者全部或部分地存储在计算机或设备上。可以设想,控制系统不仅可以存储用户的简档,而且在一个实施例中,可以与网站交互以在诸如移动设备的设备的显示器上查看,或者在另一示例中与互联网交互,并且接收与本公开的方法和系统相关的用户输入。应当理解,附图中所示的实施例描绘了一个或多个简档,然而,方法可以包括多个简档、用户、注册等。可以设想,多个用户或一组用户可以使用根据本公开的方法和系统使用的控制系统来注册和提供简档。
在一个示例中,作为对包括知识语料库和历史数据库中的数据的接收数据的分析的一部分,知识语料库和历史数据库可以由例如从传感器、机器人设备或其他机器或设备收集的历史数据占据。
参考附图中的一个或多个实施例,计算机或设备(也可以被称为用户设备或管理员的设备)包括具有处理器和可以存储应用的存储介质的计算机。应用程序可以将本公开的方法的特征体现为指令。用户可以使用设备连接到学习引擎。设备包括计算机和显示器或监视器。应用程序可以体现本公开的方法,并且可以存储在计算机可读存储介质上。设备还可以包括用于执行应用/软件的处理器。设备可以与通信网络(例如,互联网)通信。
应当理解,用户设备代表可以用于其他用户的类似设备,作为这样的设备的代表,其可以包括移动设备、智能设备、膝上型计算机等。
在一个示例中,本公开的系统可以包括经由通信网络与用户设备通信的控制系统。控制系统可以包含用于实现本公开的方法的应用程序或软件的全部或部分。控制系统可以包括计算机可读存储介质,其中可以存储账户数据和/或注册数据。用户简档可以是账户数据的一部分并存储在存储介质上。控制系统可以包括具有计算机可读存储介质和存储在其中的软件程序的计算机。处理器可以用于执行或实现软件程序的指令。控制系统还可以包括数据库。
在另一示例和实施例中,可以为诸如用户、参与者、操作员、人类操作员或机器人设备之类的实体保存简档。这样的简档可以提供关于用户和递送历史的数据以用于分析。在一个示例中,用户可以使用控制系统注册或创建账户,控制系统可以包括一个或多个简档作为注册和/或账户数据的一部分。注册可以包括具有个性化数据的每个用户的简档。例如,用户可以经由他们的计算机和GUI(图形用户界面)界面使用网站注册。注册或账户数据可以包括每个用户的账户的简档。这样的账户可以存储在控制系统上,控制系统也可以使用数据库进行数据存储。用户和相关账户可以指例如个人、或实体、或公司实体、或公司部门、或另一机器,诸如用于自动化的实体,诸如全部或部分地使用人工智能的系统。
另外,可以关于由功能框图描绘的(一个或多个)功能系统来讨论根据本公开的实施例的方法和系统。所述方法和系统可以包括用于根据本公开的实施例的组件和操作,并且在描述本公开的方法和系统的操作步骤时在本文中用于参考。另外,根据本公开的实施例的功能系统描绘了指示本文所讨论的实施例的功能操作。
更多示例和实施例
本公开的方法和系统可以包括用于实现根据本公开的一个或多个实施例的一系列操作框。附图中所示的方法可以是另一示例实施例,其可以包括另一附图中所示并先前讨论的方面/操作,但是可以在另一示例中重新介绍。因此,一个或多个附图中所示的操作框和系统部件可以类似于其他附图中的操作框和系统部件。操作框和系统组件的多样性描绘了根据本公开的示例实施例和方面。例如,所示的方法旨在作为示例实施例,其可以包括先前在本公开中示出和讨论的方面/操作,并且在一个示例中,从另一流程图中示出的先前方法继续。
应当理解,一些附图(例如框图)中所示的特征是本公开的特征的功能表示。出于说明性目的,在本公开的系统和方法的实施例中示出了这样的特征,以阐明本公开的特征的功能。
关于示例和实施例的进一步讨论
应当理解,集合或组是不同对象或元素的集合。构成集合或组的对象或元素可以是任何事物,例如,数字、字母表中的字母、其他集合、多个人或用户等。进一步理解的是,集合或组可以是一个元素,例如,一个事物或数字,换句话说,一个元素的集合,例如,一个或多个用户或人或参与者。还应当理解,机器和设备在本文中可互换使用,以指代一个或多个生态系统或环境中的机器或设备,其可以包括例如人工智能(AI)环境。
另一些实施例和示例
如本文所公开的计算机实现的方法可以包括使用计算机进行建模。可以使用计算机系统的学习引擎或建模模块来生成模型,计算机系统可以是与计算机和/或控制系统通信的人工智能(AI)系统的全部或部分。这样的计算机系统可以包括知识语料库或历史数据库或与知识语料库或历史数据库通信。在一个示例中,可接受的模型可以包括满足指定参数的模型。在另一示例中,可接受的模型可以是已经经历若干建模迭代的模型。当模型是不可接受的时,方法可以返回到先前的操作或按照指示进行,例如,如流程图中的操作框所表示的。
在根据本公开的一个示例中,方法可以使用计算机生成模型,其可以包括一系列操作。可以使用计算机系统的学习引擎或建模模块来生成模型,计算机系统可以是与计算机和/或控制系统通信的人工智能(AI)系统的全部或部分。这样的计算机系统可以包括知识语料库或历史数据库或与知识语料库或历史数据库通信。
可以使用计算机系统的学习引擎或建模模块来生成模型,计算机系统可以是与计算机和/或控制系统通信的人工智能(AI)系统的全部或部分。这样的计算机系统可以包括知识语料库或历史数据库或与知识语料库或历史数据库通信。模型也可以由AI系统生成,诸如至少部分地使用机器学习的AI系统分析的输出。
附加实施例和示例
账户数据(例如,包括与用户相关的简档数据)以及任何个人或其他数据可以被收集并存储在例如控制系统中。应当理解,这样的数据收集是在用户的认识和同意下完成的,并且被存储以保护隐私,这将在下面更详细地讨论。这样的数据可以包括个人数据和关于个人物品的数据。
在一个示例中,用户可以在控制系统上注册具有用户简档的账户。例如,可以使用如上所述的技术(例如,使用相机)来收集数据,并且可以由用户将数据上传到用户简档。用户可以包括例如公司实体、或企业的部门、或房主、或任何最终用户、人类操作员、或机器人设备、或企业的其他人员。
关于涉及本公开的数据收集,简档的这种上传或生成是由一个或多个用户自愿的,并且因此由用户发起并在用户的批准下发起。因此,用户可以选择加入以建立具有根据本公开的简档的账户。类似地,由系统接收的数据或输入或接收的数据作为输入是一个或多个用户自愿的,并且因此由用户发起并在用户批准的情况下发起。因此,根据本公开,用户可以选择加入以输入数据。这样的用户批准还包括用户取消这样的简档或帐户的选项,和/或数据的输入,并且因此根据用户的判断选择退出捕获通信和数据。此外,所存储或收集的任何数据被理解为旨在安全地存储并且在没有用户授权的情况下不可用,并且对公众和/或未授权用户不可用。这样存储的数据被理解为应用户的请求被删除并且以安全的方式被删除。此外,根据本公开,这种存储的数据的任何使用被理解为仅在用户的授权和同意的情况下。
在本发明的一个或多个实施例中,(一个或多个)用户可以选择加入控制系统或向控制系统注册,在用户同意和授权的情况下自愿地在过程中提供数据和/或信息,其中数据被存储并用于本公开的一个或多个方法中。此外,用户可以注册一个或多个用户电子设备以与根据本公开的一个或多个方法和系统一起使用。作为注册的一部分,用户还可以识别和授权访问一个或多个活动或其他系统(例如,音频和/或视频系统)。注册的这种选择加入和授权数据的收集和/或存储是自愿的,并且用户可以请求删除数据(包括简档和/或简档数据)、取消注册和/或选择退出任何注册。应当理解,这种选择退出包括以安全方式处置所有数据。用户界面还可以允许用户或个人移除其所有历史数据。
其他附加实施例和示例
在一个示例中,人工智能(AI)可以全部或部分地用于生成如本文在本公开的实施例中所讨论的模型或学习模型。人工智能(AI)系统可以包括被设计为智能或镜像智能的机器、计算机和计算机程序。这样的系统可以包括执行算法的计算机。AI可以包括机器学习和深度学习。例如,深度学习可以包括神经网络。AI系统可以是基于云的,即,使用具有计算资源的基于云的计算环境。在另一示例中,控制系统可以是人工智能(AI)系统的全部或部分。例如,控制系统可以是AI系统的一个或多个部件。
还应当理解,根据本公开的实施例的方法和系统可以结合到(人工智能)AI设备、组件中或者可以是AI系统的一部分,其可以与相应的AI系统和组件以及相应的AI系统平台通信。因此,如上所述,包含本公开的方法的这样的程序或应用可以是AI系统的一部分。在根据本发明的一个实施例中,设想控制系统可以与AI系统通信,或者在另一示例中可以是AI系统的一部分。控制系统还可以表示具有前端用户部分和提供功能的后端部分的软件应用,其在一个或多个示例中可以与大型系统(诸如AI系统)交互、包含大型系统或者是大型系统的一部分。在一个示例中,AI设备可以与AI系统相关联并且远离AI设备,所述AI系统可以全部或部分地是控制系统和/或内容递送系统。这种AI系统可以由在计算机可读介质上存储程序的一个或多个服务器表示,计算机可读介质可以与一个或多个AI设备通信。AI系统可以与控制系统通信,并且在一个或多个实施例中,控制系统可以是AI系统的全部或部分,反之亦然。
应当理解,如本文所讨论的,可以使用语音命令或使用鼠标、触摸屏等来发起下载或可下载数据。在这样的示例中,移动设备可以是用户发起的,或者可以在用户同意和许可的情况下使用AI设备。AI设备的其他示例包括包括麦克风、扬声器并且可以访问蜂窝网络或移动网络、通信网络或互联网的设备,例如,具有计算机并具有蜂窝或卫星通信的车辆,或者在另一示例中,IoT(物联网)设备,诸如具有蜂窝网络或互联网访问的电器。
已经出于说明的目的呈现了对本发明的各种实施例的描述,但是并不旨在穷举或限于所公开的实施例。同样地,本文中所描述的本发明的实施例的特征或功能性的实例(无论是在特定实施例的描述中使用还是作为实例列出)并不希望限制本文中所描述的本发明的实施例,或将本发明限制于本文中所描述的实例。这样的示例旨在是示例性或示例性的,而非穷举性的。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域普通技术人员将是显而易见的。选择本文使用的术语是为了最好地解释实施例的原理、实际应用或对市场中发现的技术的技术改进,或者使本领域普通技术人员能够理解本文公开的实施例。
其他附加示例和实施例
参考图5,根据本公开的系统或计算机环境1000的实施例包括以通用计算设备的形式示出的计算机系统1010。例如,方法100可以体现在程序1060中,程序1060包括体现在计算机可读存储设备或计算机可读存储介质(例如,通常称为计算机存储器1030,并且更具体地,计算机可读存储介质1050)上的程序指令。这样的存储器和/或计算机可读存储介质包括非易失性存储或非易失性存储,也被称之和被称为非瞬时性计算机可读存储介质或非暂时性计算机可读存储介质。例如,这种非易失性存储器也可以是磁盘存储设备,包括一个或多个硬盘驱动器。例如,存储器1030可以包括存储介质1034(诸如RAM(随机存取存储器)或ROM(只读存储器))以及高速缓存存储器1038。程序1060可由计算机系统1010的处理器1020执行(以执行程序步骤、代码或程序代码)。附加数据存储还可以体现为包括数据1114的数据库1110。计算机系统1010和程序1060是计算机和程序的通用表示,其可以是用户本地的,或者作为远程服务(例如,作为基于云的服务)提供,并且可以在另外的示例中使用可使用通信网络1200访问的网站(例如,与网络、互联网或云服务交互)来提供。应当理解,计算机系统1010在本文中还一般地表示计算机设备或包括在设备中的计算机(诸如膝上型或台式计算机等)或单独或作为数据中心的一部分的一个或多个服务器。计算机系统可以包括网络适配器/接口1026和输入/输出(I/O)接口1022。I/O接口1022允许利用可以连接到计算机系统的外部设备1074输入和输出数据。网络适配器/接口1026可以提供计算机系统与通常示为通信网络1200的网络之间的通信。
计算机1010可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般上下文中描述。通常,程序模块可以包括执行特定任务或实现特定摘要数据类型的例程、程序、对象、组件、逻辑、数据结构等。方法步骤和系统组件和技术可以体现在程序1060的模块中,用于执行方法和系统的每个步骤的任务。模块在图中一般表示为程序模块1064。程序1060和程序模块1064可以执行程序的特定步骤、例程、子例程、指令或代码。
本公开的方法可以在诸如移动设备之类的设备上本地运行,或者可以例如在服务器1100上运行服务,服务器1100可以是远程的并且可以使用通信网络1200来访问。程序或可执行指令也可以由提供者作为服务提供。计算机1010可以在分布式云计算环境中实践,其中任务由通过通信网络1200链接的远程处理设备执行。在分布式云计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机系统存储介质两者中。
更具体地,系统或计算机环境1000包括以具有说明性外围设备的通用计算设备的形式示出的计算机系统1010。计算机系统1010的组件可以包括但不限于一个或多个处理器或处理单元1020、系统存储器1030和将包括系统存储器1030的各种系统组件耦合到处理器1020的总线1014。
总线1014表示若干类型的总线结构中的任何一种或多种,包括存储器总线或存储器控制器、外围总线、加速图形端口以及使用各种总线架构中的任何一种的处理器或本地总线。作为示例而非限制,这样的架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子标准协会(VESA)本地总线和外围组件互连(PCI)总线。
计算机1010可以包括各种计算机可读介质。这样的介质可以是可由计算机1010(例如,计算机系统或服务器)访问的任何可用介质,并且可以包括易失性和非易失性介质,以及可移动和不可移动介质。计算机存储器1030可以包括易失性存储器形式的附加计算机可读介质,诸如随机存取存储器(RAM)1034和/或高速缓存存储器1038。计算机1010还可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质,在一个示例中,便携式计算机可读存储介质1072。在一个实施例中,可以提供计算机可读存储介质1050用于从不可移动、非易失性磁介质读取和写入。计算机可读存储介质1050可以体现为例如硬盘驱动器。可以提供附加的存储器和数据存储,例如,作为用于存储数据1114并与处理单元1020通信的存储系统1110(例如,数据库)。数据库可以存储在服务器1100上或者是服务器1100的一部分。尽管未示出,但是可以提供用于从可移动的非易失性磁盘(例如,“软盘”)读取和写入的磁盘驱动器,以及用于从可移动的非易失性光盘(例如CD-ROM、DVD-ROM或其他光学介质)读取或写入的光盘驱动器。在这种情况下,每个可以通过一个或多个数据介质接口连接到总线1014。如下面将进一步描绘和描述的,存储器1030可以包括至少一个程序产品,程序产品可以包括被配置为执行本发明的实施例的功能的一个或多个程序模块。
例如,本公开中描述的方法可以体现在一个或多个计算机程序中,通常称为程序1060,并且可以存储在计算机可读存储介质1050中的存储器1030中。程序1060可以包括程序模块1064。程序模块1064通常可以执行如本文所述的本发明的实施例的功能和/或方法。一个或多个程序1060存储在存储器1030中并且可由处理单元1020执行。作为示例,存储器1030可以在计算机可读存储介质1050上存储操作系统1052、一个或多个应用程序1054、其他程序模块和程序数据。应当理解,存储在计算机可读存储介质1050上的程序1060以及操作系统1052和应用程序1054可类似地由处理单元1020执行。还应当理解,应用1054和程序1060被一般性地示出,并且可以包括本公开中讨论的一个或多个应用和程序的全部或部分,反之亦然,即,应用1054和程序1060可以是本公开中讨论的一个或多个应用或程序的全部或部分。还应理解,与计算机系统通信的控制系统1007可以包括计算机系统1010及其组件的全部或部分,和/或控制系统可以作为远程计算机系统与计算机系统1010及其组件的全部或部分通信,以实现本公开中描述的控制系统功能。控制系统功能例如可以包括存储、处理和执行软件指令以执行本公开的功能。还应理解,其他附图中所示的一个或多个计算机或计算机系统可以包括计算机系统1010及其组件的全部或部分,和/或一个或多个计算机可以作为远程计算机系统与计算机系统1010及其组件的全部或部分通信,以实现本公开中描述的计算机功能。例如,控制系统1007可以是本文其他附图中描绘的控制系统的全部或部分表示。
在根据本公开的实施例中,一个或多个程序可以存储在一个或多个计算机可读存储介质中,使得程序体现和/或编码在计算机可读存储介质中。在一个示例中,所存储的程序可以包括用于由处理器或具有处理器的计算机系统执行的程序指令,以执行方法或使计算机系统执行一个或多个功能。例如,在根据本公开的一个实施例中,体现方法的程序体现在或编码在计算机可读存储介质中,计算机可读存储介质包括并被定义为非瞬态或非暂时性计算机可读存储介质。因此,根据本公开的计算机可读存储介质的实施例或示例不包括信号,并且实施例可以包括一个或多个非瞬态或非暂时性计算机可读存储介质。因此,在一个示例中,程序可以被记录在计算机可读存储介质上,并且在结构上和功能上与介质相互关联。
计算机1010还可以与以下设备通信:一个或多个外部设备1074,诸如键盘、指示设备、显示器1080等;使得用户能够与计算机1010交互的一个或多个设备;和/或使得计算机1010能够与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)。这种通信可以经由输入/输出(I/O)接口1022发生。电源1090也可以使用电源接口(未示出)连接到计算机。此外,计算机1010还可以经由网络适配器/接口1026与诸如局域网(LAN)、通用广域网(WAN)和/或公共网络(例如,互联网)的一个或多个网络1200通信。如所描绘的,网络适配器1026经由总线1014与计算机1010的其他组件通信。应当理解,尽管未示出,但是其他硬件和/或软件部件可以与计算机1010结合使用。示例包括但不限于:微代码、设备驱动器1024、冗余处理单元、外部磁盘驱动器阵列、RAID系统、磁带驱动器和数据归档存储系统等。
应当理解,计算机或在计算机1010上运行的程序可以经由体现为通信网络1200的一个或多个通信网络与体现为服务器1100的服务器通信。通信网络1200可以包括传输介质和网络链路,其包括例如无线、有线或光纤,以及路由器、防火墙、交换机和网关计算机。通信网络可以包括连接,诸如有线、无线通信链路或光纤电缆。通信网络可以表示使用各种协议来彼此通信的网络和网关的世界范围的集合,诸如互联网,所述协议诸如轻量级目录访问协议(LDAP)、传输控制协议/互联网协议(TCP/IP)、超文本传输协议(HTTP)、无线应用协议(WAP)等。网络还可以包括许多不同类型的网络,诸如例如内联网、局域网(LAN)或广域网(WAN)。
在一个示例中,计算机可以使用网络,网络可以使用互联网访问Web(万维网)上的网站。在一个实施例中,包括移动设备的计算机1010可以使用通信系统或网络1200,其可以包括互联网或公共交换电话网络(PSTN),例如蜂窝网络。PSTN可以包括电话线、光纤电缆、微波传输链路、蜂窝网络和通信卫星。互联网可以促进许多搜索和文本发送技术,例如,使用蜂窝电话或膝上型计算机经由文本消息(SMS)、多媒体消息服务(MMS)(与SMS相关)、电子邮件或web浏览器向搜索引擎发送查询。搜索引擎可以检索搜索结果,即到与查询相对应的网站、文档或其他可下载数据的链接,并且类似地,经由设备将搜索结果作为例如搜索结果的网页提供给用户。
其他方面和示例
本发明可以是任何可能的技术细节集成级别的系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质(或介质),其上具有计算机可读程序指令,用于使处理器执行本发明的各方面。
计算机可读存储介质可以是有形设备,其可以保留和存储由指令执行设备使用的指令。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非详尽列表包括以下内容:便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式光盘只读存储器(CD-ROM)、数字通用光盘(DVD)、记忆棒、软盘、机械编码设备(诸如其上记录有指令的穿孔卡或凹槽中的凸起结构)以及前述的任何合适的组合。如本文所使用的,计算机可读存储介质不应被解释为暂时性信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤电缆的光脉冲)或通过电线传输的电信号。
本文描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络(例如,互联网、局域网、广域网和/或无线网)下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、用于集成电路的配置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括诸如Smalltalk、C++等的面向对象的编程语言,以及诸如“C”编程语言或类似编程语言的过程式编程语言。计算机可读程序指令可以完全在用户的计算机上、部分地在用户的计算机上、作为独立的软件包、部分地在用户的计算机上并且部分地在远程计算机上、或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(LAN)或广域网(WAN),或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以个性化电子电路,以便执行本发明的各方面。
这里参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各方面。应当理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机可读程序指令实现。
这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的部件。这些计算机可读程序指令还可以存储在计算机可读存储介质中,计算机可读存储介质可以指示计算机、可编程数据处理装置和/或其他设备以特定方式起作用,使得其中存储有指令的计算机可读存储介质包括制品,所述制品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的各方面的指令。
计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/动作。
本公开的附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这方面,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实施方式中,框中标注的功能可以不按图中标注的顺序发生。例如,连续示出的两个框实际上可以作为一个步骤完成,同时执行、基本上同时执行、以部分或完全时间重叠的方式执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意到,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行指定功能或动作或执行专用硬件和计算机指令的组合的基于专用硬件的系统来实现。
附加方面和示例
应当理解,尽管本公开包括关于云计算的详细描述,但是本文记载的教导的实现不限于云计算环境。相反,本发明的实施例能够结合现在已知或以后开发的任何其他类型的计算环境来实现。
云计算是一种服务交付模型,用于实现对可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储、应用、虚拟机和服务)的共享池的方便的按需网络访问,其可以以最小的管理努力或与服务提供商的交互来快速供应和释放。云模型可以包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征如下:
按需自助服务:云消费者可以根据需要自动单方面提供计算能力,例如服务器时间和网络存储,而不需要与服务提供商进行人工交互。
广泛的网络访问:能力在网络上可用并且通过促进异构瘦客户端平台或胖客户端平台(例如,移动电话、膝上型计算机和PDA)的使用的标准机制来访问。
资源池:提供商的计算资源被池化以使用多租户模型服务多个消费者,其中根据需求动态地分配和重新分配不同的物理和虚拟资源。存在位置独立性的感觉,因为消费者通常无法控制或了解所提供的资源的确切位置,但可以能够指定更高抽象级别的位置(例如,国家、州或数据中心)。
快速弹性:可以快速且弹性地提供能力,在一些情况下自动地提供能力,以快速向外扩展并快速释放以快速向内扩展。对于消费者来说,可用于供应的能力通常看起来是无限的,并且可以在任何时间以任何数量购买。
测量服务:云系统通过利用适合于服务类型(例如,存储、处理、带宽和活动用户帐户)的某种抽象级别的计量能力来自动控制和优化资源使用。可以监视、控制和报告资源使用,从而为所利用的服务的提供者和消费者提供透明性。
服务模型如下:
软件即服务(SaaS):提供给消费者的能力是使用在云基础设施上运行的提供商的应用。可以通过诸如web浏览器(例如,基于web的电子邮件)的瘦客户端接口从各种客户端设备访问应用。消费者不管理或控制底层云基础设施,包括网络、服务器、操作系统、存储或甚至单独的应用能力,可能的例外是有限的用户特定应用配置设置。
平台即服务(PaaS):提供给消费者的能力是将消费者创建或获取的应用部署到云基础架构上,消费者创建或获取的应用使用由提供商支持的编程语言和工具创建。消费者不管理或控制底层云基础设施,包括网络、服务器、操作系统或存储,但是具有对部署的应用以及可能的应用托管环境配置的控制。
基础设施即服务(IaaS):提供给消费者的能力是供应处理、存储、网络和其他基础计算资源,其中消费者能够部署和运行任意软件,其可以包括操作系统和应用。消费者不管理或控制底层云基础设施,但是具有对操作系统、存储、部署的应用的控制,并且可能具有对选择联网组件(例如,主机防火墙)的有限控制。
部署模型如下:
私有云:云基础架构仅为组织运营。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
社区云:云基础架构由若干组织共享,并支持具有共同关注(例如,任务、安全要求、策略和合规考虑)的特定社区。它可以由组织或第三方管理,并且可以存在于本地或场外。
公共云:云基础架构可用于一般公众或大型行业集团,并且由销售云服务的组织拥有。
混合云:云基础架构是两个或更多个云(私有、社区或公共)的组合,这些云仍然是独特的实体,但是通过实现数据和应用可移植性的标准化或专有技术(例如,用于云之间的负载平衡的云突发)绑定在一起。
云计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语义互操作性。云计算的核心是包括互连节点的网络的基础设施。
现在参考图6,描绘了说明性云计算环境2050。如图所示,云计算环境2050包括云消费者使用的本地计算设备可以与其通信的一个或多个云计算节点2010,本地计算设备是例如个人数字助理(PDA)或蜂窝电话2054A、台式计算机2054B、膝上型计算机2054C和/或汽车计算机系统2054N。节点2010可以彼此通信。它们可以在一个或多个网络中物理地或虚拟地分组(未示出),例如如上所述的私有云、社区云、公共云或混合云,或其组合。这允许云计算环境2050提供云消费者不需要维护本地计算设备上的资源的基础设施、平台和/或软件即服务。应当理解,图6中所示的计算设备2054A-N的类型仅旨在是说明性的,并且计算节点2010和云计算环境2050可以通过任何类型的网络和/或网络可寻址连接(例如,使用web浏览器)与任何类型的计算机化设备通信。
现在参考图7,示出了由云计算环境2050(图6)提供的一组功能抽象层。首先应当理解,图7中所示的组件、层和功能仅旨在是说明性的,并且本发明的实施例不限于此。如图所示,提供了以下层和对应的功能:
硬件和软件层2060包括硬件和软件组件。硬件组件的示例包括:主机2061;基于RISC(精简指令集计算机)架构的服务器2062;服务器2063;刀片服务器2064;存储设备2065;以及网络和联网组件2066。在一些实施例中,软件组件包括网络应用服务器软件2067和数据库软件2068。
虚拟化层2070提供抽象层,从抽象层可以提供虚拟实体的以下示例:虚拟服务器2071;虚拟存储2072;虚拟网络2073,包括虚拟专用网络;虚拟应用和操作系统2074;以及虚拟客户端2075。
在一个示例中,管理层2080可以提供下面描述的功能。资源供应2081提供用于在云计算环境内执行任务的计算资源和其他资源的动态获取。计量和定价2082提供在云计算环境内利用资源时的成本跟踪,以及针对这些资源的消耗的计费或发票。在一个示例中,这些资源可以包括应用软件许可。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户2083为消费者和系统管理员提供对云计算环境的访问。服务水平管理2084提供云计算资源分配和管理,使得满足所需的服务水平。服务水平协议(SLA)计划和履行2085提供云计算资源的预先安排和采购,根据SLA预期云计算资源的未来需求。
工作量2090提供可以利用云计算环境的功能的示例。可以从所述层提供的工作量和功能的示例包括:地图绘制和导航2091;软件开发和生命周期管理2092;虚拟教室教育交付2093;数据分析处理2094;交易处理2095;以及多噪声环境2096中的软件复制,例如,使用控制软件。
Claims (21)
1.一种使用控制软件将包括容器的软件集群复制到另一计算环境的计算机实现的方法,包括:
使用计算机生成与控制软件集群的模块化功能相关的软件操作符,所述软件操作符通过分析所述控制软件集群被导出,所述控制软件集群包括软件计算环境中的容器,所述软件操作符还通过分析包括所述容器的所述控制软件集群的代码以及通过分析用于所述控制软件集群的软件配置被导出;
所述软件操作符的所述生成至少部分地包括确定用于所述控制软件集群的软件配置要求,所述控制软件集群包括用于在另一软件计算环境中运行所述控制软件集群的所述软件操作符的所述容器;
所述软件操作符的所述生成至少部分地包括分析用于运行所述控制软件集群的所述软件操作符的所述另一软件计算环境;
所述软件操作符的所述生成至少部分地包括基于所确定的软件配置要求和对所述另一软件计算环境的所述分析来创建用于所述控制软件集群的模板,所述模板包括用于在所述另一软件计算环境中运行所述软件操作符的定制资源定义的数据;以及
基于对所述另一软件计算环境的所述分析和所述软件配置要求,在所述另一软件计算环境中复制所述控制软件集群的所述软件操作符的全部或部分。
2.根据权利要求1所述的方法,其中对所述另一软件计算环境的所述分析包括将所述控制软件集群的配置要求与所述另一软件计算环境进行比较。
3.根据权利要求1或2所述的方法,还包括:
在所述计算机处接收来自操作员的用于所述软件操作符的所述生成的所述软件计算环境的组件的选择。
4.根据任一项前述权利要求所述的方法,还包括:
分析所述软件操作符以确定用于所述软件操作符的每一个的层级;以及
基于所述层级,在所述另一软件计算环境中重新创建所述控制软件集群的实例。
5.根据任一项前述权利要求所述的方法,其中所述控制软件集群是所述计算环境中的运行应用,其中所述运行应用包括由处理器执行的软件代码。
6.根据任一项前述权利要求所述的方法,其中所述软件计算环境和所述另一软件计算环境是不同的云计算环境。
7.根据任一项前述权利要求所述的方法,其中所述软件操作符是响应于对所述另一软件计算环境的所述分析和所述模板的所述创建来创建的,对所述控制软件集群的所述容器的所述分析用于确定所述软件操作符中的每一个的层级。
8.根据任一项前述权利要求所述的方法,还包括:
使用所述计算机生成模型;所述模型包括以下;
更新对用于所述控制软件集群的所述软件配置要求的所述确定;
更新对用于运行所述控制软件集群的所述软件操作符的所述另一软件计算环境的所述分析;
更新对所述软件操作符的所述生成至少部分地包括对基于所确定的软件配置要求和对所述另一软件计算环境的所述分析来创建用于所述控制软件集群的所述模板的所述更新;以及
基于对所述另一软件计算环境的更新的分析和所述软件配置要求,更新对所述控制软件集群的所述软件操作符的全部或部分在所述另一软件计算环境中的所述复制。
9.根据权利要求8所述的方法,还包括:
迭代地生成所述模型以产生更新的模型。
10.一种使用控制软件将包括容器的软件集群复制到另一计算环境的系统,所述系统包括:
计算机系统,包括:计算机处理器、计算机可读存储介质和存储在所述计算机可读存储介质上的程序指令,所述程序指令能够由所述处理器执行,以使得所述计算机系统执行以下功能;
使用计算机生成与控制软件集群的模块化功能相关的软件操作符,所述软件操作符通过分析所述控制软件集群被导出,所述控制软件集群包括软件计算环境中的容器,所述软件操作符还通过分析包括所述容器的所述控制软件集群的代码以及通过分析用于所述控制软件集群的软件配置被导出;
所述软件操作符的所述生成至少部分地包括确定用于所述控制软件集群的软件配置要求,所述控制软件集群包括用于在另一软件计算环境中运行所述控制软件集群的所述软件操作符的所述容器;
所述软件操作符的所述生成至少部分地包括分析用于运行所述控制软件集群的所述软件操作符的所述另一软件计算环境;
所述软件操作符的所述生成至少部分地包括基于所确定的软件配置要求和对所述另一软件计算环境的所述分析来创建用于所述控制软件集群的模板,所述模板包括用于在所述另一软件计算环境中运行所述软件操作符的定制资源定义的数据;以及
基于对所述另一软件计算环境的所述分析和所述软件配置要求,在所述另一软件计算环境中复制所述控制软件集群的所述软件操作符的全部或部分。
11.根据权利要求10所述的系统,其中对所述另一软件计算环境的所述分析包括将所述控制软件集群的配置要求与所述另一软件计算环境进行比较。
12.根据权利要求10或11所述的系统,还包括以下功能:
在所述计算机处接收来自操作员的用于所述软件操作符的所述生成的所述软件计算环境的组件的选择。
13.根据权利要求10至12中的任一项所述的系统,还包括:
分析所述软件操作符以确定用于所述软件操作符的每一个的层级;以及
基于所述层级,在所述另一软件计算环境中重新创建所述控制软件集群的实例。
14.根据权利要求10至13中的任一项所述的系统,其中所述控制软件集群是所述计算环境中的运行应用,其中所述运行应用包括由处理器执行的软件代码。
15.根据权利要求10至14中的任一项所述的系统,其中所述软件计算环境和所述另一软件计算环境是不同的云计算环境。
16.根据权利要求10至14中的任一项所述的系统,其中所述软件操作符是响应于对所述另一软件计算环境的所述分析和所述模板的所述创建来创建的,对所述控制软件集群的所述容器的所述分析用于确定所述软件操作符中的每一个的层级。
17.一种使用控制软件将包括容器的软件集群复制到另一计算环境的计算机程序产品,所述计算机程序产品包括包含有程序指令的计算机可读存储介质,所述程序指令能够由计算机执行以使得所述计算机执行功能,所述功能包括用于以下操作的功能:
使用计算机生成与控制软件集群的模块化功能相关的软件操作符,所述软件操作符通过分析所述控制软件集群被导出,所述控制软件集群包括软件计算环境中的容器,所述软件操作符还通过分析包括所述容器的所述控制软件集群的代码以及通过分析用于所述控制软件集群的软件配置被导出;
所述软件操作符的所述生成至少部分地包括确定用于所述控制软件集群的软件配置要求,所述控制软件集群包括用于在另一软件计算环境中运行所述控制软件集群的所述软件操作符的所述容器;
所述软件操作符的所述生成至少部分地包括分析用于运行所述控制软件集群的所述软件操作符的所述另一软件计算环境;
所述软件操作符的所述生成至少部分地包括基于所确定的软件配置要求和对所述另一软件计算环境的所述分析来创建用于所述控制软件集群的模板,所述模板包括用于在所述另一软件计算环境中运行所述软件操作符的定制资源定义的数据;以及
基于对所述另一软件计算环境的所述分析和所述软件配置要求,在所述另一软件计算环境中复制所述控制软件集群的所述软件操作符的全部或部分。
18.根据权利要求17所述的计算机程序产品,其中对所述另一软件计算环境的所述分析包括将所述控制软件集群的配置要求与所述另一软件计算环境进行比较。
19.根据权利要求17或18所述的计算机程序产品,还包括:
在所述计算机处接收来自操作员的用于所述软件操作符的所述生成的所述软件计算环境的组件的选择。
20.根据权利要求17、18或19所述的计算机程序产品,还包括:
分析所述软件操作符以确定用于所述软件操作符的每一个的层级;以及
基于所述层级,在所述另一软件计算环境中重新创建所述控制软件集群的实例。
21.一种包括程序代码装置的计算机程序,当所述程序在计算机上运行时,所述程序代码装置适于执行根据权利要求1至9中的任一项所述的方法。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US17/806,615 US12487845B2 (en) | 2022-06-13 | 2022-06-13 | Modular decomposition and composition of container software management clusters in hybrid cloud |
| US17/806,615 | 2022-06-13 | ||
| PCT/IB2023/055802 WO2023242679A1 (en) | 2022-06-13 | 2023-06-06 | Modular decomposition and composition of container software management clusters in hybrid cloud |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN119816811A true CN119816811A (zh) | 2025-04-11 |
Family
ID=89077413
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202380043664.3A Pending CN119816811A (zh) | 2022-06-13 | 2023-06-06 | 容器软件管理集群在混合云中的模块化分解和组合 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US12487845B2 (zh) |
| JP (1) | JP2025522253A (zh) |
| CN (1) | CN119816811A (zh) |
| DE (1) | DE112023002620T5 (zh) |
| GB (1) | GB2634451A (zh) |
| WO (1) | WO2023242679A1 (zh) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US12487845B2 (en) * | 2022-06-13 | 2025-12-02 | International Business Machines Corporation | Modular decomposition and composition of container software management clusters in hybrid cloud |
| US12450386B2 (en) * | 2023-05-08 | 2025-10-21 | Microsoft Technology Licensing, Llc | Intelligent feature control |
Family Cites Families (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8417798B2 (en) * | 2010-05-11 | 2013-04-09 | International Business Machines Corporation | Deploying artifacts for packaged software application in cloud computing environment |
| US8984134B2 (en) | 2012-05-07 | 2015-03-17 | International Business Machines Corporation | Unified cloud computing infrastructure to manage and deploy physical and virtual environments |
| EP2856305A4 (en) * | 2012-05-30 | 2016-01-06 | Hewlett Packard Development Co | SERVER PROFILE CARDS |
| US10540191B2 (en) * | 2017-03-21 | 2020-01-21 | Veritas Technologies Llc | Systems and methods for using dynamic templates to create application containers |
| US10742500B2 (en) * | 2017-09-20 | 2020-08-11 | Microsoft Technology Licensing, Llc | Iteratively updating a collaboration site or template |
| WO2019113216A1 (en) * | 2017-12-05 | 2019-06-13 | Agile Stacks Inc. | Machine generated automation code for software development and infrastructure operations |
| US20200136930A1 (en) * | 2018-10-24 | 2020-04-30 | CA Software Österreich GmbH | Application environment provisioning |
| US11347562B2 (en) * | 2019-07-09 | 2022-05-31 | Hewlett Packard Enterprise Development Lp | Management of dependencies between clusters in a computing environment |
| US11023270B2 (en) * | 2019-08-22 | 2021-06-01 | Sap Se | Configuration of decoupled upgrades for container-orchestration system-based services |
| US11593084B2 (en) * | 2019-10-31 | 2023-02-28 | Dell Products L.P. | Code development for deployment on a cloud platform |
| US20210149769A1 (en) * | 2019-11-17 | 2021-05-20 | Trilio Data, Inc. | Container-Based Application Data Protection Method and System |
| US11210070B2 (en) * | 2019-11-19 | 2021-12-28 | Cognizant Technology Solutions India Pvt. Ltd. | System and a method for automating application development and deployment |
| US11347806B2 (en) * | 2019-12-30 | 2022-05-31 | Servicenow, Inc. | Discovery of containerized platform and orchestration services |
| JP7241713B2 (ja) * | 2020-03-24 | 2023-03-17 | 株式会社日立製作所 | オペレータ管理装置、オペレータ管理方法及びオペレータ管理コンピュータープログラム |
| US11604632B2 (en) * | 2020-04-17 | 2023-03-14 | Fastly, Inc. | Development environment deployment for multiple developer types |
| US11487591B1 (en) * | 2020-06-29 | 2022-11-01 | Amazon Technologies, Inc. | Automatically configuring execution of a containerized application |
| US11509715B2 (en) * | 2020-10-08 | 2022-11-22 | Dell Products L.P. | Proactive replication of software containers using geographic location affinity to predicted clusters in a distributed computing environment |
| CN112783646B (zh) | 2021-01-13 | 2025-02-18 | 中国工商银行股份有限公司 | 有状态应用容器化部署方法及装置 |
| US20220414478A1 (en) * | 2021-06-24 | 2022-12-29 | International Business Machines Corporation | Dynamic container creation based on identified contextual need |
| US12020009B2 (en) * | 2021-07-29 | 2024-06-25 | Kyndryl, Inc. | Software application deployment |
| CN113572862A (zh) | 2021-09-27 | 2021-10-29 | 武汉四通信息服务有限公司 | 一种集群部署方法、装置、电子设备及存储介质 |
| US11861342B2 (en) * | 2022-01-28 | 2024-01-02 | Microstrategy Incorporated | Enhanced cloud-computing environment deployment |
| US12487845B2 (en) * | 2022-06-13 | 2025-12-02 | International Business Machines Corporation | Modular decomposition and composition of container software management clusters in hybrid cloud |
| US12020025B1 (en) * | 2022-09-23 | 2024-06-25 | Amazon Technologies, Inc. | Guided modernization of software applications using application templates |
-
2022
- 2022-06-13 US US17/806,615 patent/US12487845B2/en active Active
-
2023
- 2023-06-06 CN CN202380043664.3A patent/CN119816811A/zh active Pending
- 2023-06-06 GB GB2418655.3A patent/GB2634451A/en active Pending
- 2023-06-06 JP JP2024559624A patent/JP2025522253A/ja active Pending
- 2023-06-06 WO PCT/IB2023/055802 patent/WO2023242679A1/en not_active Ceased
- 2023-06-06 DE DE112023002620.3T patent/DE112023002620T5/de active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| WO2023242679A1 (en) | 2023-12-21 |
| GB202418655D0 (en) | 2025-02-05 |
| US20230401077A1 (en) | 2023-12-14 |
| JP2025522253A (ja) | 2025-07-15 |
| GB2634451A (en) | 2025-04-09 |
| US12487845B2 (en) | 2025-12-02 |
| DE112023002620T5 (de) | 2025-04-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN112347754B (zh) | 建立联合学习框架 | |
| US11642783B2 (en) | Automated generation of robotic computer program code | |
| US11704119B2 (en) | Migrating infrastructure as code between different cloud providers | |
| WO2023077989A1 (en) | Incremental machine learning for a parametric machine learning model | |
| WO2022242334A1 (en) | Computer modeling to analyze electrical usage in an electrical grid for facilitating management of electrical transmission | |
| CN112307177B (zh) | 使用非结构会话机器人生成过程流模型 | |
| CN112348302B (zh) | 具有无状态协调器的可扩展工作流引擎 | |
| US12047379B2 (en) | Data access control management computer system for event driven dynamic security | |
| US20190349385A1 (en) | NULLIFYING COMMANDS IN AN INTERNET OF THINGS (IoT) COMPUTING ENVIRONMENT | |
| WO2023103688A1 (en) | Federated machine learning based on partially secured spatio-temporal data | |
| CN119816811A (zh) | 容器软件管理集群在混合云中的模块化分解和组合 | |
| CN114513528A (zh) | 基于区块链的服务预留和委托 | |
| US12186907B2 (en) | Dynamic use of artificial intelligence (AI) models on an autonomous AI enabled robotic device | |
| US12282316B2 (en) | Real-time reconfiguration of additive manufacturing | |
| US12325190B2 (en) | Real-time monitoring of additive manufacturing | |
| US11856622B2 (en) | Dynamic pairing of devices based on workflow history for wireless communication | |
| US11030015B2 (en) | Hardware and software resource optimization | |
| CN116911401A (zh) | 使用动态掩蔽的资源有限联合学习 | |
| US20220308869A1 (en) | Computer management of microservices for microservice based applications | |
| US10977213B2 (en) | Maintaining file management systems using cognitive computing | |
| US20200380530A1 (en) | Automatic internet of things enabled contract compliance monitoring | |
| US11928131B2 (en) | Synchronized activation of datasets in multicloud computing environment | |
| US20230124038A1 (en) | Adaptive navigation using artificial intelligence for enhancing task performance in autonomous roaming robotic devices | |
| US11681603B2 (en) | Computer generation of illustrative resolutions for reported operational issues | |
| US12308992B2 (en) | Adapting artificial intelligence (AI) ecosystem specifications |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination |