一种存储资源均衡方法及装置的制造方法
【技术领域】
[0001]本发明涉及数据存储技术领域,尤其涉及一种存储资源均衡方法及装置。
【背景技术】
[0002]随着数据中心的规模和功能日趋复杂,如何能够充分挖掘现有的资源以适应更高的业务需求,成为企业数据中心的重要任务。目前的虚拟化平台可实现存储虚拟化,即将物理存储资源虚拟成一个个“存储池”,其中每个存储池可服务于多个虚拟机,从而来提高存储资源的整体利用率,同时降低了管理成本。
[0003]现有技术中,虚拟化平台中的控制器通常按照管理员制定的管理策略来为虚拟机分配指定的存储池。当由于某个存储池同时为多个虚拟机提供服务,或者该存储池中的某个虚拟机存储的数据量过大,导致该存储池的可用存储空间不能保证虚拟机正常运行时,该存储池中的部分虚拟机会被暂停存储,从而会造成部分虚拟机的业务中断。
【发明内容】
[0004]有鉴于此,本发明提供一种存储资源均衡方法及装置来解决虚拟化平台中因存储池可用存储空间不足造成的虚拟机业务中断的问题。
[0005]具体地,本发明是通过如下技术方案实现的:
[0006]一种存储资源均衡方法,所述方法应用于虚拟化平台中的控制器,所述虚拟化平台连接多个存储池,每个存储池中部署一个或多个虚拟机,所述方法包括:
[0007]检测所述虚拟化平台连接的存储池的存储状态;
[0008]根据存储池的存储状态确定存储池属于待迀移队列或目标队列;
[0009]将所述待迀移队列中的存储池中部署的虚拟机向所述目标队列中的存储池迀移。
[0010]进一步的,所述根据存储池的存储状态确定存储池属于待迀移队列或目标队列,包括:
[0011]当存储池的可用空间小于第一预设阈值时,确定所述存储池属于待迀移队列;
[0012]当存储池的可用空间大于等于第二预设阈值时,确定所述存储池属于目标队列。
[0013]进一步的,所述将所述待迀移队列中的存储池上部署的虚拟机向所述目标队列中的存储池迀移,包括:
[0014]按照预设策略排列所述待迀移队列中所有虚拟机的迀移顺序;
[0015]根据所述迀移顺序将所述待迀移队列中的虚拟机迀移到所述目标队列中的存储池。
[0016]进一步的,所述按照预设策略排列所述待迀移队列中所有虚拟机的迀移顺序,包括:
[0017]优先迀移在所述待迀移队列中处于离线状态的虚拟机和/或优先迀移在所述待迀移队列中存储空间最大的虚拟机;
[0018]所述根据所述迀移顺序将所述待迀移队列中的虚拟机迀移到所述目标队列中的存储池,包括:
[0019]根据存储池的优先级和/或可用空间排列所述目标队列中存储池的接收顺序,根据所述迀移顺序和所述接收顺序将所述待迀移队列中的虚拟机迀移到所述目标队列中的存储池。
[0020]进一步的,所述方法还包括:
[0021]在可用空间大于等于第三预设阈值的存储池中,查找处于暂停状态的虚拟机;
[0022]当确定所述处于暂停状态的虚拟机的暂停原因是无可用空间时,将所述暂停状态的虚拟机恢复运行。
[0023]基于相同的构思,本发明还提供一种存储资源均衡装置,所述装置应用于虚拟化平台中的控制器,所述虚拟化平台连接多个存储池,每个存储池中部署一个或多个虚拟机,所述装置包括:
[0024]状态检测单元,用于检测所述虚拟化平台连接的存储池的存储状态;
[0025]队列划分单元,用于根据存储池的存储状态确定存储池属于待迀移队列或目标队列;
[0026]虚拟机迀移单元,用于将所述待迀移队列中的存储池中部署的虚拟机向所述目标队列中的存储池迀移。
[0027]进一步的,所述队列划分单元,具体用于:
[0028]在存储池的可用空间小于第一预设阈值时,确定所述存储池属于待迀移队列;
[0029]在存储池的可用空间大于等于第二预设阈值时,确定所述存储池属于目标队列。
[0030]进一步的,所述虚拟机迀移单元,包括:
[0031]排序子单元,用于按照预设策略排列所述待迀移队列中所有虚拟机的迀移顺序;
[0032]迀移子单元,用于根据所述迀移顺序将所述待迀移队列中的虚拟机迀移到所述目标队列中的存储池。
[0033]进一步的,所述排序子单元,具体用于优先迀移在所述待迀移队列中处于离线状态的虚拟机和/或优先迀移在所述待迀移队列中存储空间最大的虚拟机;
[0034]所述迀移子单元,具体用于根据存储池的优先级和/或可用空间排列所述目标队列中存储池的接收顺序,根据所述迀移顺序和所述接收顺序将所述待迀移队列中的虚拟机迀移到所述目标队列中的存储池。
[0035]进一步的,所述装置还包括:
[0036]状态恢复单元,用于在可用空间大于等于第三预设阈值的存储池中,查找处于暂停状态的虚拟机,当确定所述处于暂停状态的虚拟机的暂停原因是无可用空间时,将所述暂停状态的虚拟机恢复运行。
[0037]由此可见,本发明的虚拟化平台可通过控制器检测所述虚拟化平台连接的存储池的存储状态,并根据存储状态确定存储池属于待迀移队列或目标队列,然后将待迀移队列中的存储池中部署的虚拟机向目标队列中的存储池迀移,从而实现虚拟化平台中存储资源的自动均衡,进而保证存储池具有可用存储空间,因此可避免虚拟机业务中断的情况。
【附图说明】
[0038]图1是本发明一种示例性实施方式中的存储系统架构图;
[0039]图2是本发明一种示例性实施方式中的一种存储资源均衡方法的处理流程图;
[0040]图3是本发明一种示例性实施方式中的另一种存储资源均衡方法的处理流程图;
[0041]图4a是本发明一种示例性实施方式中迀移前的存储池状态示意图;
[0042]图4b是本发明一种示例性实施方式中迀移后的存储池状态示意图;
[0043]图5是本发明一种示例性实施方式中存储资源均衡装置所在的控制器的硬件结构图;
[0044]图6是本发明一种示例性实施方式中的一种存储资源均衡装置的逻辑结构图。
【具体实施方式】
[0045]请参见图1,是本发明一种示例性实施方式中的存储系统架构图,该存储系统可搭建在物理服务器集群上,该系统包括虚拟化平台及虚拟的存储池群。所述虚拟化平台安装于所述物理服务器上,负责实现对物理服务器的硬件资源的逻辑封装。虚拟化平台可以将一台物理服务器虚拟化为多个逻辑的虚拟机;并通过虚拟化平台上的控制器对虚拟机进行创建、克隆、开启、删除、暂停、停止等操作,虚拟机可用于为不同用户提供服务;所述存储池群是所有物理存储资源的集合,通过虚拟化技术可将该存储池群分成一个个虚拟的存储池,用于为所述虚拟机提供存储空间,其中每个存储池可以为多个虚拟机提供服务。
[0046]所述控制器可以是物理服务器集群中的一台具有管理功能的服务器。虚拟化平台通常是通过管理员在控制器上写入控制策略来实现将虚拟机分配到存储池。当某存储池上分配的虚拟机数量过多,或是某台虚拟机占用的存储空间过大时,会使该存储池的可用空间不足,因而无法支持部分虚拟机的正常运行,从而导致虚拟机业务中断。
[0047]为了解决上述问题,本发明的虚拟化平台可通过控制器检测虚拟化平台连接的存储池的存储状态,并根据存储状态确定存储池属于待迀移队列或目标队列,然后将待迀移队列中的存储池中部署的虚拟机向目标队列中的存储池迀移,从而实现虚拟化平台中存储资源的自动均衡,进而保证存储池具有可用存储空间,因此可避免虚拟机业务中断的情况。
[0048]请参考图2,是本发明一种示例性实施方式中的一种存储资源均衡方法的处理流程图,该方法应用于虚拟化平台中的控制器,所述虚拟化平台连接多个存储池,每个存储池中部署一个或多个虚拟机,在该虚拟化平台中自动均衡存储资源的方法包括:
[0049]步骤201、控制器检测所述虚拟化平台连接的存储池的