CN105940378B - 用于分配可配置计算资源的技术 - Google Patents
用于分配可配置计算资源的技术 Download PDFInfo
- Publication number
- CN105940378B CN105940378B CN201580006049.0A CN201580006049A CN105940378B CN 105940378 B CN105940378 B CN 105940378B CN 201580006049 A CN201580006049 A CN 201580006049A CN 105940378 B CN105940378 B CN 105940378B
- Authority
- CN
- China
- Prior art keywords
- scoring
- computing resource
- weighted sum
- resource
- distribution
- 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.)
- Active
Links
- 238000005516 engineering process Methods 0.000 title abstract description 10
- 238000009826 distribution Methods 0.000 claims description 99
- 238000000034 method Methods 0.000 claims description 73
- 238000003860 storage Methods 0.000 claims description 52
- 238000000926 separation method Methods 0.000 claims description 43
- 238000012545 processing Methods 0.000 claims description 22
- 238000012544 monitoring process Methods 0.000 claims description 15
- 230000035945 sensitivity Effects 0.000 claims description 14
- 238000005265 energy consumption Methods 0.000 claims description 13
- 238000013468 resource allocation Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 6
- 240000002853 Nelumbo nucifera Species 0.000 claims description 5
- 235000006508 Nelumbo nucifera Nutrition 0.000 claims description 5
- 235000006510 Nelumbo pentapetala Nutrition 0.000 claims description 5
- 230000008569 process Effects 0.000 description 19
- 238000004891 communication Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 13
- 238000007726 management method Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 7
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000005259 measurement Methods 0.000 description 5
- 230000002776 aggregation Effects 0.000 description 4
- 238000004220 aggregation Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000005012 migration Effects 0.000 description 3
- 238000013508 migration Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 239000003990 capacitor Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000001816 cooling Methods 0.000 description 2
- 238000000151 deposition Methods 0.000 description 2
- 230000005389 magnetism Effects 0.000 description 2
- 229920000642 polymer Polymers 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241001522296 Erithacus rubecula Species 0.000 description 1
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 description 1
- IXRUDIQZLSGCRS-UHFFFAOYSA-N [Si].[O].[N].[O].[Si] Chemical compound [Si].[O].[N].[O].[Si] IXRUDIQZLSGCRS-UHFFFAOYSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000007306 turnover Effects 0.000 description 1
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/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- 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]
-
- 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/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
- G06F9/505—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 considering the load
-
- 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/5061—Partitioning or combining of resources
-
- 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/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- 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/5094—Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
-
- 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/501—Performance criteria
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Hardware Redundancy (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
- Power Sources (AREA)
Abstract
示例可以包括用于将可配置计算资源从可配置计算资源池分配到逻辑服务器或虚拟机的技术。所述逻辑服务器或虚拟机可以使用所分配的可配置计算资源来实现、执行或运行工作负荷。
Description
相关案例
本申请要求均在2014年2月27日提交的美国临时专利申请号61/945,753和61/945,757的优先权,这两个临时专利申请通过引用以其全文结合在此。
技术领域
在此所描述的示例总体上涉及池式或可配置计算资源。
背景技术
组网的技术进步已经使对池式和/或可配置计算资源的使用上升。所述池式和/或可配置计算资源可以包括用于云计算网络的物理基础设施。所述物理基础设施可以包括一个或多个具有处理器、存储器、存储装置、网络等的计算***。这些云计算网络的管理实体可以将逻辑服务器或虚拟机(VM)指派给所分配部分的池式和/或可配置计算资源,从而将这些逻辑服务器放置或构成为用于实现、执行或运行工作负荷(如某种类型的应用)。各种类型的应用或应用工作负荷可以通过访问这些被放置或组成的逻辑服务器以共享的方式来利用所分配的这个基础设施。
附图简要说明
图1展示了示例***。
图2展示了示例数据中心/机架管理结构。
图3展示了示例分配评分和排名。
图4展示了示例第一逻辑流程。
图5展示了示例第二逻辑流程。
图6展示了示例工作负荷模板。
图7展示了设备的示例框图。
图8展示了第三逻辑流程的示例。
图9展示了存储介质的示例。
图10展示了计算平台的示例。
具体实施方式
如在本披露中所考虑的,各种类型的应用或应用工作负荷可以通过访问被放置或构成的逻辑服务器或VM以共享的方式来利用共享基础设施,所述基础设施可以由选定的池式资源组成。这些池式资源可以包括由分离物理元件或部件组成的可配置计算资源,所述分离物理元件或部件属于一种或多种类型,比如但不限于:中央处理单元(CPU)类型、存储器类型、存储类型、或网络输入/输出(NW I/O)类型。用于从这些分离物理元件分配池式资源以组成逻辑服务器或VM的最简单方法是使用轮询(round robin)方式来保证所分配的分离物理元件的长寿命。目前不存在用于以整体方式分配池式资源的已知方法,这样使得关键性能指标(KPI)的任何组合都被计算在内,不仅是资源利用,还有能量消耗、资源的财务成本或性能。
被称为机架级架构(RSA)的技术创新包括逻辑上由分离物理元件池组成的服务器,从而实现或执行到来的工作负荷请求。这些RSA服务器可以被部署在大数据中心中,但面临着至少两个问题。首先,初始选择分离物理元件来组成逻辑服务器或VM从而实现、执行或运行工作负荷,这样使得不同利益相关者或用户及其要求(例如,功率、性能、维护、成本等)得到满足。其次,由所组成的逻辑服务器或VM在连续执行工作负荷过程中对需要或强制执行的KPI保持最初分配的性能。由于组成的逻辑服务器或VM还可以是软件定义基础设施(SDI)的一部分,启用SDI的数据中心可以包括被动态组成以实现或执行工作负荷的RSA服务器。由于被动态组成,不仅是最初分配而且在运行时间进行连续优化或调节以执行工作负荷都需要考虑。这些连续优化或调节还可以基于满足不同利益相关者或用户以及其要求。相对于这些和/或其他挑战,需要在此所描述的示例。
在某些示例中:用于分配可配置计算资源的技术可以被实现为包括:在用于可配置计算资源***的资源管理器处接收将这些可配置计算资源分配给逻辑服务器从而实现或执行工作负荷的请求。这些技术还可以包括:针对所述可配置计算资源中可用于分配给所述逻辑服务器的第一部分确定第一加权总和分配评分(weighted sum allocationscore),并且针对所述可配置计算资源中可用于分配给所述逻辑服务器的第二部分确定第二加权总和分配评分。这些技术还可以包括:对所述第一和第二加权总和分配评分进行比较,从而相对于所述第二部分对所述第一部分进行排名,并且然后,基于所述排名将所述第一部分或所述第二部分分配给所述逻辑服务器。
图1展示了示例***100。如图1中所示,***100包括机架110、资源池120以及布置130。在某些示例中,如图1中所示,机架110可以包括机架112-1、112-1至112-n,其中,“n”是任何大于2的正整数。每个机架可以包括各种可配置计算资源。这些可配置计算资源可以包括各种类型的分离物理元件。分离物理元件的类型可以包括但不限于:CPU类型、存储器类型(例如,随机存取存储器(RAM))、存储类型(例如,硬盘或固态驱动器)、NW I/O类型(例如,网络接口卡)、电源类型(例如,电源转换盒)、冷却类型(例如,风扇或冷却机)或其他资源类型(例如,网络交换机类型)。可以在资源池(如资源池120)中使这些可配置计算资源可用(例如,可用于资源管理器或控制器)。
根据某些示例,如下文更多描述的,用于***(如***100)的资源管理器、控制器或调度器的逻辑和/或特征可能能够对资源池(如资源池120)中所包括的可能可用于分配给逻辑服务器或VM的各个可配置计算资源进行存储并且然后进行排名。逻辑服务器或VM例如可以被组成以用于实现或执行工作负荷。所述分配评分并且然后排名可以用来对资源池中的至少一部分(例如,一种配置)的可用可配置计算资源进行分配从而支持逻辑服务器或VM(如分配给布置130的那些)的布置或组成。如图1中所示,布置130包括逻辑服务器/VM132-1至132-m,其中,“m”是任何大于3的正整数。所述排名例如可以是这样的尝试:满足功率、性能、成本、可用性或维护要求,还允许***在由于可能会造成对所分配的可配置计算资源部分的修改的各种运行场景所导致的可能动态的需求而引起的长时间运行期间在一定程度上保持平衡。因而,可能需要对所分配的部分的修改。
在某些示例中,如下文更多描述的,用于***(如***100)的资源管理器、控制器或调度器的逻辑和/或特征还可能能够对被分配以用于当逻辑服务器或VM实现、运行或执行工作负荷时组成或布置逻辑服务器或VM的每个可配置计算资源的多种运行属性进行监测。针对这些示例,所述逻辑和/或特征可以对运行的可配置计算资源进行评分并且然后与针对之前被分配用于实现或执行工作负荷的所述可配置计算资源的一个或多个其他部分而确定的一个或多个历史运行评分进行比较来对那个运行评分进行排名。对所分配的那些可配置计算资源的修改可以或可以不基于此排名进行。例如,如果第一个分配的可配置计算资源的排名低于其他可配置计算资源的历史运行评分,所述第一个分配的可配置计算资源可以与新的可配置计算资源布置在一起。
根据某些示例,每个逻辑服务器(如图1中针对布置130所示的那些)可以包括一个或多个VM。针对这些示例,所述一个或多个VM中的每一个都可以被分配一部分所分配的可配置计算资源。在其他示例中,所分配的可配置计算资源可以被直接分配给给定VM。
图2展示了示例数据中心/机架管理结构200。在某些示例中,如图2中所示,机架管理结构200包括用于管理具有类似于图1中所示的***100的元件的数据中心的各管理器和应用编程接口(API)。例如,通用云服务210可以通过图2中所示的服务协调接口作为通用服务应用接口(API)220接口连接以与POD管理器230进行通信。POD管理器230可能能够管理多个包括各种类型分离物理元件的机架。
根据某些示例,POD管理器230可以包括资源管理器201,所述资源管理器包括逻辑和/或特征,所述逻辑和/或特征能够响应于来自于通用云服务210的将可配置计算资源分配给逻辑服务器或VM用于实现或执行可以与通用云服务210相关联的工作负荷的请求而对这些分离物理元件进行打分、排名和分配。所述工作负荷例如可以是应用工作负荷,比如但是不限于:视频处理、加密/解密、web服务器、内容分发或数据库。如下文更多描述的,资源管理器201可以维护资源目录203以追踪已经分配了哪些可配置计算资源以及还有哪些可配置计算资源可能可用于响应于来自通用云服务210的后续请求而进行分配。
在某些示例中,如图2中所示,POD管理器230可以具有RSA管理服务API 240,用于通过表现性状态转移(REST)API 252-1至252-4耦合至机架控制面管理器(RCPM)250。RESTAPI 252-1至252-4可以是维持在RCPM 250与一个或多个POD管理器之间的基础设施协调接口的一部分,所述一个或多个POD管理器包括用于在机架层提供对这些可配置计算资源的访问的POD管理器230。这种访问可以包括对维持在机架处的分离物理元件以及用于部署在这些机架中的技术的元数据的访问,所述元数据可以包括这些分离物理元件的聚集的操作属性。根据某些示例,RCPM 250还可以通过本地控制管理数据库(CMDB)256提供对这些物理和逻辑资产景观或映射的访问,以便加快对可用资产的标识并且响应于请求而分配可配置计算资源从而组成或布置逻辑服务器或VM用于实现或执行工作负荷。
根据某些示例,RCPM 250可以提供机架层用户接口从而实现若干基本功能,如发现、保留、轮询、监测、调度和使用。同样,针对这些示例,可以利用RCPM 250来将高阶计算资源装配在多机架架构中(例如,用于执行工作负荷)。
在某些示例中,RCPM 250可以将在其管理下的资产报告给包括资源管理器201的POD管理器230。针对这些示例,资源管理器201可以包括以下逻辑和/或特征:能够帮助POD管理器230将来自于受POD管理器230管理的机架的POD中所包括的所有机架的整体物理资产景观结构聚集成单个多机架资产视图。根据某些示例,RCPM 250还可以通过REST API252-1至252-4从POD管理器230接收和/或响应请求。
RCPM 250还可以通过固件(FW)API 254-1至254-4与包括各种类型的分离物理元件的可配置计算资源接口连接。例如,所述各种类型的分离物理元件在图2中作为网络I/O260-1、CPU 260-2、存储装置260-3以及存储器260-4示出。控制器262-1至262-4可以与对应的FW API 254-1至254-4接口连接,以便于或使能RCPM 250与这些各种类型的分离物理元件之间的通信。在某些示例中,控制器262-1至262-4可以包括但不限于服务处理器或基板管理控制器(BMC)。
根据某些示例,POD管理器230可以接收分配在多个机架(如***100的机架112-1至112-n)中所保持的可配置计算资源的一部分的请求。针对这些示例,POD管理器230可以通过通用服务API 210以标准化协议格式(如开放虚拟化格式(OVF))接收所述请求。OVF可以包括对工作负荷类型的暗示(例如,元数据)。POD管理器230可能能够确定布置或组成逻辑服务器或VM以实现或执行工作负荷需要什么样的硬件配置。POD管理器230然后可以转发请求并向资源管理器201指示可能需要的硬件配置。例如,实现、运行或执行工作负荷所需的包括各种类型的分离物理元件(如CPU、存储器、存储装置和NW I/O)的可配置计算资源的配置。
在某些示例中,资源管理器201的逻辑和/或特征可能能够对资源池(如图1中所示的资源池120)中所包括的可用的可配置计算资源进行评分然后排名,从而分配这些可用的可配置计算资源以满足用于实现、运行或执行工作负荷的分离物理元件配置。针对这些示例,分配评分可以基于应用使用示例等式(1)所确定的加权总和。
等式(1):
例如等式(1),分配评分或si是可配置计算资源ri(CPU、存储器、存储装置、NW I/O、功率、冷却等)被归一化为对应的最大值ri,max乘以权重mi之和。权重mi可以允许使得可配置计算资源的某些属性优先于可配置计算资源的其他属性(例如,通过用户)。在某些示例中,ri,max可以基于但不限于一个或多个用户许可协议(SLA)、来自制造商的最大规格或者经测试的运行参数或属性。在某些示例中,可以自动从资源ri(例如从基本输入/输出***(BIOS)、合适的制造商只读存储器(ROM)或SLA)获得性能值ri,max。在其他示例中,可以动态地调整ri,max以反映功能性。例如,当机架中部署的传感器(例如,SMART传感器)预期故障值或生命终止值时,通过减少存储资源(如硬盘驱动)的ri,max。
根据某些示例,资源池中所包括的可配置计算资源可以是不同托盘和/或机架中维持的分离物理元件。针对这些示例,RCPM 150可能能够实时追踪每个可配置计算资源的属性。例如,网络I/O 260-1所包含的一个或多个NW I/O、CPU 260-2所包含的一个或多个CPU、存储装置260-3所包含的一个或多个存储设备或者存储器260-4所包含的一个或多个存储器装置。所述属性可以包括但不限于:温度(t,以摄氏度为单位)、功率/能量消耗(e,以千伏毫安为单位)、总正常工作时间(u,以小时为单位)或者单位成本(c,以美元为单位)。
在某些示例中,可以从通用云服务210接收请求以将可配置计算资源分配给逻辑服务器或VM从而实现或执行工作负荷。针对这些示例,在POD管理器230处的逻辑和/或特征可以确定工作负荷将需要1个CPU、2千兆字节(GB)的RAM、1太字节(TB)的存储装置和10千兆比特(Gb)能力的NW I/O装置或NIC。同样,所述请求可以指示可以致使以具体方式对这些可配置计算资源的每种属性进行加权的模板。
根据某些示例,所述模板可以包括但不限于“成本敏感”模板、“性能敏感”模板或“高可用性”模板。所述请求中所指示的模板可以为每个属性设置权重或乘数(m,∑m=1)。成本敏感模板可以具有mt=0.2,mp=0.2,mu=0.1,mc=0.5的权重。成本敏感模板还可以使单位成本c具有最高权重。性能敏感模板可以具有mt=0.2,mp=0.1,mu=0.6,mc=1的权重。性能敏感模板可以使总正常工作时间u具有最高权重,但单位成本u和功率/能量消耗p具有更低的相对权重。高可用性模板可以具有mt=0.1,mp=0.1,mu=0.7,mc=0.1的权重。高可用性模板可以使总正常工作时间u具有最高权重,但是使所有其他属性具有更低的相对权重。平衡模板可以具有mt=0.25,mp=0.25,mu=0.25,mc=0.25的平衡的权重。
在某些示例中,在POD管理器230处的资源管理器201可以包括用于使用示例等式(2)并在i上取最低评分来确定每个可用的可配置计算资源的加权总和分配评分的逻辑和/或特征。
等式(2):
图3展示了示例分配评分和排名300。在某些示例中,基于CPU、存储器、存储装置和nw I/O的属性(t、p、u和c)的任意值,可以使用示例等式(2)生成CPU排名310、存储器排名320、存储装置排名330和网络排名340。针对这些示例,每种类型的分离物理元件的最低分配评分采用黑体,从而指示相似类型的可用的可配置计算资源当中的最高排名。例如,具有最低评分/最高排名的CPU具有为cpu-2的通用唯一标识符(UUID),具有最低分配评分/最高排名的存储器具有为mem-1的UUID,具有最低分配评分/最高排名的存储装置具有为stor-4的UUID,并且具有最低分配评分/最高排名的网络I/O具有为nw I/O-4的UUID。
根据某些示例,被确定为需要1个CPU、2GB的RAM、1TB的存储装置和具有10Gb能力的NW I/O装置或NIC的上述请求将包括cpu-2、mem-1、stor-4和nw I/O-4作为可用的可配置计算资源的最高排名配置,并且因而将用于组成逻辑服务器或VM以实现或执行与所述请求相关联的工作负荷。然而,如下文更多提及的,除了纯粹排名之外,其他考虑可能致使从单独的机架中选择具有可配置计算设备的配置(例如,用于满足高可用性要求)。
在某些示例中,当被分配给被组成用于实现或执行工作负荷的逻辑服务器或VM时,所分配的可配置计算资源可以被标记为未保留的或不可用的。针对这些示例,资源管理器(例如,资源管理器201)可以保持资源目录(例如,资源目录203)以便追踪已经分配了哪一部分或哪些部分的池式资源。
图4展示了示例第一逻辑流程。如图4中所示,第一逻辑流程包括流程400。在某些示例中,可以使用如图1和图2中所示的***100和数据中心/机架测量结构200的元件、如图3中所示的排名或例如上述等式(1)或(2)来展示流程400相关的示例操作。所描述的示例操作不限于***100上的实现方式、数据中心/机架测量结构200、图3中所示的排名或示例等式(1)或(2)。
从开始移动至框410(接收资源分配请求),在资源管理器处的逻辑或特征可以接收用于分配可用的可配置计算资源的资源分配请求(例如,从POD管理器)。例如,资源管理器205可以从POD管理器230接收用于对来自资源池120的资源进行分配从而布置一个或多个逻辑服务器或VM的请求。所述请求还可以指示模板,如可能已经从通用云服务210向POD管理器230指示的成本敏感模板、性能敏感模板、高可用性模板或平衡模板。
从框410进行至框420(处理请求),在资源管理器处的逻辑或特征可以基于资源分配请求中所指示的硬件配置对可用的可配置计算资源进行排名。在某些示例中,资源管理器201的逻辑或特征可以使用示例等式(1)和(2)对来自资源池120的可用资源进行排名。同样,来自通用云服务210的请求中所指示的模板可以使所述逻辑或特征如上文针对图3所述的对这些可用的可配置计算资源的每种属性进行加权。
从框420移动至决策框430(是否请求高可用性?),在资源管理器处的逻辑或特征可以确定所接收的分配请求是否指示对高可用性的请求。如果指示了对高可用性的请求,所述过程移动至框450。否则,所述过程移动至框440。
在某些示例中,来自通用云服务210的请求可能已经通过高可用性模板指示高可用性。针对这些示例,所述分配请求可能最初已经由POD管理器230以OVF格式接收,所述格式包括用于指示对高可用性资源的需要的标志指示符。针对这些示例,POD管理器230可以将这个指示符转发至资源管理器201。资源管理器201可以然后应用所述高可用性模板来使所述逻辑或特征对可用的可配置计算资源的每种运行属性进行加权。
从决策框430进行至框440(基于评分在任何地方进行分配),由于未指示高可用性,在资源管理器处的所述逻辑或特征可以从任何机架当中分配可配置资源的一部分。在某些示例中,在资源管理器201处的逻辑和/或特征可以对来自资源池120的资源进行分配,所述资源池可以从一个或多个机架112-1至112-n拉取可用资源。
根据某些示例,资源管理器可以包括用于更新资源目录以指示可配置计算资源的分配的逻辑或特征。例如,资源管理器201可以更新资源目录203。
从决策框430移动至框450(在不同机架中分配最佳评分),由于指示了高可用性,在资源管理器处的所述逻辑或特征为可配置资源分配来自不同机架的最佳评分。在某些示例中,资源管理器201可以分配来自不同机架的资源以避免机架层硬件故障的可能性。所述资源甚至可以根据现有SLA被分配给另一数据中心,并监督前述机架中的存储装置暴露。以这种方式,针对布置或组成的逻辑服务器或VM的高度可用服务和输入/输出(IO)受限作业可以被优先分配在单独的机架中,从而避免同一存储装置过载并且使性能最大化。然后所述过程可以结束。
在某些示例中,资源管理器可以包括用于更新资源目录以指示可配置计算资源的分配的逻辑或特征。例如,资源管理器201可以更新资源目录203。
根据某些示例,示例等式(3)可以用于确定何时可配置计算资源被超过或者运行于最大运行条件以上。
等式(3):
针对这些示例,取决于符号,权重mi可以被解释为每个资源的或者奖励或者罚款,并且原则上可以是通知资源管理器将资源重新分配在别处的方式,例如,由于资源枯竭或计划维护而动态迁移。在数据中心中分离硬件的示例情况下,迁移可以相当于仅用新的资源交换已消耗的资源。在这种场景下,动态迁移潜在地可能破坏性更小。
图5展示了示例第二逻辑流程。如图5中所示,第二逻辑流程包括流程500。在某些示例中,可以使用如图1和图2中所示的***100和数据中心/机架测量结构200的元件、上述示例等式(1)至(3)或图4中所示的流程400来展示流程500相关的示例操作。然而,所描述的示例操作不限于***100上的实现方式、数据中心/机架测量结构200、图3中所示的排名、上述示例等式(1)至(3)或流程400。
从开始移动至框510(最初分配),在资源管理器处的逻辑或特征可以执行将可配置计算资源最初分配给逻辑服务器或VM从而实现、执行或运行工作负荷,如上文针对图4中所示的流程400所描述的。例如,资源管理器201可以分配来自资源池120的可配置计算资源,所述可配置计算资源可以包括可以驻留在机架110当中的一个或多个机架中的、属于一种或多种类型(如CPU类型、存储类型、存储器类型、或nw I/O类型)的多个分离物理元件。
从框510进行至框520(监测属性),在资源管理器处的逻辑或特征可能能够对被分配给逻辑服务器或VM以实现、执行或运行工作负荷的每个可配置计算资源的运行属性进行监测。在某些示例中,与属于每种类型的分离物理元件定位在一起的控制器(如图2中所示的用于nw I/O 260-1、CPU 260-2、存储装置260-3和存储器260-4的控制器262-1至262-4)可以具有硬件监测配置文件,所述文件可以由资源管理器201配置。所述硬件监测配置文件可以由资源管理器201配置以用于向这些控制器指定当逻辑服务器或VM实现、执行或运行工作负荷时哪些运行属性要被监测。例如,针对性能运行属性,控制器262-1可以监测nw I/O 260-1的数据吞吐量,控制器262-2可以监测CPU 260-2的CPU利用,控制器262-3可以监测存储器读/写次数,或者控制器262-4可以监测存储装置262-4的输入/输出时延。然后可以由资源管理器201响应于事件、警告或经过周期轮询来收集这些被监测的运行属性。
从框520进行至框530(生成评分),在资源管理器处的逻辑或特征可能能够在逻辑服务器或VM实现或运行工作负荷时基于被监测的运行属性来生成或确定所分配的可配置计算资源的第一加权总和运行评分(weighted sum operating score)。在某些示例中,第一加权总和运行评分S1可以被定义为在其被分配的可配置计算资源集上运行的工作负荷的性能Wj。其中,标号1代表逻辑服务器或VM中组成的用于实现、执行或运行工作负荷j的可配置计算资源的配置。示例等式(4)可以用于确定S1(Wj)的加权总和运行评分:
等式(4):
例如等式(4),Ui(Wj)可以代表资源的利用率,并且Pi(Wj)可以代表配置的属性,这两个参数都应该被最大化。同样,例如等式(4),Ci(Wj)可以代表成本,并且Ei(Wj)可以代表与运行工作负荷Wj相关联的能量消耗,这两个参数都应该被最小化。相关权重(M1、M2、M3、M4)可以是用户定义的乘数,这些乘数可以使某些允许属性评分优先。可以从工作负荷的SLA导出这些相对权重。类似于上文所述的相对权重m1、m2、m3、m4,(M,∑M=1)。
根据某些示例,性能Pi(Wj)可以是专用度量,如每秒事务数、时延或与给定工作负荷j的给定配置i相关的任何适当KPI。
在某些示例中,可以由示例等式(5)来确定利用Ui(Wj):
等式(5):
其中,CPUi、memi、nw I/Oi和stori可以代表给定工作负荷j的给定配置i中所包括的CPU、存储器、nw I/O和存储类型的分离物理元件的平均利用率。
根据某些示例,能量消耗Ei(Wj)可以是运行每逻辑服务器或VM计算的给定工作负荷j所需的聚集功率。可以通过示例等式(6)确定能量消耗Ei(Wj):
等式(6):
其中,每个被利用的可配置计算资源可以乘以给定工作负荷j的给定配置i中所包括的每种不同类型的分离物理元件所消耗的最大VA。在某些示例中,可以从用于给定类型的分离物理元件的控制器获得聚集的功率。例如,可以从控制器262-1获得用于CPU 260-1的聚集功率。
在某些示例中,当在使用给定配置i中所包括的可配置计算资源的同时运行给定工作负荷j时可以使用示例等式(7)确定Ci(Wj):
等式(7):
其中,v是可配置计算资源的货币值(例如,美元)。例如等式(7),分别使用多类分离物理元件如CPU、存储器、nw I/O和存储装置的单位货币值vCPU、vmem、vnwI/O和vstor;并且出于规范化的目的还使用了vcpu_max等。根据某些示例,资源管理器所维持的资源目录可以随着时间被更新从而反映折旧政策。所述折旧政策可以取决于分离物理元件的类型。价格可以是使用每个分离物理元件的零件号网上获取的或者可以是供应商提供的。
从框530进行至决策框540(是否性能良好?),在资源管理器处的逻辑或特征可以使用示例等式(4)对所确定的第一运行和评分S1(Wj)进行排名,并且然后与一个或多个历史加权总和运行评分Si(Wj)进行比较对所述第一运行和评分S1(Wj)进行排名,所述一个或多个历史加权总和运行评分是针对在逻辑服务器或VM中被组成的用于实现、执行或运行工作负荷j的可配置计算资源的一种或多种其他配置i而确定的。针对这些示例,良好性能可以基于满足相关联KPI,该KPI可以是在向或从***或数据中心加上或减去新的可配置计算资源时用于保证合适性能和资源重新分配的工作负荷j的SLA的一部分。如果确定了良好性能(例如,与历史配置相比顺利地满足相关联的KPI或排名),所述过程结束。否则,所述过程移动至框550。
从决策框540移动至框550(修改分配),在资源管理器处的逻辑或特征可以基于第一加权总和运行评分S1(Wj)来修改可配置计算资源的分配,所述第一加权总和运行评分与历史配置相比具有不利的排名,和/或未满足相关联的KPI。修改可以包括选择不同的CPU、存储器、nw I/O或存储装置,以用于在监测、生成第二加权总和运行评分并且然后再次将所述第二运行和评分与历史配置的运行和评分进行比较之后提高所述运行和评分。
图6展示了示例工作负荷模板600。在某些示例中,如图6中所示,工作负荷模板包括对应的应用工作负荷的模板610、620、630、640或650,这些模板用于视频处理、加密/解密、web服务器、内容分发网络或数据库。本披露不限于应用工作负荷的这些示例。考虑了其他应用工作负荷。
对于图6中所示的示例模板,用于具体应用工作负荷的分配的资源可以被安排在工作负荷模板中,所述工作负荷模板反映可以一致地生成高排名加权总和运行评分的那些分离物理元件。例如,对于模板610和视频处理工作负荷,cpu-3、cpu-8、mem-1和nw I/O-5可以代表具有最高或最佳排名加权总和运行评分的最佳配置,所述配置供逻辑服务器或VM基于历史运行属性实现、执行或运行视频处理应用工作负荷。因此,当接收到对视频处理的工作负荷请求时,可以使用模板610。在另一示例中,对于模板640和内容分发网络,cpu-5、cpu-11、mem-1、stor-1、stor-2、nw I/O-7和nw LO-8可以代表具有最高或最佳排名加权总和运行评分的最佳配置,所述配置供逻辑服务器或VM基于历史运行属性实现、执行或运行内容分发网络应用工作负荷。因此,当接收到对内容分发网络应用的工作负荷请求时,可以使用模板640。
图7展示了设备700的示例框图。虽然图7中所示的设备700具有采用某种拓扑的有限数量的元件,可以理解的是,设备700可以包括采用如给定实现方式预期的交替拓扑的更多或更少元件。
设备700可以由保持在计算装置的电路720所支持,所述计算装置包括用于支持资源管理器或控制器分配可配置计算资源的逻辑或特征。电路720可以被安排成用于执行一个或多个软件或固件实现的模块或部件722-a。值得注意的是,“a”和“b”以及“c”和如在此所使用的类似指定符旨在是代表任何正整数的变量。因而,例如,如果实现方式设置了值a=5,则部件722-a的完整软件或固件集可以包括部件722-1、722-2、722-3、722-4或722-5。所呈现的示例并不局限于本上下文中,并且贯穿全文中所使用的不同变量可以代表相同或不同整数值。
根据某些示例,电路720可以包括处理器或处理器电路。电路720可以是计算装置电路的一部分,所述计算装置电路包括处理核(例如,被用作中央处理单元(CPU))。所述包括一个或多个处理核的电路可以是各种可商购处理器中的任一种,包括但不限于:ADM公司速龙毒龙和皓龙处理器;ARM公司应用、嵌入式和安全处理器;高通公司骁龙处理器、IBM公司摩托罗拉公司龙珠英伟达公司(Nvidia)图睿和处理器;IBM公司和索尼公司Cell处理器;因特尔公司赛扬酷睿(2)Duo(Core(2))、酷睿i3(Core i3)、酷睿i5(Core i5)、酷睿i7(Core i7)、安腾奔腾至强 和处理器;以及类似处理器双处理器、多核处理器、以及其他多处理器架构也可以用作电路720的一部分。根据某些示例,电路720还可以是专用集成电路(ASIC),并且至少某些部件722-a可以实现为ASIC的硬件元件。
根据某些示例,设备700可以包括请求部件722-1。请求部件722-1可以由电路720执行,用于接收请求以将可配置计算资源分配给逻辑服务器或VM用于实现、执行或运行工作负荷。针对这些示例,所述请求可以包括在请求705中并且可以指示布置或组成所述一个或多个逻辑服务器或VM可能需要的硬件配置。请求705还可以指示用于设置硬件配置的各种属性的权重或乘数的模板。例如,成本敏感模板、性能敏感模板、高可用性模板或平衡模板可以包括在请求705中,所述模板可以不同地加权可配置计算资源属性,如但不限于温度、功率、利用或成本。
根据某些示例,设备700还可以包括评分部件722-2。评分部件722-2可以被电路720执行,以用于针对所述可配置计算资源中可用于分配给所述逻辑服务器或VM的第一部分确定第一加权总分配评分并且针对所述可配置计算资源中可用于分配给所述逻辑服务器或VM的第二部分确定第二加权总和分配评分。针对这些示例,所述加权总和分配评分可以基于上文所描述的示例等式(1)和(2)。可用的可配置计算资源例如可以取自保持在数据中心的一个或多个机架(例如,***100的机架110)中的分离物理元件,如CPU、存储器、nwI/O或存储装置。资源池信息710可以包括那些可用的可配置计算资源的指示,并且还可以包括关于可配置计算资源属性(如但不限于温度、功率、利用或成本)的信息。在某些示例中,各可用CPU、存储器、nw I/O或存储装置的温度、功率、利用或成本属性保持在所述一个或多个机架中。
在某些示例中,设备700还可以包括排名部件722-3。排名部件722-3可以由电路720执行,用于对由评分部件722-2指派给可用的可配置计算资源的所述第一和第二加权总和分配评分进行比较。所述比较例如可以包括:排名部件722-3使用所述第一和第二加权总和分配评分来相对于第二部分可配置计算资源对第一部分可配置计算资源进行排名。
根据某些示例,设备700还可以包括分配部件722-4。分配部件722-4可以由电路720执行,用于基于排名部件722-3的所述比较将所述第一部分或所述第二部分分配给所述逻辑服务器或VM。针对这些示例,分配部件722-4可以指示:可以被发送至POD管理器和/或发送至与具有被分配的资源的机架相关联的一个或多个RCPM的分配715当中的分配。分配部件722-4还可以更新资源目录从而指示将所述第一或第二部分分配给所述逻辑服务器或VM。
在某些示例中,设备700还可以包括监测部件722-5。监测部件722-5可以由电路720执行,以用于当所述逻辑服务器或VM实现、运行或执行工作负荷时对包括在所分配的第一或第二部分中的每个可配置计算资源的多种运行属性进行监测。
根据某些示例,第一部分可配置计算资源可以被分配部件722-4分配给逻辑服务器或VM用于实现、执行或运行工作负荷。监测部件722-5则可以用于当所述逻辑服务器或VM实现、执行或运行工作负荷时对包括在所述第一部分中的每个可配置计算资源的多种运行属性进行监测。评分部件722-2则可以基于监测部件722-5所监测的所述多种运行属性确定所述第一部分的第一加权总运行评分。针对这些示例,评分部件722-2可以使用示例等式(4)直到(7)来确定所述第一加权总和运行评分。排名部件722-3然后可以与针对之前所分配的用于实现或运行工作负荷的这些可配置计算资源的一个或多个其他部分所确定的一个或多个历史加权总运行评分进行比较对所述第一加权总运行评分进行排名。分配部件722-4然后可以基于所述排名修改所述第一部分中包括哪些可配置计算资源。针对这些示例,分配部件722-4可以指示:对被发送至POD管理器和/或被发送至与具有所分配的或之前分配的资源的机架相关联的所述一个或多个RCPM的分配715中的前述分配的任何修改。
在此包括的是代表用于执行所披露的架构的新颖方面的示例方法的逻辑流程集。然而,出于简化说明的目的,在此所示的一种或多种方法被示为和描述为一系列动作,本领域技术人员将理解和意识到这些方法不局限于动作的顺序。某些动作可以(根据自己)与在此所示和描述的其他动作以不同的顺序和/或同时发生。例如,本领域技术人员将理解和意识到,可以将方法交替地表示为一系列相互联系的状态或事件,如采用状态图。而且,并不是方法中所展示的所有动作都会是新颖实现方式所需要的。
可以采用软件、固件、和/或硬件实现逻辑流程。在软件和固件实施例中,可以由存储在至少一个非瞬态计算机可读介质或机器可读介质(如光学、磁性或半导体存储装置)上的计算机可执行指令实现逻辑流程。实施例并不局限于本上下文中。
图8展示了逻辑流程的示例。如图8中所示,所述逻辑流程包括逻辑流程800。逻辑流程800可以代表由在此所描述的一种或多种逻辑、特征、或装置(如设备700)执行的操作的部分或所有。更确切地,逻辑流程800可以由至少请求部件722-1、评分部件722-2、排名部件722-3或分配部件722-4实现。
根据某些示例,逻辑流程800在框802可以在用于可配置计算资源***的资源管理器接收将这些可配置计算资源分配给逻辑服务器从而实现或执行工作负荷的请求。针对这些示例,所述请求可以由请求部件722-1接收。
在某些示例中,逻辑流程800在框804可以针对所述可配置计算资源的可用于分配给所述逻辑服务器的一部分确定第一加权总和分配评分。针对这些示例,评分部件722-2可以确定所述第一加权总和分配评分。
根据某些示例,逻辑流程800在框806可以针对所述可配置计算资源的可用于分配给所述逻辑服务器的第二部分确定第二加权总和分配评分。针对这些示例,评分部件722-2可以确定所述第二加权总和分配评分。
在某些示例中,在框808处逻辑流程800可以对所述第一和第二加权总和分配评分进行比较,从而相对于所述第二部分对所述第一部分进行排名。针对这些示例,排名部件722-3可以对所述第一和第二加权总和分配评分进行比较,从而相对于对这些部分相对于彼此进行排名。
在某些示例中,在框810处逻辑流程800可以基于所述排名将所述第一部分或所述第二部分分配给所述逻辑服务器。针对这些示例,分配部件722-4可以致使或实现分配。
图9展示了存储介质900的示例。存储介质900可以包括制造物品。在某些示例中,存储介质900可以包括任何非瞬态计算机可读介质或机器可读介质,如光学、磁性或半导体存储装置。存储介质900可以存储各种类型的计算机可执行指令,如用于实现逻辑流程800的指令。计算机可读或机器可读存储介质的示例可以包括能够存储电子数据的任何有形介质,包括易失性存储器或非易失性存储器、可移除存储器或不可移除存储器、可擦除存储器或不可擦除存储器、可写存储器或可重写存储器等。计算机可执行指令的示例可以包括任何适当类型的代码,如源代码、编译代码、翻译码、可执行代码、静态代码、动态代码、面向对象代码、可视代码等。示例并不局限于本上下文中。
图10展示了示例计算平台1000。在某些示例中,如图10中所示,计算平台1000可以包括处理部件1040、其他平台部件或通信接口1060。根据某些示例,计算平台1000可以实现在计算装置中,如***中的服务器,比如支持如上所述的用于分配可配置计算资源的POD管理器和/或资源管理器的数据中心或服务器农场。
根据某些示例,处理部件1040可以执行设备700和/或存储介质900的处理操作或逻辑。处理部件1040可以包括各种硬件元件、软件元件、或两者的组合。硬件元件的示例可以包括:器件、逻辑器件、组件、处理器、微处理器、电路、处理器电路、电路元件(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储单元、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组等。软件元件的示例可以包括:软件组件、程序、应用、计算机程序、应用程序、装置驱动程序、***程序、软件开发程序、机器程序、操作***软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号、或其任意组合。确定是否是使用硬件元件和/或软件元件来实现示例可以根据多个因数而变化,如针对给定的示例所预期的,如预期的计算速率、功率电平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其他设计或性能约束。
在某些示例中,其他平台部件1050可以包括通用计算元件,如一个或多个处理器、多核处理器、协处理器、存储单元、芯片组、控制器、***设备、接口、振荡器、定时装置、视频卡、音频卡,多媒体输入/输出(I/O)部件(例如,数字显示器)、电源等。存储器单元的示例可以包括但不限于各种类型的一个或多个更高速存储器单元形式的计算机可读和机器可读存储介质,如只读存储器(ROM)、随机存取存储器(RAM)、动态RAM(DRAM)、双倍数据速率DRAM(DDRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、快闪存储器、聚合体存储器(如铁电聚合物存储器)、双向存储器、相变或铁电存储器、硅氧氮氧硅(SONOS)存储器、磁性或光学卡、器件阵列(如独立磁盘冗余阵列(RAID))驱动、固态存储器驱动(例如,USB存储器)、固态驱动(SSD)和适用于存储信息的任何其他类型的存储介质。
在某些示例中,通信接口1060可以包括用于支持通信接口的逻辑和/或特征。针对这些示例,通信接口1060可以包括一个或多个通信接口,所述一个或多个通信接口根据各通信协议或标准运行从而通过直接或网络通信连接通信。通过使用一个或多个工业标准(包括子孙和变体)中所描述的通信协议或标准而发生,如与PCI规范相关联的标准,可以产生直接通信。通过使用如在电气与电子工程师协会(IEEE)所颁布的一条或多条以太网标准中所描述的那些通信协议或标准,可以产生网络通信。例如,一条这种以太网标准可以包括IEEE 802.3-2008,2008年12月公开带有冲突检测的载波侦听多路访问(CSMA/CD)接入方法以及物理层规范(下文中称为“IEEE 802.3”)。网络通信还可以根据一种或多种OpenFlow规范(如OpenFlow硬件抽象API规范)而产生。网络通信还可以根据2007年11月公开的无限宽带技术架构规范发行版本1.2.1,卷1(“无限宽带技术架构规范”)而产生。
计算平台1000可以是计算装置的一部分,所述计算装置可以是例如服务器、服务器阵列或服务器农场、web服务器、网络服务器、互联网服务器、工作站、小型计算机、主机计算机、超级计算机、网络电器、网站电器、分布式计算***、多处理器***、基于处理器的***、或其组合。相应地,在计算平台1000的各个实施例中可以包括或者省略在此所描述的计算***1000的功能和/或特定配置,如适当预期的。
可以使用以下各项的任意组合实现计算平台1000的部件和特征:分离电路、专用集成电路(ASIC)、逻辑门和/或单片架构。进一步,在适当的情况下,可以使用微型控制器、可编程逻辑阵列和/或微型处理器或签署的任意组合实现计算平台1000的特征。应注意,硬件、固件和/或软件元件在此可以被共同地或单独地称为“逻辑”或“电路”。
应当理解的是,图10的框图中所示的示例性计算平台1000可以代表许多潜在实现方式的一个功能描述性示例。相应地,对附图中所描绘的框功能的划分、省略或包括并不意味着在实施例中将必须划分、省略、或包括用于实现这些功能的硬件部件、电路、软件和/或元件。
可以由至少一个机器可读介质上所存储的表属性指令实现至少一个示例的一个或多个方面,所述指令代表处理器内的各种逻辑,当被机器、计算装置或***读取时所述指令致使所述机器、计算装置或***制作用于实现在此所描述的技术的逻辑。此类表示(称为“IP核”)可以被存储在有形的机器可读介质上并提供给各顾客或制造设施以加载至实际制作所述逻辑或处理器的制作机器中。
可以使用硬件元件、软件元件、或两者的组合来实现各个示例。在某些示例中,硬件元件可以包括:器件、逻辑器件、组件、处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储单元、逻辑门、寄存器、半导体器件、芯片、微芯片、芯片组等。在某些示例中,软件元件可以包括:软件组件、程序、应用、计算机程序、应用程序、***程序、机器程序、操作***软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号、或其任意组合。确定是否使用硬件元件和/或软件元件来实现示例可以根据多个因数而变化,如针对给定的实现方式所预期的,如预期的计算速率、功率电平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其他设计或性能约束。
某些示例可以包括制造商的物品或者至少一个计算机可读介质。计算机可读介质可以包括用于存储逻辑的非瞬态存储介质。在某些示例中,非瞬态存储介质可以包括一种或多种类型的能够存储电子数据的计算机可读存储介质,包括易失性存储器或非易失性存储器、可移除或不可移除存储器、可擦除或不可擦除存储器、可写或可重写存储器等。在某些示例中,所述逻辑可以包括各种软件元件,如软件组件、程序、应用、计算机程序、应用程序、***程序、机器程序、操作***软件、中间件、固件、软件模块、例程、子例程、函数、方法、过程、软件接口、API、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号、或其任意组合。
根据某些示例,计算机可读介质可以包括用于存储或保持指令的非瞬态介质,所述指令当被机器、计算装置或***执行时致使所述机器、计算装置或***执行根据所描述的示例的方法和/或操作。所述指令可以包括任何适当类型的代码,如源代码、编译代码、翻译码、可执行代码、静态代码、动态代码等。可以根据预先定义的计算机语言、形式或语法实现所述指令,用于指导机器、计算装置或***执行某种功能。可以使用任何适当的高级、低级、面向对象、可视、编译和/或翻译编程语言实现所述指令。
一些示例可使用表述“在一个示例中”和“一个示例”及其派生词来描述。这些术语意味着与示例相联系地描述的具体特征、结构或者特性被包含在至少一个示例中。短语“在一个示例中”在本说明书中各地方的出现不一定全都引用相同的示例。
一些示例可以使用表述“耦接”以及“连接”及其派生词来描述。这些术语并不必旨在作为彼此的同义词。例如,使用术语“连接”和/或“耦接”描述可以表明两个或更多元件以直接物理的或电气的方式与彼此接触。然而,术语“耦接”还可以指两个或更多个元件未直接地彼此进行接触,但还是彼此进行合作或交互。
以下示例术语在此所披露的技术的附加示例。
示例1。一种示例设备可以包括:用于可配置计算资源***的控制器的电路。所述设备还可以包括由所述电路执行的请求部件,所述请求部件用于接收将这些可配置计算资源分配给逻辑服务器从而实现或执行工作负荷的请求。所述设备还可以包括由所述电路执行的评分部件,所述评分部件用于针对所述可配置计算资源中可用于分配给所述逻辑服务器的第一部分确定第一加权总和分配评分并且针对所述可配置计算资源中可用于分配给所述逻辑服务器的第二部分确定第二加权总和分配评分。所述设备还可以包括由所述电路执行的排名部件,所述排名部件用于对所述第一和第二加权总和分配评分进行比较。所述设备还可以包括由所述电路执行的分配部件,所述分配部件用于基于所述比较将所述第一部分或所述第二部分分配给所述逻辑服务器。
示例2。如示例1所述的设备,所述分配部件可以更新资源目录从而指示将所述第一或第二部分分配给所述逻辑服务器。
示例3。如示例1所述的设备,所述可配置计算资源***可以包括保持在多个机架中的所述可配置资源。
示例4。如示例3所述的设备,所述第一和第二部分可配置计算资源可以包括对应的第一和第二配置,所述第一和第二配置各自具有属于一种或多种类型的多个分离物理元件。所述评分部件可以基于物理地位于所述多个机架当中的不同机架中的同一类型的分离物理元件确定所述第一和第二加权评分。所述分配部件用于基于所述排名部件对所述第一和第二加权评分的比较并且基于指示分配的所述请求来分配所述可配置计算资源的所述第一部分或所述第二部分从而满足高可用性要求。
示例5。如示例4所述的设备,所述一种或多种类型可以包括中央处理单元类型、存储器类型、存储类型或网络输入/输出类型。
示例6。如示例1所述的设备,所述第一和第二加权评分可以是基于所述请求是否指示将基于以下各项之一分配所述可配置计算资源进行加权的:成本敏感模板、性能敏感模板、高可用性模板或平衡模板。
示例7。如示例6所述的设备,所述第一和第二加权总和分配评分是可以是由所述评分部件基于所述可配置计算资源的对应第一和第二部分中所包括的每个可配置计算资源的多种分配属性而确定的。
示例8。如示例7所述的设备,所述多种分配属性可以包括运行温度、功率/能量消耗、以小时为单位的总正常运行时间或者单位成本。
示例9。如示例8所述的设备,所述成本敏感模板可以使得单位成本在所述多种分配属性当中具有最高权重,或者所述性能敏感和高可用性模板可以使得总正常运行时间在所述多种分配属性当中具有最高权重。
示例10。如示例1所述的设备,所述分配部件可以将所述可配置计算资源的所述第一部分分配给所述逻辑服务器以实现或执行工作负荷。所述设备还可以包括由所述电路执行的监测部件,所述监测部件用于当所述逻辑服务器实现或执行工作负荷时对包括在所述第一部分中的每个可配置计算资源的多种运行属性进行监测。所述评分部件可以基于所述监测部件所监测的所述多种运行属性确定所述第一部分的第一加权总和运行评分。所述排名部件可以与针对之前被分配用于实现或执行工作负荷的所述可配置计算资源的一个或多个其他部分所确定的一个或多个历史加权总和运行评分进行比较对所述加权总和运行评分进行排名。所述分配部件可以基于所述排名修改所述第一部分中包括哪些可配置计算资源。
示例11。如示例10所述的设备,所述第一加权总和运行评分可以是基于针对工作负荷的服务级别协议进行加权的。
示例12。如示例1所述的设备,所述第一和第二部分可配置计算资源可以包括对应的第一和第二配置,所述第一和第二配置各自具有属于一种或多种类型的多个分离物理元件。所述一种或多种类型可以包括中央处理单元类型、存储器类型、存储类型或网络输入/输出类型。
示例13。如示例1所述的设备还可以包括:耦合至所述电路的数字显示器,用于呈现用户界面视图。
示例14。一种示例方法可以包括:在用于可配置计算资源***的资源管理器处接收将所述可配置计算资源分配给逻辑服务器从而实现或执行工作负荷的请求。所述方法还可以包括:针对所述可配置计算资源中可用于分配给所述逻辑服务器的第一部分确定第一加权总和分配评分。所述方法还可以包括:针对所述可配置计算资源中可用于分配给所述逻辑服务器的第二部分确定第二加权总和分配评分。所述方法还可以包括:对所述第一和第二加权总和分配评分进行比较,从而相对于所述第二部分对所述第一部分进行排名。所述方法还可以包括:基于所述排名将所述第一部分或所述第二部分分配给所述逻辑服务器。
示例15。如示例14所述的方法还可以包括更新资源目录从而指示将所述第一或第二部分分配给所述逻辑服务器。
示例16。如示例14所述的方法,所述可配置计算资源***可以包括保持在多个机架中的所述可配置资源。
示例17。如示例16所述的方法,所述第一和第二部分可配置计算资源可以包括对应的第一和第二配置,所述第一和第二配置各自具有属于一种或多种类型的多个分离物理元件。所述方法还可以包括:基于物理地位于所述多个机架当中的不同机架中的同一类型的分离物理元件确定所述第一和第二加权评分。所述方法还可以包括:基于对所述第一和第二加权评分的比较并且基于指示分配的所述请求来分配所述可配置计算资源的所述第一部分或所述第二部分从而满足高可用性要求。
示例18。如示例17所述的方法,所述一种或多种类型可以包括中央处理单元类型、存储器类型、存储类型或网络输入/输出类型。
示例19。如示例14所述的方法,所述第一和第二加权评分可以是基于所述请求是否指示将基于以下各项之一分配所述可配置计算资源进行加权的:成本敏感模板、性能敏感模板、高可用性模板或平衡模板。
示例20。如示例19所述的方法,所述第一和第二加权总和分配评分是可以基于所述可配置计算资源的对应第一和第二部分中所包括的每个可配置计算资源的多种分配属性。
示例21。如示例20所述的方法,所述多种分配属性可以包括运行温度、功率/能量消耗、以小时为单位的总正常运行时间或者单位成本。
示例22。如示例21所述的方法,所述成本敏感模板可以使得单位成本在所述多种分配属性当中具有最高权重,或者所述性能敏感和高可用性模板可以使得总正常运行时间在所述多种分配属性当中具有最高权重。
示例23。如示例14所述的方法还可以包括将所述可配置计算资源的所述第一部分分配给所述逻辑服务器以实现或执行工作负荷。所述方法还可以包括:用于当所述逻辑服务器实现或执行工作负荷时对包括在所述第一部分中的每个可配置计算资源的多种运行属性进行监测。所述方法还可以包括:基于所述多种受监测的运行属性确定所述第一部分的第一加权总和运行评分。所述方法还可以包括:与针对之前被分配用于实现或执行工作负荷的所述可配置计算资源的一个或多个其他部分而确定的一个或多个历史加权总和运行评分进行比较来对所述第一加权总和运行评分进行排名。所述方法还可以包括:基于所述排名修改所述第一部分中包括哪些可配置计算资源。
示例24。如示例23所述的方法,可以基于针对工作负荷的服务级别协议对所述第一加权总和运行评分进行加权。
示例25。如示例14所述的方法,所述第一和第二部分可配置计算资源可以包括对应的第一和第二配置,所述第一和第二配置各自具有多个属于一种或多种类型的多个分离物理元件,所述一种或多种类型可以包括中央处理单元类型、存储器类型、存储类型或网络输入/输出类型。
示例26。示例至少一个机器可读介质可以包括多条指令,所述指令响应于被***执行致使所述***实施根据示例14至25中任意一项所述的方法。
示例27。示例设备可以包括用于执行示例14至25中任意一项所述的方法的装置。
示例28。示例至少一个机器可读介质可以包括多条指令,所述指令响应于被与可配置计算资源***定位在一起的电路执行致使所述电路:接收将所述可配置计算资源分配给逻辑服务器从而实现或执行工作负荷的请求。所述指令还可以致使所述电路:针对所述可配置计算资源中可用于分配给所述逻辑服务器的第一部分确定第一加权总和分配评分。所述指令还可以致使所述电路:针对所述可配置计算资源中可用于分配给所述逻辑服务器的第二部分确定第二加权总和分配评分。所述述指令还可以致使所述电路:对所述第一和第二加权总和分配评分进行比较,从而相对于所述第二部分对所述第一部分进行排名。所述述指令还可以致使所述电路:基于所述排名将所述第一部分或所述第二部分分配给所述逻辑服务器。
示例29。如示例28所述的至少一个机器可读介质,所述指令可以进一步致使所述电路:更新资源目录从而指示将所述第一或第二部分分配给所述逻辑服务器。
示例30。如示例28所述的至少一种机器可读介质,所述可配置计算资源***可以包括保持在多个机架中的所述可配置资源。
示例31。如示例30所述的至少一个机器可读介质,所述第一和第二部分可配置计算资源可以包括对应的第一和第二配置,所述第一和第二配置各自具有属于一种或多种类型的多个分离物理元件,所述指令用于进一步致使所述电路:基于物理地位于所述多个机架当中的不同机架中的同一类型的分离物理元件确定所述第一和第二加权评分。所述指令还可以致使:基于对所述第一和第二加权评分的比较并且基于指示分配的所述请求来分配所述可配置计算资源的所述第一部分或所述第二部分,从而满足高可用性要求。
示例32。如示例31所述的至少一种机器可读介质,所述一种或多种类型可以包括中央处理单元类型、存储器类型、存储器类型或网络输入/输出类型。
示例33。如示例28所述的至少一种机器可读介质,所述第一和第二加权评分可以是基于所述请求是否指示将基于以下各项之一分配所述可配置计算资源进行加权的:成本敏感模板、性能敏感模板、高可用性模板或平衡模板。
示例34。如示例33所述的至少一种机器可读介质,所述第一和第二加权总和分配评分可以是基于所述可配置计算资源的对应第一和第二部分中所包括的每个可配置计算资源的多种分配属性的。
示例35。如示例34所述的至少一种机器可读介质,所述多种分配属性可以包括运行温度、功率/能量消耗、以小时为单位的总正常运行时间或者单位成本。
示例36。如示例35所述的至少一个机器可读介质,所述成本敏感模板可以使得单位成本在所述多种分配属性当中具有最高权重,或者所述性能敏感和高可用性模板可以使得总正常运行时间在所述多种分配属性当中具有最高权重。
示例37。如示例28所述的至少一个机器可读介质,所述指令可以进一步致使所述电路:将所述可配置计算资源的所述第一部分分配给所述逻辑服务器以实现或执行工作负荷。所述指令还可以致使所述电路:当所述逻辑服务器实现或执行工作负荷时,对包括在所述第一部分中的每个可配置计算资源的多种运行属性进行监测。所述指令还可以致使所述电路:基于所述多种受监测的运行属性确定所述第一部分的第一加权总和运行评分。所述指令还可以致使所述电路:与针对之前被分配用于实现或执行工作负荷的所述可配置计算资源的一个或多个其他部分而确定的一个或多个历史加权总和运行评分进行比较来对所述第一加权总和运行评分进行排名。所述指令还可以致使所述电路:基于所述排名修改所述第一部分中包括哪些可配置计算资源。
示例38。如示例37所述的至少一个机器可读介质,所述第一加权总和运行评分可以是基于针对工作负荷的服务级别协议进行加权的。
示例39。如示例28所述的至少一个机器可读介质,所述第一和第二部分可配置计算资源可以包括对应的第一和第二配置,所述第一和第二配置各自具有多个属于一种或多种类型的多个分离物理元件,所述一种或多种类型可以包括中央处理单元类型、存储器类型、存储类型或网络输入/输出类型。
强调的是,提供以下摘要以允许读者快速确定本技术披露的本质。基于其将不被用于解释或者限制权利要求书的范围或者含义的理解提交该摘要。此外,在前一个详细描述中,可以看到,出于将本披露连成一体的目的而将各种特征一起组合在单个示例中。本披露的方法并不被解释为反映以下意图:所要求保护的示例需要比每项权利要求中明确表述的特征更多的特征。而是被解释为:以下的权利要求书反映了本发明的主题在于比单个披露的示例的全部特征少。因此,以下的权利要求书据此被并入详细的说明书中,其中,每项权利要求独立自主地作为单独的示例。在所附权利要求书中,术语“包括(including)”和“其中(in which)”分别用作对应术语“包括(comprising)”和“其中(wherein)”的易懂的英文等价词。此外,术语“第一”、“第二”、“第三”等仅用作标签,且不旨在对它们的对象施加数字要求。
虽然已经使用特定于结构特征和/或方法行为的语言描述了主题,将理解的是,所附权利要求书中所定义的主题不一定限于上文所述的特定特征或行为。相反,上文所描述的特定特征和行为被作为实现权利要求书的示例形式而披露。
Claims (25)
1.一种用于分配可配置计算资源的设备,包括:
用于可配置计算资源***的控制器的电路;
由所述电路执行的请求部件,所述请求部件用于接收将所述可配置计算资源分配给逻辑服务器从而实现或执行工作负荷的请求;
由所述电路执行的评分部件,所述评分部件用于针对所述可配置计算资源中可用于分配给所述逻辑服务器的第一部分生成第一加权总和分配评分并且针对所述可配置计算资源中可用于分配给所述逻辑服务器的第二部分生成第二加权总和分配评分,所述可配置计算资源的所述第一部分和所述第二部分包括相应的第一配置和第二配置,所述第一配置和所述第二配置各自具有属于一种或多种类型的多个分离物理元件,相应的第一加权总和分配评分和第二加权总和分配评分使用用于相应的第一配置和第二配置中所包括的各个物理分离元件的相应的性能值来生成,相应的性能值分别乘以用于各个分离物理元件的对应分配属性的多个加权因子随后被求和以生成相应的所述第一加权总和分配评分和所述第二加权总和分配评分;
由所述电路执行的排名部件,所述排名部件用于对所述第一加权总和分配评分和所述第二加权总和分配评分进行比较;以及
由所述电路执行的分配部件,所述分配部件用于基于所述比较将所述第一部分或所述第二部分分配给所述逻辑服务器。
2.如权利要求1所述的设备,所述分配部件用于更新资源目录从而指示将所述第一部分或所述第二部分分配给所述逻辑服务器。
3.如权利要求1所述的设备,所述可配置计算资源***包括保持在多个机架中的所述可配置计算资源。
4.如权利要求3所述的设备,包括:
所述评分部件用于基于物理地位于所述多个机架当中的不同机架中的同一类型的分离物理元件来生成所述第一加权总和分配评分和所述第二加权总和分配评分;以及
所述分配部件用于基于通过所述排名部件对所述第一加权总和分配评分和所述第二加权总和分配评分的比较并且基于指示分配的所述请求来分配所述可配置计算资源的所述第一部分或所述第二部分从而满足高可用性要求。
5.如权利要求1所述的设备,所述一种或多种类型包括中央处理单元类型、存储器类型、存储类型或网络输入/输出类型。
6.如权利要求1所述的设备,用于各个分离物理元件的对应分配属性的多个加权因子基于所述请求是否指示将基于以下各项之一分配所述可配置计算资源:成本敏感模板、性能敏感模板、高可用性模板或平衡模板。
7.如权利要求1所述的设备,其中,所述排名部件用于相对于所述第二部分对所述第一部分进行排名,并且其中所述分配部件用于基于所述排名将所述第一部分或所述第二部分分配给所述逻辑服务器。
8.如权利要求1所述的设备,各个分离物理元件的分配属性包括运行温度、功率/能量消耗、以小时为单位的总正常运行时间或者单位成本。
9.如权利要求6所述的设备,所述成本敏感模板用于使得单位成本具有在用于各个分离物理元件的对应分配属性的多个加权因子之中的最高权重,或者所述性能敏感模板和所述高可用性模板用于使得总正常运行时间具有在用于各个分离物理元件的对应分配属性的多个加权因子之中的最高权重。
10.如权利要求1所述的设备,包括:
所述分配部件用于将所述可配置计算资源的所述第一部分分配给所述逻辑服务器以实现或执行所述工作负荷;
由所述电路执行的监测部件,所述监测部件用于当所述逻辑服务器实现或执行所述工作负荷时对包括在所述第一部分中的每个可配置计算资源的多种运行属性进行监测;
所述评分部件用于基于由所述监测部件所监测的所述多种运行属性生成所述第一部分的第一加权总和运行评分;
所述排名部件用于与针对之前被分配用于实现或执行所述工作负荷的所述可配置计算资源的一个或多个其他部分而确定的一个或多个历史加权总和运行评分进行比较来对所述加权总和运行评分进行排名;以及
所述分配部件用于基于所述排名修改所述第一部分中包括哪些可配置计算资源。
11.如权利要求10所述的设备,所述第一加权总和运行评分是基于针对所述工作负荷的服务级别协议进行加权的。
12.如权利要求10所述的设备,所述第一加权总和运行评分是Si(Wj),并且其中,“i”表示由所述逻辑服务器实现或执行的工作负荷,“Ui(Wj)”表示当所述逻辑服务器实现或执行所述工作负荷时所述第一配置中所包括的资源的利用率运行属性,“Pi(Wj)”表示当所述逻辑服务器实现或执行所述工作负荷时所述第一配置的性能运行属性,“Ci(Wj)”表示与所述逻辑服务器实现或执行所述工作负荷相关联的成本的成本运行属性,“Ei(Wj)”表示当所述逻辑服务器实现或执行所述工作负荷时能耗的能量运行属性,并且“M1、M2、M3、M4”表示用于使相应的利用率运行属性、性能运行属性、成本运行属性和能耗运行属性优先的单独的乘数。
13.一种用于分配可配置计算资源的方法,包括:
在用于可配置计算资源***的资源管理器处接收将所述可配置计算资源分配给逻辑服务器从而实现或执行工作负荷的请求;
针对所述可配置计算资源中可用于分配给所述逻辑服务器的第一部分生成第一加权总和分配评分;
针对所述可配置计算资源中可用于分配给所述逻辑服务器的第二部分生成第二加权总和分配评分,所述可配置计算资源的所述第一部分和所述第二部分包括相应的第一配置和第二配置,所述第一配置和所述第二配置各自具有属于一种或多种类型的多个分离物理元件,相应的第一加权总和分配评分和第二加权总和分配评分使用用于相应的第一配置和第二配置中所包括的各个物理分离元件的相应的性能值来生成,相应的性能值分别乘以用于各个分离物理元件的对应分配属性的多个加权因子随后被求和以生成相应的所述第一加权总和分配评分和所述第二加权总和分配评分;
对所述第一加权总和分配评分和所述第二加权总和分配评分进行比较,从而相对于所述第二部分对所述第一部分进行排名;以及
基于所述排名将所述第一部分或所述第二部分分配给所述逻辑服务器。
14.如权利要求13所述的方法,包括:
更新资源目录从而指示将所述第一部分或所述第二部分分配给所述逻辑服务器。
15.如权利要求13所述的方法,所述可配置计算资源***包括保持在多个机架中的所述可配置计算资源。
16.如权利要求15所述的方法,包括:
基于物理地位于所述多个机架当中的不同机架中的同一类型的分离物理元件来生成所述第一加权总和分配评分和所述第二加权总和分配评分;以及
基于通过所述排名对所述第一加权总和分配评分和所述第二加权总和分配评分的比较并且基于指示分配的所述请求来分配所述可配置计算资源的所述第一部分或所述第二部分从而满足高可用性要求。
17.如权利要求13所述的方法,所述一种或多种类型包括中央处理单元类型、存储器类型、存储类型或网络输入/输出类型。
18.如权利要求13所述的方法,用于各个分离物理元件的对应分配属性的多个加权因子基于所述请求是否指示将基于以下各项之一分配所述可配置计算资源:成本敏感模板、性能敏感模板、高可用性模板或平衡模板。
19.如权利要求13所述的方法,所述第一加权总和运行评分是基于针对所述工作负荷的服务级别协议进行加权的。
20.如权利要求13所述的方法,各个分离物理元件的分配属性包括运行温度、功率/能量消耗、以小时为单位的总正常运行时间或者单位成本。
21.如权利要求18所述的方法,所述成本敏感模板用于使得单位成本具有在用于各个分离物理元件的对应分配属性的多个加权因子之中的最高权重,或者所述性能敏感模板和所述高可用性模板用于使得总正常运行时间具有在用于各个分离物理元件的分配属性的对应的多个加权因子之中的最高权重。
22.如权利要求13所述的方法,包括:
将所述可配置计算资源的所述第一部分分配给所述逻辑服务器以实现或执行所述工作负荷;
当所述逻辑服务器实现或执行所述工作负荷时对包括在所述第一部分中的每个可配置计算资源的多种运行属性进行监测;
基于所述多种受监测的运行属性生成所述第一部分的第一加权总和运行评分;
与针对之前被分配用于实现或执行所述工作负荷的所述可配置计算资源的一个或多个其他部分而确定的一个或多个历史加权总和运行评分进行比较来对所述第一加权总和运行评分进行排名;以及
基于所述排名修改所述第一部分中包括哪些可配置计算资源。
23.如权利要求22所述的方法,所述第一加权总和运行评分是Si(Wj),并且其中,“i”表示由所述逻辑服务器实现或执行的工作负荷,“Ui(Wj)”表示当所述逻辑服务器实现或执行所述工作负荷时所述第一配置中所包括的资源的利用率运行属性,“Pi(Wj)”表示当所述逻辑服务器实现或执行所述工作负荷时所述第一配置的性能运行属性,“Ci(Wj)”表示与所述逻辑服务器实现或执行所述工作负荷相关联的成本的成本运行属性,“Ei(Wj)”表示当所述逻辑服务器实现或执行所述工作负荷时能耗的能量运行属性,并且“M1、M2、M3、M4”表示用于使相应的利用率运行属性、性能运行属性、成本运行属性和能耗运行属性优先的单独的乘数。
24.包括多条指令的至少一种机器可读介质,所述指令响应于由***执行而使所述***实施如权利要求13至23的任一项所述的方法。
25.一种用于分配可配置计算资源的设备,所述设备包括用于执行如权利要求13至23的任一项所述的方法的装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201461945753P | 2014-02-27 | 2014-02-27 | |
US201461945757P | 2014-02-27 | 2014-02-27 | |
US61/945,753 | 2014-02-27 | ||
US61/945,757 | 2014-02-27 | ||
PCT/US2015/017101 WO2015130613A1 (en) | 2014-02-27 | 2015-02-23 | Techniques to allocate configurable computing resources |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105940378A CN105940378A (zh) | 2016-09-14 |
CN105940378B true CN105940378B (zh) | 2019-08-13 |
Family
ID=54009529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580006049.0A Active CN105940378B (zh) | 2014-02-27 | 2015-02-23 | 用于分配可配置计算资源的技术 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10120727B2 (zh) |
EP (1) | EP3111329A4 (zh) |
KR (1) | KR101815148B1 (zh) |
CN (1) | CN105940378B (zh) |
RU (1) | RU2646323C2 (zh) |
WO (1) | WO2015130613A1 (zh) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10120727B2 (en) | 2014-02-27 | 2018-11-06 | Intel Corporation | Techniques to allocate configurable computing resources |
FR3023108A1 (fr) * | 2014-06-30 | 2016-01-01 | Orange | Procede et dispositif d'orchestration de ressources |
US10148527B2 (en) * | 2014-12-05 | 2018-12-04 | Accenture Global Services Limited | Dynamic network component placement |
US11336519B1 (en) * | 2015-03-10 | 2022-05-17 | Amazon Technologies, Inc. | Evaluating placement configurations for distributed resource placement |
US10362099B2 (en) * | 2015-06-23 | 2019-07-23 | Amazon Technologies, Inc. | Multiple instance types serving a single workload or application |
US9959146B2 (en) * | 2015-10-20 | 2018-05-01 | Intel Corporation | Computing resources workload scheduling |
CN105630603A (zh) * | 2015-12-17 | 2016-06-01 | 北京华胜天成科技股份有限公司 | 部署虚拟服务器的方法和装置 |
US10305974B2 (en) * | 2015-12-23 | 2019-05-28 | Intel Corporation | Ranking system |
WO2017113344A1 (zh) * | 2015-12-31 | 2017-07-06 | 华为技术有限公司 | 一种软件定义数据中心及其中的服务集群的部署方法 |
CN106982241A (zh) * | 2016-01-18 | 2017-07-25 | 中兴通讯股份有限公司 | 资源管理方法、装置和*** |
US10277911B2 (en) * | 2016-01-22 | 2019-04-30 | Wowza Media Systems, LLC | Video processing workload management |
US10877816B2 (en) * | 2016-04-20 | 2020-12-29 | Samsung Electronics Co., Ltd. | Optimal task scheduler |
US10067785B1 (en) * | 2016-06-29 | 2018-09-04 | Amazon Technologies, Inc. | Event driven virtual machine instance pool balancing |
US10749782B2 (en) * | 2016-09-10 | 2020-08-18 | Splunk Inc. | Analyzing servers based on data streams generated by instrumented software executing on the servers |
US10423459B1 (en) * | 2016-09-23 | 2019-09-24 | Amazon Technologies, Inc. | Resource manager |
US10805238B1 (en) | 2016-09-23 | 2020-10-13 | Amazon Technologies, Inc. | Management of alternative resources |
US10666569B1 (en) | 2016-09-23 | 2020-05-26 | Amazon Technologies, Inc. | Journal service with named clients |
US10509680B2 (en) * | 2016-11-23 | 2019-12-17 | Vmware, Inc. | Methods, systems and apparatus to perform a workflow in a software defined data center |
CN107276914B (zh) * | 2017-06-01 | 2020-12-01 | 千寻位置网络有限公司 | 基于cmdb的自助资源分配调度的方法 |
CN107172094B (zh) * | 2017-07-05 | 2020-04-17 | 北京并行科技股份有限公司 | 访问超级计算中心上服务程序的方法及*** |
US20190068466A1 (en) * | 2017-08-30 | 2019-02-28 | Intel Corporation | Technologies for auto-discovery of fault domains |
US20190166032A1 (en) * | 2017-11-30 | 2019-05-30 | American Megatrends, Inc. | Utilization based dynamic provisioning of rack computing resources |
EP3495952A1 (en) * | 2017-12-11 | 2019-06-12 | Accenture Global Solutions Limited | Prescriptive analytics based committed compute reservation stack for cloud computing resource scheduling |
US10922141B2 (en) | 2017-12-11 | 2021-02-16 | Accenture Global Solutions Limited | Prescriptive analytics based committed compute reservation stack for cloud computing resource scheduling |
US10855537B2 (en) * | 2018-04-24 | 2020-12-01 | Vmware, Inc. | Methods and apparatus for template driven infrastructure in virtualized server systems |
US10925191B2 (en) * | 2018-07-25 | 2021-02-16 | Vmware, Inc | Methods and apparatus to manage power delivery for a data center based on predicted power consumption |
US11233847B1 (en) * | 2018-11-21 | 2022-01-25 | Amazon Technologies, Inc. | Management of allocated computing resources in networked environment |
US20200174844A1 (en) * | 2018-12-04 | 2020-06-04 | Huawei Technologies Canada Co., Ltd. | System and method for resource partitioning in distributed computing |
CN109614190A (zh) * | 2018-12-06 | 2019-04-12 | 成都载信智能科技有限公司 | 资源配置管理方法及平台 |
US10691500B1 (en) * | 2018-12-07 | 2020-06-23 | Virtustream Ip Holding Company Llc | Modeling workloads using micro workloads representing normalized units of resource consumption metrics |
US11782755B2 (en) * | 2019-12-02 | 2023-10-10 | Intel Corporation | Methods, systems, articles of manufacture, and apparatus to optimize thread scheduling |
US11182716B2 (en) * | 2020-01-30 | 2021-11-23 | Coupang Corp. | Cost efficiency tracking for configuration management database |
CN111309479B (zh) * | 2020-02-14 | 2023-06-06 | 北京百度网讯科技有限公司 | 一种任务并行处理的实现方法、装置、设备和介质 |
US11550637B2 (en) * | 2020-02-28 | 2023-01-10 | American Megatrends International, Llc | Node recovery solution for composable and disaggregated environment |
US11429455B2 (en) * | 2020-04-29 | 2022-08-30 | Vmware, Inc. | Generating predictions for host machine deployments |
KR102413922B1 (ko) * | 2020-09-25 | 2022-06-29 | 주식회사 이노그리드 | 복수의 컴퓨팅 노드를 이용한 고성능 클라우드 서비스를 제공하는 단일 가상화 시스템을 위한 소프트웨어 정의 서버 배포 스케줄링 방법 및 그 시스템 |
US11392184B2 (en) | 2020-09-25 | 2022-07-19 | Microsoft Technology Licensing, Llc | Disaggregated computer systems |
CN113079389B (zh) * | 2021-03-23 | 2022-01-25 | 国网江苏省电力有限公司信息通信分公司 | 一种边缘计算环境下的资源自适应调节方法 |
CN113407302B (zh) * | 2021-05-26 | 2023-05-19 | 中国联合网络通信集团有限公司 | 资源管理方法及*** |
CN113934515A (zh) * | 2021-12-17 | 2022-01-14 | 飞诺门阵(北京)科技有限公司 | 一种基于数据域和计算域的容器组调度方法、装置 |
US20230205599A1 (en) * | 2021-12-23 | 2023-06-29 | Rakuten Mobile, Inc. | Method, apparatus, and computer readable medium |
CN114780170B (zh) * | 2022-04-11 | 2023-07-21 | 远景智能国际私人投资有限公司 | 容器资源的配置方法、装置、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102449622A (zh) * | 2009-05-29 | 2012-05-09 | 惠普开发有限公司 | 用于向虚拟机分配服务器资源的***和方法 |
US8266254B2 (en) * | 2008-08-19 | 2012-09-11 | International Business Machines Corporation | Allocating resources in a distributed computing environment |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7707141B1 (en) | 2002-11-27 | 2010-04-27 | Microsoft Corporation | Use of a set based approach to constructing complex queries for managing resources built from a set of simple underlying operations |
US8555286B2 (en) | 2004-10-27 | 2013-10-08 | International Business Machines Corporation | Method, system, and apparatus for establishing a software configurable computing environment |
US8274518B2 (en) | 2004-12-30 | 2012-09-25 | Microsoft Corporation | Systems and methods for virtualizing graphics subsystems |
US8458711B2 (en) * | 2006-09-25 | 2013-06-04 | Intel Corporation | Quality of service implementation for platform resources |
WO2009021060A2 (en) | 2007-08-07 | 2009-02-12 | Ticketmaster, Llc | Systems and methods for providing resources allocation in a networked environment |
US9396042B2 (en) * | 2009-04-17 | 2016-07-19 | Citrix Systems, Inc. | Methods and systems for evaluating historical metrics in selecting a physical host for execution of a virtual machine |
US8880682B2 (en) | 2009-10-06 | 2014-11-04 | Emc Corporation | Integrated forensics platform for analyzing IT resources consumed to derive operational and architectural recommendations |
KR101240811B1 (ko) | 2011-01-24 | 2013-03-11 | 주식회사 엘지씨엔에스 | 가상 서버 할당 시스템 및 방법 |
US8949431B2 (en) | 2011-08-24 | 2015-02-03 | Radware, Ltd. | Method for live migration of virtual machines |
US8959223B2 (en) | 2011-09-29 | 2015-02-17 | International Business Machines Corporation | Automated high resiliency system pool |
US9727383B2 (en) * | 2012-02-21 | 2017-08-08 | Microsoft Technology Licensing, Llc | Predicting datacenter performance to improve provisioning |
US9268590B2 (en) | 2012-02-29 | 2016-02-23 | Vmware, Inc. | Provisioning a cluster of distributed computing platform based on placement strategy |
JP5827594B2 (ja) | 2012-05-17 | 2015-12-02 | 日本電信電話株式会社 | 仮想マシン配置装置および仮想マシン配置方法 |
KR101374120B1 (ko) | 2012-05-31 | 2014-03-13 | 삼성에스디에스 주식회사 | 분석 작업 실행 이력을 이용한 가상 클러스터 구축 시스템 및 방법 |
US10120727B2 (en) | 2014-02-27 | 2018-11-06 | Intel Corporation | Techniques to allocate configurable computing resources |
-
2015
- 2015-02-23 US US15/112,339 patent/US10120727B2/en active Active
- 2015-02-23 KR KR1020167020376A patent/KR101815148B1/ko active IP Right Grant
- 2015-02-23 RU RU2016130887A patent/RU2646323C2/ru not_active IP Right Cessation
- 2015-02-23 CN CN201580006049.0A patent/CN105940378B/zh active Active
- 2015-02-23 WO PCT/US2015/017101 patent/WO2015130613A1/en active Application Filing
- 2015-02-23 EP EP15754976.7A patent/EP3111329A4/en not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8266254B2 (en) * | 2008-08-19 | 2012-09-11 | International Business Machines Corporation | Allocating resources in a distributed computing environment |
CN102449622A (zh) * | 2009-05-29 | 2012-05-09 | 惠普开发有限公司 | 用于向虚拟机分配服务器资源的***和方法 |
Also Published As
Publication number | Publication date |
---|---|
KR101815148B1 (ko) | 2018-01-04 |
EP3111329A4 (en) | 2017-11-15 |
US20160357610A1 (en) | 2016-12-08 |
EP3111329A1 (en) | 2017-01-04 |
RU2646323C2 (ru) | 2018-03-02 |
CN105940378A (zh) | 2016-09-14 |
KR20160102552A (ko) | 2016-08-30 |
RU2016130887A (ru) | 2018-01-31 |
WO2015130613A1 (en) | 2015-09-03 |
US10120727B2 (en) | 2018-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105940378B (zh) | 用于分配可配置计算资源的技术 | |
Abdulhamid et al. | Fault tolerance aware scheduling technique for cloud computing environment using dynamic clustering algorithm | |
EP3545416B1 (en) | Resource management for batch jobs | |
EP3111593B1 (en) | Techniques for computing resource discovery and management | |
CN102759979B (zh) | 一种虚拟机能耗估计方法及装置 | |
US9483288B2 (en) | Method and system for running a virtual appliance | |
WO2016101638A1 (zh) | 一种电力***云仿真平台的运营管理方法 | |
Yang et al. | A cost-based resource scheduling paradigm in cloud computing | |
US10579945B2 (en) | Information technology cost calculation in a software defined data center | |
WO2019108649A1 (en) | Efficiency indexes | |
US20160182320A1 (en) | Techniques to generate a graph model for cloud infrastructure elements | |
US20200026576A1 (en) | Determining a number of nodes required in a networked virtualization system based on increasing node density | |
EP3191948A1 (en) | Computing instance launch time | |
CN105940636B (zh) | 用于为数据中心的工作负荷生成分析模型的方法及服务器 | |
CN112513821A (zh) | 用于scm应用的多实例2lm架构 | |
Yadav et al. | Maintaining container sustainability through machine learning | |
Naskos et al. | Probabilistic model checking at runtime for the provisioning of cloud resources | |
US10007559B1 (en) | Virtual tiering | |
Ravandi et al. | A self-organized resource provisioning for cloud block storage | |
US20230029380A1 (en) | System and method of multilateral computer resource reallocation and asset transaction migration and management | |
Saravanakumar et al. | An Efficient Technique for Virtual Machine Clustering and Communications Using Task‐Based Scheduling in Cloud Computing | |
US20230176859A1 (en) | Automated methods and systems for predicting behavior of a distributed application in response to a proposed change to the distributed application | |
US20240086299A1 (en) | Development platform validation with simulation | |
Voorsluys | Resource provisioning in spot market-based cloud computing environments | |
Ganesan | Energy-efficient cloud infrastructure for IoT big data processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |