CN116097236A - 用于混合云环境中工作负载的自动管理的可扩展算子 - Google Patents
用于混合云环境中工作负载的自动管理的可扩展算子 Download PDFInfo
- Publication number
- CN116097236A CN116097236A CN202180056126.9A CN202180056126A CN116097236A CN 116097236 A CN116097236 A CN 116097236A CN 202180056126 A CN202180056126 A CN 202180056126A CN 116097236 A CN116097236 A CN 116097236A
- Authority
- CN
- China
- Prior art keywords
- workload
- operations
- computer
- resource
- identified
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5019—Workload prediction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/508—Monitor
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
Abstract
公开了一种用于管理工作负载的一个或多个操作的计算机实现的方法,该方法包括选择用于平台上的工作负载管理的资源类型。识别要管理的所选资源的一个或多个操作。确定每个所识别操作的执行的协调时间。为每个所识别的操作确定两个连续协调之间的协调时间段。计算用于资源上的操作的给定集合的工作负载管理的最小数目的处理,并且部署所确定的最小数目的处理来管理工作负载。
Description
技术领域
本公开总体上涉及计算机资源的部署和管理,并且更具体地涉及混合云环境中的工作负载管理。
背景技术
利用跨越混合云环境的基础设施和平台的计算机资源的流行度增加。例如,虚拟机的使用以及应用容器的使用持续成长和增长,在所述应用容器中打包或封装软件代码和其所有相依性。继续存在对在安全、生命周期管理和操作需要的领域中提供混合云中的资源的容易部署和管理的挑战。
在诸如Kubernetes的平台中,组件和工具的使用可促进在公共云和私有云中运行应用。随着多个基础架构/平台(诸如混合云)的复杂性增加,需要确保在不花费过多时间和资金的情况下满足此类计算机资源的功能和非功能要求。因此,使用算子(operator)来自动化对计算机资源的监控并促进这样的资源的安装、更新和管理的普及性增加,因为这种方法减少/消除了对云服务中的底层平台的担忧。
然而,虽然算子(诸如Kubernetes算子)的使用可以观察(多个资源中的)资源的当前状态并且补救资源的期望状态与实际状态之间的偏差,但是对可被监视的资源数量存在限制。例如,由于每个算子应当被管理,因此针对工作负载中的每个不同资源的算子的实现增加了维护的成本。通过为工作负载中的每个不同资源实现算子,还存在增加的算子空闲时间。算子可以管理多个资源,但是由于应用状态协调作业执行的顺序性质,每个算子仅可以监视有限数量的资源并满足资源要求。例如,在混合云环境中,混合工作负载对算子应用在能力和成本方面提出了挑战。由此,需要增强工作负载管理,特别是当用户正在将操作迁移到容器环境时。
发明内容
根据一个实施例,一种用于在混合云环境中管理工作负载的一个或多个操作的计算机实现的方法,包括从多个资源中选择用于平台上的工作负载管理的资源类型。在平台上识别要被管理的一个或多个操作。对于要管理的每个操作,确定协调(reconciliation)执行时间,并且对于每个操作,确定协调时间段。确定用于管理资源上的给定操作集合的处理(process)的最小数量,并且部署所述处理来管理工作负载。异构资源(例如,不同类型的工作负载)的管理可由单个计算机实现的方法提供,该方法提供提高的计算机效率和增强的工作负载管理功能性。
在一个实施例中,选择资源类型包括选择裸金属资源、容器资源或虚拟机资源中的一个来管理工作负载。由于混合云环境将具有各种类型的资源并且期望向容器操作迁移,因此存在通过计算机实现的方法能够管理不同类型的资源的改善的功能。
在一个实施例中,识别所述一个或多个操作包括识别打补丁(patching)操作、事件管理操作或合规(compliance)操作中的至少一个。这样的各种操作都可以用单个计算机实现的方法来管理。
在一个实施例中,计算机实现的方法包括使用机器学习来确定在每个所识别的操作的多次执行上的协调执行时间。
在一个实施例中,计算机实现的方法包括使用机器学习来确定所识别的操作中的每一个的协调时间段和协调执行时间。
在一个实施例中,部署所确定的最小数量的处理以执行工作负载管理包括以编程方式将操作映射到算子。
在一个实施例中,一种用于在混合云环境中管理工作负载的一个或多个操作的计算设备包括处理器和耦合到该处理器的存储器。存储器存储指令以使处理器执行动作,所述动作包括从用于在基于云的平台上的工作负载管理的多个资源中选择资源类型。识别将被管理的所选择的资源类型的一个或多个操作。为每个所识别的操作的执行确定协调执行时间。确定所识别的操作中的每一个的两个连续协调之间的协调时间段。计算用于对所选择的资源类型的所识别的操作的给定集合的工作负载管理的处理的最小数,并且部署所确定的最小数的处理来执行工作负载管理。
在一个实施例中,机器可读介质被配置有计算机可读程序代码,所述计算机可读程序代码具有当被执行时使计算机设备执行用于管理混合云环境中的工作负载的一个或多个操作的方法的计算机可读指令。
从以下将结合附图阅读的对其说明性实施例的详细描述,这些和其他特征将变得显而易见。
附图说明
附图是说明性实施例。它们没有示出所有实施例。除了或替代,其他实施例可以被使用。可省略可明显或不必要的细节以节省空间或用于更有效说明。一些实施例可用附加的组件或步骤和/或不用示出的所有组件或步骤来实践。当在不同的附图中出现相同的数字时,它指代相同或相似的部件或步骤。
图1A是提供根据说明性实施例的混合工作负载的架构的概况的示图。
图1B示出了根据说明性实施例的用于图1A中所示的混合工作负载资源类型的资源的配置的更多细节。
图2示出根据说明性实施例的使用算子管理资源的操作。
图3示出根据说明性实施例的用于管理混合云环境中的工作负载的设计和框架。
图4说明了根据说明性实施例的协调时间段和执行时间的计算。
图5示出根据说明性实施例的使用整数线性编程的示例。
图6描绘了根据说明性实施例的管理混合云环境中的工作负载的一个或多个操作的方法的流程图。
图7是根据说明性实施例的可与不同联网组件通信的计算机硬件平台的功能框图图示。
图8描绘了利用云计算的说明性云计算环境。
图9描绘了由云计算环境提供的一组功能抽象层。
具体实施方式
概述
在以下详细说明中,通过举例的方式阐述了许多具体细节以便提供对相关教导的透彻理解。然而,应当理解,本教导可以在没有这样的细节的情况下实践。在其他情况下,众所周知的方法、过程、部件和/或电路已经以相对高级别描述,而没有细节,以避免不必要地模糊本教导的方面。
在一些说明性实施例中,使用Kubernetes算子。然而,应当理解,本公开不限于使用Kubernetes算子。Kubernetes算子是增强Kubernetes平台来管理复杂工作负载的应用部署方法,复杂工作负载诸如例如使用仲裁机制和数据库的分布式系统。Kubernetes算子促进自动部署、缩放和操作应用容器,使得实体能够定义应用如何运行并彼此交互。可缩放的Kubernetes系统可以提供例如内容的扩展(例如,缩放)和项目之间的隔离,其允许移除任何项目而不影响其他内容。确定执行工作负载管理的处理的最小数量包括以编程方式将识别的操作映射到可扩展Kubernetes算子。
计算机实现的系统和方法提供了计算机操作的效率的改进。例如,借助于本文中的教导,管理工作负载的改进包括:单个管理工具可以用最小数量的算子(包括但不限于Kubernetes算子)提供对混合云环境中的多个异构资源组(例如,裸骨、容器、虚拟机)的管理,从而导致处理能力的量的减少,以及计算机存储器的使用的减少。
示例架构
图1A是提供根据说明性实施例的混合工作负载的架构的概况的图100A。混合工作负载可以跨越多个维度,并且可以包括例如多云/多OS、一个或多个类型的云部署模型(传统的、私有的、公共的云)和/或一种类型的部署(裸金属、VM、容器、外部服务)等。应当理解,混合云将场所内基础设施/平台(例如,私有云)与公共云组合。在一些实施例中,讨论了Kubernetes算子被部署在私有基础设施或公共云中,但是本公开不限于这种部署,也不限于Kubernetes算子。
例如,在图1A中,示出了包括传统信息技术(IT)资源110、私有资源120和公共资源130的混合工作负载资源类型101。密钥102示出了在混合工作负载资源类型中示出的配置中使用的阴影,其可以包括容器103、虚拟机(VM)104和物理机(PM)105。应当理解,图1A所示的布置是出于说明性目的而提供的,并且本公开不限于本文所示和所述的所示实施方式。
参考图1A中的密钥102所识别的阴影,传统IT 110资源中的混合工作负载资源类型可以包括被配置为虚拟机(VM)资源的应用111、应用服务器112和数据库113。此外,示出的传统IT资源110还包括被配置为容器资源的应用114、应用服务器115和数据库116。图1A中的虚线示出应用、应用服务器和数据库的特定分组,其包括来自一个以上资源的项,并且被标记为配置1、配置2和配置3。例如,配置1包括来自私有资源120的应用121和应用服务器122以及来自传统IT源110的数据库113。配置2包括来自公共资源130的应用134和应用服务器135,以及来自私有资源120的数据库123。配置3包括来自公共资源130的应用134和应用服务器135,以及来自私有资源120的数据库126。
所示出的私有资源120包括例如被配置为VM资源的应用121、应用服务器122和数据库(DB)123。此外,示出了应用124和应用服务器125以及数据库126。如锁127、128所表示的,对应用121、124、数据库123、126以及应用服务器122、125的访问被限制。
公共资源130例如包括被配置用于VM的应用131、应用服务器132和数据库133,并且应用134、应用服务器135和数据库136被配置用于容器资源。
图1B示出了用于图1A中所示的混合工作负载资源类型101的资源的不同配置的更多细节。图1B中所示的配置对应于图1A中由虚线标识的配置1、2和3。图1B中再次示出了图1A中的密钥102,以有助于图1B的解释。例如,图1B中所示的配置仅是VM 140、物理机器(PM)+VM+容器150或仅是容器160。应当理解,图1B中所示的配置并非对本公开的广度的穷尽。
图2示出根据说明性实施例的使用算子205(诸如算子)管理混合云241的资源200。算子205包括被配置为关于资源观察、分析和动作的控制器215。API服务器225(诸如Kubernetes“K8”API服务器)被示出为与算子205和定制资源235两者通信。定制资源235是定制资源定义212的对象。例如,算子205根据定制资源定义212来处理资源。当确定最小数量的处理(例如,Kubernetes算子)以提供对资源上的给定操作集合的期望(例如,最优)管理时,存在执行的操作类型到定制资源定义212以及定制资源235的映射操作。操作类型可包括合规(例如,文件许可和密码复杂度)、打补丁(例如,服务补丁和服务包)、事件管理(例如,低盘空间和低空闲存储器空间)和部署/改变(例如,DB升级、文件系统扩展)。表可用于将操作类型映射到定制资源235。可以基于对工作负载的改变来执行对定制资源235的重新分组。算子205被配置有至少在表255中所示的功能,使得算子205可以获得应用的当前状态,并且将当前状态与定制资源235中的期望状态进行比较。当发现偏离时,可以调用剧本211来补救应用状态。应当理解,本公开不限于图2中示出和描述的配置。例如,API服务器225不限于K8 API服务器。
图3示出根据说明性实施例的用于管理混合云环境中的工作负载的设计和框架300。识别被选择用于工作负载管理的特定资源类型的操作。特定资源类型的操作的一些非穷尽示例在下文讨论。
例如,如图3的非限制性实例所示,操作可以包括合规操作305、打补丁操作307和/或事件管理操作309。合规操作305可以包括范围从密码复杂性到文件许可的函数和规则。打补丁操作307可包括例如范围从安全补丁的应用到服务包的安装和更新的操作。事件管理操作309可包括被监视的功能,诸如低存储器状况、低盘空间等。事件管理操作309可包括确定被选择用于工作负载管理的资源类型的一个或多个所识别操作的工作负载维度。例如,对用于执行操作的协调时间以及协调时间段的确定可以基于工作负载生命周期数据、用户要求等,并且可以通过机器学习来更新。操作305、307、309被提供为相应的分区311、313、315,分区311、313、315用于部署确定的最小数量的处理(例如,Kubernetes算子)以执行工作负载管理。
图4是根据说明性实施例的协调时间段和协调执行时间的计算的图示400。协调时间段可以基于诸如经验性的体验的用户要求,或者可以是来自过去的工作负载生命周期(例如,历史执行)的数据驱动的。协调时间段提供关于监视某些操作的频率的信息。协调时间段可被确定为被选择用于工作负载管理的所识别的操作中的每一个的两个连续协调之间的时间段。例如,关于图3中所示的操作,合规操作305可具有例如2小时的协调时间段。打补丁操作307可以具有每周协调时间段,而事件管理309可以具有按需协调时间段。应当理解,上述协调时间段是示范性的示例,并且不存在基于协调时间段的示例的限制。
继续参照图4,通过计算多个执行时间t1 410至tn 420的总和示出了总操作执行时间405。尽管图4示出了正在执行密码复杂性函数(例如,图3所示的合规操作305),但可为如图4所示的任何其他操作确定操作执行时间。示出了所执行的动作的数量对时间的图表430。如图4所示,所计算的操作动作的数量(例如,用于打补丁:安全补丁、服务包;用于合规:密码复杂度、文件许可;以及用于事件管理:低内存、低磁盘)为14(例如,如所示的4+3+7)。因而,可以将协调执行时间425判断为等于操作执行时间405除以操作动作的总数。
关于计算协调时间段和协调执行时间425,机器学习可以用于确定/预测所识别的操作的多次执行上的协调执行时间425。机器学习还可用于确定/预测每个所识别的操作的协调时间段。诸如生命周期工作负载(历史执行)的训练数据可被使用,并且在后续执行发生时用附加工作负载信息来更新。当提供新的操作信息时,或以预定的间隔,可以重复协调时间段和协调执行时间操作的确定,使得机器学习可以在识别的操作的以增加的精度的多次执行上确定协调执行时间和/或协调时间段。应当理解,图4出于说明性目的而提供,并且协调时间段和协调执行时间的确定不限于图4中所示的操作。
图5示出了根据说明性实施例的使用整数线性编程(ILP)确定组操作500的示例。执行建模以找到分组算子的最有效的可能分配。在这种情况下,成本的考虑可以指计算机操作的效率。确定组操作的一种方式是将每个操作视为单个条目,并且其成本将是估计的协调执行时间。显著的考虑是在给定一组操作(每个操作具有协调成本)的情况下,如何在最小数量的算子上对该组操作进行分组。通过使用(ILP),使用近似510,并且执行分数LP和舍入过程520,其结果530示出为所计算的算子(min z)数量,其经受(例如,使得)包括以下的条件:所有资源的集合、可以调度资源的所有间隔的集合、协调时间段、以及使用一个算子的并行协调的最大数目。其他方法(诸如Greedy Assignment/GA)可用于计算最小数量的算子。在使用ILP时,该问题为算子的数量提供整数解决方案。非确定性多项式时间(NP)类问题不具有求解的多项式运行时间,但具有验证解的多项式运行时间。NP-难题(NP-hardness)是至少与NP中最难的问题一样难的一类问题的定义特性。ILP问题是NP-难的并且具有指数的最坏情况复杂性。给定与协调时间段(RP)和协调时间/成本(RC)相关联的r∈R操作的输入。该算法调度所有操作,同时最小化所使用的算子的数量(z)。选择在将执行操作r期间的长度RC的时间间隔i∈I(r)。对于每个操作r∈R,存在指示符变量x以识别是否可以在时间间隔i上调度操作r。每个操作在至少一个间隔上调度,并且在时间t调度的操作的总数最多是z。对于每个算子,在不相交的间隔中执行分配给它的该组操作。
示例处理
利用示例架构的前述概述,现在考虑示例处理的高级讨论可以是有帮助的。为此,结合图2、3和4,图6描绘了根据说明性实施例的管理混合云环境中的工作负载的一个或多个操作的计算机实现的方法。
在操作610处,选择来自多个资源的资源类型用于基于云的平台上的工作负载管理。存在可以选择的多种不同的资源类型,诸如裸金属资源、虚拟机资源、容器资源等。在混合云环境中,经常存在多种类型的资源,并且这种计算机实施的方法可以为多个资源提供工作负载管理。
在操作620,识别将被管理的所选资源类型的一个或多个操作。如图3所示,操作的一些非限制性示例包括合规操作305、打补丁操作307或事件管理操作309。如上文所讨论的,图3示出了这些操作可以被提供为分区,所述分区用于部署确定的最小数量的处理(例如,Kubernetes算子)以执行工作负载管理。
在操作630,确定所识别的一个或多个操作的工作负载维度。图4及其上述描述提供了工作负载维度的示例,诸如协调时间段和协调执行时间。协调时间段可以通过经验性的体验、用户需要和/或来自过去的工作负载生命周期(历史执行)的数据驱动来设置。如图4所示,可以计算协调执行时间。工作负载维度可以通过机器学习来学习和更新。例如,机器学习可以是受监督的或不受监督的。在监督的机器学习的情况下,历史执行数据可以被标记为训练集。
在操作640,可以确定用于所选资源类型的所识别的操作的给定集合的工作负载管理的进程的最小数目。如图5所示,确定过程的最小数量的一种方式是通过使用ILP。结合上文对图2的描述,操作类型可被映射到应用于定制资源的定制资源定义(CRD)。基于对工作负载的改变,可以对定制资源进行重新分组。ILP是问题的公式,可以执行建模以计算更高效或最高效的操作分组。
在步骤650,部署所确定的执行工作负载管理的最小数目的处理。部署所确定的最小数量的处理以执行工作负载管理可以包括将所识别的操作以编程方式映射到算子。算子可以是Kubernetes算子,并且它们可扩展到工作负载。尽管过程在操作650结束,但是可以执行机器学习以学习和/或更新所确定的工作负载维度,诸如在多个执行步骤上的协调时间段和协调执行时间。
图7提供了计算机硬件平台的功能框图图示700。具体地,图7示出了特别配置的网络或主计算机平台700,如可以用于实施图6所示的方法。
计算机平台700可以包括连接到系统总线702的中央处理单元(CPU)704、硬盘驱动器(HDD)706、随机存取存储器(RAM)和/或只读存储器(ROM)708、键盘710、鼠标712、显示器714和通信接口716。HDD 706可以包括数据储存库。
在一个实施例中,HDD 706具有包括存储程序的能力,所述程序能够执行不同处理,诸如用于以本文所述的方式执行工作负载管理模块750。工作负载管理模块750提供对所选工作负载的总体管理。定制资源模块748监控资源的状态描述,并且ILP模块746提供用于确定操作组的建模功能。机器学习模块740和训练样本742可以用于提高所确定的协调时间和协调时间段的准确性。可以存在被配置成执行数量可以变化的不同功能的各种模块。
例如,训练样本模块742存储不同数据以用机器学习模块740来训练处理器,机器学习模块740被配置成执行关于工作负载管理的机器学习,包括确定针对如本文中以上讨论的所识别的操作中的每个操作的协调时间和协调时间段。
在一个实施例中,可以存储诸如ApacheTM之类的程序,以便将系统作为Web服务器来操作。在一个实施例中,HDD 706可以存储包括一个或多个库软件模块的执行应用,诸如用于实现JVM(JavaTM虚拟机)的JavaTM运行时环境程序的那些模块。
示例云平台
如以上所讨论的,与环境和生态优化方法相关的功能可以包括云。应当理解,尽管本公开包括如下文所讨论的云计算的详细描述,但是本文所引用的教导的实现不限于云计算环境。相反,本公开的实施例能够结合现在已知的或以后开发的任何其他类型的计算环境来实现。
云计算是服务交付的模型,用于使得能够方便地、按需地网络访问可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储、应用、虚拟机和服务)的共享池,所述可配置计算资源可以以最小的管理努力或与所述服务的提供者的交互来快速供应和释放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。
特性如下:
按需自助服务:云消费者可以单方面地根据需要自动地提供计算能力,诸如服务器时间和网络存储,而不需要与服务的提供者的人类交互。
广泛的网络接入:能力可通过网络获得并且通过标准机制接入,该标准机制促进异构瘦客户机平台或厚客户机平台(例如,移动电话、膝上型计算机和PDA)的使用。
资源池:提供者的计算资源被池化以使用多租户模型来服务于多个消费者,其中不同的物理和虚拟资源根据需要动态地指派和重新指派。存在位置独立性的感觉,因为消费者通常不具有对所提供的资源的确切位置的控制或了解,但可能能够以较高抽象级别(例如,国家、州或数据中心)指定位置。
快速弹性:能够快速和弹性地提供能力,在一些情况下自动地快速缩小和快速释放以快速放大。对于消费者而言,可用于供应的能力通常显得不受限制并且可以在任何时间以任何数量购买。
测量的服务:云系统通过在适合于服务类型(例如,存储、处理、带宽和活动用户账户)的某个抽象级别处利用计量能力来自动控制和优化资源使用。可以监视、控制和报告资源使用,为所利用的服务的提供者和消费者提供透明度。
服务模型如下:
软件即服务(SaaS):提供给消费者的能力是使用在云基础设施上运行的提供者的应用。可通过诸如web浏览器(例如,基于web的电子邮件)之类的瘦客户端接口从不同客户端设备访问应用。消费者不管理或控制包括网络、服务器、操作系统、存储或甚至单独的应用能力的底层云基础设施,可能的例外是有限的用户特定应用配置设置。
平台即服务(PaaS):提供给消费者的能力是将消费者创建的或获取的使用由提供商支持的编程语言和工具创建的应用部署到云基础设施上。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但是对所部署的应用和可能的应用托管环境配置具有控制。
基础设施即服务(IaaS):提供给消费者的能力是提供处理、存储、网络和消费者能够部署和运行任意软件的其他基本计算资源,所述软件可以包括操作系统和应用。消费者不管理或控制底层云基础设施,而是具有对操作系统、存储、所部署的应用的控制以及对所选联网组件(例如,主机防火墙)的可能受限的控制。
部署模型如下:
私有云:云基础架构仅为组织运作。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
社区云:云基础架构被若干组织共享并支持共享了关注(例如,任务、安全要求、策略、和合规考虑)的特定社区。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
公共云:使云基础架构对公众或大型行业组可用,并且由出售云服务的组织拥有。
混合云:云基础架构是两个或更多个云(私有、社区或公共)的组合,这些云保持唯一实体但通过使数据和应用能够移植的标准化或专有技术(例如,云突发以用于云之间的负载平衡)绑定在一起。
云计算环境是面向服务的,集中于无状态、低耦合、模块性和语义互操作性。云计算的核心是包括互连节点网络的基础设施。
现在参考图8,描述了利用云计算的说明性云计算环境800。如图所示,云计算环境800包括具有一个或多个云计算节点810的云800,云消费者使用的本地计算设备(诸如例如个人数字助理(PDA)或蜂窝电话854A、台式计算机854B、膝上型计算机854C和/或汽车计算机系统854N)可与云计算节点810通信。节点810可以彼此通信。它们可以物理地或虚拟地分组(未示出)在一个或多个网络中,诸如如上所述的私有云、社区云、公共云或混合云、或其组合。这允许云计算环境800提供基础架构、平台和/或软件作为云消费者不需要为其维护本地计算设备上的资源的服务。应当理解,图8中所示的计算设备854A-N的类型仅仅是说明性的,并且计算节点810和云计算环境850可以通过任何类型的网络和/或网络可寻址连接(例如,使用网络浏览器)与任何类型的计算机化设备通信。
现在参见图9,示出了由云计算环境800(图8)提供的一组功能抽象层900。应提前理解,图9中所示的组件、层和功能仅旨在是说明性的,并且本公开的实施方式不限于此。如所描述,提供以下层和对应功能:
硬件和软件层960包括硬件和软件组件。硬件组件的示例包括:大型机961;基于RISC(精简指令集计算机)架构的服务器962;服务器963;刀片服务器964;存储设备965;以及网络和网络组件966。在一些实施例中,软件部件包括网络应用服务器软件967和数据库软件968。
虚拟化层970提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器971;虚拟存储972;虚拟网络973,包括虚拟专用网络;虚拟应用和操作系统974;以及虚拟客户端975。
在一个示例中,管理层980可以提供以下描述的功能。资源供应981提供计算资源和用于在云计算环境内执行任务的其他资源的动态采购。计量和定价982在云计算环境内利用资源时提供成本跟踪,并为这些资源的消费开账单或发票。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户983为消费者和系统管理员提供对云计算环境的访问。服务水平管理984提供云计算资源分配和管理,使得满足所需的服务水平。服务水平协议(SLA)规划和履行985提供云计算资源的预安排和采购,根据该SLA预期该云计算资源的未来要求。
工作负载层990提供可以利用云计算环境的功能的示例。可以从该层提供的工作负载和功能的示例包括:地图和导航991;软件开发和生命周期管理992;虚拟教室教育递送993;数据分析处理994;事务处理995;以及用于在混合的基于云的平台上执行工作负载管理的工作负载管理模块996,如本文所讨论的。
结论
已经出于说明的目的呈现了本公开内容的不同实施例的描述,但并不旨在是详尽的或限于所披露的实施例。在不脱离所描述的实施例的范围的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。这里使用的术语被选择来最好地解释实施例的原理、实际应用或对在市场中找到的技术的技术改进,或者使得本领域普通技术人员能够理解这里公开的实施例。
虽然上文已描述了被视为最佳状态和/或其他实例的内容,但应理解,可在其中进行不同修改,且本文所公开的主题可在不同形式和实例中实施,且教导可应用于许多应用中,本文仅描述了其中的一些应用。所附权利要求旨在要求保护落入本公开内容的真实范围内的任何和所有应用、修改和变化。
本文已经讨论的组件、步骤、特征、目的、益处和优点仅是说明性的。它们以及与其相关的讨论都不旨在限制保护范围。虽然本文已经论述了各种优点,但是将理解,并非所有实施例都必须包括所有优点。除非另外说明,否则在本说明书(包括在以下权利要求书中)中阐述的所有测量、值、评级、位置、幅值、大小、以及其他规范都是近似的、不精确的。它们旨在具有与它们有关的功能以及与它们所属领域惯用的功能相一致的合理范围。
还构想了许多其他实施例。这些包括具有更少的、附加的和/或不同的部件、步骤、特征、目的、益处和优点的实施例。这些还包括部件和/或步骤被不同地安排和/或排序的实施例。
本文中的图中的流程图和图示出了根据本公开的各种实施方式的可能的实现方式的架构、功能和操作。
尽管已经结合示例性实施方式描述了上述内容,然而,应当理解的是,术语“示例性的”仅意味着作为实例,而非最佳或者最佳。除了以上立即陈述的之外,已经陈述或展示的任何内容都不旨在或应该被解释为引起任何部件、步骤、特征、对象、益处、优点的奉献或与公众等效,而不管它是否在权利要求中陈述。
应当理解,本文所使用的术语和表达具有普通含义,如对于它们相应的相应查询和研究领域的这些术语和表达所赋予的,除非本文另外阐述具体含义。诸如第一和第二等之类的关系术语可仅用来将一个实体或动作与另一个实体或动作区分开来,而不必要求或暗示这些实体或动作之间的任何这种实际关系或顺序。术语“包括(comprises)”、“包括(comprising)”或其任何其他变型旨在覆盖非排他性的包括,从而使得包括一系列要素的过程、方法、物品或装置不仅仅包括那些要素,而且还可以包括未明确列出的或对此类过程、方法、物品或装置固有的其他要素。在没有进一步限制的情况下,由“一个”或“一种”开始的元件不排除在包括该元件的过程、方法、物品或装置中存在另外的相同元件。
提供本公开的摘要以允许读者快速确定本技术公开的性质。在理解其不用于解释或限制权利要求的范围或含义的情况下提交。此外,在以上具体实施方式中,可以看出,出于精简本公开的目的,各个特征在各个实施方式中被组合在一起。本公开的该方法不应被解释为反映所要求保护的实施例具有比每个权利要求中明确记载的特征更多的特征的意图。相反,如以下权利要求所反映的,本发明的主题在于少于单个披露的实施例的所有特征。因此,以下权利要求由此并入详细说明中,其中每个权利要求独立地作为单独要求保护的主题。
Claims (20)
1.一种用于管理平台中的工作负载的一个或多个操作的计算机实现的方法,所述方法包括:
选择资源类型来管理所述平台上的工作负载;
识别将被管理的所选择的资源类型的一个或多个操作;
确定所识别的一个或多个操作的工作负载维度;
确定用于管理所述工作负载的所选择的资源类型的所识别的操作的给定集合的处理的最小数量;以及
部署所确定的最小数量的处理来管理所述工作负载。
2.根据权利要求1所述的计算机实现的方法,其中,确定所述工作负载维度包括:
确定用于执行所识别的操作中的每一个的协调时间;以及
确定用于所识别的操作中的每一个的两个连续协调之间的协调时间段。
3.根据权利要求1所述的计算机实现的方法,其中,选择所述资源类型包括选择用于所述工作负载的管理的裸金属资源、容器资源或虚拟机资源中的一个或多个。
4.根据权利要求1所述的计算机实现的方法,其中,识别一个或多个操作包括识别打补丁操作、事件管理操作或合规操作中的至少一个。
5.根据权利要求1所述的计算机实现的方法,进一步包括使用机器学习来确定所识别的操作中的每一个的多次执行上的协调执行时间。
6.根据权利要求5所述的计算机实现的方法,进一步包括使用机器学习来确定所识别的操作中的每一个的协调时间段。
7.根据权利要求1所述的计算机实现的方法,其中,部署所确定的最小数量的处理以执行所述工作负载的管理包括将所识别的操作以编程方式映射到算子。
8.根据权利要求1所述的计算机实现的方法,其中,部署所确定的最小数量的处理以执行所述工作负载的管理包括将所识别的操作以编程方式映射到可扩展Kubernetes算子。
9.一种用于管理平台中的工作负载的一个或多个操作的计算设备,包括:
处理器;
耦合到所述处理器的存储器,所述存储器存储指令以使所述处理器执行动作,所述动作包括:
从多个资源中选择资源类型来管理所述平台上的工作负载;
识别将被管理的所选择的资源类型的一个或多个操作;
确定用于执行所识别的操作中的每一个的协调时间;
确定用于所识别的操作中的每一个的两个连续协调之间的协调时间段;
确定用于管理对所述工作负载的所选择的资源类型的所识别的操作的给定集合的处理的最小数量;以及
部署所确定的最小数量的处理来管理所述工作负载。
10.根据权利要求9所述的计算设备,其中,所述指令使所述处理器执行附加动作,所述附加动作包括执行机器学习以确定所识别的操作中的每一个的多次执行上的协调执行时间。
11.根据权利要求9所述的计算设备,其中,所述指令使所述处理器执行附加动作,所述附加动作包括执行机器学习以确定所识别的操作中的每一个的协调时间段。
12.根据权利要求9所述的计算设备,其中,所述多个资源类型包括裸金属、容器或虚拟机,并且
其中所述处理器被配置为对所选择的多个资源类型中的每一者执行工作负载管理。
13.根据权利要求9所述的计算设备,其中,部署所确定的最小数量的处理以执行所述工作负载的管理包括将所识别的操作以编程方式映射到可扩展Kubernetes算子。
14.根据权利要求9所述的计算设备,其中,所识别的操作包括合规操作、打补丁操作、事件管理操作或部署操作中的一个或多个。
15.一种有形地体现计算机可读程序代码的非暂时性计算机可读存储介质,所述计算机可读程序代码具有计算机可读指令,所述计算机可读指令在被执行时使计算机设备执行管理平台中的工作负载的一个或多个操作的方法,所述方法包括:
从多个资源中选择资源类型来管理所述平台上的工作负载;
识别将被管理的所选择的资源类型的一个或多个操作;
确定用于执行所识别的操作中的每一个的协调时间;
确定用于所识别的操作中的每一个的两个连续协调之间的协调时间段;
确定用于管理对所述工作负载的所选择的资源类型的所识别的操作的给定集合的处理的最小数量;以及
部署所确定的最小数量的处理来管理所述工作负载。
16.根据权利要求15所述的计算机可读存储介质,其中,选择所述资源类型包括选择用于工作负载管理的裸金属资源、容器资源或虚拟机资源中的一个。
17.根据权利要求15所述的计算机可读存储介质,其中,识别一个或多个操作包括识别打补丁操作、事件管理操作或合规操作中的至少一个。
18.根据权利要求15所述的计算机可读存储介质,还包括使用机器学习来确定所识别的操作中的每一个的多次执行上的协调执行时间,并且确定所识别的操作中的每一个的协调时间段。
19.根据权利要求18所述的计算机可读存储介质,其中,所识别的操作包括合规操作、打补丁操作、事件管理操作或部署操作中的一个或多个。
20.根据权利要求15所述的计算机可读存储介质,其中,部署所确定的最小数量的处理以执行工作负载管理包括:以编程方式将所识别的操作映射到算子。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/994,586 | 2020-08-15 | ||
US16/994,586 US11625272B2 (en) | 2020-08-15 | 2020-08-15 | Scalable operators for automatic management of workloads in hybrid cloud environments |
PCT/CN2021/112280 WO2022037472A1 (en) | 2020-08-15 | 2021-08-12 | Scalable operators for automatic management of workloads in hybrid cloud environments |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116097236A true CN116097236A (zh) | 2023-05-09 |
Family
ID=80224190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180056126.9A Pending CN116097236A (zh) | 2020-08-15 | 2021-08-12 | 用于混合云环境中工作负载的自动管理的可扩展算子 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11625272B2 (zh) |
JP (1) | JP2023536876A (zh) |
CN (1) | CN116097236A (zh) |
DE (1) | DE112021003499T5 (zh) |
GB (1) | GB2613116A (zh) |
WO (1) | WO2022037472A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220083364A1 (en) * | 2020-09-17 | 2022-03-17 | Sap Se | Reconciler sandboxes for secure kubernetes operators |
US11429465B1 (en) * | 2021-04-28 | 2022-08-30 | Microsoft Technology Licensing, Llc | Controller for off-cluster operations |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100447806C (zh) * | 2006-06-14 | 2008-12-31 | 北京握奇数据系统有限公司 | 两阶段混合指纹特征匹配方法、匹配装置及其应用 |
US20120204187A1 (en) | 2011-02-08 | 2012-08-09 | International Business Machines Corporation | Hybrid Cloud Workload Management |
US9967159B2 (en) | 2012-01-31 | 2018-05-08 | Infosys Limited | Systems and methods for providing decision time brokerage in a hybrid cloud ecosystem |
US10291488B1 (en) | 2012-09-27 | 2019-05-14 | EMC IP Holding Company LLC | Workload management in multi cloud environment |
US9727332B2 (en) | 2013-11-22 | 2017-08-08 | International Business Machines Corporation | Information technology resource management |
US10250451B1 (en) | 2014-01-13 | 2019-04-02 | Cazena, Inc. | Intelligent analytic cloud provisioning |
CN104035816B (zh) | 2014-05-22 | 2017-03-22 | 南京信息工程大学 | 一种基于改进nsga‑ii的云计算任务调度方法 |
CN104123189B (zh) | 2014-06-30 | 2017-12-01 | 复旦大学 | 一种基于IaaS层应用感知的Web多层应用动态资源调整方法 |
WO2018015779A1 (en) | 2016-07-20 | 2018-01-25 | Worldline | Multi-criteria adaptive scheduling for a market-oriented hybrid cloud infrastructure |
US10447806B1 (en) | 2017-06-09 | 2019-10-15 | Nutanix, Inc. | Workload scheduling across heterogeneous resource environments |
US10601672B2 (en) | 2017-10-24 | 2020-03-24 | Cisco Technology, Inc. | Inter-tenant workload performance correlation and recommendation |
KR20190076693A (ko) | 2017-12-22 | 2019-07-02 | 부산대학교 산학협력단 | 이종 클라우드 환경에서 워크로드의 자원 사용량 예측 및 자동 분산 처리 방법 |
-
2020
- 2020-08-15 US US16/994,586 patent/US11625272B2/en active Active
-
2021
- 2021-08-12 DE DE112021003499.5T patent/DE112021003499T5/de active Pending
- 2021-08-12 JP JP2023507364A patent/JP2023536876A/ja active Pending
- 2021-08-12 GB GB2303450.7A patent/GB2613116A/en active Pending
- 2021-08-12 WO PCT/CN2021/112280 patent/WO2022037472A1/en active Application Filing
- 2021-08-12 CN CN202180056126.9A patent/CN116097236A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2023536876A (ja) | 2023-08-30 |
DE112021003499T5 (de) | 2023-05-11 |
GB2613116A (en) | 2023-05-24 |
US11625272B2 (en) | 2023-04-11 |
US20220050720A1 (en) | 2022-02-17 |
WO2022037472A1 (en) | 2022-02-24 |
GB202303450D0 (en) | 2023-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10394477B2 (en) | Method and system for memory allocation in a disaggregated memory architecture | |
US9225604B2 (en) | Mapping requirements to a system topology in a networked computing environment | |
US8918439B2 (en) | Data lifecycle management within a cloud computing environment | |
US9641392B2 (en) | Policy implementation in a networked computing environment | |
US11469965B2 (en) | Determining formal models using weighting factors for computing elements in multi-domain environments | |
US9823941B2 (en) | Optimized placement of virtual machines on physical hosts based on user configured placement policies | |
US20140201345A1 (en) | Managing user privileges for computer resources in a networked computing environment | |
US10373072B2 (en) | Cognitive-based dynamic tuning | |
US11163631B2 (en) | Optimized incident management using hierarchical clusters of metrics | |
US20170220365A1 (en) | Virtual machine allocation to hosts for data centers | |
US10243819B1 (en) | Template generation based on analysis | |
US11886921B2 (en) | Serverless runtime container allocation | |
WO2022037472A1 (en) | Scalable operators for automatic management of workloads in hybrid cloud environments | |
US20130219230A1 (en) | Data center job scheduling | |
CN116414518A (zh) | Kubernetes上的大数据的数据局部性 | |
US10901798B2 (en) | Dependency layer deployment optimization in a workload node cluster | |
US20170285965A1 (en) | Tuning memory across database clusters for distributed query stability | |
US10904348B2 (en) | Scanning shared file systems | |
US20230266997A1 (en) | Distributed scheduling in container orchestration engines | |
US20170091348A1 (en) | Intelligent suggestions for rack layout setup | |
US20230185604A1 (en) | Cold-start service placement over on-demand resources | |
US20230315517A1 (en) | Central randomized scheduler for hypothesis-based workloads | |
US11243764B1 (en) | Code deployment | |
US11288291B2 (en) | Method and system for relation discovery from operation data | |
US20220138614A1 (en) | Explaining machine learning based time series models |
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 |