一种虚拟化集群心跳算法.doc_第1页
一种虚拟化集群心跳算法.doc_第2页
一种虚拟化集群心跳算法.doc_第3页
一种虚拟化集群心跳算法.doc_第4页
一种虚拟化集群心跳算法.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一种虚拟化集群心跳算法 刘明锦 (四川水利职业技术学院,四川成都611231) 摘要:随着虚拟化技术逐渐在数据中心环境中的普及,虚拟化系统的容灾成效日益成为人们关注的焦点,而虚拟化集群的心跳算法是关系虚拟化容灾成效的关键技术之一。研究了一种虚拟化的心跳算法,该算法通过利用所有网络节点有序的进行网络心跳检测,输出一个布尔值,负责裁判进程的Master主机根据该值判断节点是否出现故障,可用于快速检测出集群环境中节点的故障。 关键词:虚拟化;集群;心跳;高可用性 :TN711?34:A:1004?373X(xx)17?0110?04 0引言现在是云计算的时代,而虚拟化是云计算的基础。为了保障数据的安全性,采用虚拟化技术之后一般都需要做基于虚拟化的高可用性集群,其中心跳检测技术是高可用性集群中非常关键的技术,能够在一定的时间内准确地检测出物理服务器的可用状态(存活或者宕机)的心跳检测技术是实现高可用性的前提和保障。本文提出了一种新的虚拟化的心跳优化算法(MethodofVirtualizationHighAvailability,MVHHA),该算法通过集群内物理主机定期发出代表可用性的值,利用HA预设的失效阈值与值进行比较判断数据中心内节点的状况,该算法可用于采用虚拟化技术的高可用集群中主机的存活检测。 在虚拟化领域,常用的检测方法是由一台Master主机(Master由虚拟化集群建立之初由集群选定)在设定的时间内(5s为一个检测周期)进行HA内的主机存活检测,检测结果输出一个Booleanvalue布尔值,通过该值的状态判断主机是否存活。通常情况下,主机存活的检测往往在HA高可用性过程(HA高可用性过程包括主机存活检测、失效后的主机解锁、接管以及业务恢复等)中占用时间最长。这种方法比较简单直观,但是检测效率较低、检测时间过长,在一些对于高可用性要求较为严苛的环境中不利于业务的迁移。 1算法描述 MVHHA算法主要在虚拟化集群的高可用性环境下通过心跳信号检测主机的存活情况。该算法将检测进程和裁判进程分开。检测进程pi(i=1n)在集群内的节点(主机)中运行,监控自身节点的运行状况,同时通过进程pi检测集群内的其他节点状况。进程pi定期向其他节点上的pi(i=2n)发送心跳检测包,其他节点的检测进程收到该包之后,返回一个Boolean。如果在规定时间内,该进程收到了其他所有检测进程返回的数据包,表示集群可用。如果没有收到某一台节点的心跳检测包,立刻报告给负责裁判进程的Master主机,由Master主机的裁判进程q进行记录,并返回记录给报告故障的进程pi。 为了避免因为网络状况恶化或者主机问题出现的误报,检测进程采用单独的网络进行信号传输,同时,该算法要求检测进程pi在收到检测请求时,会比对检测信号的pi进程序号,如果是进程序号为pi-1的检测进程发出的信号,那么在返回Boolean值之后,pi会在预设周期Ti内进行下一次的心跳检测。 同时,为了防止Master宕机引起的集群崩塌(单点故障),pi(i1)在发送报告给Master时,如果在规定时间t内没有收到Master主机的pi(i=1)检测进程的回应,将报告发送给pi+1(i=1)即可。 该算法使用了集群内的所有节点进行多维度的检测,能够快速检测出集群内的节点故障,便于HA高可用性节点上的虚拟机迅速定位和迁移。 从图5中可以看到,在第2行和第4行时即0.2s和0.4s时,Master分别收到了第一台Slave和第3台Slave的报告,至此,关于心跳优化算法的虚拟仿真完成。 原来的心跳信号在5s内由Master主机发送1次心跳检测,也就是说如果出现主机宕机情况,检测时间至少需要5s以上,在采用了优化算法之后,由于采用了类似分布式检测的优化算法,在Ti的间隔内由不同的主机按照一定的序号进行集群内的循环心跳信号检测,如果在Ti时间之内有主机宕机,即可检测出来。 该算法相对于原来算法有着以下优势: (1)快速定位。可以在很短的时间内判定主机出现故障,快速定位故障主机。 (2)时间减少。原算法需要进行检测3次(防止误判),每次5s,整个过程耗时15s。而采用集群内其他主机一同参与检测过程,检测次数为2次,耗时为2Ti秒(设定Ti的时间小于1s)。 (3)增加检测正确性。以往都是由Master主机进行心跳检测,如果出现网络掉包等故障时,可能会出现报错的情况,而进行优化后,可以提供一个所有主机参与的检测结果,提供了更高的正确性。 (4)增加了集群的稳定性。如果出现故障的主机是Master,那么Slave主机会马上进行Master主机的选举,避免了HA过程出现更长时间的等待,增加了集群的稳定性。 4结语 本文提出了一种虚拟化集群的心跳算法,通过该算法对心跳检测流程进行改进,可以极大地减少节点故障的检测时间,它克服了传统心跳机制耗用时间较长、效率低下的问题,同时解决了大规模节点状态下的网络拥塞问题,具有检测效率高、准确性高,具有伸缩弹性等特点。同时,如何利用子网的划分提高网络心跳检测的效率仍然是一个值得深入研究的课题。 参考文献 1王欣.VMware软件虚拟化研究及应用J.数据通信,xx(6):30?32. 2何禹,胡宇鸿,王一波.虚拟化技术在校园网数据中心的应用J.电子科技大学学报,xx,36(6):1461?1464. 3VMware.VMware文档DB/OL.xx?02?23.:/.vmware./support/support?resources/pubs. 4GULATIA.VMwaredistributedresourcemanagement:design,implementation,andlessonslearnedEB/OL.xx?02?15.:/waldspurger/carl/papers/drs?vmtj?mar12.pdf. 5刘媛媛,高庆一,陈阳.虚拟计算环境下虚拟机资源负载均衡方法J.xx,36(16):30?32. 6KATSAROSD,PALLISG.CloudputingJ.IEEENet?work,xx,25(4):4?5. 7KTAMURAK,HOMMAH.Storagevirtualizationsystemandmethods:US,6857059B2P.xx?12?13. 8NICOLIIWB,BOKORBR,HAGGARPF,etal.Avatarcloninginavirtualworld:US,8584024B2P.xx3?11?12.9王德军,王丽娜.容灾系统研究J.计算机工程,xx,31(6):43?45. 10LOVELANDS,DOWEM,LEFEVREF,etal.Leve?ragingvirtualizationtooptimizehigh?availabilitysystemconfigura?tionsJ.JournalofIBMSystems,xx,47(4):591?604. 11NATHUJIR,SCHWANK.Virtualpower:coordinatedpowermanagementinvirtualizedenterprisesystemsC/Procee?dingsofxxACMSIG

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论