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

一种云计算资源分配方法和系统

文献发布时间:2023-06-19 09:29:07


一种云计算资源分配方法和系统

技术领域

本发明涉及一种资源分配系统,具体为一种云计算资源分配方法和系统,属于云计算资源分配技术领域。

背景技术

云计算是一种新的计算模型,通过互联网提供各种服务,因此,用户可以使用任何设备随时随地访问云服务任何地方。此外,用户不需要知道云平台如何工作,他们只需要通过网络访问服务浏览器。由于其方便性和巨大的计算能力,云计算被视为下一代的计算模式。

在云计算中,通过采用虚拟化技术,一台物理主机可以虚拟成多个虚拟主机作为基本运算单元,并使用这些主机。通过采用虚拟化技术,云计算随着传统的集群计算将大大提高硬件的利用率,并实现自动监测所有主机。虚拟化技术在云资源的管理和动态配置中起关键作用,通过虚拟化技术可以将底层的各种硬件资源进行封装,以虚拟机为基本资源单位向用户提供服务。云计算最大的特点是按需使用,客户可根据需要随时申请云资源或者扩充/缩减云资源,云计算运营商的云管理平台根据客户需求开通和分配云资源。

但是很多企业客户缺乏专业的云资源运营监控和维护能力,对于新增或扩充云资源的具体时间点和具体配置不能准确把握,可能会导致部署在云资源上的业务应用系统的性能受到影响。

为了解决上述技术问题,本发明提供如下技术方案。

发明内容

本发明的目的在于提供一种云计算资源分配方法和系统,用于解决现有的缺乏专业的云资源运营监控和维护能力,对于新增或扩充云资源的具体时间点和具体配置不能准确把握,可能会导致部署在云资源上的业务应用系统的性能受到影响的问题,通过设置数据采集模块、运算量计算模块、云资源监控模块、云平台以及云资源性能告警模块,通过对云计算资源的性能指标进行监控,根据性能指标计算出云资源的当前健康度,云平台设定云资源性能告警阈值,若当前健康度值K超过云资源性能告警阈值,则发出报警指令至云资源性能告警模块,云资源性能告警模块提示用户优化云计算资源配置。

本发明的目的可以通过以下技术方案实现:

一种云计算资源分配系统,包括数据采集模块、运算量计算模块、云资源监控模块、云平台以及云资源性能告警模块;

所述云资源监控模块用于监测用户云计算资源单位周期时间T内各项性能指标,包括CPU运算量、磁盘运算量和I/O运算量;

所述数据采集模块用于在单位周期时间T内对虚拟机i进行采集数据,并将采集的数据发送至运算量计算模块,所述运算量计算模块用于对CPU进行运算量计算,计算过程包括以下步骤:

步骤一:数据采集模块获取虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数以及虚拟机i在每个周期内浮点运算次数,并将采集的数据发送至运算量计算模块;

步骤二:运算量计算模块接收到虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数以及虚拟机i在每个周期内浮点运算次数后,分别将其标记为

步骤三:利用计算公式计算在单位周期时间T内的CPU运算量,

计算公式为

所述运算量计算模块还用于计算磁盘运算量以及I/O运算量,具体计算包括以下步骤:

步骤S1:数据采集模块获取虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量,并将采集的数据发送至运算量计算模块;

步骤S2:运算量计算模块接收到虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量后,将其分别标记为

步骤S3:利用计算公式分别计算在单位周期时间T内的磁盘运算量以及I/O运算量,磁盘运算量以及I/O运算量的计算公式分别为:

其中

运算量计算模块将CPU运算量、磁盘运算量以及I/O运算量发送至云资源监控模块,所述云资源监控模块用于根据运算量计算模块发送的CPU运算量、磁盘运算量以及I/O运算量计算出当前健康度值,将当前健康度值标记为K;计算公式为

云平台设定云资源性能告警阈值,若当前健康度值K超过云资源性能告警阈值,则发出报警指令至云资源性能告警模块,所述云资源性能告警模块提示用户优化云计算资源配置。

优选的,所述数据采集模块用于在单位周期时间T内对虚拟机i进行采集数据,采集的数据包括虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数、虚拟机i在每个周期内浮点运算次数、虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量。

优选的,所述云平台是以数据存储为主的存储型云平台,用于存储数据采集模块采集的数据。

优选的,该系统还包括虚拟机部署模块,所述虚拟机部署模块用于将多个虚拟机分配给多个物理机器,使得物理机器每种资源利用率最大化以及虚拟机迁移次数最小化,用户向云平台请求的资源等价于某一台需要特定资源的虚拟机,并且每一个用户的应用程序包运行在各自的虚拟机上;多目标虚拟机部署问题是一个多重组合优化问题,同时也是多目标优化问题,每个物理机器的可用资源是多维向量,每一维是物理机器的各种资源之一,每个虚拟机需要的资源也是多维向量。目标是将多个虚拟机分配给多个物理机器,使得物理机器每种资源利用率最大化以及虚拟机迁移次数最小化。

多目标部署问题描述如下:

令PM为云计算中物理机器集合,VM为云计算中虚拟机集合,N为虚拟机总数,R表示云计算中可以分配的资源集合,J表示可分配资源的总数;

目标:

对任意n属于VM;m属于PM,其中Um,j为物理机器m对第j类资源的利用率,Pm表示物理机器使用节点个数;

约束:Pm属于0~1,如果Pm=1,表示启用新的物理机器;

Um,j

其中:Cm,j表示物理机器m第j类资源的门槛值;

一种云计算资源分配方法,包括以下步骤:

步骤T1:数据采集模块获取虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数、虚拟机i在每个周期内浮点运算次数、虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量,并将采集的数据发送至运算量计算模块,并将采集的数据发送至运算量计算模块;

步骤T2:运算量计算模块接收到虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数、虚拟机i在每个周期内浮点运算次数、虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量,并将采集的数据发送至运算量计算模块后,分别将其标记为

步骤T3:利用计算公式计算在单位周期时间T内的CPU运算量、磁盘运算量以及I/O运算量;计算公式分别为:

其中

步骤T4:运算量计算模块将CPU运算量、磁盘运算量以及I/O运算量发送至云资源监控模块,云资源监控模块根据运算量计算模块发送的CPU运算量、磁盘运算量以及I/O运算量计算出当前健康度值,将当前健康度值标记为K;计算公式为

步骤T5:云平台设定云资源性能告警阈值,若当前健康度值K超过云资源性能告警阈值,则发出报警指令至云资源性能告警模块,所述云资源性能告警模块提示用户优化云计算资源配置。

与现有技术相比,本发明的有益效果是:

1、通过对云计算资源的性能指标进行监控,根据性能指标计算出云资源的当前健康度,数据采集模块获取虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数、虚拟机i在每个周期内浮点运算次数、虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量,并将采集的数据发送至运算量计算模块,分别将其标记为

2、运算量计算模块将CPU运算量、磁盘运算量以及I/O运算量发送至云资源监控模块,云资源监控模块根据运算量计算模块发送的CPU运算量、磁盘运算量以及I/O运算量计算出当前健康度值,将当前健康度值标记为K;计算公式为

3、虚拟机部署模块用于将多个虚拟机分配给多个物理机器,使得物理机器每种资源利用率最大化以及虚拟机迁移次数最小化,用户向云平台请求的资源等价于某一台需要特定资源的虚拟机,并且每一个用户的应用程序包运行在各自的虚拟机上;多目标虚拟机部署问题是一个多重组合优化问题,同时也是多目标优化问题,每个物理机器的可用资源是多维向量,每一维是物理机器的各种资源之一,每个虚拟机需要的资源也是多维向量。目标是将多个虚拟机分配给多个物理机器,使得物理机器每种资源利用率最大化以及虚拟机迁移次数最小化。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的原理框图。

具体实施方式

下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

请参阅图1所示,一种云计算资源分配系统,包括数据采集模块、运算量计算模块、云资源监控模块、云平台以及云资源性能告警模块;

所述云资源监控模块用于监测用户云计算资源单位周期时间T内各项性能指标,包括CPU运算量、磁盘运算量和I/O运算量;

所述数据采集模块用于在单位周期时间T内对虚拟机i进行采集数据,并将采集的数据发送至运算量计算模块,所述运算量计算模块用于对CPU进行运算量计算,计算过程包括以下步骤:

步骤一:数据采集模块获取虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数以及虚拟机i在每个周期内浮点运算次数,并将采集的数据发送至运算量计算模块;

步骤二:运算量计算模块接收到虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数以及虚拟机i在每个周期内浮点运算次数后,分别将其标记为

步骤三:利用计算公式计算在单位周期时间T内的CPU运算量,

计算公式为

所述运算量计算模块还用于计算磁盘运算量以及I/O运算量,具体计算包括以下步骤:

步骤S1:数据采集模块获取虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量,并将采集的数据发送至运算量计算模块;

步骤S2:运算量计算模块接收到虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量后,将其分别标记为

步骤S3:利用计算公式分别计算在单位周期时间T内的磁盘运算量以及I/O运算量,磁盘运算量以及I/O运算量的计算公式分别为:

其中

运算量计算模块将CPU运算量、磁盘运算量以及I/O运算量发送至云资源监控模块,所述云资源监控模块用于根据运算量计算模块发送的CPU运算量、磁盘运算量以及I/O运算量计算出当前健康度值,将当前健康度值标记为K;计算公式为

云平台设定云资源性能告警阈值,若当前健康度值K超过云资源性能告警阈值,则发出报警指令至云资源性能告警模块,所述云资源性能告警模块提示用户优化云计算资源配置。

其中,所述数据采集模块用于在单位周期时间T内对虚拟机i进行采集数据,采集的数据包括虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数、虚拟机i在每个周期内浮点运算次数、虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量。

其中,所述云平台是以数据存储为主的存储型云平台,用于存储数据采集模块采集的数据。

其中,该系统还包括虚拟机部署模块,所述虚拟机部署模块用于将多个虚拟机分配给多个物理机器,使得物理机器每种资源利用率最大化以及虚拟机迁移次数最小化,用户向云平台请求的资源等价于某一台需要特定资源的虚拟机,并且每一个用户的应用程序包运行在各自的虚拟机上;多目标虚拟机部署问题是一个多重组合优化问题,同时也是多目标优化问题,每个物理机器的可用资源是多维向量,每一维是物理机器的各种资源之一,每个虚拟机需要的资源也是多维向量。目标是将多个虚拟机分配给多个物理机器,使得物理机器每种资源利用率最大化以及虚拟机迁移次数最小化。多目标部署问题描述如下:

令PM为云计算中物理机器集合,VM为云计算中虚拟机集合,N为虚拟机总数,R表示云计算中可以分配的资源集合,J表示可分配资源的总数;

目标:

对任意n属于VM;m属于PM,其中Um,j为物理机器m对第j类资源的利用率,Pm表示物理机器使用节点个数;

约束:Pm属于0~1,如果Pm=1,表示启用新的物理机器;

Um,j

其中:Cm,j表示物理机器m第j类资源的门槛值;

一种云计算资源分配方法,包括以下步骤:

步骤T1:数据采集模块获取虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数、虚拟机i在每个周期内浮点运算次数、虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量,并将采集的数据发送至运算量计算模块,并将采集的数据发送至运算量计算模块;

步骤T2:运算量计算模块接收到虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数、虚拟机i在每个周期内浮点运算次数、虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量,并将采集的数据发送至运算量计算模块后,分别将其标记为

步骤T3:利用计算公式计算在单位周期时间T内的CPU运算量、磁盘运算量以及I/O运算量;计算公式分别为:

其中

步骤T4:运算量计算模块将CPU运算量、磁盘运算量以及I/O运算量发送至云资源监控模块,云资源监控模块根据运算量计算模块发送的CPU运算量、磁盘运算量以及I/O运算量计算出当前健康度值,将当前健康度值标记为K;计算公式为

步骤T5:云平台设定云资源性能告警阈值,若当前健康度值K超过云资源性能告警阈值,则发出报警指令至云资源性能告警模块,所述云资源性能告警模块提示用户优化云计算资源配置。

上述公式均是去量化取其数值计算,公式是由采集大量数据进行软件模拟得到最近真实情况的一个公式,公式中的预设参数由本领域的技术人员根据实际情况设定。

本发明的工作原理:获取虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数、虚拟机i在每个周期内浮点运算次数、虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量,并将采集的数据发送至运算量计算模块,并将采集的数据发送至运算量计算模块;运算量计算模块接收到虚拟机i在t时刻的CPU频率、虚拟机i在t时刻CPU的使用率、虚拟机i的CPU核心数、虚拟机i在每个周期内浮点运算次数、虚拟机i磁盘在t时刻每秒读入的数据量、虚拟机i磁盘在t时刻每秒写入的数据量、虚拟机i在t时刻网卡每秒接收的数据量以及虚拟机i在t时刻网卡每秒发送的数据量,并将采集的数据发送至运算量计算模块后,分别将其标记为

利用计算公式计算在单位周期时间T内的CPU运算量、磁盘运算量以及I/O运算量;计算公式分别为:

其中

云平台设定云资源性能告警阈值,若当前健康度值K超过云资源性能告警阈值,则发出报警指令至云资源性能告警模块,所述云资源性能告警模块提示用户优化云计算资源配置。

该系统还包括虚拟机部署模块,虚拟机部署模块用于将多个虚拟机分配给多个物理机器,使得物理机器每种资源利用率最大化以及虚拟机迁移次数最小化,用户向云平台请求的资源等价于某一台需要特定资源的虚拟机,并且每一个用户的应用程序包运行在各自的虚拟机上;多目标虚拟机部署问题是一个多重组合优化问题,同时也是多目标优化问题,每个物理机器的可用资源是多维向量,每一维是物理机器的各种资源之一,每个虚拟机需要的资源也是多维向量。目标是将多个虚拟机分配给多个物理机器,使得物理机器每种资源利用率最大化以及虚拟机迁移次数最小化。

在本说明书的描述中,参考术语“一个实施例”、“示例”、“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。

相关技术
  • 一种云计算系统的资源分配方法、装置及云计算系统
  • 一种云计算系统中的资源分配方法及系统
技术分类

06120112188409