业务网云化的资源池容量规划方法

2022-02-03 06:14:02杨敏徐磊
移动通信 2022年12期
关键词:业务量利用率规格

杨敏,徐磊

(1.中电科普天科技股份有限公司,广东 广州 510000;2.中国联合网络通信有限公司江西省分公司,江西 南昌 330000)

0 引言

传统业务平台由于建设周期过长、资源利用率低、扩展性差等原因,无法适应运营商业务流量突发性、多变性需求。特别是春节、除夕等高峰时间来临时,传统平台无法通过扩容有效解决流量突发问题,因此无法满足用户的业务需求。为了应对上述问题,运营商纷纷采用业务网云化的方式来构建业务网云平台。通过将业务资源上云,

对大量的业务网资源进行统一管理和调度,业务网向用户提供新的业务能力时,通过资源池虚拟化技术构建业务云资源池,按需向用户提供资源,不需要频繁进行扩容建设,实现业务能力提供和业务平台建设分离。因此,业务网云化的实质是通过实现资源池计算资源、带宽资源、内存资源的虚拟化后,管理接口与资源平台进行对接,形成资源共享、按需分配、统一管理、动态调度的能力,实现异构、跨节点资源的管理[1-3]。众所周知,业务发展与业务网资源需求的容量评估紧密相关,精确的容量评估不仅能够使得运营商对业务网上云的预算规划更加贴近真实业务发展需求,还能够降低企业后期的运营成本。因此,本文就业务网云化的资源池容量规划问题进行探讨:首先,通过对业务量进行中长期预测,确定未来一段时间内用户对资源的需求量;然后,将用户对资源需求量转化为计算资源、带宽资源、内存资源的需求量;以各类规格虚拟机集合数量最小为目标,结合虚拟机资源约束、资源利用率和负载均衡约束,得到各种规格虚拟机的数量;最后,以最小化能耗和最小化最大链路为目标,考虑多维资源约束,确定物理服务器的容量。

1 业务网云化的资源池容量规划方法

业务网云化规划的目的就是根据业务发展的需求,通过资源的集约化管理,满足业务网快速发展对物理资源的需求。因此,业务网云化规划的步骤如下:

(1)对业务网的业务量(业务种类和用户数量)进行中长期预测,并根据业务量测算业务网资源池所需要的计算资源、存储资源和网络资源;

(2)考虑到业务网资源池中各个业务主要由虚拟机来承载,因此,以各类规格虚拟机数量最小为目标,考虑虚拟机资源、资源利用率和负载均衡等约束条件下,确定不同规格虚拟机部署的数量;

(3)虚拟机部署方案确定了物理服务器的容量规划,本文以整个系统能源效率和网络性能为约束,通过优化网络性能的同时,减少资源池能源消耗,从而解决不同规格数量的虚拟机如何放置到物理服务器的问题,进而实现物理服务器硬件资源规模的估计。

1.1 用户业务量需求预测

近年来,用户业务量预测方法倾向于采用机器学习[4-7]、深度学习[9-12]实现用户业务量的中长期预测。相关研究表明,采用机器学习、深度学习的用户业务量可有效实现中长期预测,优于传统回归分析、时间序列分析等短期预测方法[13-15]。本文采用深度学习的方法对用户业务量进行中长期预测。

对t 时刻每一个区域某种业务等间隔的时间序列xt,其中t=(t-T+1,t-T+2,…,t),系统通过获取T 个时间间隔(T 一般取60 周)的历史数据预测未来的业务流量。预测步长为K>30。

时间序列xt定义成一组时间序列向量=[xt-T+1,xt-T+2,…xt]T,采用深度卷积神经(简称:CNN,全称:Convolutional Neural Networks)网络对特征进行自动提取,然后将深浅层语义特征进行融合,最后利用长短期记忆网络算法实现时间序列的中长期预测。预测框架如图1 所示。

图1 用户业务量的预测流程

(1)采用卷积神经网络提取用户业务量的深浅层语义特征(粗细粒度特征提取)

将直接输入到卷积神经网络中,并将深浅层语义特征进行融合,如图2 所示:

图2 深浅层特征融合图

考虑到本文实际场景需求,采用2 层卷积层对用户业务量的时间序列进行提取:第1 个卷积层获得浅层次语义特征,第2 个卷积层获得深层次语义特征。为了简化模型结构,两个池化层实现不同层次特征的降采样,最终将两层降采样的特征展开融合,得到1*k5 个特征。

(2)采用长短期记忆网络实现业务量中长期预测

转化成1*k5 个特征=[F1,F2,…Fk5]T后,将其输入到LSTM(Long Short Term Memory,长短期记忆网络)中,实现中长期用户业务量时间序列的预测,具体过程如图3 所示。

图3 基于长短期记忆网络的业务量预测

首先,输入层输入m个1*k5 的特征向量,然后,采用LSTM 实现对m个特征向量的隐含特征提取,最后,基于隐含特征输出步长为K 的业务预测值。在对各类业务中长期预测的基础上,确定各种业务对计算资源、内存资源和带宽资源的需求量。

1.2 虚拟机容量规划

为了实现资源的灵活配置,虚拟机和用户之间的映射关系是非固定的,当用户进行业务请求时,管理器根据当前服务器现有资源占用情况以及服务器集群的负载情况决定哪一台虚拟机提供服务。

虚拟机容量规划问题可以抽象为多维资源约束的装箱问题,在已知各种虚拟机规格和业务需求的情况下,通过对不同规格虚拟机的组合优化,计算各种规格虚拟机所需要的数量。

假设第i种业务中长期预测值为xi,对应的计算资源、内存资源和带宽资源为那么n种业务对计算资源、内存资源和带宽资源的需求集合可以表示为A=。假设数据库中虚拟机规格集合MU={M1,M2,…,MJ},J表示虚拟机的规格(虚拟机的规格一般跟业务场景有关,业务场景越多,虚拟机的规格数量越多,不同规格虚拟机的计算资源、内存资源和存储资源是有区别的),那么为了更加有效利用资源,在保证业务正常运行的情况下,希望虚拟机数量越少越好,因此,虚拟机容量规划的问题可以转化为各类规格虚拟机集合数量最小,虚拟机容量规划问题表示为:

其中,N(Mj) 表示规格为Mj的虚拟服务器数量。

表示第i种业务部署在规格为Mj的虚拟服务器上的方案,∈(0,1) 1 表示有部署,否则为0。

那么考虑资源能力约束,本文对计算资源、内存资源和带宽资源进行约束,在保证虚拟机预留足够资源保证业务正常运行。即:

除此之外,我们还需要考虑虚拟机资源利用率和负载均衡的约束。

本文将计算资源、内存资源和带宽资源利用率阈值设为uc、um、ub,那么所有规格虚拟机资源利用率达到阈值水平公式可表示为:

负载均衡的约束选取CPU利用率cpuuse、内存利用率memoryuse、响应时间timeresponse、连接数connection和进程数process五个因素来反映第i台虚拟机的综合负载。五个因素的影响权重向量为[w1,w2,w3,w4,w5],且w1+w2+w3+w4+w5=1。那么每台虚拟机的负载均衡约束为:

其中,θ为每一个虚拟机负载阈值。不同规格虚拟机的因素影响权重和负载阈值是不同的。综合公式(1)—公式(9),得到了资源池需要的不同规格虚拟机数量。结合不同规格虚拟机的资源大小,得到整个资源池不同规格虚拟机的容量。

1.3 物理服务器容量规划

物理服务器容量规划可转化为虚拟机放置的问题。多种规格不同数量虚拟机如何放置,既能满足业务性能的需求,又能提高物理资源利用率,这是物理服务器容量规划研究热点问题。本文基于以下思路来考虑虚拟机放置问题:在业务闲时,通过资源整合的方式将虚拟机集中部署到某些设备上并将空闲的设备关闭或者设置为休眠,提高资源利用率;在业务忙时,考虑网络性能的约束,最小化最大网络链路利用率,从而网络流量分布更加均衡,避免网络链路拥塞问题的产生。因此,本文针对物理服务器容量规划的问题,提出一种能源效率和网络性能达到平衡的虚拟机放置方法,构建物理服务器与虚拟机匹配模型,以能源效率能耗最小化和最大网络链路利用率最小化为目标,实现物理服务器容量规划。

假设Nm代表物理服务器的个数,Ym表示物理服务器状态,Ym={1,0},=1 表示物理服务器m为激活状态,0表示物理服务器m为休眠状态。表示规格为Mj的第k个虚拟机部署到第m台物理服务器中,0 表示规格为Mj的第k个虚拟机没有部署到第m台物理服务器中。那么,各个物理资源池的总能耗可以表示为:

其中,Em表示物理服务器的能耗水平,表示物理服务器m的计算资源大小;表示物理服务器m的内存资源大小;表示物理服务器m 的带宽资源大小。由于物理资源池中物理服务器的计算资源、内存资源和带宽资源是具有很大的差异性的,因此,虚拟机的部署数量需要根据各个物理服务器的资源能力确定。公式(10)的最后一项表示一个服务器只能部署到一台物理服务器中。

除了考虑能耗,还需要考虑网络流量均衡的问题,避免链路拥塞。(s,t) 表示网络链路,Cs,t表示网络链路的容量。表示分配到链路(s,t) 上虚拟机对(Mj,Mk)的流量大小,那么链路利用率可以表示为:

为了让最大链路利用率最小化,问题可以表示为:

基于资源池总能耗最小化和最大链路利用率最小化,得到总目标为:

通过对公式(13)进行计算,得到整个资源池物理服务器的数量,结合不同服务器的资源大小,得到整个资源池各类资源的容量。

2 工程实施案例与分析

本文以某省联通短信业务平台的资源池容量规划为例,某省作为劳务输出大省,业务在过年的一个月内波峰波谷特别明显,因此,平台的建设能力主要参考过年期间的某几天波峰的业务量,这种情况最适宜能够验证业务云平台按需分配弹性调整能力。

为了验证本文方法的有效性,本文将按照上述的方法对50 周后的用户业务量进行预测后对虚拟机和物理服务器的容量进行规划,并基于需要增加容量规划的方案对原来的短信中心进行扩容方案部署,在方案部署之后通过对业务进行模拟并对平台进行性能测试、压力测试,基于上述的测试进行配置调整,最后进行系统上线,云化部署测试流程如图4 所示。

图4 云化部署测试流程图

2.1 负载测试结果

负载测试是实现集群负载均衡的实时检测功能,管理者通过实时检测集群的负载均衡情况,对照负载均衡的水平随时调整云平台的资源利用率阈值,提升云平台的可靠性。云资源池负载均衡测试结果如图5 所示:

图5 负载均衡测试结果图

由于在规划虚拟机数量的时候已经考虑了负载均衡的约束以及以最小化最大链路利用率的目标规划物理服务器容量,因此,本文的方法能够最合理化利用资源池的物理资源,不至于在忙时负载过重导致虚拟机宕机从而耽误任务顺利执行,也不会由于闲时业务需求不大以至于物理资源出现闲置的现象。

2.2 压力测试结果

通过不同请求数和进程数下系统的响应时长,测算一定时间内所能处理的请求数量。本文分别对10 000 个请求100 个进程、50 000 个请求100 个进程、100 000 个请求100 个进程和200 000 个请求100 个进程进行压力测试。具体的压力结果如图6 所示。

图6 展示了云平台对不同进程不同请求的压力测试性能对照情况,由图可知,在发送个数在10 000-200 000区间测试4 次,4 次的请求处理成功率均为100%(上图失败请求数均为0),每个测试的平均处理的时间从2.328—2.699 ms 之间,业务处理的时间满足业务最低时延的需求。由此可知,基于本文方法设计的云平台在高请求和进程的情况下仍然具有较高的性能。这也在一定程度上论证了本文在规划物理服务器容量时,考虑最大链路利用率最小化的目标,能够让云资源池能够在业务量高峰仍然具备较高的性能。

图6 不同请求不同进程的压力测试结果

3 结束语

本文以解决业务网集约化资源池的虚拟机和物理服务器容量规划问题为目标,提出一种业务网云化的资源池容量规划方法。由实验可知,本文方法能够有效估计虚拟机和物理服务器的容量,该方法不仅能够合理化利用资源池的物理资源,还能降低资源池能耗水平,较好地实现网络能耗与网络性能的平衡。

猜你喜欢
业务量利用率规格
快递业务量累计完成480.9 亿件
近3成苗企难以维持!规格越大越亏,2022如何让泥鳅赚钱?
当代水产(2022年6期)2022-06-29 01:12:08
闭月羞花
宝藏(2021年6期)2021-07-20 06:12:22
2020年业务量达830亿件快递跑出经济活力
山钢日钢1.2mm极限薄规格带钢的生产实践
山东冶金(2019年1期)2019-03-30 01:35:30
化肥利用率稳步增长
做好农村土地流转 提高土地利用率
浅议如何提高涉烟信息的利用率
消费导刊(2017年24期)2018-01-31 01:29:29
8月全国快递业务量完成32.6亿件同比增29.4%
人民交通(2017年10期)2017-10-25 11:13:08
板材利用率提高之研究