一种防御云平台虚拟机启动风暴的方法技术

技术编号:15541101 阅读:73 留言:0更新日期:2017-06-05 10:40
本发明专利技术涉及虚拟机管理技术领域,特别是一种防御云平台虚拟机启动风暴的方法。本发明专利技术首先是将需要批量开启的虚拟机组合成锁定队列,然后动态计算出当前物理机CPU负载和网络IO,如果两者数据未达到预期设定的顶峰值,则在锁定队列中选出一台优先级高的虚拟机,执行开机命令之后再将线程睡眠一段时间,最后检测开机成功完成后,继续进行下一个锁定队列虚拟机开机。本发明专利技术解决了虚拟机同时批量开机导致黑屏的情况,确保客户环境可以正常使用,增大了用户体验。

Method for preventing starting storm of cloud platform virtual machine

The invention relates to the technical field of virtual machine management, in particular to a method for preventing the starting storm of a cloud platform virtual machine. The present invention is the first virtual unit will need to open the lock queue batch synthesis, and then calculate the current dynamic physical machine CPU load and IO network, if the two data not to achieve the desired peak value, choose the virtual machine a high priority in the lock queue, then executes the boot command thread to sleep for a while finally, the detection on successful completion, proceed to the next virtual machine boot lock queue. The invention solves the problem that the virtual machine causes the black screen at the same time in batch startup, and ensures that the customer environment can be used normally, and the user experience is increased.

【技术实现步骤摘要】
一种防御云平台虚拟机启动风暴的方法
本专利技术涉及虚拟机管理
,特别是一种防御云平台虚拟机启动风暴的方法。
技术介绍
随着云计算行业日益发展,为了让云主机更高效低耗运行,采用镜像快照形式创建虚拟机,但是这个技术带来了批量启动虚拟机的启动风暴问题:一是客户在上班时间段,都会去启动虚拟机,这时候可能会出现开机黑屏的情况;二是虚拟机批量同时开启带来网络IO阻塞问题;三是虚拟机批量同时开启会导致宿主机负载升高,影响宿主机上的虚拟机和业务运行;四是虚拟机开机失败,影响客户日常业务运行。为了解决虚拟机启动风暴问题,需要一种防御云平台虚拟机启动风暴的方法,从而解决虚拟机同时开机黑屏和失败等问题。
技术实现思路
本专利技术解决的技术问题在于提供一种防御云平台虚拟机启动风暴的方法;解决防御虚拟机同时批量开机出现的启动风暴问题,确保客户环境可以正常使用,满足大批量虚拟机同时启动,增大虚拟机的稳定性。本专利技术解决上述技术问题的技术方案是:所述的方法包括如下步骤:步骤1:将需要开机的虚拟机加入等待队列中;步骤2:动态计算出物理机平均cpu负载和网络IO;步骤3:判断步骤2两组数据值是否达到预设高峰值;步骤4:满足步骤3的前提下,根据先进先出和优先级算法选择一台虚拟机;步骤5:执行开机命令,让线程进去等待状态;步骤6:检测开机是否完成,如果返回失败,则返回步骤2;步骤7:检测成功后,删除对应虚拟机的开机队列。所述的动态计算是获取N次数据,分别去掉两组最低和最高数值,然后再计算剩下N-4数据平均值。所述等待队列是基于分布式同步锁的技术实现线程安全队列;所述cpu负载是cpu能够并行处理的事务的数量,是cpu个数*cpu核数的值;所述预设高峰值是根据日常最高负载平均值推算出来该物理机负载高峰值;所述先进先出和优先级算法是指哪一个虚拟机先入队列就可以先发出的原则,并且每一台虚拟机都是赋予了一个权限,根据权限值和加入队列时间来选择出列的虚拟机;所述线程等待状态是指云计算平台系统当前线程进入阻塞状态。本专利技术通过监控物理机负载和网络IO值来实现虚拟机开机队列等待,根据先进先出及优先级算法来分批筛选虚拟机,实现满足大批量虚拟机同时成功开启,并且不影响宿主机上其他虚拟机和业务的运行。本专利技术给大型桌面云环境提供了有效的支撑,有效防御了虚拟机启动风暴问题,跟其他云平台系统处理启动风暴问题对比,他们有些是才去定时任务去开机,这样子的话会导致资源的浪费,客户虚拟机不一定都需要每天定时去启动,本专利技术就可以满足客户随时启动虚拟机都可以防御虚拟机启动风暴问题。本专利技术解决了虚拟机启动风暴的同时,也可以让宿主机稳定运行虚拟机,时刻监控着负载来处理虚拟机操作,让客户云平台更加节能,高效,稳定运行。附图说明下面结合附图对本专利技术进一步说明:图1为本专利技术方法流程图。具体实施方式如图1所示,本专利技术的的基本步骤是:步骤1:将需要开机的虚拟机加入等待队列中;步骤2:动态计算出物理机平均cpu负载和网络IO;步骤3:判断步骤2两组数据值是否达到预设高峰值;步骤4:满足步骤3的前提下,根据先进先出和优先级算法选择一台虚拟机;步骤5:执行开机命令,让线程进去等待状态;步骤6:检测开机是否完成,如果返回失败,则返回步骤2;步骤7:检测成功后,删除对应虚拟机的开机队列。并且,动态计算是获取N次数据,分别去掉两组最低和最高数值,然后再计算剩下N-4数据平均值。cpu负载是cpu能够并行处理的事务的数量,是cpu个数*cpu核数的值。根据日常最高负载平均值推算出来该物理机负载高峰值。指哪一个虚拟机先入队列就可以先发出的原则,并且每一台虚拟机都是赋予了一个权限,根据权限值和加入队列时间来选择出列的虚拟机。相关获取宿主机负载和防御代码如下:获取宿主机负载代码:防御代码:本文档来自技高网...
一种防御云平台虚拟机启动风暴的方法

【技术保护点】
一种防御云平台虚拟机启动风暴的方法,其特征在于:所述的方法包括如下步骤:步骤1:将需要开机的虚拟机加入等待队列中;步骤2:动态计算出物理机平均cpu负载和网络IO;步骤3:判断步骤2两组数据值是否达到预设高峰值;步骤4:满足步骤3的前提下,根据先进先出和优先级算法选择一台虚拟机;步骤5:执行开机命令,让线程进去等待状态;步骤6:检测开机是否完成,如果返回失败,则返回步骤2;步骤7:检测成功后,删除对应虚拟机的开机队列。

【技术特征摘要】
1.一种防御云平台虚拟机启动风暴的方法,其特征在于:所述的方法包括如下步骤:步骤1:将需要开机的虚拟机加入等待队列中;步骤2:动态计算出物理机平均cpu负载和网络IO;步骤3:判断步骤2两组数据值是否达到预设高峰值;步骤4:满足步骤3的前提下,根据先进先出和优先级算法选择一台虚拟机;步骤5:执行开机命令,让线程进去等待状态;步骤6:检测开机是否完成,如果返回失败,则返回步骤2;步骤7:检测成功后,删除对应虚拟机的开机队列。2.根据权利要求1所述防御云平台虚拟机启动风暴的方法,其特征在于:所述的动态计算是获取N次数据,分别...

【专利技术属性】
技术研发人员:张志江杨松季统凯
申请(专利权)人:国云科技股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1