一种虚拟机亲和组的管理方法技术

技术编号:31825265 阅读:9 留言:0更新日期:2022-01-12 12:50
本申请公开了一种虚拟机亲和组的管理方法,通过为虚拟机配置亲和规则和亲合组;对运行中的虚拟机和对待启动的虚拟机分别进行亲和规则检查,根据亲和规则进行虚拟机配置。能够指定哪些虚拟机尽量部署在一个主机上或尽量分散部署在不同主机上实现,也可以指定哪些虚拟机必须部署在一个主机上或必须分散部署在不同主机上实现,根据需求灵活配置虚拟机,提高物理主机的资源利用率和虚拟机间网络性能。能。能。

【技术实现步骤摘要】
一种虚拟机亲和组的管理方法


[0001]本申请涉及虚拟机配置
,尤其涉及一种虚拟机亲和组的管理方法。

技术介绍

[0002]目前虚拟化技术以及云计算技术高速发展,企业及个人用户可以方便的利用多台物理服务器和存储设备搭建虚拟化平台,在虚拟化平台中部署虚拟机,实现对资源的灵活以及高效的使用,为用户提供优质的服务。
[0003]部分虚拟化环境中因为业务需要,需要不同业务的虚拟机必须或尽量分散部署在不同的物理主机上,例如部署Hadoop不同角色的虚拟机,为了提高系统整体性能,需要将不同角色的虚拟机部署在不同的物理主机上;例如部署高可用应用的主备角色的虚拟机,为了保障业务的高可用,也需要将不同角色的虚拟机尽量部署在不同的物理主机上。因为其他业务需求,有时需要将多个虚拟机必须或尽量部署在同一个物理主机上。现有技术中,对虚拟机的管理一般是通过负载均衡或其他规则,根据规则将虚拟机集中部署或分散部署在物理主机中,没有对每一个虚拟机配置相应亲和规则,虚拟机配置不够灵活,没有能够灵活地指定哪一类或哪几个虚拟机部署在一起,也没有指定哪一类或哪几个虚拟机不能部署在一起,物理主机的资源利用率和虚拟机间网络性能低下。

技术实现思路

[0004]本申请实施例提供一种虚拟机亲和组的管理方法,能够根据需求灵活配置虚拟机,提高物理主机的资源利用率和虚拟机间网络性能。
[0005]有鉴于此,本申请提供了一种虚拟机亲和组的管理方法,包括:为虚拟机配置亲和规则和亲合组;对运行中的虚拟机,间隔检查虚拟机是否存在亲和规则冲突,若存在亲和规则冲突,则根据存在冲突的亲和规则所属的类型和其他主机的剩余资源,重新部署虚拟机;对待启动的虚拟机,检查待启动虚拟机所属亲和规则,根据亲和规则选择要部署的目的主机,判断目的主机的剩余资源是否满足待启动的虚拟机对资源的需求,若满足,则在目的主机启动虚拟机,若不满足,则选择其他符合条件的主机部署虚拟机或不启动。
[0006]优选地,所述亲和规则包括正向亲和规则和反向亲和规则,正向亲和规则包括正向亲合组强制规则和正向亲和组非强制规则,反向亲和规则包括反向亲和组强制规则和反向亲和组非强制规则;所述亲合组包括正向亲和组和反向亲合组。
[0007]优选地,对运行中的虚拟机,所述根据存在冲突的亲和规则所属的类型和其他主机的剩余资源,选择是否迁移或关闭虚拟机,包括:根据亲和规则选择问题虚拟机要部署的目的主机,检测目的主机的剩余资源是否满足问题虚拟机对资源的需求,若满足问题虚拟机对资源的需求,则进一步判断环境中是否存在其他正在迁移的虚拟机,当环境中没有其他正在迁移的虚拟机,开始迁移问题虚拟机,若环境中有其他正在迁移的虚拟机,则不迁移虚拟机,返回等待检测间隔;
若不满足问题虚拟机对资源的需求,则进一步判断违反的亲和规则是否为强制,若为强制,则关闭问题虚拟机,若为非强制,则返回等待检测间隔。
[0008]优选地,对待启动的虚拟机,当目的主机不满足需求时,则选择其他符合条件的主机部署虚拟机或不启动的步骤包括:判断违反的亲和规则是否为非强制,若为非强制,则选择其他符合条件的主机部署虚拟机,若为强制,则不启动虚拟机;其中,所述其他符合条件的主机为剔除掉违反的非强制亲和规则后根据剩余的亲和规则选择的其他主机。
[0009]优选地,检查虚拟机是否存在亲和规则冲突包括:在所有亲和组中循环:寻找违反正向亲和规则的虚拟机;寻找违反反向亲和规则的虚拟机。
[0010]优选地,寻找违反正向亲和规则的虚拟机的方法包括:步骤101、根据正向亲和组id进行排序,正向亲和组的个数为m,变量为i;步骤102、对正向亲合组从小到大进行遍历,获取正向亲和组对应的统一亲和组k
i
;步骤103、找到统一亲和组k
i
中的问题虚拟机,包括:步骤1031、根据统一亲和组k
i
的虚拟机id进行排序,虚拟机个数为x;步骤1032、对x个虚拟机从小到大进行遍历,变量为s,如果第s个虚拟机的状态为正在运行,查询第s虚拟机所在主机;步骤1033、对查询到的主机进行排序,获取部署统一亲和组k
i
的虚拟机最多的主机A;步骤1034、对x个虚拟机从小到大进行遍历,变量为t,如果第t个虚拟机状态为正在运行且没有运行在主机A上,则为问题虚拟机。
[0011]优选地,步骤102包括:步骤1021、对m个正向亲和组从小到大进行遍历,变量为i,统一亲和组k
i
的虚拟机列表等于正向亲和组i的虚拟机列表;步骤1022、对每个统一亲和组k
i
进行以下操作,包括:对组id大于正向亲和组i的m

i个正向亲和组从小到大进行遍历,变量为j,对统一亲和组k
i
的虚拟机列表与正向亲和组j的虚拟机列表求交集,如果交集不为空,则统一亲和组k
i
的虚拟机列表的值更新为统一亲和组k
i
与正向亲和组j的虚拟机列表的并集。
[0012]优选地,寻找违反反向亲和规则的虚拟机的方法包括:步骤201、根据反向亲和组id进行排序,反向亲和组的个数为n;步骤202、对n个反向亲和组从小到大进行遍历,变量为p,各主机上运行反向亲和组p中的虚拟机个数设置初始值为0,反向亲和组p的虚拟机按id进行排序,虚拟机个数为y,对y个虚拟机从小到大进行遍历,变量为u,如果第u个虚拟机的状态为正在运行,则查询第u个虚拟机所在主机,该主机上运行反向亲和组p中的虚拟机个数加1,如果该主机上运行反向亲和组p中虚拟机的个数大于1,则第u个虚拟机为问题虚拟机。
[0013]优选地,还包括:添加亲和组时,对新添加的亲和组与已有亲和组进行亲和规则冲突检测,若如果
存在冲突,则添加亲和组失败,并提示添加失败的原因。
[0014]优选地,所述添加亲和组时,对新添加的亲和组与已有亲和组进行亲和规则冲突检测包括以下步骤:步骤301、根据正向亲和组id进行排序;步骤302、获取统一亲和组k
i
;步骤303、对统一亲和组k
i
进行遍历,变量为i,计算统一亲和组k
i
与反向亲和组的虚拟机列表交集,如果交集元素个数大于1,则检测到亲和规则冲突。
[0015]从以上技术方案可以看出,本申请实施例具有以下优点:本专利技术的一种虚拟机亲和组的管理方法,通过为虚拟机配置亲和规则和亲合组;对运行中的虚拟机和对待启动的虚拟机分别进行亲和规则检查,根据亲和规则进行虚拟机配置。能够指定哪些虚拟机尽量部署在一个主机上或尽量分散部署在不同主机上实现,也可以指定哪些虚拟机必须部署在一个主机上或必须分散部署在不同主机上实现,根据需求灵活配置虚拟机,提高物理主机的资源利用率和虚拟机间网络性能。
附图说明
[0016]为了更清楚地表达说明本专利技术实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种虚拟机亲和组的管理方法,其特征在于,包括:为虚拟机配置亲和规则和亲合组;对运行中的虚拟机,间隔检查虚拟机是否存在亲和规则冲突,若存在亲和规则冲突,则根据存在冲突的亲和规则所属的类型和其他主机的剩余资源,选择是否迁移或关闭虚拟机;对待启动的虚拟机,检查待启动虚拟机所属亲和规则,根据亲和规则选择要部署的目的主机,判断目的主机的剩余资源是否满足待启动的虚拟机对资源的需求,若满足,则在目的主机启动虚拟机,若不满足,则选择其他符合条件的主机部署虚拟机或不启动。2.根据权利要求1所述的一种虚拟机亲和组的管理方法,其特征在于,所述亲和规则包括正向亲和规则和反向亲和规则,正向亲和规则包括正向亲合组强制规则和正向亲和组非强制规则,反向亲和规则包括反向亲和组强制规则和反向亲和组非强制规则;所述亲合组包括正向亲和组和反向亲合组。3.根据权利要求2所述的一种虚拟机亲和组的管理方法,其特征在于,对运行中的虚拟机,所述根据存在冲突的亲和规则所属的类型和其他主机的剩余资源,选择是否迁移或关闭虚拟机,包括:根据亲和规则选择问题虚拟机要部署的目的主机,检测目的主机的剩余资源是否满足问题虚拟机对资源的需求,若满足问题虚拟机对资源的需求,则进一步判断环境中是否存在其他正在迁移的虚拟机,当环境中没有其他正在迁移的虚拟机,开始迁移问题虚拟机,若环境中有其他正在迁移的虚拟机,则不迁移虚拟机,返回等待检测间隔;若不满足问题虚拟机对资源的需求,则进一步判断违反的亲和规则是否为强制,若为强制,则关闭问题虚拟机,若为非强制,则返回等待检测间隔。4.根据权利要求2所述的一种虚拟机亲和组的管理方法,其特征在于,对待启动的虚拟机,当目的主机不满足需求时,则选择其他符合条件的主机部署虚拟机或不启动的步骤包括:判断违反的亲和规则是否为非强制,若为非强制,则选择其他符合条件的主机部署虚拟机,若为强制,则不启动虚拟机;其中,所述其他符合条件的主机为剔除掉违反的非强制亲和规则后根据剩余的亲和规则选择的其他主机。5.根据权利要求2所述的一种虚拟机亲和组的管理方法,其特征在于,检查虚拟机是否存在亲和规则冲突包括:在所有亲和组中循环:寻找违反正向亲和规则的虚拟机;寻找违反反向亲和规则的虚拟机。6.根据权利要求5所述的一种虚拟机亲和组的管理方法,其特征在于,寻找违反正向亲和规则的虚拟机的方法包括:步骤101、根据正向亲和组id进行排序,正向亲和组的个数为m,变量为i;步骤102、对正向亲合组从小到大进行遍历,获取正向亲和组对应的统一亲和组k
i
;步骤103、找到统一亲和组k
i
中的问题虚拟机,包括:步骤1031、根据统一亲和组k
...

【专利技术属性】
技术研发人员:杨清玉李金丽黄科岩王丽君王宇琦王圆圆李梦雨杨晶晶李山峰张博玮
申请(专利权)人:麒麟软件有限公司
类型:发明
国别省市:

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

1