CN111580934A - 云计算环境下多租户虚拟机性能一致的资源分配方法 - Google Patents
云计算环境下多租户虚拟机性能一致的资源分配方法 Download PDFInfo
- Publication number
- CN111580934A CN111580934A CN202010401889.XA CN202010401889A CN111580934A CN 111580934 A CN111580934 A CN 111580934A CN 202010401889 A CN202010401889 A CN 202010401889A CN 111580934 A CN111580934 A CN 111580934A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- performance
- user
- resource allocation
- user virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000013468 resource allocation Methods 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 26
- 238000012360 testing method Methods 0.000 claims abstract description 21
- 238000005259 measurement Methods 0.000 claims abstract description 16
- 238000010606 normalization Methods 0.000 claims abstract description 13
- 238000012544 monitoring process Methods 0.000 claims description 33
- 230000008569 process Effects 0.000 claims description 9
- 238000013480 data collection Methods 0.000 claims description 5
- 238000011156 evaluation Methods 0.000 claims description 5
- 238000007637 random forest analysis Methods 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 4
- 238000007726 management method Methods 0.000 claims description 4
- 238000010276 construction Methods 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 238000004458 analytical method Methods 0.000 claims description 2
- 210000000609 ganglia Anatomy 0.000 claims description 2
- 230000000737 periodic effect Effects 0.000 claims description 2
- 238000012549 training Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 10
- 238000012423 maintenance Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
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/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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3414—Workload generation, e.g. scripts, playback
-
- 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
- G06F9/5016—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 the resource being the memory
-
- 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/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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种云计算环境下多租户虚拟机性能一致的资源分配方法。本发明首先针对物理服务器多种性能特征制定不同的归一化衡量指标。然后利用集成基准测试软件包对物理服务器进行基准测试,自动化收集物理服务器不同硬件组件间的资源使用情况。之后根据用户虚拟机的负载特征预测其所需的资源量和性能表现,最后为不同物理服务器上的虚拟机分配不同的硬件资源。本发明能够衡量不同硬件配置的服务器之间的性能等价性,准确估测不同配置下用户虚拟机性能,同时利用虚拟机性能一致性资源分配算法保证不同物理机上用户虚拟机的性能一致性,并通过虚拟机服务等级协议保证算法实时保持云计算用户的服务质量。
Description
技术领域
本发明涉及多租户虚拟机资源分配问题,尤其是具有多种不同服务类型的云计算环境下多租户虚拟机性能一致性的资源分配方法。
背景技术
随着虚拟化技术的出现,原本分散的服务器资源可以被池化,弹性的分配给用户,云计算的商业模式迅速普及,国内外主流的IT公司先后推出了各自的云计算解决方案,如亚马逊EMR、微软Azure HDInsight、阿里云E-MapReduce和百度BMR。但是对于拥有数万台服务器的大型数据中心来说,运维部门在进行服务器采购时很难保证服务器型号的统一,构成云计算平台的基础服务器一般都是异构的,彼此之间的硬件资源的性能可能存在很大差异性。运行在云计算平台中的多租户虚拟机实例间会存在严重的资源竞争问题,造成虚拟机性能的大幅波动和下降。同时数据中心为保证用户服务的高可用性,其虚拟机调度策略可能会将用户的虚拟机部署在多个异构服务器上,致使用户购买的相同配置的虚拟机表现出不同的计算性能,从而导致数据中心出现服务等级违规等商业问题。
此外,与托管虚拟机的基础物理服务器相比,用户购买的虚拟机往往具有更长的使用寿命,用户虚拟机在其正常运行期间可能需要在不同硬件配置的物理服务器上进行托管,而随着数据中心服务器使用年限的增加,数据中心运维部门需要经常更新计算设备,虽然硬件设备的更新换代可以为物理服务器提供更快的处理器、磁盘和网络资源等,但如果不能保证虚拟机迁移前后的性能一致性,势必会导致用户购买的计算服务产生性能波动。对于云服务提供商来说,如何快速衡量虚拟机在不同物理服务器上的性能表现,进行合理的用户虚拟机资源分配,保证异构服务器下虚拟机性能的一致性,不仅关系到用户的服务体验,还涉及云计算服务等级协议(SLA)等商业问题。
发明内容
本发明针对现有技术的不足,提出了一种云计算环境下多租户虚拟机性能一致的资源分配方法。
本发明针对多租户虚拟机性能一致性的资源分配方法为:首先针对物理服务器多种性能特征制定不同的归一化衡量指标,用于量化不同硬件设备之间的性能差距。然后利用集成基准测试软件包对物理服务器进行基准测试,自动化收集物理服务器不同硬件组件间的资源使用情况,并确定哪些组件会成为当前物理机硬件资源的瓶颈,同时基于归一化度量指标给出不同硬件配置下的服务器性能等价性。之后根据用户虚拟机的负载特征预测其所需的资源量和性能表现,最后为不同物理服务器上的虚拟机分配不同的硬件资源。
本发明在进行虚拟机性能预测和资源分配时,设计了多参数联合优化的虚拟机一致性资源分配算法和虚拟机服务等级协议保证算法,通过对运行的用户虚拟机进行实时的周期性监控,合理地调整虚拟机的资源分配方案,避免出现服务等级违规情况。
本发明具体包括以下部分:
步骤1:针对服务器多种性能特征制定不同的归一化衡量指标,利用归一化度量指标,量化不同硬件设备之间的性能差距。
步骤2:整合多种基准测试负载和系统性能监控工具生成集成基准测试软件包,通过负载软件包对目标服务器进行自动化基准测试,并自动化收集服务器不同硬件组件的资源使用情况,确定服务器的硬件资源瓶颈。同时结合归一化度量指标,衡量不同托管服务器间的性能等价性。
步骤3:利用聚类算法对用户虚拟机进行负载特征识别,通过用户虚拟机的历史资源使用情况和物理机监控系统收集的数据,识别出CPU、内存和I/O等资源的使用特征,并根据归一化指标,计算出不同用户虚拟机的资源消耗量。
步骤4:利用本发明提出的虚拟机性能预测框架估测不同资源分配下的用户虚拟机的实时性能。
步骤5:当用户购买的虚拟机分布在不同的物理服务器上时,调用虚拟机性能一致性资源分配算法,通过为虚拟机分配不同的资源,保证不同物理服务器上的用户虚拟机的性能一致性。
步骤6:调用本发明提出的虚拟机服务等级协议保证算法,周期性监控用户虚拟机的性能及其服务等级违规情况,根据用户服务质量变化实时地调整用户虚拟机的资源分配。
本发明的有益效果:本发明能够衡量不同硬件配置的服务器之间的性能等价性,准确估测不同配置下用户虚拟机性能,同时利用虚拟机性能一致性资源分配算法保证不同物理机上用户虚拟机的性能一致性,并通过虚拟机服务等级协议保证算法实时保持云计算用户的服务质量。
附图说明
图1为云计算环境下典型的多租户虚拟机部署场景示意图;
图2为本发明提出的集成基准测试软件包示意图;
图3为本发明提出的基于聚类算法的虚拟机负载特征识别框架示意图;
图4本发明提出的虚拟机性能预测框架示意图;
图5本发明提出的虚拟机性能一致性资源分配流程示意图;
图6本发明提出的虚拟机服务等级协议保证流程示意图。
具体实施方式
以下结合附图对本发明作进一步说明,请参阅图1。本发明主要针对的是如图1所示的部署多租户虚拟机的云计算服务场景。通常提供云计算服务的数据中心会利用多种虚拟化手段对底层的各种硬件资源进行统一的封装,充分整合所有计算和存储资源,抽象为逻辑统一的共享资源池,最终以具有弹性配置的虚拟机的方式向用户提供各种服务。每台虚拟机都具有独立的操作系统,可以独立运行不同的应用程序,云计算用户只需要购买具备相应计算能力的虚拟机即可,而不必关心底层硬件资源的维护。所有物理服务器由数据中心管理控制器统一管理,负载均衡器负责在物理服务器间分配请求和工作负载,避免单台物理服务器因负载压力过大而导致服务性能下降,延长请求响应时间。
虽然虚拟化技术使得多台虚拟机可以共享同一台物理服务器,但是通常情况下,为保证用户服务的高可用性,避免因单台物理服务器损坏而导致用户服务整体不可用,数据中心运维部门一般会将用户购买的虚拟机托管在不同的物理服务器上。由于数据中心的物理服务器在硬件组成上多是异构的,因此部署在异构物理服务器上的相同配置的用户虚拟机往往会表现出不同的计算性能,这会影响用户的正常使用,降低用户的服务质量体验。此外,数据中心服务器硬件设备的更新换代也会影响用户虚拟机的性能表现。因此本发明在进行虚拟机性能一致性资源分配前需要衡量不同物理服务器间的性能等价性。
图2展示了本发明提出的集成基准测试软件包示意图,该软件包包含以下四部分,分别为评测指标、负载组件、监控组件、计算组件,其主要功能如下:
评测指标:包含多种性能评测指标,如CPU/GPU利用率、内存利用率、网络带宽、负载执行时间等,用于量化用户虚拟机和物理服务器当前的性能表现和资源消耗量。
负载组件:集成基准测试软件包整合了多种基准负载工具,可以对服务器内的不同硬件组件进行压力测试,SPECpower用于整机综合测试、Stream用于对内存进行压力测试,FIO用于对硬盘进行压力测试,NVQual用于对GPU进行压力测试。
监控组件:负责监控收集服务器中各个组件的相关信息,集成了如下监控工具(1)Sar是目前Linux中最为全面的系统性能分析工具之一,可以收集的系统信息包括文件读写情况、磁盘I/O、CPU利用率、内存利用率、进程活动等。(2)智能型平台管理接口(Ipmitool)是智能化硬件管理的新一代通用接口标准。监控组件可以使用ipmitool监控服务器能耗相关的系统信息,如入风口温度、CPU温度、电压、风扇工作状态等信息。(3)Ptumon可以监控服务器CPU上Core和Uncore的频率。(4)Ganglia可以云计算平台各个计算节点的系统性能,如:CPU、内存、磁盘利用率,I/O负载、网络带宽情况等。
计算组件:负责将监控组件获取的数据分类并计算,最终生成完整的监控信息报告。
基于该集成基准测试软件包,本发明可以对物理服务器进行自动化基准测试,同时收集物理机不同硬件组件的资源使用情况,筛选出物理服务器的硬件资源瓶颈,并利用初期设定的归一化度量指标衡量出异构服务器间的性能等价性。
通常情况下云平台中虚拟机的性能指标会随着负载任务的变化而变化,在进行虚拟机资源分配时,首先需要识别用户虚拟机的负载特征,确定其各种硬件资源的使用特征,然后依据性能一致性度量指标量化用户虚拟机在不同物理服务器上所需的硬件资源量,最终为每个用户虚拟机分配合适的硬件资源。图3显示了本发明提出的基于上下文聚类算法的虚拟机负载特征识别方法的主要流程,该框架主要由离线建模阶段和在线检测识别阶段组成。在离线建模阶段,该方法会从云计算平台正常运行的用户虚拟机中采集大量的虚拟机实例信息,每个实例由虚拟机上下文信息(包括shuffle数据读取量、远程数据发送量、任务所属阶段类型等)和虚拟机性能指标信息(CPU利用率、内存利用率、磁盘吞吐量等)两部分组成。虚拟机上下文信息可以从用户虚拟机的运行日志中提取,而性能指标数据则可以通过用户虚拟机资源使用情况的历史记录以及物理服务器监控系统收集的数据获取。采集完虚拟机实例信息集合后,首先按照集合中各虚拟机实例包含的上下文属性部分将其聚类为多个上下文类簇,使得每个上下文类簇中包含的虚拟机实例具有相似的上下文信息。然后对每一个上下文类簇创建对应的上下文模型。在线检测识别阶段,首先对需要检测识别的用户虚拟机进行实例信息的采集,随后与离线阶段建立好的上下文模型进行匹配,给出对应的各类硬件资源的使用特征。
图4展示了本发明提出的用户虚拟机性能预测框架示意图,该性能预测框架主要包含数据收集模块、模型构建模块和性能预测模块三部分。首先数据收集模块会利用基准测试软件包对云平台中正常运行的虚拟机进行多种负载的压力测试,并收集虚拟机的性能指标数据和其配置特征,同时数据收集模块也会提取云平台监控系统中保存的用户历史数据,整合生成用户虚拟机配置-性能数据集。模型构建模块会利用该数据集构建基于随机森林算法的虚拟机性能预测模型,性能预测模型可以通过虚拟机的配置特征准确估测其具体的性能表现。此外,模型构建模块可以通过调整训练过程来生成结构不同的随机森林预测模型以适用于不同的用户应用负载。
图5给出了本发明提出的虚拟机性能一致性资源分配流程示意图,算法1展示了本发明设计的虚拟机性能一致性资源分配算法。本发明提出的资源分配方法首先会利用基准测试软件包对物理服务器进行自动化基准测试,收集物理服务器不同硬件资源的使用情况,同时结合归一化度量指标衡量不同硬件配置下的物理服务器之间的性能等价性。然后基于上下文聚类方法对用户虚拟机负载特征进行识别,利用用户虚拟机的历史数据和云计算平台的系统监控数据计算每台用户虚拟机所需的资源量。随后,提出的虚拟机性能一致性资源分配算法会根据聚类识别过程获取的用户虚拟机资源需求量为用户虚拟机分配相应的硬件资源并部署到物理服务器上,同时虚拟机性能预测框架可以准确预估已经部署在物理服务器上的用户虚拟机性能,以诊断当前用户虚拟机是否出现了性能偏差。如果此时用户虚拟机的性能达不到预期要求,则调用动态电压调频等策略优化虚拟机性能,若优化措施无法弥补性能差距,则重新调整当前用户虚拟机的硬件资源分配。
图6给出了本发明提出的虚拟机服务等级协议保证流程示意图,该服务等级协议保证策略会利用虚拟机监控模块对用户虚拟机进行周期性性能监控,当用户虚拟机出现服务等级违规现象时,性能惩罚模块会根据虚拟机违规情况适当地利用动态电压调频等手段优化虚拟机性能,或重新分配用户虚拟机的硬件资源。
综上,步骤(1)到步骤(3)中提出了多租户虚拟机性能一致性度量方法,该方法可以有效地衡量不同物理服务器上多租户虚拟机间的性能等价性。步骤(4)中提出了虚拟机性能预测框架,该性能预测框架可以根据用户虚拟机的配置参数,如核心数、CPU频率、内存大小等,准确估测其性能表现。步骤(5)中提出了保持虚拟机性能一致性的资源分配方法,该方法在进行资源分配时会将用户虚拟机部署在不同的物理服务器上,并根据物理服务器间的性能差距为每台用户虚拟机分配不同的硬件资源量,同时利用动态电压频率调整等手段实现不同物理服务器上用户虚拟机的性能一致性。步骤(6)中提出了虚拟机服务等级协议保证方法,该方法会周期性监控用户虚拟机的性能,对出现性能违规的虚拟机实时调整其资源分配以保证所有用户虚拟机都能满足服务器等级协议。
实施例:
(1)步骤1
针对服务器多种性能特征制定不同的归一化衡量指标,利用归一化度量指标,量化不同硬件设备之间的性能差距:
PCPU=CPUfre*CPUcs
PMem=Memsize*Membw
PDisk=DiskIPOS*Disktp
P=PCPU+PMem+PDisk
其中CPUfre表示处理器主频大小,CPUcs表示缓存大小,Memsize表示内存大小,Membw表示内存带宽,DiskIPOS表示硬盘每秒的I/O请求数,Disktp表示硬盘吞吐量。举例说明:对于CPU一致性指标来说,如果服务器A的处理器主频为3GHz,缓存大小为50M,服务器B的处理器主频为2GHz,缓存大小25M,则服务器A的CPU性能等价于服务器B的3倍。
(2)步骤2
本发明整合了Stream、SPECpower、FIO等多种基准测试负载和性能监控工具,生成了集成基准测试软件包。通过基准测试软件包对物理服务器进行自动化基准测试,并收集物理服务器不同硬件组件的资源使用情况,如:CPU、内存、磁盘等硬件设备,进而确定当前物理服务器的硬件资源瓶颈。同时结合步骤1中给出的归一化度量指标,衡量异构物理服务器间的性能等价性。
(3)步骤3
利用上下文聚类算法对用户虚拟机进行负载特征识别,通过用户虚拟机的历史资源使用情况和物理机监控系统收集的性能数据,识别用户虚拟机在CPU、内存和I/O等硬件资源上的使用特征,并根据归一化指标,计算出用户虚拟机部署在不同配置的物理服务器上时所需要的资源量,根据该资源消耗量为用户虚拟机分配适当的硬件资源。
(4)步骤4
本发明提出的虚拟机性能预测框架会收集用户虚拟机的历史数据和其配置特征,整合生成用户虚拟机配置-性能数据集,并基于随机森林算法构建用户虚拟机性能预测模型。在进行用户虚拟机资源分配时,该性能预测模型将被用来准确估测不同资源分配下的用户虚拟机的实时性能,以检验当前虚拟机是否符合用户的预期要求。
(5)步骤5
本发明提出的虚拟机性能一致性资源分配算法会根据步骤3中聚类识别过程获取的用户虚拟机资源需求量为用户虚拟机分配相应的硬件资源并部署到不同物理服务器上,同时利用步骤4中的虚拟机性能预测框架预估已经部署在物理服务器上的用户虚拟机性能,诊断当前用户虚拟机是否出现了性能偏差。如果此时用户虚拟机的性能达不到预期要求,则尝试通过动态电压调频等策略优化虚拟机性能,若优化措施无法弥补性能差距,则重新调整当前用户虚拟机的硬件资源分配。
(6)步骤6
在保证性能一致性的前提下完成用户虚拟机的资源分配后,本发明还会调用设计的虚拟机服务等级协议保证算法,周期性监控用户虚拟机的性能及其服务等级违规情况,根据用户服务质量变化实时地调整用户虚拟机的资源分配,以保证用户虚拟机能够始终满足服务等级协议的要求。
Claims (8)
1.云计算环境下多租户虚拟机性能一致的资源分配方法,其特征在于该方法包括如下步骤:
步骤(1):针对服务器多种性能特征设定不同的归一化衡量指标,利用归一化度量指标,量化不同硬件设备之间的性能差距;
步骤(2):整合多种基准测试负载和系统性能监控工具生成集成基准测试软件包,通过集成基准测试软件包对目标服务器进行自动化基准测试,并自动化收集服务器不同硬件组件的资源使用情况,确定服务器的硬件资源瓶颈;同时结合归一化度量指标,衡量不同托管服务器间的性能等价性;
步骤(3):利用聚类算法对用户虚拟机进行负载特征识别,通过用户虚拟机的历史资源使用情况和物理机监控系统收集的数据,识别出CPU、内存和I/O的使用特征,并根据归一化度量指标,计算出不同用户虚拟机的资源消耗量;
步骤(4):利用虚拟机性能预测框架估测不同资源分配下的用户虚拟机的实时性能;
步骤(5):当用户购买的虚拟机分布在不同的物理服务器上时,调用虚拟机性能一致性资源分配算法,通过为虚拟机分配不同的资源,保证不同物理服务器上的用户虚拟机的性能一致性;
步骤(6):调用虚拟机服务等级协议保证算法,周期性监控用户虚拟机的性能及其服务等级违规情况,根据用户服务质量变化实时地调整用户虚拟机的资源分配。
2.根据权利要求1所述的云计算环境下多租户虚拟机性能一致的资源分配方法,其特征在于:步骤(2)中所述的集成基准测试软件包包括评测指标、负载组件、监控组件和计算组件;
所述评测指标包含CPU/GPU利用率、内存利用率、网络带宽、负载执行时间,用于量化用户虚拟机和物理服务器当前的性能表现和资源消耗量;
所述负载组件:包括SPECpower,用于整机综合测试、Stream,用于对内存进行压力测试,FIO,用于对硬盘进行压力测试,NVQual,用于对GPU进行压力测试;
所述监控组件:负责监控收集服务器中各个组件的相关信息,集成多种监控工具,包括Sar,用于系统性能分析、Ipmitool,用于智能型平台管理接口、Ptumon,用于监控服务器CPU上Core和Uncore频率、Ganglia,用于计算各个计算节点的系统性能;
所述计算组件负责将监控组件获取的数据分类并计算,最终生成完整的监控信息报告。
3.根据权利要求1所述的云计算环境下多租户虚拟机性能一致的资源分配方法,其特征在于:步骤(3)中利用聚类算法对用户虚拟机进行负载特征识别,具体是:首先进行离线建模,然后在进行在线检测识别;
离线建模:
从云计算平台正常运行的用户虚拟机中采集大量的虚拟机实例信息,每个实例信息由虚拟机上下文信息和虚拟机性能指标信息;
按照集合中各虚拟机实例信息包含的上下文属性部分将其聚类为多个上下文类簇,使得每个上下文类簇中包含的虚拟机实例信息具有相似的上下文信息;
对每一个上下文类簇创建对应的上下文模型;
在线检测识别:
对需要检测识别的用户虚拟机进行实例信息的采集;
与离线阶段建立好的上下文模型进行匹配,给出对应的各类硬件资源的使用特征。
4.根据权利要求3所述的云计算环境下多租户虚拟机性能一致的资源分配方法,其特征在于:
所述的虚拟机上下文信息从用户虚拟机的运行日志中提取,虚拟机性能指标信息通过用户虚拟机资源使用情况的历史记录以及物理服务器监控系统收集的数据获取。
5.根据权利要求1所述的云计算环境下多租户虚拟机性能一致的资源分配方法,其特征在于:步骤(4)中所述的虚拟机性能预测框架包含数据收集模块、模型构建模块和性能预测模块三部分;
数据收集模块,利用集成基准测试软件包对云平台中正常运行的虚拟机进行多种负载的压力测试,并收集虚拟机的性能指标数据和配置特征,同时提取云平台监控系统中保存的用户历史数据,整合生成用户虚拟机配置-性能数据集;
模型构建模块,利用用户虚拟机配置-性能数据集构建基于随机森林算法的虚拟机性能预测模型;
性能预测模型,通过虚拟机的配置特征准确估测其具体的性能表现。
6.根据权利要求5所述的云计算环境下多租户虚拟机性能一致的资源分配方法,其特征在于:所述的模型构建模块还通过调整训练过程来生成结构不同的随机森林预测模型以适用于不同的用户应用负载。
7.根据权利要求1所述的云计算环境下多租户虚拟机性能一致的资源分配方法,其特征在于:步骤(5)中所述的虚拟机性能一致性资源分配算法,具体是:根据步骤3中聚类识别过程获取的用户虚拟机资源需求量为用户虚拟机分配相应的硬件资源并部署到不同物理服务器上,同时利用步骤4中的虚拟机性能预测框架预估已经部署在物理服务器上的用户虚拟机性能,诊断当前用户虚拟机是否出现了性能偏差;如果此时用户虚拟机的性能达不到预期要求,则尝试通过动态电压调频优化虚拟机性能,若优化无法弥补性能差距,则重新调整当前用户虚拟机的硬件资源分配。
8.根据权利要求1所述的云计算环境下多租户虚拟机性能一致的资源分配方法,其特征在于:步骤(6)中所述的虚拟机服务等级协议保证算法,具体是:利用虚拟机监控模块对用户虚拟机进行周期性性能监控,当用户虚拟机出现服务等级违规现象时,性能惩罚模块根据虚拟机违规情况,利用动态电压调频优化虚拟机性能,或重新分配用户虚拟机的硬件资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010401889.XA CN111580934B (zh) | 2020-05-13 | 2020-05-13 | 云计算环境下多租户虚拟机性能一致的资源分配方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010401889.XA CN111580934B (zh) | 2020-05-13 | 2020-05-13 | 云计算环境下多租户虚拟机性能一致的资源分配方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111580934A true CN111580934A (zh) | 2020-08-25 |
CN111580934B CN111580934B (zh) | 2024-08-09 |
Family
ID=72113440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010401889.XA Active CN111580934B (zh) | 2020-05-13 | 2020-05-13 | 云计算环境下多租户虚拟机性能一致的资源分配方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111580934B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112162891A (zh) * | 2020-10-14 | 2021-01-01 | 腾讯科技(深圳)有限公司 | 服务器集群中的性能测试方法及相关设备 |
CN113296905A (zh) * | 2021-03-30 | 2021-08-24 | 阿里巴巴新加坡控股有限公司 | 调度方法、装置、电子设备、存储介质及软件产品 |
CN114035935A (zh) * | 2021-10-13 | 2022-02-11 | 上海交通大学 | 面向多阶段ai云服务的高吞吐异构资源管理方法及器件 |
CN114666224A (zh) * | 2020-12-08 | 2022-06-24 | 中移动信息技术有限公司 | 业务资源容量动态分配方法、装置、设备及存储介质 |
CN115061775A (zh) * | 2022-05-26 | 2022-09-16 | 上海交通大学 | 基于公有云的应用程序协同配置系统、方法及设备 |
CN115150402A (zh) * | 2022-08-30 | 2022-10-04 | 京华信息科技股份有限公司 | 一种云资源分配方法及系统 |
CN115546008A (zh) * | 2022-11-25 | 2022-12-30 | 武汉兴和云网科技股份有限公司 | 一种gpu虚拟化管理系统和方法 |
CN116775313A (zh) * | 2023-08-18 | 2023-09-19 | 浪潮(山东)计算机科技有限公司 | 一种资源分配方法、装置、设备及介质 |
WO2024077727A1 (zh) * | 2022-10-14 | 2024-04-18 | 广西电网有限责任公司 | 一种云计算平台宿主机硬件虚拟化资源分配方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8175863B1 (en) * | 2008-02-13 | 2012-05-08 | Quest Software, Inc. | Systems and methods for analyzing performance of virtual environments |
US20140089509A1 (en) * | 2012-09-26 | 2014-03-27 | International Business Machines Corporation | Prediction-based provisioning planning for cloud environments |
KR20160072465A (ko) * | 2014-12-15 | 2016-06-23 | 한국과학기술원 | 클라우드 컴퓨팅 시스템에서의 가상 머신 성능 계측 방법 |
CN108021429A (zh) * | 2017-12-12 | 2018-05-11 | 上海交通大学 | 一种基于numa架构的虚拟机内存及网卡资源亲和度计算方法 |
EP3441849A1 (en) * | 2017-08-09 | 2019-02-13 | Nagravision S.A. | Pointing input device for personal computer based on fingers ' movements |
CN110417686A (zh) * | 2019-06-12 | 2019-11-05 | 北京因特睿软件有限公司 | 云资源动态调度系统 |
-
2020
- 2020-05-13 CN CN202010401889.XA patent/CN111580934B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8175863B1 (en) * | 2008-02-13 | 2012-05-08 | Quest Software, Inc. | Systems and methods for analyzing performance of virtual environments |
US20140089509A1 (en) * | 2012-09-26 | 2014-03-27 | International Business Machines Corporation | Prediction-based provisioning planning for cloud environments |
KR20160072465A (ko) * | 2014-12-15 | 2016-06-23 | 한국과학기술원 | 클라우드 컴퓨팅 시스템에서의 가상 머신 성능 계측 방법 |
EP3441849A1 (en) * | 2017-08-09 | 2019-02-13 | Nagravision S.A. | Pointing input device for personal computer based on fingers ' movements |
CN108021429A (zh) * | 2017-12-12 | 2018-05-11 | 上海交通大学 | 一种基于numa架构的虚拟机内存及网卡资源亲和度计算方法 |
CN110417686A (zh) * | 2019-06-12 | 2019-11-05 | 北京因特睿软件有限公司 | 云资源动态调度系统 |
Non-Patent Citations (2)
Title |
---|
毛泽湘: "云化业务平台中基于博弈论的资源分配方法研究", 中国博士学位论文全文数据库 (信息科技辑), 15 March 2016 (2016-03-15), pages 139 - 38 * |
潘飞 等: "负载相关的虚拟机放置策略", 小型微型计算机系统, 15 March 2013 (2013-03-15), pages 520 - 524 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112162891A (zh) * | 2020-10-14 | 2021-01-01 | 腾讯科技(深圳)有限公司 | 服务器集群中的性能测试方法及相关设备 |
CN112162891B (zh) * | 2020-10-14 | 2024-05-03 | 腾讯科技(深圳)有限公司 | 服务器集群中的性能测试方法及相关设备 |
CN114666224A (zh) * | 2020-12-08 | 2022-06-24 | 中移动信息技术有限公司 | 业务资源容量动态分配方法、装置、设备及存储介质 |
CN113296905B (zh) * | 2021-03-30 | 2023-12-26 | 阿里巴巴新加坡控股有限公司 | 调度方法、装置、电子设备、存储介质及软件产品 |
CN113296905A (zh) * | 2021-03-30 | 2021-08-24 | 阿里巴巴新加坡控股有限公司 | 调度方法、装置、电子设备、存储介质及软件产品 |
CN114035935A (zh) * | 2021-10-13 | 2022-02-11 | 上海交通大学 | 面向多阶段ai云服务的高吞吐异构资源管理方法及器件 |
CN115061775A (zh) * | 2022-05-26 | 2022-09-16 | 上海交通大学 | 基于公有云的应用程序协同配置系统、方法及设备 |
CN115061775B (zh) * | 2022-05-26 | 2024-06-04 | 上海交通大学 | 基于公有云的应用程序协同配置系统、方法及设备 |
CN115150402B (zh) * | 2022-08-30 | 2022-11-18 | 京华信息科技股份有限公司 | 一种云资源分配方法及系统 |
CN115150402A (zh) * | 2022-08-30 | 2022-10-04 | 京华信息科技股份有限公司 | 一种云资源分配方法及系统 |
WO2024077727A1 (zh) * | 2022-10-14 | 2024-04-18 | 广西电网有限责任公司 | 一种云计算平台宿主机硬件虚拟化资源分配方法 |
CN115546008B (zh) * | 2022-11-25 | 2023-03-31 | 武汉兴和云网科技股份有限公司 | 一种gpu虚拟化管理系统和方法 |
CN115546008A (zh) * | 2022-11-25 | 2022-12-30 | 武汉兴和云网科技股份有限公司 | 一种gpu虚拟化管理系统和方法 |
CN116775313A (zh) * | 2023-08-18 | 2023-09-19 | 浪潮(山东)计算机科技有限公司 | 一种资源分配方法、装置、设备及介质 |
CN116775313B (zh) * | 2023-08-18 | 2023-12-08 | 浪潮(山东)计算机科技有限公司 | 一种资源分配方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111580934B (zh) | 2024-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111580934B (zh) | 云计算环境下多租户虚拟机性能一致的资源分配方法 | |
Gao et al. | Machine learning based workload prediction in cloud computing | |
US11226846B2 (en) | Systems and methods of host-aware resource management involving cluster-based resource pools | |
Silva et al. | Cloudbench: Experiment automation for cloud environments | |
US9396008B2 (en) | System and method for continuous optimization of computing systems with automated assignment of virtual machines and physical machines to hosts | |
US7757214B1 (en) | Automated concurrency configuration of multi-threaded programs | |
KR20220006490A (ko) | 워크로드 동적 자원 배치 및 최적화 수행관리를 위한 하이브리드 클라우드 자원 배분 방법 | |
US9268663B1 (en) | Software testing analysis and control | |
US20130138806A1 (en) | Predictive and dynamic resource provisioning with tenancy matching of health metrics in cloud systems | |
US20140019964A1 (en) | System and method for automated assignment of virtual machines and physical machines to hosts using interval analysis | |
US9235491B2 (en) | Systems and methods for installing, managing, and provisioning applications | |
US20140096129A1 (en) | Systems and methods for installing, managing, and provisioning applications | |
Jassas et al. | Failure analysis and characterization of scheduling jobs in google cluster trace | |
US11080093B2 (en) | Methods and systems to reclaim capacity of unused resources of a distributed computing system | |
CN108595306A (zh) | 一种面向混部云的服务性能测试方法 | |
US20140196054A1 (en) | Ensuring performance of a computing system | |
Birje et al. | Cloud monitoring system: basics, phases and challenges | |
US20170054592A1 (en) | Allocation of cloud computing resources | |
Moghaddam et al. | Energy-efficient and sla-aware virtual machine selection algorithm for dynamic resource allocation in cloud data centers | |
US20140096125A1 (en) | Systems and methods for installing, managing, and provisioning applications | |
US20210286647A1 (en) | Embedded persistent queue | |
KR20210041295A (ko) | 클라우드 컴퓨팅 환경에서 가상화 자원 분배 시스템 | |
Anglano et al. | Prometheus: A flexible toolkit for the experimentation with virtualized infrastructures | |
US20210263718A1 (en) | Generating predictive metrics for virtualized deployments | |
US20140096127A1 (en) | Systems and methods for installing, managing, and provisioning applications |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |