CN109005130B - 网络资源配置调度方法和装置 - Google Patents
网络资源配置调度方法和装置 Download PDFInfo
- Publication number
- CN109005130B CN109005130B CN201810726208.XA CN201810726208A CN109005130B CN 109005130 B CN109005130 B CN 109005130B CN 201810726208 A CN201810726208 A CN 201810726208A CN 109005130 B CN109005130 B CN 109005130B
- Authority
- CN
- China
- Prior art keywords
- task
- value
- predicted
- time
- arrival
- 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
- 238000000034 method Methods 0.000 title claims abstract description 71
- 238000013468 resource allocation Methods 0.000 title claims abstract description 33
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 47
- 238000012545 processing Methods 0.000 claims abstract description 15
- 238000004364 calculation method Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 7
- 238000012856 packing Methods 0.000 claims description 3
- 238000013213 extrapolation Methods 0.000 abstract description 5
- 230000003044 adaptive effect Effects 0.000 abstract description 4
- 230000001133 acceleration Effects 0.000 description 15
- 239000011159 matrix material Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 238000002474 experimental method Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000005265 energy consumption Methods 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000003064 k means clustering Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241000283073 Equus caballus Species 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/83—Admission control; Resource allocation based on usage prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种网络资源配置调度方法和装置,其中的方法包括:基于预设的预测算法预测任务到达的预测值;根据预测值对网络资源进行相应地重新部署,以使在未来任务的任务量峰值到来时具有足够的处理资源;当到达未来任务的到达预测时间时,基于实际接收到的任务数量与未来任务的到达预测数量的差值,重新调整任务分类器以及预测算法的参数。本发明的方法和装置,将正常情况下的移动平均预测方法与突发情况下的趋势外推预测方法相结合,及时发现突发情况,并提供灵活和适应性的资源预留策略,通过最大限度地利用资源并提高正常和突发工作负载的资源保证率,能够自适应资源调配方面的有效工作流量突发。
Description
技术领域
本发明涉及云计算技术领域,尤其涉及一种网络资源配置调度方法和装置。
背景技术
云计算已经成为近几十年来计算机科学中最热门的话题之一,随着虚拟化推进云计算 现在允许按需网络访问共享的可配置计算资源池,从而将这些快速地提供给互联网上的客 户端,作为不再限于传统的基础设施即服务(IaaS)的新形式的服务,平台即服务(PaaS) 或软件即服务(SaaS),而数据即服务(DaaS),分析即服务(AaaS)等。在现代计算云中, 工作负载突发越来越频繁,难以预测。例如,当一个名人发布令人吃惊的推特或者一些在 线零售商在某个时候推出折扣时,可能会给相关网站带来突然的工作量。如果计算资源没 有得到适当及时的重新配置,网站或应用程序可能会崩溃,造成用户的不满甚至财务损失, 这是云提供商或客户和客户所不希望的。通常情况下,云提供商寻求帮助策略部署过多的 资源,以面对突然的工作量峰值,但增加了客户的开销成本,并牺牲不必要的资源。因此, 需要一种新的网络资源配置调度技术方案。
发明内容
有鉴于此,本发明要解决的一个技术问题是提供一种网络资源配置调度方法和装置。
根据本发明的一个方面,提供一种网络资源配置调度方法,包括:基于预设的预测算 法预测任务到达的预测值;其中,所述预测值包括:未来任务的到达预测时间和到达预测 数量;根据预测值对网络资源进行相应地重新部署,以使在未来任务的任务量峰值到来时 具有足够的处理资源;其中,所述网络资源包括:物理机PM和虚拟机VM;当到达所述未来任务的到达预测时间时,基于实际接收到的任务数量与所述未来任务的到达预测数量的差值,重新调整所述任务分类器以及所述预测算法的参数。
根据本发明的另一方面,提供一种网络资源配置调度装置,包括:趋势预测模块,用 于基于预设的预测算法预测任务到达的预测值;其中,所述预测值包括:未来任务的到达 预测时间和到达预测数量;资源保留模块,用于根据预测值对网络资源进行相应地重新部 署,以使在未来任务的任务量峰值到来时具有足够的处理资源;其中,所述网络资源包括: 物理机PM和虚拟机VM;参数调整模块,用于当到达所述未来任务的到达预测时间时,基于实际接收到的任务数量与所述未来任务的到达预测数量的差值,重新调整所述任务分类器以及所述预测算法的参数。
本发明的网络资源配置调度方法和装置,预测任务群集中的未来任务到达的预测值, 根据预测值对PM和VM进行相应地重新部署,基于实际接收到的任务数量与未来任务的到 达预测数量的差值,重新调整任务分类器以及预测算法的参数;将正常情况下的移动平均 预测方法与突发情况下的趋势外推预测方法相结合,及时发现突发情况,并提供灵活和适 应性的资源预留策略,通过最大限度地利用资源并提高正常和突发工作负载的资源保证 率,能够自适应资源调配方面的有效工作流量突发。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技 术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以 根据这些附图获得其他的附图。
图1为本发明的网络资源配置调度方法的一个实施例的流程示意图;
图2A-2F为本发明的网络资源配置调度方法的一个实施例中的在分组时距离计算的 示意图;
图3为本发明的网络资源配置调度方法的一个实施例中的高斯曲线的模拟工作负荷 尖峰示意图;
图4A-4D为本发明的网络资源配置调度方法的一个实施例中的四组任务的不同预测 结果示意图;
图5为本发明的网络资源配置调度装置的一个实施例的模块示意图。
图6为本发明的网络资源配置调度装置的一个实施例在实际场景中的模块示意图。
图7为本发明的网络资源配置调度装置的另一个实施例中的模块示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说 明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明 的范围。
图1为本发明的网络资源配置调度方法的一个实施例的流程示意图,如图1所示:
步骤101,基于预设的预测算法预测任务到达的预测值,其中,预测值包括:未来任务的到达预测时间和到达预测数量。
步骤102,根据预测值对网络资源进行相应地重新部署,以使在未来任务的任务量峰 值到来时具有足够的处理资源,其中,网络资源包括:物理机PM和虚拟机VM。
步骤103,当到达未来任务的到达预测时间时,基于实际接收到的任务数量与未来任 务的到达预测数量的差值,重新调整任务分类器以及预测算法的参数。
通过任务分类器对请求处理的任务进行分组处理,生成至少一个任务集群;基于单位 时间内任务群集中增加的任务数量判断是否进入突发状态,如果是,则采用突发预测算法 预测此任务群集中的未来任务到达的预测值,如果否,则采用常规预测算法预测此任务群 集中的未来任务到达的预测值。
在一个实施例中,接收到请求处理的任务,通过任务分类器对任务进行分组处理,将 任务分配给与其相似度最高的任务群集。任务包括服务请求任务、计算请求任务等。任务 可以为终端用户提交到数据中心的请求,可以是一项大型的科学计算,也可以是网页访问 操作,也可以是数据读取、数据分析、数据处理、数据存储等常规操作等。
基于预设的预测算法分别预测多个任务群集中的未来任务到达的预测值,预测值包括 未来任务的到达预测时间和到达预测数量。预测值的到达预测时间和到达预测数量可以使 用坐标系中的一条曲线表示,曲线的斜率可以表示为工作量到达率。可以在正常场景和突 发场景两个不同的特征场景下分别连续预测未来任务的到达预测时间和到达预测数量。
上述实施例的网络资源配置调度方法,提出了一种自适应工作负载预测和资源预留的 集成方法,以实现资源调配遇到流量突发(TRIERS)的解决方案;能够采用自适应预测, 可以在正常场景和突发场景下分别连续预测即将到来的工作量,当检测到突发,物理机 PM和虚拟机VM将根据其数量和预计到达时间相应地重新部署。
在一个实施例中,通过任务分类器对任务进行分组处理可以有多种方法。例如,选取 任务的历史数据,采用k-means聚类方法对历史数据进行预分组,得到多个任务群集,并获得每个任务群集的群集特征属性值。接收到任务时,获取任务的特征属性值,群集特征属性值与特征属性值包括到达时间、计算长度、截止时间要求、所需内存大小等。任务分 类器分别计算特征属性值与多个群集特征属性值之间的马氏距离,将此任务分配给与最小的马氏距离相对应的任务群集。
任务的工作量爆发通常与突然关注某些热门话题或某些特殊事件有关,可以推断在这 段时间内任务的属性与正常情况下的属性不同,因此,对于不同的任务,可以有到达率的 特征曲线和其他特征如CPU,记忆,运行时间等。进行分组处理的簇数可以预设在2至5的范围内,以使分组的结果能够代表来自正常场景或突发场景的任务的可区分性状。需要选择较宽的历史数据作为训练数据来获得每个任务群集的特征,它们将作为分类的标准,每个任务群集的构成随着时间的变化而变化,同时分组的参数也会根据整体的表现进行调整和重新设置。在实现任务分组时,首先要考虑一系列合适的任务属性。到达任务最有影响的因素是其给定的计算长度和所需的内存大小以及预期的运行时间,因为它们决定了后续的工作量分配,最终决定了总体性能的最终质量。
对于任务集T中的每个给定的任务ti,可以用ti=(ai,li,di,mi)来建模,其中ai,li,di和mi分别表示到达时间,计算长度,期望的期限和内存大小的任务ti,采用低复杂 度的聚类方法k-means,以较粗糙的尺度对即将到来的任务或请求进行预先分组。选取一 定时间内的历史数据进行采用本文提出的聚类方法进行分组,将得到各组的特征提取出 来,作为后续实时分类时的任务分类器的筛选条件。将任务划分为几个特征组(任务集群), 将一个到达的任务分配给相似度得分最高的任务集群。通常,任务和任务集群之间的相似 度分数是通过任务和上面列出的属性的向量空间中的集群的质心之间的欧几里得距离来 计算的。但是,对于现实世界中的任务来说,这些属性通常是相互关联的,忽略属性之间 的关系可能会在一定程度上影响分组结果的准确性。
在本发明中使用Mahalanobis距离来替代计算相似性分数。马氏距离通过两个相同分 布的向量与整体之间的不相似度量,来考虑任务各个属性之间的整体聚类和关系协方差矩 阵。此外,马氏距离是尺度不变的,或者与测量尺度无关。传统的相似度计算使用欧式距 离计算,如公式1-1所示:
其中,即任务和任务两个个体任务之间的欧氏距离,其中li,di, mi等均为任务i的属性/维度,分别代表任务长度,截止时间要求和所需内存大小,lj,dj, mj等代表的含义类似。公式1代表了欧式距离的计算方式。使用马氏距离代替欧式距离,如公式1-2所示,消除了三个选择属性之间的相关性,揭示了每一组任务的鲜明特征。 公式1-2代表了马式距离的计算方式:
其中,即任务和任务两个个体任务之间的马氏距离,其中是 一个包含li,di,mi的三元向量,代表相似含义。∑-1代表了所选历史数据的协方差矩阵的逆矩阵。公式1-3和公式1-4都为协方差矩阵∑进行了补充说明。
∑ij=cov(ti,tj)=E[(ti-μj)(tj-μj)] (1-3);
其中,μ是所有任务的平均值,Σij是两个任务之间的协方差值,协方差矩阵中的 σ是每两个任务的一组竞争值,代表整体偏差。∑代表了所选历史数据的协方差矩阵,∑ij则代表该协方差矩阵中的每一个项。公式cov()为两个向量之间的协方差计算公式,公式E()为期望值计算公式。
首先使用包含多个工作负荷尖峰数据的历史数据采样来计算代表性的协方差矩阵, 然后实时(定期)对其进行更新。使用上述修改的聚类方法对任务进行分组,获得每个聚 类的特征。在测试中,使用一种称为k-means++的技术来选择合适的初始聚类中心来加速 后续收敛速度。图2A-2F比较了使用不同的相似性计算方法,包括它们的计算长度,所需的期限和需要的存储器大小的分组中的任务的特征。图2A、图2C和图2E左侧显示欧几 里得距离计算的结果,图2B、图2D和图2F在右边那些来自Malahannobis的距离。以图 2A和图2B为例,每个散射点代表在x轴上映射的某个时间点的一个任务,其计算长度在 左边的主y轴;次y轴表示任务在同一时间点计数,在底部呈黑色连续。很明显,突发情 况下的任务大多是用红色标记的,而与其他人则是规范的。使用马氏距离的方法将标记为 “突发”的任务比使用欧几里德距离的方法更多,这在某种程度上延长了突发情况。也就 是说,使用Malahanobis距离的方法对工作量峰值的到达比欧几里得更为敏感。通过图 2C和图2D,图2E和图2F的比较,可以推断出类似的含义。欧几里得似乎更倾向于缩小 “突发性工作量”的范围,将模糊区域分类为“标准”范畴,而马哈拉诺比斯似乎强调两 个属性之间的线性关系,从而扩大了“突发性工作量”的检测范围。这样,马哈拉诺比斯 更有能力预测爆发。在一个实施例中,对于正常情况,工作负荷量在平均水平上波动,没 有任何尖锐的增加,这适合于时间序列模型预测。然而,对于突发情况来说,在任务或请 求中会出现更频繁和尖锐的上升和下降,通常是在相当短的时间内以负载呈指数增长的形 式,然后很快恢复到原来的水平。当尝试预测爆发时,移动平均法的缺点,滞后问题将被 大大放大,因此,采用趋势外推预测方法。趋势外推预测方法预测的不是未来某一点的价 值,而是趋势。选择并测试了几个常用的数学函数和曲线来模拟工作负荷尖峰,包括指数 函数,Gompertz曲线和高斯曲线等,通过试验结果可知,高斯曲线是最适合工作负载突 发的曲线,如图3所示。
在一个实施例中,基于预设的预测算法分别预测多个任务群集中的未来任务到达的 预测值可以有多种方法。例如,基于单位时间内任务群集中增加的任务数量判断是否进入 突发状态,如果是,则采用突发预测算法预测此任务群集中的未来任务到达的预测值,如 果否,则采用常规预测算法预测此任务群集中的未来任务到达的预测值;其中,在单位时 间内,如果任务群集中任务数量的增加加速度为连续递增,或者,任务数量的增加加速度 的值超过预设的加速度阈值的次数超过预设的次数阈值,则确定进入了突发状态;在确定 进入突发状态后,如果确定在单位时间内,任务群集中任务数量的增加加速度为连续减少, 或者,任务数量的增加加速度的值低于加速度阈值的次数超过次数阈值,则缺定回到常规 状态。采用突发预测算法预测此任务群集中的未来任务到达的预测值为:
s的含义是指预测的窗口时长。即此时为t时刻,该公式1-5可以预测的s个单位时长之后的值,即t+s时刻的预测值et+s。
采用常规预测算法预测此任务群集中的未来任务到达的预测值为:
其中,s的含义是指预测的窗口时长。即此时为t时刻,通过公式可以预测s个单位时长之后的值,即t+s时刻的预测值。et+s为根据t时刻的任务到达数量对t+s时刻的任务 达到数量的预测值,b1,b2,b3是预测参数,可以根据多种测试的结果选取,exp()为以自 然底数e为底的指数函数,window为设定的影响预测值的历史数据个数,Win为第in个 任务的历史数据对预测值的影响权重,i指的是在t时刻往回拨in个时间点所对应的时 间长度,可以设定wi=(window-i)^n,其中n为大于1的自然数,以确保离该时刻越 近的历史时刻的数据对对预测值得影响力越大ct-i指t-i时刻的任务到达数量。,该值是用 来计算t+s时刻的预测值的。对于混合预测方法设置一个加速度阈值,作为在正常情况和 突发情况之间转换条件下转换预测模型的切换。在预先设定的短时间窗内去除明显的异常 值并平滑到达的线路之后,观察到当突发可能发生时,每单位时间任务数量的增加会加速。 因此,一方面,一旦加速度连续数次超过阈值,预测方法就会将其作为近期爆发的信号; 另一方面,低于阈值或不满足上述条件的加速度将被标记为正常水平的波动,然后预测模 式将迅速移回到移动平均。反之亦然。
在一个实施例中,将两场景预测方法分别应用于分组后的每个任务集群。首先,任务 被安排在分组池中,任务分类器根据它们的属性和集群之间的相似性分数来标记和分配以 下任务。任务分类器以聚类预分组的各组特征来作为依据,一个新任务到达之后,读取其 各属性值,并与所有任务集群的属性特征值(该任务集群的所有个体特征平均值)进行距 离计算,随后该任务将被分到距离值最小的那个组别,同时更新该组的属性特征值。在每 个时间间隔,将不同的任务群集发送到预测池,以预测每个特定任务群的到达率的趋势。 最后,当实际时间达到之前预测的时间点时,将实际值与预测值之间的差值打包为反馈, 重新调整预测方法的参数。根据历史单位时间的到达率判断此刻的任务状态是“突发”还 是“常规”,并使用相应的方法进行预测。一段时间后,部分先前预测的任务到达率可以和实际的任务到达率进行比对,差值作为反馈信息改进预测方法。例如,如果一段时间内75%的预测值都低于实际值,则将这段时间的预测与实际的差值占预测值的占比加到后续的预测的预测值上,进行调整。图4A-4D显示了四组任务的不同预测结果。在突发情况下 主要检测到任务群集的最佳阈值范围是每分钟增加0.32个计数。关于其他三个群体,几 乎没有检测到突出尖刺,如图4B,图4C和图4D所示,预先分组的步骤是将特征“突发 性任务”与常态分开,此外,“突发任务”也具有特征到达曲线,如果相应地设置了适当的 阈值,则预测方法将预测更加适合的预测曲线。在一个实施例中,根据预测值以及任务集 群的特征为任务群集中新增的任务分配对应的PM或VM,特征包括:内存要求、计算长度 等。对于常规状态,PM的预留空间为最小预留空间阈值,当出现突发状态时,提高PM的 预留空间和/或开启新PM并留出预留空间,用以满足工作量的突发性地增大。在进行PM 或VM的分配时满足的约束条件包括:
当任务被标记为突发状况时,按预定的顺序依次对多个虚拟机进行搜索,判断此虚拟 机分配了此任务后是否满足约束条件,如果是,则将此任务分配给此虚拟机,如果否,则 继续搜索下一个虚拟机。如果从常规状态转换到突发状态时,提高了PM的预留空间,判断分配给此PM的任务在任一运行时刻的CPU占用量或内存占用量是否超过设定的阈值, 如果是,则从CPU占用量最小或内存的占用量最小的任务开始,将分配给此PM的任务转 移到其它开启的PM或转移到新开启的PM,直到分配给此PM的任务在任一运行时刻的CPU 占用量和内存占用量都未超过设定的阈值。
在一个实施例中,在高峰工作量下进行配置是保证任务完成的时间优先保证,但虚拟 化的弹性优势就会受到破坏,并可能导致资源利用率低下。资源调配应分别考虑正常工作 负载场景和突发工作负载场景,考虑了每个单个集群的特点,同时调整相应的工作负载大 小实时调整资源分配,最大限度地提高整个***的利用率。一方面,充分利用先前集群的 特征以及PM的异质性,即根据其对应集群的区分特征来分配不同集群的任务,例如优先 考虑对占用内存要求较高的任务对较高配置的PM和较低计算长度的任务给占用相对较多 的PM,以使资源可用性最好。另一方面,预约策略在很大程度上取决于预测结果,因为预先安排好所有的PM已经完全占用了,每当物理或虚拟机需要额外的预留时,流量工作 量突然激增。
预留量取决于正常工作量和突发工作量之间的差值。对于正常情况,每个PM的预留 空间被压缩到条件最小值。如果出现突发状态,***将被重新部署,打开足够数量的新PM,并留出足够的预留空间来应对工作量的飙升。采用这种保留策略,以实现资源利用率,运行稳定性和高效性的平衡。
例如,首先针对m个物理主机或PM组成的虚拟化云。每个PM的特征是hj=(rj,oj,fj), 其中rj是第j个PMhj的内存大小,fj是第j个PM hj的CPU值,oj是第j个主机;然后主 机hj上设置VM。VM被建模为vmj,k=(fj,k,rj,k),其中fj,k和rj,k分别是vmj,k所需的CPU 性能和内存。预留策略优先考虑在同一个PM上的虚拟机总数不能违反PM的容量的情况下, 完成任务的比例。这样的约束被形式化为:
指第j台主机的最大CPU值,fj,k指第j台主机上的第k台虚拟机的CPU值;公 式1-7指分配在主机上的所有虚拟机的CPU值的总和不能大过该主机的CPU最大值。mj指 第j台主机的最大内存值,mj,k指第j台主机上的第k台虚拟机的内存值;公式1-8指分 配在主机上的所有虚拟机的内存值的总和不能大过该主机的内存最大值。在一个实施例 中,在满足约束的情况下,针对该保留策略的所提出的启发式算法,算法1的伪代码如下 所示:在算法1中:1、每个时刻都对该时刻新到达的任务进行分组,并根据该时刻以及 往回拨window个时刻的到达率来预测s时刻后的任务到达率;2、根据预测值来判断是否 任务状况有变化,是“突发”还是“常规”;3、如果任务状况有变化,则同时改变预测的 方法和预留资源的方法;4、进行资源分配,将任务分到各个主机的虚拟中去;在一段时 间之后,更新历史数据,重新进行一次聚类,更新协方差矩阵。算法1是整个方法的总体 流程展示。
在算法2中给出的函数重新部署将尝试移动可用资源来处理即将到来的突发,函数资 源分配,算法2的伪代码如下所示:
由上可知,在算法2中:1、如果环境从“常规”状况转换到“突发”状况,则开始 对每个虚拟机进行检查;2、因为转换到“突发”状况,所以主机的预留值提高,原先符 合约束条件的一些任务需要转移到其他机器上去;3、找到工作占用CPU或内存超过阈值 的机子,从占用量最小的任务开始转移,首先考虑转移到已经开启并没有超出资源预留预 计的机子上,如果不存在这样的机子,则新开机子。算法2是对算法1的其中一个步骤进 行补充,主要解决了,状态转换时,主机群的资源重调问题。
算法3用于根据其特征属性将即将到来的任务安排到合适的VM中,算法3的伪代码如下所示:
由上可知,在算法2中:1、如果该任务被标记为“突发”状况,则开始对每个虚拟 机进行搜索将其分配到合适的机子上去;2、如果算上该任务,机子的CPU或内存均没有 超出阈值,则将该任务分配到此台虚拟机上。算法3是对算法1的其中一个步骤进行补充, 主要解决了,状态转换时任务分配的问题。
在一个实施例中,从三个方面考虑衡量***性能的指标,即保证率,资源利用率和总 能耗:
其中,公式1-9是指任务完成率(GR,Guarantee Ratio),即能够按时完成的任务展总任务的百分比。其中xi,j,k表示任务ti在第j个PM的第k个VM中及时完成情况,n 表示总任务数。公式1-10是指资源利用率(RU,Resource Utilization),即完成的任 务总长度占开启的主机的资源量总和。其中yi,j,k表示任务ti在第j个PM的第k个VM中 完成情况,n表示总任务数。公式1-11表示一台开启的主机的功耗和其运行的频率的三 次方成正比关系。公式1-12表示一台开启的主机从st时刻到et时刻的总功耗计算公式。
其中,xi,j,k和yi,j,k分别表示已签名的任务ti是否已经在第j个PM的第k个VM中 完成和完成,wtj表示PM hj的活动时间,cj t∈{1,0}表示hj在时刻t是否有效,当hj有效 时为1,否则为0。式1-9中的担保比例代表任务完成率,是主要目标。xi,j,k意味着在截 止日期之前完成任务,而式1-10中完成的任务意味着完成任务而不管其运行时间。yi,j, k表示所有PM的所有任务到达的总长度与运行的CPU的总活动时间的比率。总能耗代表开 机PM整体的总体功耗,基本上由CPU的使用量来计算。功耗可以分为两种状态。一个闲 置,另一个活动。对于PM hj的CPU使用情况,其动态有功功耗pj active可近似地描述为式1 -11。设si为怠速PM(例如50%和60%)的功率消耗部分,pj max为当主机hj被充分利用时 的最大功耗。hj从时间st到时间et的总能量消耗tecj可近似为式1-12。
对本发明的网络资源配置调度方法和其他现有方法进行定量比较,实验中使用的数据 集来自Google cloud traces和World of Warcraft数据集,代表了一个视频游戏服务。 “魔兽世界”数据集是“魔兽世界”在线游戏的踪迹,包含了2006年1月至2009年1 月间的1107天的记录,从中提取了几小时的实验记录。在实验中,假设***提供了五种 不同类型的虚拟机,假设每个配置的虚拟机数量是无限的。将实验分为两部分。第一部分 通过对实际工作量统计进行预测,显示了本发明的网络资源配置调度方法中预测方法的准 确性,相对误差小于5%。第二部分展示了所提出的本发明的网络资源配置调度方法,并 且我们用包括VM时间和可用性的度量来评估本发明的网络资源配置调度方法。结果表明, 本发明的网络资源配置调度方法在突发情况下具有良好的性能。
本发明的网络资源配置调度方法,针对流量突发情况下进行资源调配,可以将正常情 况下的移动平均预测方法与突发情况下的趋势外推预测方法相结合,预测即将到来的工作 量爆发;即将到来的任务在集群中表征,其属性包括到达率是单独预测的,任务的趋势预 测被转化为爆发的信号,从而改变了预留策略;进行了大量的实验,实验结果表明,本发 明的网络资源配置调度方法在担保比率,总能耗和资源利用率方面都优于其他方法,本发 明的网络资源配置调度方法是轻量级且非侵入式的,使其成为虚拟化云计算环境中的突发 感知情况的有吸引力的解决方案。
在一个实施例中,如图5所示,本发明提供一种网络资源配置调度装置50,包括:趋势预测模块51、资源保留模块52和参数调整模块53。趋势预测模块51基于预设的预 测算法预测任务到达的预测值,预测值包括:未来任务的到达预测时间和到达预测数量。 资源保留模块52根据预测值对网络资源进行相应地重新部署,以使在未来任务的任务量 峰值到来时具有足够的处理资源,网络资源包括:物理机PM和虚拟机VM。参数调整模块 53当到达未来任务的到达预测时间时,基于实际接收到的任务数量与未来任务的到达预 测数量的差值,重新调整任务分类器以及预测算法的参数。
如图6所示,网络资源配置调度装置也可以包括:任务分组模块,通过任务分类器对 请求处理的任务进行分组处理,生成至少一个任务集群。趋势预测模块51基于单位时间内任务群集中增加的任务数量判断是否进入突发状态,如果是,则采用突发预测算法预测此任务群集中的未来任务到达的预测值,如果否,则采用常规预测算法预测此任务群集中的未来任务到达的预测值。任务分组模块接收到请求处理的任务,通过任务分类器对任务进行分组处理,将任务分配给与其相似度最高的任务群集;任务包括:服务请求任务、计 算请求任务等。趋势预测模块51基于预设的预测算法分别预测多个任务群集中的未来任 务到达的预测值,预测值包括未来任务的到达预测时间和到达预测数量。
在一个实施例中,任务分组模块选取任务的历史数据,采用k-means聚类方法对历史 数据进行预分组,得到多个任务群集,并获得每个任务群集的群集特征属性值。任务分组 模块接收到任务时,获取任务的特征属性值;群集特征属性值与特征属性值包括:到达时 间、计算长度、截止时间要求、所需内存大小等。任务分类器分别计算特征属性值与多个群集特征属性值之间的马氏距离,将此任务分配给与最小的马氏距离相对应的任务群集。在单位时间内,如果任务群集中任务数量的增加加速度为连续递增,或者,任务数量的增加加速度的值超过预设的加速度阈值的次数超过预设的次数阈值,则趋势预测模块51确定进入了突发状态。趋势预测模块51在确定进入突发状态后,如果确定在单位时间内, 任务群集中任务数量的增加加速度为连续减少,或者,任务数量的增加加速度的值低于加 速度阈值的次数超过次数阈值,则缺定回到常规状态。
趋势预测模块51采用突发预测算法预测此任务群集中的未来任务到达的预测值为:
趋势预测模块53采用常规预测算法预测此任务群集中的未来任务到达的预测值为:
其中,s为预测的窗口时长,此时为t时刻,et+s为根据t时刻的任务到达数量对t+s时刻的任务达到数量的预测值,b1,b2,b3是预测参数,exp()为以自然底数e为底的指数 函数,window为设定的影响预测值的历史数据个数,Win为第in个任务的历史数据对预 测值的影响权重,i指的是在t时刻往回拨in个时间点所对应的时间长度,ct-i指t-i时 刻的任务到达数量。
资源保留模块52根据预测值以及任务集群的特征为任务群集中新增的任务分配对应 的PM或VM,特征包括:内存要求、计算长度等。资源保留模块52对于常规状态,PM的 预留空间为最小预留空间阈值,当出现突发状态时,提高PM的预留空间和/或开启新PM 并留出预留空间,用以满足工作量的突发性地增大;在进行PM或VM的分配时满足的约束 条件包括:
指第j台PM的最大CPU值,fj,k指第j台PM上的第k台虚拟机的CPU值;mj指 第j台PM的最大内存值,mj,k指第j台PM上的第k台虚拟机的内存值,N为在第j台PM 上的虚拟机的数量。资源保留模块52当任务被标记为突发状况时,按预定的顺序依次对 多个虚拟机进行搜索,判断此虚拟机分配了此任务后是否满足约束条件;如果是,则将此 任务分配给此虚拟机,如果否,则继续搜索下一个虚拟机。如果从常规状态转换到突发状 态时,提高了PM的预留空间,资源保留模块52判断分配给此PM的任务在任一运行时刻 的CPU占用量或内存占用量是否超过设定的阈值,如果是,则从CPU占用量最小或内存的 占用量最小的任务开始,将分配给此PM的任务转移到其它开启的PM或转移到新开启的 PM,直到分配给此PM的任务在任一运行时刻的CPU占用量和内存占用量都未超过设定的 阈值。
在一个实施例中,如图7所示,提供一种网络资源配置调度装置,该装置可包括存储 器71和处理器72,存储器71用于存储指令,处理器72耦合到存储器71,处理器72被 配置为基于存储器71存储的指令执行实现上述的网络资源配置调度方法。存储器71可 以为高速RAM存储器、非易失性存储器(non-volatile memory)等,存储器71也可以是存 储器阵列。存储器71还可能被分块,并且块可按一定的规则组合成虚拟卷。处理器72 可以为中央处理器CPU,或专用集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明的网络资源配置调度方法的一个或多个集成电路。 在一个实施例中,本发明提供一种计算机可读存储介质,计算机可读存储介质存储有计 算机指令,指令被处理器执行时实现如上任一个实施例中的网络资源配置调度方法。
可能以许多方式来实现本发明的方法和***。例如,可通过软件、硬件、固件或 者软件、硬件、固件的任何组合来实现本发明的方法和***。用于方法的步骤的上述 顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其 它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的 程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆 盖存储用于执行根据本发明的方法的程序的记录介质。本发明的描述是为了示例和描 述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对 于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理 和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有 各种修改的各种实施例。
Claims (8)
1.一种网络资源配置调度方法,其特征在于,包括:
通过任务分类器对请求处理的任务进行分组处理,生成至少一个任务集群;
基于单位时间内所述任务集群中增加的任务数量判断是否进入突发状态,如果是,则采用突发预测算法预测此任务集群中的未来任务到达的预测值,如果否,则采用常规预测算法预测此任务集群中的未来任务到达的预测值;其中,所述预测值包括:未来任务的到达预测时间和到达预测数量;
根据预测值对网络资源进行相应地重新部署,以使在未来任务的任务量峰值到来时具有足够的处理资源;其中,所述网络资源包括:物理机PM和虚拟机VM;
当到达所述未来任务的到达预测时间时,基于实际接收到的任务数量与所述未来任务的到达预测数量的差值,重新调整所述任务分类器以及所述预测算法的参数,包括:
任务分类器基于聚类预分组的各组特征,在一个新任务到达之后,读取所述新任务的属性值,并与所有任务集群的属性特征值进行距离计算,以将所述新任务分到距离值最小的组别;
更新所述距离值最小的组别的属性特征值;
在每个时间间隔,将不同的任务集群发送到预测池,以预测每个特定任务群的到达率;
当实际时间达到预测的时间点时,将实际值与预测值之间的差值打包为反馈,重新调整预测方法的参数。
3.如权利要求2所述的方法,其特征在于,还包括:
当任务被标记为突发状况时,按预定的顺序依次对多个虚拟机进行搜索,判断此虚拟机分配了此任务后是否满足所述约束条件;
如果是,则将此任务分配给此虚拟机,如果否,则继续搜索下一个虚拟机;
如果从常规状态转换到突发状态时,提高了所述PM的预留空间,判断分配给此PM的任务在任一运行时刻的CPU占用量或内存占用量是否超过设定的阈值,如果是,则从CPU占用量最小或内存的占用量最小的任务开始,将分配给此PM的任务转移到其它开启的PM或转移到新开启的PM,直到分配给此PM的任务在任一运行时刻的CPU占用量和内存占用量都未超过设定的阈值。
5.一种网络资源配置调度装置,其特征在于,包括:
趋势预测模块,用于通过任务分类器对请求处理的任务进行分组处理,生成至少一个任务集群;
基于单位时间内所述任务群集中增加的任务数量判断是否进入突发状态,如果是,则采用突发预测算法预测此任务群集中的未来任务到达的预测值,如果否,则采用常规预测算法预测此任务群集中的未来任务到达的预测值;其中,所述预测值包括:未来任务的到达预测时间和到达预测数量;
资源保留模块,用于根据预测值对网络资源进行相应地重新部署,以使在未来任务的任务量峰值到来时具有足够的处理资源;其中,所述网络资源包括:物理机PM和虚拟机VM;
参数调整模块,用于当到达所述未来任务的到达预测时间时,基于实际接收到的任务数量与所述未来任务的到达预测数量的差值,重新调整所述任务分类器以及所述预测算法的参数,包括:
任务分类器基于聚类预分组的各组特征,在一个新任务到达之后,读取所述新任务的属性值,并与所有任务集群的属性特征值进行距离计算,以将所述新任务分到距离值最小的组别;
更新所述距离值最小的组别的属性特征值;
在每个时间间隔,将不同的任务群集发送到预测池,以预测每个特定任务群的到达率;
当实际时间达到预测的时间点时,将实际值与预测值之间的差值打包为反馈,重新调整预测方法的参数。
7.如权利要求6所述的装置,其特征在于,
所述资源保留模块,用于当任务被标记为突发状况时,按预定的顺序依次对多个虚拟机进行搜索,判断此虚拟机分配了此任务后是否满足所述约束条件;如果是,则将此任务分配给此虚拟机,如果否,则继续搜索下一个虚拟机;
所述资源保留模块,用于如果从常规状态转换到突发状态时,提高了所述PM的预留空间,判断分配给此PM的任务在任一运行时刻的CPU占用量或内存占用量是否超过设定的阈值,如果是,则从CPU占用量最小或内存的占用量最小的任务开始,将分配给此PM的任务转移到其它开启的PM或转移到新开启的PM,直到分配给此PM的任务在任一运行时刻的CPU占用量和内存占用量都未超过设定的阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810726208.XA CN109005130B (zh) | 2018-07-04 | 2018-07-04 | 网络资源配置调度方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810726208.XA CN109005130B (zh) | 2018-07-04 | 2018-07-04 | 网络资源配置调度方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109005130A CN109005130A (zh) | 2018-12-14 |
CN109005130B true CN109005130B (zh) | 2022-05-10 |
Family
ID=64598178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810726208.XA Active CN109005130B (zh) | 2018-07-04 | 2018-07-04 | 网络资源配置调度方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109005130B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110519386B (zh) * | 2019-08-30 | 2022-04-19 | 中国人民解放军国防科技大学 | 云环境下基于数据聚类的弹性资源供应方法和装置 |
CN110865872B (zh) * | 2019-11-14 | 2022-07-08 | 北京京航计算通讯研究所 | 基于资源合理化应用的虚拟化集群资源调度*** |
CN114124733B (zh) * | 2020-08-27 | 2024-05-14 | 中国电信股份有限公司 | 业务流量的预测方法和装置 |
CN113098710B (zh) * | 2021-03-26 | 2022-07-12 | 北京赛博云睿智能科技有限公司 | 网络资源运行参数自调整与优化方法及装置 |
CN114417577A (zh) * | 2021-12-30 | 2022-04-29 | 浙江省科技信息研究院 | 跨平台资源调度与优化控制方法 |
CN115174695B (zh) * | 2022-07-18 | 2024-01-26 | 中软航科数据科技(珠海横琴)有限公司 | 一种用于分布式网络资源的调度***及方法 |
CN116033584B (zh) * | 2023-02-03 | 2023-10-20 | 阿里巴巴(中国)有限公司 | 空口资源调度方法、网络接入设备和通信网络 |
CN116880401A (zh) * | 2023-07-28 | 2023-10-13 | 江苏道达智能科技有限公司 | 一种自动化立体仓库控制***及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103150215A (zh) * | 2013-02-04 | 2013-06-12 | 浙江大学 | 虚拟环境下细粒度的cpu资源使用预测方法 |
JP2014048778A (ja) * | 2012-08-30 | 2014-03-17 | Oki Electric Ind Co Ltd | 需要予測装置、需要予測方法、およびプログラム |
-
2018
- 2018-07-04 CN CN201810726208.XA patent/CN109005130B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014048778A (ja) * | 2012-08-30 | 2014-03-17 | Oki Electric Ind Co Ltd | 需要予測装置、需要予測方法、およびプログラム |
CN103150215A (zh) * | 2013-02-04 | 2013-06-12 | 浙江大学 | 虚拟环境下细粒度的cpu资源使用预测方法 |
Non-Patent Citations (2)
Title |
---|
曹玲玲.面向绿色云计算的资源配置及任务调度研究.《中国优秀硕士学位论文全文数据库 信息科技辑》.2015, * |
面向绿色云计算的资源配置及任务调度研究;曹玲玲;《中国优秀硕士学位论文全文数据库 信息科技辑》;20150515;参见第3-4章 * |
Also Published As
Publication number | Publication date |
---|---|
CN109005130A (zh) | 2018-12-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108984301B (zh) | 自适应云资源调配方法和装置 | |
CN109005130B (zh) | 网络资源配置调度方法和装置 | |
US10620839B2 (en) | Storage pool capacity management | |
US9575664B2 (en) | Workload-aware I/O scheduler in software-defined hybrid storage system | |
US8869160B2 (en) | Goal oriented performance management of workload utilizing accelerators | |
CN108027889B (zh) | 一种用于增量式学习云***的训练、调度方法及相关设备 | |
US20120221730A1 (en) | Resource control system and resource control method | |
CN111176852A (zh) | 资源分配方法、装置、芯片及计算机可读存储介质 | |
CN104168318A (zh) | 一种资源服务***及其资源分配方法 | |
JPWO2008102739A1 (ja) | 仮想サーバシステム及び物理サーバ選択方法 | |
US10216543B2 (en) | Real-time analytics based monitoring and classification of jobs for a data processing platform | |
US10884667B2 (en) | Storage controller and IO request processing method | |
CN105607952B (zh) | 一种虚拟化资源的调度方法及装置 | |
CN110262897B (zh) | 一种基于负载预测的Hadoop计算任务初始分配方法 | |
CN114625500A (zh) | 云环境下拓扑感知的微服务应用调度的方法及应用 | |
CN116244085A (zh) | Kubernetes集群容器组调度方法、装置及介质 | |
CN109005052B (zh) | 网络任务预测方法和装置 | |
CN110796591A (zh) | 一种gpu卡的使用方法及相关设备 | |
CN106406976A (zh) | 云计算环境下io密集型应用识别方法及装置 | |
TW202215248A (zh) | 操作儲存系統的方法、以及對儲存資源的層級進行分區的方法 | |
US10430312B2 (en) | Method and device for determining program performance interference model | |
CN112882805A (zh) | 一种任务资源约束的利润优化调度方法 | |
US11416152B2 (en) | Information processing device, information processing method, computer-readable storage medium, and information processing system | |
CN109408230B (zh) | 基于能耗优化的Docker容器部署方法及*** | |
CN115499513A (zh) | 数据请求的处理方法、装置、计算机设备和存储介质 |
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 |