APP下载

基于空闲率权重的容器云多维资源调度方法*

2023-05-12周永福徐胜超

计算机与数字工程 2023年1期
关键词:空闲内存容器

周永福 徐胜超

(1.河源职业技术学院电子与信息工程学院 河源 517000)(2.广州华商学院数据科学学院 广州 511300)

1 引言

容器云多维资源可以实现将整个应用托管的功能,还有利用一键部署提升效率的特点,但由于各种多维资源的高速增加,对容器云基础设施和承载性能提出了更高的要求。如果通过提升容器云规模,增加资源对业务服务的承载能力,同时也会提高运营企业的基础设施成本与运维费用,并且较大的容器云规模,会导致部分容器云一直处于空闲状态,浪费资源,为此需要对容器云资源完成高效的调度。

当前研究学者们对容器云多维资源的评价和调度研究取得了一定成果,文献[1]提出了基于利益相关视角算法的容器云多维资源评价与调度方法,通过计算存储资源重要程度,建立多维云资源调度模型,通过二级调度可以将信息很好保存下来,不会丢失有效信息。但方法没有设定调度阈值,导致利益程度高的任务会一直占用内存资源,低等级利益任务长时间等待;文献[2]提出了用于动态云计算的新型管理程序,在虚拟机的帮助下,最大程度地利用资源并进行资源调度。该方法的调度效率更高,但却没有考虑资源局部性,调度效果差。

针对上述问题,本文提出一种基于空闲率权重的容器云多维资源评价及调度方法,通过量化CPU与内存,获取评价指标,依靠资源任务运行速度与历史记录,对容器云的空闲率进行评价,依靠评价结果对容器云进行从小到大的排列,随后将多维资源依次储存在容器云内,依靠容器云的空闲率权重指标作为调度依据,使空间利用率达到最高,降低资源损耗,防止有效信息丢失,以此实现对容器云多维资源的评价与调度[3]。

2 基于空闲率权重的容器云多维资源评价

2.1 容器云容量空闲率权重计算指标

容器云存在动态性,会共享同一个资源池的多维资源。容器云性能的整体表现会被很多方面所影响[4~5],针对不同的资源,需要考虑的侧重点也各不相同。本文从CPU 与内存两个方面进行量化评价,确定容器云空闲率权重计算指标,其具体流程如下所示。

1)CPU

CPU性能标准分四类:速度、容量、吞吐量与响应时间。吞吐量能够被表示为单位时间内容器云的业务量,比如每秒能够存储的资源总量。响应时间表示容器云的运行速度,例如在储存时需要联机的响应时间与批量运行的时间。容量和速度为同期存在资源的总容量[6],比如处理器颗数、处理器速度等。

2)内存

虚拟网络下容器云内存会考虑两种因素:第一种即虚拟网络使用的内存量,反映了多维资源在容器云中所有内存释放、内存交换状况;第二种虚拟网络造成的内存开销,作为预测网络任务需求量。假如为应用资源分配的容器云内存较低,就会导致应用资源反复在磁盘分页内迭代运行,致使处理与储存性能降低;反之,假如分配了较多的容器云内存,导致硬件资源的不足,使容器云利用率产生下滑。在容器云处于峰值运行环境时,收集内存使用信息,可以确保多维资源存储任务分配到大小适当的空间。

2.2 容器云节点作业运行速度预测模型

本文以空闲率权重作为评价目标,对容器云储存节点的特征进行计算,依靠历史记录与任务运行速度对下一次多维资源任务的运行速度进行预测评估。在容器云中,节点当前的负载状况[7]是能够被查询的,在历史记录内查询上一次作业的平均负载,依靠式(1)组建模型预测任务运行速度:

式中,ak表示k次运行速度预测时容器云的实际负载强度,表示序号是m的容器云节点第k次运行的预测速度,表示序号是m的容器云节点第k次运行的实际运行速度,单位为MIPS,ρ代表预测运行速度的权重系数[8],参与运行的所有容器云节点在完成作业之后,会记录节点作业状况[9],记录内存作业运行速度与容器云负载程度信息。

2.3 容器云多维资源综合评价模型

在对多维资源进行储存的过程中,搜索适合的容器云储存节点,凭借量化指标与节点运行速度预测模型构建评价模型,其公式:

式中,Em表示容器云节点评价模型,Nm表示指标与节点运行速度预测模型,Vm表示序号是m的容器云节点,ω代表调节系数,适应性调整模型内容器云节点的运算能力、资源储存任务运行能力,以达到最优的运算效果。

在确定容器云所能够承载的最大多维资源规模后,以性能量化指标[10~13]当作标准值,评价与规划容器云负载所需要的资源需求。依靠负载性能评价结果,挑选空闲率权重较高、配置标准的容器云。

3 容器云多维资源调度方法

在确保高任务服务质量前提下,以容器云的空闲率权重指标作为调度依据,使空间利用率达到最高,降低资源损耗,避免出现信息因存储空间不足导致的丢失问题,实现容器云多维资源的均衡调度。李雅普诺夫优化方法是一种成熟的优化控制算法,拟定调度函数公式为[14~15]

其中,τk代表时间片,为容器内某时间段的资源队列长度,表示第i个容器在时间片内处理资源的性能,μi表示为第i个容器云在τk内信息存储能力。

依靠李雅普诺夫优化方法获得目标优化函数:

方法一 容器最大负载排序资源调度

拟定目前时间片达到的多维资源任务负载总量 是λi(τk),队列长度列表为[Q1(τk),Q2(τk),…,QK(τk)]。

步骤1在列表[Q1(τk),Q2(τk),…,QK(τk)]内搜索最大值Qi(τk),那么该容器分配的任务数量方式就是:

步骤2把步骤1 内进行任务分配后的容器从内剔除。

步骤3迭代步骤1 与步骤2 直至λ(τk)=0,同时更新容器队列情况。

方法二 容器最小负载排序资源调度

拟定目前时间片达到的多维资源任务负载总量 为λi(τk),队列长度列表[Q1(τk),Q2(τk),…,QK(τk)]。

步骤1在列表[Q1(τk),Q2(τk),…,QK(τk)]内搜索非0 的最小值Qi(τk),那么容器分配的资源数量公式就是:

步骤2把步骤1 内已经进行分配之后的容器从[Q1(τk),Q2(τk),…,QK(τk)]内剔除;

步骤3迭代步骤1 与步骤2,直至λ(τk)=0,同时更新容器队列状态。

上述方法一与二的区别在于:方法一是在确保容器空闲率权重最低的前提下,凭借最大负载排序资源调度,以容器云的利用率作为指标,按照从小到大的顺序排列调度,使得负载较大的容器云最先达到最大利用率的上限;方法二是在确保容器空闲率权重最低的前提下,使非空队列中负载较小的容器云先达到资源利用率上限。这两种方法都是根据容器空闲率权重,确保资源利用率最大化的前提下,实现对容器云多维资源的调度。

4 实验证明

4.1 实验参数设置

为验证方法调度性能,在云数据中心内进行评测,同时使用Java 语言编程,依靠Cloudsim 模拟器模拟多维资源的不同参数,同时将用户请求数量维持在[5,400]区间内。Cloudsim 模拟器能够给出一种全局与可扩展式的实验框架,方便测试其调度结果是否精准。Cloudsim模拟器的模拟步骤如下:

步骤1:用时间和用户数,traceflag 初始化cloudSim;

步骤2:创建数据中心Datacenter;

步骤3:创建数据中心的Broker;

步骤4:创建虚拟机VM,虚拟机列表被提交到broker;

步骤5:创建微云cloudlet,把微云cloudlet 列表提交到broker,绑定虚拟机VM和微云;

步骤6:开始模拟;

步骤7:停止模拟;

步骤8:输出结果。

4.2 容器云多维资源评价效果分析

拟定实验共存在2 个容器云,大小皆为500GB,已经运行了一段时间,导致容器云存储了不同程度文本、图像、音频资源,其中容器云1 内多为音频、图像数据,并含有大量视频;容器2 中多为文本信息,另外还有少量的图像。对比使用所提方法、文献[1]方法以及文献[2]方法,获取容器云内多维资源评价结果,综合评价值计算公式如正文式(2)所示。其中,采用本文方法一评价容器云1 多维资源,采用本文方法二评价容器云2 多维资源,评价结果越高表示容器内多维资源占用越大,结果如表1所示。

表1 不同方法下容器云多维资源评价结果

通过表1 评价指标能够得出,相比本文对比,本文方法评价值和设定的容器资源拟合程度较高,其中容器1 内存在大量图像、音频以及视频数据,CPU 使用程度较高,空闲率较小,资源综合评价值较高,容器2内大量文本信息和少量其他数据,CPU和空间占用较低,资源综合评价较低;反观文献方法,剩余内存、占用CPU 以及综合评价之间无法一一对应,所以这里能够证明本文方法评价更为精准。因为本文设计了容器云节点作业运行速度预测模型,在一定程度上增加了评价精准性。

4.3 容器云多维资源调度效果分析

为验证本文方法调度效果,以表1 中所提方法得出的指标评价值为基础,记录3 种方法调度后的容器云1、2变化剩余内存、使用CPU的情况。

通过图1~3能够看出,当容器云CPU 处于较高负载时或者低负载时,本文方法都能进行均衡调度,以容器云空闲权重作为指标,将正在等待的资源存储序列均衡调度到空间容器中,避免容器出现负载过重问题,完成资源平衡利用;反观采用本文对比方法处理后,容器云在仿真时间内,CPU 和内存并没有明显变化。本文以容器云的空闲率权重指标作为调度依据,提高空间利用率,降低资源损耗,避免因存储空间不足致使信息丢失。

图1 容器1CPU负载使用率变化情况

图2 容器2CPU负载使用率变化情况

图3 不同方法下容器云1、2剩余内存变化情况

5 结语

本文设计了基于空闲率权重的容器云多维资源评价及调度方法,通过计算容量空闲率权重指标、构建节点作业运行速度预测模型以及多维资源综合评价模型,优化多维资源调度方法,实现对容器云多维资源的评价与调度,通过实验得出,该方法对容器云多维资源评价的精准性高、负载均衡强以及调度速度快,具有较好的应用性能。但本文方法需要针对不同的容器技术对评价与调度方法进行相应的调整与优化,使算法能够适应多种调度环境。

猜你喜欢

空闲内存容器
恩赐
Different Containers不同的容器
外部高速缓存与非易失内存结合的混合内存体系结构特性评测
难以置信的事情
“鸟”字谜
“春夏秋冬”的内存
彪悍的“宠”生,不需要解释
WLAN和LTE交通规则
取米
基于内存的地理信息访问技术