【技术实现步骤摘要】
一种基于RNN时间序列预测的服务器集群动态伸缩方法
本专利技术属于云计算领域。
技术介绍
云计算(CloudComputing)是一种随着互联网高速发展带动起来的新型计算方式,通过高速的互联网传输,可以将共享的硬件基础设施、软件资源和信息按需求提供给各种手机和计算机等终端。云可以说是对网络链接对一种抽象,也可以用来表示底层基础设施的抽象,通过互联网讲大量的运算资源链接起来,用户不需要再关心“云”中基础设施的细节,不必需要知道硬件的运维知识,只需要按照自己的需求,向云端请求计算资源。可以说弹性伸缩是云计算的一个重要特点,但是传统的服务器扩容方案,一种是纵向拓展,直接修改扩展虚拟机配置,这样一般需要重启服务器,然而大多数公司的服务是不允许中间停止的。另外一种是通过集群的方法组织服务器资源,在需要的时候适当增加服务器节点,然而这样有一定滞后性,服务器负载高峰往往是突发性的,在高峰到来之际再扩容,可能服务器已经无法处理负载甚至宕机。传统的机器学习预测一般需要大量的特征才能建立合适的模型,而服务器的负载状况一般只有CPU利用率和内存利用率两条特征,机器学习无法对这种数据集进 ...
【技术保护点】
1.一种基于RNN时间序列预测的服务器集群动态伸缩方法,其特征在于包括以下步骤:(1)云计算资源以服务器集群的形式存在,用OpenStack统一进行管理,每台服务器配置一致,服务器已经进行负载均衡,集群在初始启动时建立两种服务器,一种持久态服务器,即无论集群负载情况如何都不会关闭,另外一种备用态服务器,正常情况下以镜像的方式由OpenStack统一管理,需要时由运维脚本进行启动或者关闭;通过OpenStack内置的监控对服务器负载状况进行监测,每隔15分钟进行一次记录,记录内容为当前时间t,所有服务器节点CPU利用率的平均数xt,所有服务器的内存平均利用率mt;在取得数据集 ...
【技术特征摘要】
1.一种基于RNN时间序列预测的服务器集群动态伸缩方法,其特征在于包括以下步骤:(1)云计算资源以服务器集群的形式存在,用OpenStack统一进行管理,每台服务器配置一致,服务器已经进行负载均衡,集群在初始启动时建立两种服务器,一种持久态服务器,即无论集群负载情况如何都不会关闭,另外一种备用态服务器,正常情况下以镜像的方式由OpenStack统一管理,需要时由运维脚本进行启动或者关闭;通过OpenStack内置的监控对服务器负载状况进行监测,每隔15分钟进行一次记录,记录内容为当前时间t,所有服务器节点CPU利用率的平均数xt,所有服务器的内存平均利用率mt;在取得数据集后对这个数据集进行RNN时间序列预测建模;给定(xt,xt+1,xt+2),通过RNN模型,希望预测xt+3,即下一时刻的cpu利用率,xt为不同时刻的输入ht为隐藏状态,ot为不同时刻的输出;(2)神经网络建模,RNN神经网络一共有三层;分别为第一层的输入层、第二层的隐藏层和第三层的输出层;在建模过程分为时序前向传播算法和时序反向传播算法时序前向传播算法描述如下:因为数据点为每隔15分钟记录一次,这边描述一次循环的步骤:①在t时刻第一层每次输出为ht;②将第一层与第二层借由一下公式连接:ht=φ(Uxt+Wht-1)(1)ht为t时刻的隐藏层,初始化为一个全部为0的向量、U是权重矩阵连接此时刻的CPU利用率,W是权重矩阵连接上一时刻隐藏层,φ为隐藏层的激活函数;③将第二层与第三层借由以下公式连接:其中V是权重矩阵连接此时刻的隐藏层,为输出层的变换函数;④最后ot为第一次循环的输出结果(3)将所有数据循环加入模型以后,每加入一次新数据均重复一次步骤(2),,预测出下一个15分钟的CPU使用率;(4)输入层改为内存的数据,重复步骤(2)(3),计算出未来15分钟的内存利用率...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。