一种虚拟机迁移方法及装置的制造方法_4

文档序号:9672963阅读:来源:国知局
定迁移策略为停机进行迁移。
[0157]若判断单元804判断的结果为预期剩余时间不小于预设的最大停机时间,则根据累计发送数据量和实际传输带宽,确定迁移策略。
[0158]结合第一种实现方式,在第二种实现方式中,
[0159]判断单元804,还用于:判断确定单元803确定的累计发送数据量与实际传输带宽是否均小于设定值。
[0160]确定单元803,具体用于按如下方式根据累计发送数据量和实际传输带宽,确定迁移策略:
[0161]若判断单元804判断的结果为累计发送数据量与实际传输带宽均小于设定值,则增大预设的最大等待时间,并确定迁移策略为返回执行将源虚拟机内存中存储待迁移数据的内存页标记为脏页的过程,并在时间达到增大的等待时间后,向目标虚拟机迁移标记为脏页的内存页中存储的待迁移数据。
[0162]若判断单元804判断的结果为累计发送数据量与实际传输带宽不是均小于设定值,则根据当前已执行的迁移次数确定迁移策略。
[0163]结合第二种实现方式,在第三种实现方式中,判断单元804,还用于:
[0164]判断迁移单元802已执行的迁移次数是否超过预设的最大迁移次数。
[0165]确定单元803,具体用于按如下方式根据当前已执行的迁移次数确定迁移策略:
[0166]若判断单元804的判断结果为当前已执行的迁移次数超过预设的最大迁移次数,则确定迁移策略为停机进行迁移。
[0167]若判断单元804的判断结果为当前已执行的迁移次数未超过预设的最大迁移次数,则根据设定迁移次数中记录的预期剩余时间,确定迁移策略。
[0168]结合第三种实现方式,在第四种实现方式中,确定单元803,还用于:
[0169]确定设定迁移次数中记录的预期剩余时间的方差。
[0170]确定预期剩余时间曲线图的曲线斜率值,预期剩余时间曲线图是以迁移时间为横轴,预期剩余时间为纵轴,绘制的预期剩余时间与迁移时间之间关系曲线图。
[0171]判断单元804,还用于:
[0172]根据确定单元803确定的方差和曲线斜率值,判断预期剩余时间是否收敛。
[0173]确定单元803,具体用于按如下方式设定迁移次数中记录的预期剩余时间,确定迁移策略:
[0174]若判断单元804的判断结果为预期剩余时间收敛,则确定迁移策略为停机进行迁移。
[0175]若判断单元804的判断结果为预期剩余时间不收敛,则确定迁移策略为返回执行将源虚拟机内存中存储待迁移数据的内存页标记为脏页的过程。
[0176]在第五种实现方式中,确定单元803,还用于:
[0177]根据设定的流量限定值和设定的时间,确定迁移单元802在设定的时间内能够传送数据量的最大门限值。
[0178]判断单元804,还用于:
[0179]判断当前累计发送数据量是否达到确定单元803确定的最大门限值。
[0180]迁移单元802,具体用于按如下方式在设定的时间内,向目标虚拟机迁移标记为脏页的内存页中存储的待迁移数据:
[0181]若判断单元804的判断结果为当前累计发送数据量达到最大门限值,则停止向目标虚拟机迁移标记为脏页的内存页中存储的待迁移数据,直至迁移时间达到设定的时间。
[0182]若判断单元804的判断结果为当前累计发送数据量未达到最大门限值,则继续向目标虚拟机迁移标记为脏页的内存页中存储的待迁移数据,直至迁移时间达到设定的时间。
[0183]本发明实施例提供的虚拟机迁移装置,可用于执行本发明实施例上述虚拟机迁移方法,故对本发明实施例中对于虚拟机迁移装置描述不够详尽的地方,可参阅相关方法实施例的描述,在此不再赘述。
[0184]本发明实施例上述虚拟机迁移装置可以是一个安装在物理主机上的具有管控功能的控制器,例如可以是虚拟机监控器。当然该虚拟机迁移装置也可以是虚拟机监控器中的部件,例如可以是集成在虚拟机监控器中并安装有执行相应功能的软件程序的部件。当然本发明实施例并不引以为限,还可以是其它具有管控功能,并能够执行相应功能的控制器件。
[0185]基于上述实施例提供的虚拟机迁移方法和装置,本发明实施例还提供一种虚拟机迁移装置900,如图9所示,该虚拟机迁移装置900包括处理器901、存储器902和总线903,其中处理器901和存储器902均与总线903连接。
[0186]本发明实施例中处理器901可以是一个通用中央处理器(CPU),微处理器,特定应用集成电路(applicat1n-specific integrated circuit, ASIC),或一个或多个用于控制本发明方案程序执行的集成电路。
[0187]存储器902,可以是只读存储器(read-only memory, ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory, RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPR0M)、只读光盘(CompactDisc Read-Only Memory,⑶-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。这些存储器通过总线与处理器相连接。
[0188]总线903可包括一通路,用于处理器901和存储器902之间通信。
[0189]本发明实施例中存储器902,用于存储处理器901执行的程序代码。
[0190]处理器901,用于调用存储器902存储的程序代码,实现如下功能:
[0191]将源虚拟机内存中存储待迁移数据的内存页,标记为脏页;
[0192]在设定的时间内,向目标虚拟机迁移标记为脏页的内存页中存储的待迁移数据;
[0193]若迁移时间达到设定的时间,则确定迁移策略,迁移策略用于迁移源虚拟机中标记为脏页的内存页中存储的且未迁移的待迁移数据;
[0194]依据迁移策略,将源虚拟机中标记为脏页的内存页中存储的且未迁移的待迁移数据,迁移到目标虚拟机。
[0195]处理器901,还用于:
[0196]确定迁移策略之前,确定累计发送数据量,累计发送数据量为在设定时间内迁移的数据量;将累计发送数据量与设定时间之间的比值,确定为实际传输带宽;确定预期剩余时间,预期剩余时间为迁移源虚拟机中标记为脏页的内存页中存储的且未迁移的待迁移数据所需的时间。
[0197]处理器901,具体用于按如下方式确定迁移策略,包括:
[0198]判断预期剩余时间是否小于预设的最大停机时间;
[0199]若是,则确定迁移策略为停机进行迁移;
[0200]若否,则根据累计发送数据量和实际传输带宽,确定迁移策略。
[0201]处理器901,具体用于按如下方式根据累计发送数据量和实际传输带宽,确定迁移策略:
[0202]判断累计发送数据量与实际传输带宽是否均小于设定值;
[0203]若是,则增大预设的最大等待时间,并确定迁移策略为返回执行将源虚拟机内存中存储待迁移数据的内存页标记为脏页的过程,并在时间达到增大的等待时间后,向目标虚拟机迁移标记为脏页的内存页中存储的待迁移数据;
[0204]若否,则根据已执行的迁移次数确定迁移策略。
[0205]处理器901,具体用于按如下方式根据根据已执行的迁移次数确定迁移策略:
[0206]判断已执行的迁移次数是否超过预设的最大迁移次数;
[0207]若超过,则确定迁移策略为停机进行迁移;
[0208]若未超过,则根据设定迁移次数中记录的预期剩余时间,确定迁移策略。
[0209]处理器901,具体用于按如下方式根据设定迁移次数中记录的预期剩余时间,确定迁移策略:
[0210]确定根据设定迁移次数中记录的预期剩余时间的方差;
[0211]确定预期剩余时间曲线图的曲线斜率值,预期剩余时间曲线图是以迁移时间为横轴、预期剩余时间为纵轴,绘制的预期剩余时间与迁移时间之间的关系曲线图;
[0212]根据方差和曲线斜率值判断预期剩余时间是否收敛;
[0213]若收敛,则确定迁移策略为停机进行迁移;
[0214]若不收敛,则确定迁移策略为返回执行将源虚拟机内存中存储待迁移数据的内存页标记为脏页的过程。
[0215]处理器901,具体用于按如下方式在设定的时间内,向目标虚拟机迁移标记为脏页的内存页中存储的待迁移数据:
[0216]根据设定的流量限定值和设定的时间,确定在设定的时间内能够传送数据量的最大门限值;
[0217]判断当前累计发送数据量是否达到最大门限值;
[0218]若当前累计发送数据量达到最大门限值,则停止向目标虚拟机迁移标记为脏页的内存页中存储的待迁移数据,直至迁移时间达到设定的时间;
[0219]若当前累计发送数据量未达到最大门限值,则继续向目标虚拟机迁移标记为脏页的内存页中存储的待迁移数据,直至迁移时间达到设定的时
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1