CN103810038A - 一种ha集群中虚拟机存储文件迁移方法及其装置 - Google Patents
一种ha集群中虚拟机存储文件迁移方法及其装置 Download PDFInfo
- Publication number
- CN103810038A CN103810038A CN201410035243.9A CN201410035243A CN103810038A CN 103810038 A CN103810038 A CN 103810038A CN 201410035243 A CN201410035243 A CN 201410035243A CN 103810038 A CN103810038 A CN 103810038A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- storage
- shared storage
- specific shared
- migration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种HA集群中虚拟机存储文件迁移方法及其装置,该方法包括:虚拟机管理平台获取所述HA集群中的特定共享存储的当前空闲率;当所述特定共享存储的当前空闲率低于第一阈值时,所述虚拟机管理平台对所述特定共享存储进行虚拟机存储文件迁移操作。在本发明中,有效地降低了由于共享存储满而导致的虚拟机使用异常、业务中断的概率,提高了系统的稳定性。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种HA集群中虚拟机存储文件迁移方法及其装置。
背景技术
参见图1,使用corosync+pacemaker可以方便地搭建虚拟机集群,即将虚拟机作为pacemaker的一个资源进行管理,资源的启动或停止状态由pacemake对外提供的配置信息进行控制。
为了方便虚拟机在集群中的各个主机之间迁移,一般将虚拟机的镜像文件存放在网络共享文件系统中,并在集群中的所有主机上都mount(挂载)上该共享文件系统,即确保集群中的所有物理主机都可以访问到该共享文件系统,且mount到物理主机上的目标目录名称一致。
在HA(High Availability,高可用性)集群中,能够做到将集群中的多个物理主机统一管理、将集群中的所有资源统一管理,并为资源指定默认的运行位置信息。
一般地,实际组网中的共享存储可以是多个,且连接到存储的实际网络一般是多个链路聚合(bond),即物理服务器连接到物理存储一般是两个或两个以上的链路聚合,存储设备连接到存储网络的物理链路一般也是两个或两个以上链路聚合,这样可以有效的抵御单点故障造成的影响。
每个共享存储分别mount到HA集群中的各个物理主机上,这多个共享存储起到分担数据存储的作用。
但是,HA集群中的虚拟机在使用一段时间后,由于用户数据的增加,虚机的镜像大小会增长,如果HA集群中部署了大量的虚拟机,镜像大小的增长是比较可观的,即使预留了足够大的空闲空间,也会出现空间不够用的时候,此时就会出现虚机使用异常。
针对可能出现网络共享存储空间满的情况,管理员需要定期的进行检查,在存储空间空闲率(空闲空间大小/总大小)小于预设的警戒低水位(比如20%)时,对原先的网络共享存储进行扩容或增加新的网络共享存储,并将部分虚拟机的存储迁移到新扩容的或新增的共享存储上。
但是,通过操作维护规范等主观上检查、规避和解决,没有在软件层面上避免或自动提醒,出现问题的概率高。
发明内容
本发明提供了一种HA集群中虚拟机存储文件迁移方法及其装置,用以降低由共享存储满而导致的虚拟机使用异常、业务中断的概率,提高系统的稳定性。
为了达到以上目的,本发明实施例提供了一种高可用性HA集群中虚拟机存储文件迁移方法,所述HA集群中包括虚拟机管理平台、物理主机和至少两个共享存储,所述物理主机中运行有虚拟机,所述虚拟机的存储文件保存在共享存储中,该方法包括:
虚拟机管理平台获取所述HA集群中的特定共享存储的当前空闲率;
当所述特定共享存储的当前空闲率低于第一阈值时,所述虚拟机管理平台对所述特定共享存储进行虚拟机存储文件迁移操作。
其中,所述虚拟机管理平台对所述特定共享存储进行虚拟机存储文件迁移操作之前,还包括:
所述虚拟机管理平台判断所述HA集群中是否存在当前空闲率大于第二阈值的其他共享存储,并当判断为是时,确定执行对所述特定共享存储进行虚拟机存储文件迁移操作的步骤;否则,不对所述特定共享存储进行虚拟机存储文件迁移操作;其中,所述第二阈值大于所述第一阈值。
其中,所述虚拟机管理平台对所述特定共享存储进行虚拟机存储文件迁移操作,具体包括以下步骤:
步骤A、所述虚拟机管理平台将当前空闲率大于第二阈值的其他共享存储中,当前空闲率最高的共享存储确定为目标共享存储;
步骤B、所述虚拟机管理平台对所述特定共享存储进行虚拟机存储文件迁移操作,迁移至目标共享存储。
其中,所述步骤B,具体包括:
步骤B0、确定所述特定共享存储中,存储文件实际大小不超过所述目标共享存储的可用空间的各个虚拟机的迁移优先级;
步骤B1、所述虚拟机管理平台根据所述特定共享存储中的虚拟机的迁移优先级,将迁移优先级最高的虚拟机的存储文件迁移到所述目标共享存储;
步骤B2、所述虚拟机管理平台判断进行虚拟机存储文件迁移操作后的所述特定共享存储的当前空闲率是否低于所述第一阈值;若判断为是,则转至步骤A;否则,结束当前流程;
其中,未处于运行状态的虚拟机的迁移优先级高于处于运行状态的虚拟机;未处于运行状态的虚拟机的迁移优先级与其存储文件的实际大小正相关;处于运行状态的虚拟机的迁移优先级,与该虚拟机的虚拟大小及实际空间占用率均呈正相关。
其中,进一步根据以下公式确定处于运行状态的虚拟机i的迁移优先级:
虚拟机i的迁移优先级=a*vSize i/vSize Max+b*虚拟机i的占用率
其中,vSize i为虚拟机i的虚拟大小,vSize Max为所述特定共享存储中虚拟机的虚拟大小的最大值,虚拟机i的占用率为虚拟机i的实际存储大小与虚拟大小的比值,a和b为不大于1的非负数,且a+b=1。
其中,预先将HA集群中的所有共享存储均挂载到各个物理主机,且每个共享存储在不同物理主机下挂载目录的全路径名称相同。
本发明实施例还提供了一种虚拟机管理平台,应用于包括物理主机和至少两个共享存储的高可用性HA集群,所述物理主机中运行有虚拟机,所述虚拟机的存储文件保存在该共享存储中,该虚拟机管理平台包括:
获取模块,用于获取所述HA集群中的特定共享存储的当前空闲率;
处理模块,用于当所述特定共享存储的当前空闲率低于第一阈值时,对所述特定共享存储进行虚拟机存储文件迁移操作。
其中,还包括:
判断模块,用于判断所述HA集群中是否存在当前空闲率大于第二阈值的其他共享存储;
所述处理模块具体用于,当所述判断模块判断为是时,对所述特定共享存储进行虚拟机存储文件迁移操作;当所述判断模块判断为否时,不对所述特定共享存储进行虚拟机存储文件迁移操作;其中,所述第二阈值大于所述第一阈值。
其中,所述处理模块具体用于,通过以下步骤实现对所述特定共享存储进行虚拟机存储文件迁移操作:
步骤A、将当前空闲率大于第二阈值的其他共享存储中,当前空闲率最高的共享存储确定为目标共享存储;
步骤B、对所述特定共享存储进行虚拟机存储文件迁移操作,迁移至目标共享存储。
其中,所述处理模块具体用于,通过以下步骤实现所述步骤B:
步骤B0、确定所述特定共享存储中,存储文件实际大小不超过所述目标共享存储的可用空间的各个虚拟机的迁移优先级;
步骤B1、根据所述特定共享存储中的虚拟机的迁移优先级,将迁移优先级最高的虚拟机迁移的存储文件到所述目标共享存储;
步骤B2、判断进行虚拟机存储文件迁移操作后的所述特定共享存储的当前空闲率是否低于所述第一阈值;若判断为是,则转至步骤A;否则,结束当前流程;
其中,未处于运行状态的虚拟机的迁移优先级高于处于运行状态的虚拟机;未处于运行状态的虚拟机的迁移优先级与其存储文件的实际大小正相关;处于运行状态的虚拟机的迁移优先级,与该虚拟机的虚拟大小及实际空间占用率均呈正相关。
其中,所述处理模块具体用于,进一步根据以下公式确定处于运行状态的虚拟机i的迁移优先级:
虚拟机i的迁移优先级=a*vSize i/vSize Max+b*虚拟机i的占用率
其中,vSize i为虚拟机i的虚拟大小,vSize Max为所述特定共享存储中虚拟机的虚拟大小的最大值,虚拟机i的占用率为虚拟机i的实际存储大小与虚拟大小的比值,a和b为不大于1的非负数,且a+b=1。
本发明上述实施例中,虚拟机管理平台可以获取HA集群中特定共享存储的当前空闲率,并当该特定共享存储的当前空闲率低于第一阈值时,虚拟机管理平台对特定共享存储进行虚拟机存储文件迁移操作,有效地降低了由于共享存储满而导致的虚拟机使用异常、业务中断的概率,提高了系统的稳定性。
附图说明
图1为现有技术中的一种虚拟机集群的组网示意图;
图2为本发明实施例提供的一种HA集群中虚拟机存储文件迁移方法的流程示意图;
图3为本发明实施例提供的一种虚拟机管理平台的结构示意图。
具体实施方式
针对上述现有技术的问题,本申请实施例提供了一种HA集群中虚拟机存储文件迁移的技术方案。在该技术方案中,HA集群中包括虚拟机管理平台、物理主机和至少两个共享存储,虚拟机管理平台可以获取HA集群中特定共享存储的当前空闲率,并当该特定共享存储的当前空闲率低于第一阈值时,虚拟机管理平台对特定共享存储进行虚拟机存储文件迁移操作,有效地降低了由于共享存储满而导致的虚拟机使用异常、业务中断的概率,提高了系统的稳定性。
其中,虚拟机存储文件可以包括该虚拟机挂载的一个或多个镜像文件。
下面将结合本发明的实施例中的附图,对本发明的实施例中的技术方案进行清楚、完整的描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明的实施例保护的范围。
如图2所示,为本发明实施例提供的一种HA集群中虚拟机存储文件迁移方法的流程示意图,可以包括以下步骤:
步骤201、虚拟机管理平台获取HA集群中的特定共享存储的当前空闲率。
具体的,在本发明实施例中,可以预先在虚拟机管理平台中配置需要进行定期检查空闲率的共享存储。虚拟机管理平台可以根据该配置定期对特定共享存储(预先配置为需要定期检测空闲率的共享存储)的空闲率进行检测,获取该特定共享存储的当前空闲率。
步骤202、当该特定共享存储的当前空闲率低于第一阈值时,虚拟机管理平台对特定共享存储进行虚拟机存储文件迁移操作。
具体的,在本发明实施例中,可以预先设定触发虚拟机管理平台自动进行虚拟机存储文件迁移操作的空闲率警戒低水位(第一阈值)。虚拟机管理平台获取到特定共享存储的当前空闲率时,可以判断该特定共享存储的当前空闲率是否低于第一阈值,并当判断结果为是时,确定需要对该特定共享存储进行虚拟机存储文件迁移操作,否则,确定不需要对该特定共享存储进行虚拟机存储文件迁移操作,此时,虚拟机管理平台可以在下一个检测周期继续对该特定共享存储的空闲率进行检测。
进一步地,为了降低虚拟机存储文件迁移操作,对虚拟机存储文件迁移的目标共享存储自身性能的影响,在本发明实施例中,可以预先设定一个共享存储允许迁入的空闲率阈值(第二阈值),即只有当共享存储的空闲率高于该第二阈值时,该共享存储才能被选为虚拟机存储文件迁移的目标共享存储。
相应地,虚拟管理平台在确定特定共享存储的当前空闲率低于第一阈值时,还需要先判断HA集群中是否存在当前空闲率大于第二阈值的其他共享存储,并当判断为是时,确定执行对该特定共享存储进行虚拟机存储文件迁移操作的步骤;否则,则认为当前不存在可用的目标共享存储,不对该特定共享存储进行虚拟机存储文件迁移操作,在该情况下,虚拟机管理平台可以发出无可用目标共享存储的告警信息;其中,第二阈值大于第一阈值。
当虚拟机管理平台确定当前存在可用的目标共享存储时,虚拟机管理平台对特定共享存储进行虚拟机存储文件迁移操作,具体可以包括以下步骤:
步骤A、虚拟机管理平台将当前空闲率大于第二阈值的其他共享存储中,当前空闲率最高的共享存储确定为目标共享存储;
步骤B、虚拟机管理平台对该特定共享存储进行虚拟机存储文件迁移操作,迁移至目标共享存储。
其中,步骤B可以具体包括:
步骤B0、确定所述特定共享存储中,存储文件实际大小不超过所述目标共享存储的可用空间的各个虚拟机的迁移优先级;
步骤B1、虚拟机管理平台根据该特定共享存储中的虚拟机的迁移优先级,将迁移优先级最高的虚拟机的存储文件迁移到该目标共享存储;
步骤B2、虚拟机管理平台判断进行虚拟机存储文件迁移操作后的特定共享存储的当前空闲率是否低于第一阈值,若判断为是,则转至步骤A;否则,结束当前流程。
在本发明实施例中,为了保证虚拟机存储文件迁移能够正常进行,在确定了目标共享存储之后,需要选择该特定共享存储中实际存储大小不超过该目标共享存储的可用空间大小的虚拟机作为候选的待迁移虚拟机。例如,假设目标共享存储的可用空间大小为100G,则候选的待迁移虚拟机的实际存储大小不能超过100G。
优选地,在特定共享存储中,未处于运行状态的虚拟机的迁移优先级高于处于运行状态的虚拟机;未处于运行状态的虚拟机的迁移优先级与其存储文件的实际大小正相关,即实际存储大小越大的虚拟机,迁移优先级越高;处于运行状态的虚拟机的迁移优先级,与该虚拟机的虚拟大小及实际空间占用率均呈正相关。
其中,可以进一步根据以下公式确定处于运行状态的虚拟机i的迁移优先级:
虚拟机i的迁移优先级=a*vSize i/vSize Max+b*虚拟机i的占用率
其中,vSize i为虚拟机i的虚拟大小,vSize Max为所述特定共享存储中虚拟机的虚拟大小的最大值,虚拟机i的占用率为虚拟机i的实际存储大小与虚拟大小的比值,a和b为不大于1的非负数,且a+b=1。
其中,虚拟机的虚拟大小即为实际创建虚拟机存储时指定的最大空间;实际存储大小即为虚拟机存储文件实际使用的空间。
应该认识到,上述确定目标共享存储,以及确定特定共享存储中实际迁移的虚拟机的方案仅仅是本发明实施例提供的技术方案的一种具体实现,其并不是对本发明保护范围的限定,即本发明实施例提供的技术方案中,确定目标共享存储,以及确定特定共享存储中实际迁移的虚拟机也可以通过其他方案实现。例如,在确定目标共享存储时,可以在当前空闲率大于第二阈值的其他共享存储中随机选择或轮询选择;在确定特定共享存储中实际迁移的虚拟机时,也可以在该特定共享存储中实际存储大小不超过目标共享存储的可用空间大小的虚拟机中随机选择或轮询选择,虚拟机的迁移优先级也可以直接由虚拟机的实际存储大小确定等,其具体实现,在此不再赘述。
优选地,在本发明实施例中,还可以预先设定触发虚拟机管理平台进行告警的空闲率警戒低水位(第三阈值),该第三阈值大于第一阈值。当虚拟机管理平台确定特定共享存储的当前空闲率低于第三阈值,且高于第一阈值时,该虚拟机管理平台可以进行告警,以便管理员及其采取相应措施,如对存储及时进行扩容,避免出现异常。
为了使本领域技术人员更好地理解本发明实施例提供的技术方案,下面结合具体的应用场景对本发明实施例提供的技术方案进行描述。
1、系统组网
以图1所示组网为例,三台物理主机在一个HA集群中(为了简化,这里仅仅以三台物理主机组成的HA集群为例,实际组网中的物理主机节点个数可以灵活的弹性伸展),各物理主机上运行基于Linux(操作系统)的qemu-kvm(命令行虚拟系统常用参数)虚拟化平台,每个物理主机上运行多个虚拟机,各虚拟机上分别跑不同的业务(比如,DataBase server(数据库服务器)、webserver(网页服务器),file server(文件服务器),mail server(邮件服务器)等)。
虚拟机管理平台对集群内的所有物理服务器主机进行管理,包括增加、删除物理主机;启用或禁用HA高可用性功能等。各物理主机上通过libvirt(软件名称)虚拟化中间件与qemu-kvm配合来实现增加、删除、暂停、迁移虚拟机等所有与虚拟机生命周期的管理。
在该实施例中,集群启用HA时,有如下几点要求,以确保虚拟机可以在HA集群中的所有物理主机上随意迁移成功:
1)、集群中的所有主机都必须mount一个共享的网络存储,且mount的目标目录名必须一直,比如都是/vms/target100;
2)、集群中的所有主机都必须创建相同名称的虚拟交换机;
3)、虚拟机的镜像文件必须都保存在共享的网络存储中;
4)、启动HA时,需要将libvirt可识别的虚拟机的定义文件同步到HA集群中的所有物理主机上并通过virsh define命令定义成功。
2、物理主机
运行基于Linux的qemu-kvm虚拟化平台,运行libvirt等虚拟化中间件,运行corosync+pacemker等HA集群软件,是虚拟机、虚拟交换机、存储的载体。
虚拟机管理平台通过SSH(Secure Shell Protocol,安全外壳协议)等远程工具来管理物理主机。
3、虚拟机管理平台
实现对所有物理主机,物理主机上运行的虚拟机、虚拟交换机,存储等资源的统一管理。以下重点对与本发明相关的主要功能说明如下:
1)、物理主机管理
实现对物理主机的增加、删除等操作。
2)、集群HA管理
通过SSH工具远程管理各个物理主机上的corosync+pacemaker的配置,服务启停等,实现HA启用或停止功能。
3)、网络共享存储管理
增加、删除、暂停和启动集群使用的网络共享存储;
网络共享存储用于存放虚拟机的镜像文件,且HA集群中的所有虚机的所有镜像文件都需要保存到网络共享存储上,网络共享存储使用mount命令mount到本地(比如/vms/target18),操作系统使用网络存储就好比使用本地存储一样。
4)、存储空闲率定期检测
在管理台上启动一个定时任务,定期的检测所预置的需要检测的共享存储(比如/vms/target16、/vms/target18),且可以配置各共享存储的预设的空闲率警戒低水位II(即第一阈值)、空闲率警戒低水位I(即第三阈值)的阈值(可不配置,不配置时使用默认值分别20%、30%),定时任务依据这些配置定期检测并做出后续动作。
基于上述系统组网,该实施例中的虚拟机存储文件迁移方案可以包括以下流程:
1、共享存储空间使用率(或空闲率)检测流程
虚拟机管理平台的检测模块可以维护用于记录各个共享存储的基本信息以及空闲率的表格,其格式可以如表1所示:
表1
虚拟机管理平台启动时,启动一个定时任务线程,该线程的到时处理流程如下:
1)、当前是否有配置需要定期检测空闲率的共享存储,如果有则转步骤2)处理,否则,结束本次检测处理,等待定时器下次超时。
2)、对已配置的需要定期检测空闲率的每个共享存储,假设预置的空闲率警戒低水位II、空闲率警戒低水位I的阈值分别为p2、p1(一般p1>p2),做如下操作:
a)、获取当前共享存储的已使用大小、可用大小、使用率pUsedNow,更新表1中相应列内容;
b)、在步骤a)的基础上获取当前共享存储的当前空闲率pFreeNow,即pFreeNow=1-pUsedNow,更新表1中相应列内容;
c)、若pFreeNow<=p1,则向系统写空闲率低于空闲率警戒低水位I的告警信息,及时向管理员发出告警,以便及时采取措施
d)若pFreeNow<=p2,则向虚拟机管理平台的迁移模块发消息,触发迁移模块对使用该共享存储的虚拟机进行虚拟机存储文件迁移操作。
2、虚拟机存储文件迁移流程
虚拟机管理平台的迁移模块在接收到来自检测模块的触发迁移的消息(消息中携带了需要迁移的源共享存储的名称,比如/vms/target18)时,按照如下步骤操作:
1)、检查表1中的除了当前共享存储外的其他共享存储,如果没有其他的共享存储,则发出无可用迁移目的存储的告警信息,结束操作;若有其他的共享存储,则转至步骤2);
2)、从其他共享存储中挑选一个空闲率最高且当前空闲率大于“允许迁入空闲率”的共享存储,如果没有找到满足条件的共享存储则发出无可用迁移目的存储的告警信息,结束操作;若找到,则转至步骤3);
3)、找到满足步骤2)条件的共享存储/vms/targetX,则从虚拟管理平台的虚拟机管理信息中查找所有使用该共享存储(/vms/target18)的虚拟机,对这些虚拟机分别做如下计算并填充表2:
通过qemu-img info命令查看虚拟机镜像使用情况,填充表2中除了迁移优先级一列的所有列内容,如果虚拟机有多个镜像,则填写多行。
表2
其中,是否运行状态为1的虚拟机为处于运行状态的虚拟机,是否运行状态为0的虚拟机为处于未运行状态的虚拟机。
4)、对表2中的所有“是否运行状态”1的虚拟机,进行如下计算:
获取“虚拟大小”一列的最大值为vSize Max,则
迁移优先级=“虚拟大小”一列的值/vSizeMax*0.4+“占用率”一列的值*0.6
对于处于运行状态且有多块磁盘镜像的,按照加和平均的方式获取该虚拟机的最终的迁移优先级,比如vm1有三块磁盘,且该vm1处于运行状态,且三块磁盘按照以上方法计算出来的迁移优先级分别为a、b和c,则vm1的最终的迁移优先级为(a+b+c)/3;
5)、决策需要迁移存储的虚拟机:
获取“是否运行状态”一列为0,且“实际大小”一列为最大,且不超过目标共享存储的可用空间大小的虚拟机vma,执行虚拟机存储文件迁移操作,目标共享存储为/vms/targetX,迁移完成后将该虚拟机从表2中删除;如果表2中找不到“是否运行状态”一列为0的行,则寻找“是否运行状态”一列为1、迁移优先级最大,且实际大小不超过目标共享存储的可用空间大小的一个虚拟机的存储文件进行迁移,迁移完成后将该虚拟机从表2中删除;
6)、检测源共享存储/vms/target18的当前空闲率,如果当前空闲率高于空闲率警戒低水位II,则结束本次迁移存储流程,否则转步骤1),继续迁移。
通过以上描述可以看出,在本发明实施例提供的技术方案中,虚拟机管理平台可以获取HA集群中特定共享存储的当前空闲率,并当该特定共享存储的当前空闲率低于第一阈值时,虚拟机管理平台对特定共享存储进行虚拟机存储文件迁移操作,有效地降低了由于共享存储满而导致的虚拟机使用异常、业务中断的概率,提高了系统的稳定性。
如图3所示,为本发明实施例提供的一种虚拟机管理平台的结构示意图,该虚拟机管理平台应用于包括至少两个共享存储的高可用性HA集群,该虚拟机管理平台可以包括:
获取模块31,用于获取所述HA集群中的特定共享存储的当前空闲率;
处理模块32,用于当所述特定共享存储的当前空闲率低于第一阈值时,对所述特定共享存储进行虚拟机存储文件迁移操作。
其中,还包括:
判断模块33,用于判断所述HA集群中是否存在当前空闲率大于第二阈值的其他共享存储;
所述处理模块32具体用于,当所述判断模块判断为是时,对所述特定共享存储进行虚拟机存储文件迁移操作;当所述判断模块判断为否时,不对所述特定共享存储进行虚拟机存储文件迁移操作;其中,所述第二阈值大于所述第一阈值。
其中,所述处理模块32具体用于,通过以下步骤实现对所述特定共享存储进行虚拟机存储文件迁移操作:
步骤A、将当前空闲率大于第二阈值的其他共享存储中,当前空闲率最高的共享存储确定为目标共享存储;
步骤B、对所述特定共享存储进行虚拟机文件存储迁移操作,迁移至目标共享存储。
其中,所述处理模块具体用于,通过以下步骤实现所述步骤B:
步骤B0、确定所述特定共享存储中,存储文件实际大小不超过所述目标共享存储的可用空间的各个虚拟机的迁移优先级;
步骤B1、根据所述特定共享存储中的虚拟机的迁移优先级,将迁移优先级最高的虚拟机的存储文件迁移到所述目标共享存储;
步骤B2、判断进行虚拟机存储文件迁移操作后的所述特定共享存储的当前空闲率是否低于所述第一阈值;若判断为是,则转至步骤A;否则,结束当前流程;
其中,未处于运行状态的虚拟机的迁移优先级高于处于运行状态的虚拟机;未处于运行状态的虚拟机的迁移优先级与其存储文件的实际大小正相关;处于运行状态的虚拟机的迁移优先级,与该虚拟机的虚拟大小及实际空间占用率均呈正相关。
其中,所述处理模块32具体用于,进一步根据以下公式确定处于运行状态的虚拟机i的迁移优先级:
虚拟机i的迁移优先级=a*vSize i/vSize Max+b*虚拟机i的占用率
其中,vSize i为虚拟机i的虚拟大小,vSize Max为所述特定共享存储中虚拟机的虚拟大小的最大值,虚拟机i的占用率为虚拟机i的实际存储大小与虚拟大小的比值,a和b为不大于1的非负数,且a+b=1。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
Claims (11)
1.一种高可用性HA集群中虚拟机存储文件迁移方法,其特征在于,所述HA集群中包括虚拟机管理平台、物理主机和至少两个共享存储,所述物理主机中运行有虚拟机,所述虚拟机的存储文件保存在共享存储中,该方法包括:
虚拟机管理平台获取所述HA集群中的特定共享存储的当前空闲率;
当所述特定共享存储的当前空闲率低于第一阈值时,所述虚拟机管理平台对所述特定共享存储进行虚拟机存储文件迁移操作。
2.如权利要求1所述的方法,其特征在于,所述虚拟机管理平台对所述特定共享存储进行虚拟机存储文件迁移操作之前,还包括:
所述虚拟机管理平台判断所述HA集群中是否存在当前空闲率大于第二阈值的其他共享存储,并当判断为是时,确定执行对所述特定共享存储进行虚拟机存储文件迁移操作的步骤;否则,不对所述特定共享存储进行虚拟机存储文件迁移操作;其中,所述第二阈值大于所述第一阈值。
3.如权利要求1或2所述的方法,其特征在于,所述虚拟机管理平台对所述特定共享存储进行虚拟机存储文件迁移操作,具体包括以下步骤:
步骤A、所述虚拟机管理平台将当前空闲率大于第二阈值的其他共享存储中,当前空闲率最高的共享存储确定为目标共享存储;
步骤B、所述虚拟机管理平台对所述特定共享存储进行虚拟机存储文件迁移操作,迁移至目标共享存储。
4.如权利要求3所述的方法,其特征在于,所述步骤B,具体包括:
步骤B0、确定所述特定共享存储中,存储文件实际大小不超过所述目标共享存储的可用空间的各个虚拟机的迁移优先级;
步骤B1、所述虚拟机管理平台根据所述特定共享存储中的虚拟机的迁移优先级,将迁移优先级最高的虚拟机的存储文件迁移到所述目标共享存储;
步骤B2、所述虚拟机管理平台判断进行虚拟机存储文件迁移操作后的所述特定共享存储的当前空闲率是否低于所述第一阈值;若判断为是,则转至步骤A;否则,结束当前流程;
其中,未处于运行状态的虚拟机的迁移优先级高于处于运行状态的虚拟机;未处于运行状态的虚拟机的迁移优先级与其存储文件的实际大小正相关;处于运行状态的虚拟机的迁移优先级,与该虚拟机的虚拟大小及实际空间占用率均呈正相关。
5.如权利要求4所述的方法,其特征在于,进一步根据以下公式确定处于运行状态的虚拟机i的迁移优先级:
虚拟机i的迁移优先级=a*vSize i/vSize Max+b*虚拟机i的占用率
其中,vSize i为虚拟机i的虚拟大小,vSize Max为所述特定共享存储中虚拟机的虚拟大小的最大值,虚拟机i的占用率为虚拟机i的实际存储大小与虚拟大小的比值,a和b为不大于1的非负数,且a+b=1。
6.如权利要求1所述的方法,其特征在于,
预先将HA集群中的所有共享存储均挂载到各个物理主机,且每个共享存储在不同物理主机下挂载目录的全路径名称相同。
7.一种虚拟机管理平台,其特征在于,应用于包括物理主机和至少两个共享存储的高可用性HA集群,所述物理主机中运行有虚拟机,所述虚拟机的存储文件保存在该共享存储中,该虚拟机管理平台包括:
获取模块,用于获取所述HA集群中的特定共享存储的当前空闲率;
处理模块,用于当所述特定共享存储的当前空闲率低于第一阈值时,对所述特定共享存储进行虚拟机存储文件迁移操作。
8.如权利要求7所述的虚拟机管理平台,其特征在于,还包括:
判断模块,用于判断所述HA集群中是否存在当前空闲率大于第二阈值的其他共享存储;
所述处理模块具体用于,当所述判断模块判断为是时,对所述特定共享存储进行虚拟机存储文件迁移操作;当所述判断模块判断为否时,不对所述特定共享存储进行虚拟机存储文件迁移操作;其中,所述第二阈值大于所述第一阈值。
9.如权利要求7或8所述的虚拟机管理平台,其特征在于,所述处理模块具体用于,通过以下步骤实现对所述特定共享存储进行虚拟机存储文件迁移操作:
步骤A、将当前空闲率大于第二阈值的其他共享存储中,当前空闲率最高的共享存储确定为目标共享存储;
步骤B、对所述特定共享存储进行虚拟机存储文件迁移操作,迁移至目标共享存储。
10.如权利要求9所述的虚拟机管理平台,其特征在于,所述处理模块具体用于,通过以下步骤实现所述步骤B:
步骤B0、确定所述特定共享存储中,存储文件实际大小不超过所述目标共享存储的可用空间的各个虚拟机的迁移优先级;
步骤B1、根据所述特定共享存储中的虚拟机的迁移优先级,将迁移优先级最高的虚拟机的存储文件迁移到所述目标共享存储;
步骤B2、判断进行虚拟机存储文件迁移操作后的所述特定共享存储的当前空闲率是否低于所述第一阈值;若判断为是,则转至步骤A;否则,结束当前流程;
其中,未处于运行状态的虚拟机的迁移优先级高于处于运行状态的虚拟机;未处于运行状态的虚拟机的迁移优先级与其存储文件的实际大小正相关;处于运行状态的虚拟机的迁移优先级,与该虚拟机的虚拟大小及实际空间占用率均呈正相关。
11.如权利要求10所述的虚拟机管理平台,其特征在于,所述处理模块具体用于,进一步根据以下公式确定处于运行状态的虚拟机i的迁移优先级:
虚拟机i的迁移优先级=a*vSize i/vSize Max+b*虚拟机i的占用率
其中,vSize i为虚拟机i的虚拟大小,vSize Max为所述特定共享存储中虚拟机的虚拟大小的最大值,虚拟机i的占用率为虚拟机i的实际存储大小与虚拟大小的比值,a和b为不大于1的非负数,且a+b=1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410035243.9A CN103810038B (zh) | 2014-01-24 | 2014-01-24 | 一种ha集群中虚拟机存储文件迁移方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410035243.9A CN103810038B (zh) | 2014-01-24 | 2014-01-24 | 一种ha集群中虚拟机存储文件迁移方法及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103810038A true CN103810038A (zh) | 2014-05-21 |
CN103810038B CN103810038B (zh) | 2018-04-06 |
Family
ID=50706847
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410035243.9A Active CN103810038B (zh) | 2014-01-24 | 2014-01-24 | 一种ha集群中虚拟机存储文件迁移方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103810038B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104320274A (zh) * | 2014-10-24 | 2015-01-28 | 华为技术有限公司 | 一种容灾方法及装置 |
CN106533808A (zh) * | 2016-12-28 | 2017-03-22 | 郑州云海信息技术有限公司 | 基于mcs的链路聚合方法及装置 |
CN106776113A (zh) * | 2016-02-18 | 2017-05-31 | 新华三技术有限公司 | 一种虚拟机备份方法及装置 |
CN108469996A (zh) * | 2018-03-13 | 2018-08-31 | 山东超越数控电子股份有限公司 | 一种基于自动快照的系统高可用方法 |
CN112261097A (zh) * | 2020-10-15 | 2021-01-22 | 科大讯飞股份有限公司 | 用于分布式存储系统的对象定位方法及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102096461A (zh) * | 2011-01-13 | 2011-06-15 | 浙江大学 | 基于虚拟机迁移和负载感知整合的云数据中心节能方法 |
US20110320556A1 (en) * | 2010-06-29 | 2011-12-29 | Microsoft Corporation | Techniques For Migrating A Virtual Machine Using Shared Storage |
US20120110237A1 (en) * | 2009-12-01 | 2012-05-03 | Bin Li | Method, apparatus, and system for online migrating from physical machine to virtual machine |
CN102708000A (zh) * | 2012-04-19 | 2012-10-03 | 北京华胜天成科技股份有限公司 | 通过虚拟机迁移实现能耗控制的系统和方法 |
CN102811141A (zh) * | 2011-06-01 | 2012-12-05 | 鸿富锦精密工业(深圳)有限公司 | 虚拟机运行监测系统及方法 |
CN103259813A (zh) * | 2012-02-17 | 2013-08-21 | 鸿富锦精密工业(深圳)有限公司 | 自动扩充虚拟机的方法 |
-
2014
- 2014-01-24 CN CN201410035243.9A patent/CN103810038B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120110237A1 (en) * | 2009-12-01 | 2012-05-03 | Bin Li | Method, apparatus, and system for online migrating from physical machine to virtual machine |
US20110320556A1 (en) * | 2010-06-29 | 2011-12-29 | Microsoft Corporation | Techniques For Migrating A Virtual Machine Using Shared Storage |
CN102096461A (zh) * | 2011-01-13 | 2011-06-15 | 浙江大学 | 基于虚拟机迁移和负载感知整合的云数据中心节能方法 |
CN102811141A (zh) * | 2011-06-01 | 2012-12-05 | 鸿富锦精密工业(深圳)有限公司 | 虚拟机运行监测系统及方法 |
CN103259813A (zh) * | 2012-02-17 | 2013-08-21 | 鸿富锦精密工业(深圳)有限公司 | 自动扩充虚拟机的方法 |
CN102708000A (zh) * | 2012-04-19 | 2012-10-03 | 北京华胜天成科技股份有限公司 | 通过虚拟机迁移实现能耗控制的系统和方法 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104320274A (zh) * | 2014-10-24 | 2015-01-28 | 华为技术有限公司 | 一种容灾方法及装置 |
CN104320274B (zh) * | 2014-10-24 | 2017-12-15 | 华为技术有限公司 | 一种容灾方法及装置 |
CN106776113A (zh) * | 2016-02-18 | 2017-05-31 | 新华三技术有限公司 | 一种虚拟机备份方法及装置 |
CN106776113B (zh) * | 2016-02-18 | 2021-03-02 | 新华三技术有限公司 | 一种虚拟机备份方法及装置 |
CN106533808A (zh) * | 2016-12-28 | 2017-03-22 | 郑州云海信息技术有限公司 | 基于mcs的链路聚合方法及装置 |
CN108469996A (zh) * | 2018-03-13 | 2018-08-31 | 山东超越数控电子股份有限公司 | 一种基于自动快照的系统高可用方法 |
CN112261097A (zh) * | 2020-10-15 | 2021-01-22 | 科大讯飞股份有限公司 | 用于分布式存储系统的对象定位方法及电子设备 |
CN112261097B (zh) * | 2020-10-15 | 2023-11-24 | 科大讯飞股份有限公司 | 用于分布式存储系统的对象定位方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103810038B (zh) | 2018-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3620905B1 (en) | Method and device for identifying osd sub-health, and data storage system | |
CN102355369B (zh) | 虚拟化集群系统及其处理方法和设备 | |
CN109842651B (zh) | 一种业务不间断的负载均衡方法和系统 | |
CN103763383B (zh) | 一体化云存储系统及其存储方法 | |
US8856585B2 (en) | Hardware failure mitigation | |
CN106528327B (zh) | 一种数据处理方法以及备份服务器 | |
CN108023967B (zh) | 一种数据平衡方法、装置及分布式存储系统中的管理设备 | |
CN111176888B (zh) | 云存储的容灾方法、装置及系统 | |
CN103810038A (zh) | 一种ha集群中虚拟机存储文件迁移方法及其装置 | |
CN103729280A (zh) | 一种虚拟机高可用机制 | |
CN113535474B (zh) | 异构云存储集群故障自动修复的方法、系统、介质及终端 | |
CN104158707A (zh) | 一种检测并处理集群脑裂的方法和装置 | |
CN110633046A (zh) | 一种分布式系统的存储方法、装置、存储设备及存储介质 | |
CN113687790A (zh) | 数据重构方法、装置、设备及存储介质 | |
CN113330426B (zh) | 一种备份数据的方法、装置和系统 | |
CN106612314A (zh) | 基于虚拟机实现软件定义存储的系统 | |
CN104517067A (zh) | 访问数据的方法、装置及系统 | |
JP2011209811A (ja) | 仮想マシンシステムおよび仮想マシン配置方法 | |
CN105471616A (zh) | 缓存系统管理方法和系统 | |
CN113051428A (zh) | 一种摄像机前端存储备份的方法及装置 | |
CN107707398B (zh) | 云计算系统中管理物理主机的方法和装置 | |
CN106453118B (zh) | 一种流量控制方法及流量控制系统 | |
CN105262796A (zh) | 一种云平台存储资源管理系统及其部署框架 | |
CN104967641B (zh) | 一种实现主备元服务器数据同步的方法及装置 | |
CN110837428A (zh) | 存储设备管理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Applicant after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Applicant before: Huasan Communication Technology Co., Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |