首页 / 专利库 / 电脑零配件 / 计算机系统 / 硬件 / 中央处理器 / 一种虚拟机放置方法及装置

一种虚拟机放置方法及装置

阅读:451发布:2024-02-17

专利汇可以提供一种虚拟机放置方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 实施例 公开了一种 虚拟机 放置方法及装置,用于根据条带化的业务数据对虚拟机进行放置。本发明实施例方法包括:获取目标虚拟机存储在各个 节点 中的数据 块 的大小,以及所述各个节点对应的链路的剩余带宽;根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据 访问 时间;确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合;在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。,下面是一种虚拟机放置方法及装置专利的具体信息内容。

1.一种虚拟机放置方法,其特征在于,包括:
获取目标虚拟机存储在各个节点中的数据的大小,以及所述各个节点对应的链路的剩余带宽;
根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据访问时间,所述最长数据访问时间为一个所述物理主机访问每个所述节点中的数据块的数据访问时间中时间最长的数据访问时间,所述m为大于1的整数;
确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合;
在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。
2.根据所述权利要求1所述的方法,其特征在于,所述根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个物理主机的最长数据访问时间,包括:
步骤1)根据所述节点上的数据块的大小以及所述节点对应的链路的剩余带宽,计算一个物理主机访问一个所述节点的数据访问时间;
步骤2)在根据所述步骤1)完成了所述一个物理主机对所述各个节点的数据访问时间的计算之后,确定在各个所述数据访问时间中确定所述最长数据访问时间;
根据所述步骤1)和所述根据所述步骤2)确定所述m个物理主机中每个物理主机的最长数据访问时间。
3.根据所述权利要求2所述的方法,其特征在于,所述根据所述节点上的数据块的大小以及所述节点对应的链路的剩余带宽,计算一个物理主机访问一个所述节点的数据访问时间,包括:
确定所述一个物理主机访问一个所述节点的链路中最小的剩余带宽;
根据所述节点对应的所述数据块的大小,以及所述最小的剩余带宽,计算所述节点的数据访问时间。
4.根据所述权利要求1所述的方法,其特征在于,所述在所述集合中,选择一个物理主机作为所述目标虚拟机的放置主机,包括:
选择所述集合中数据访问的链路长度最短的一个物理主机作为所述目标虚拟机的放置主机。
5.根据所述权利要求1所述的方法,其特征在于,所述在所述集合中,选择一个物理主机作为所述目标虚拟机的放置主机,包括:
选择所述集合中,运算资源最优的一个物理主机作为所述目标虚拟机的放置主机,所述运算资源包括:中央处理器和内存。
6.一种虚拟机放置装置,其特征在于,包括:
获取单元,用于获取目标虚拟机存储在各个节点中的数据块的大小,以及所述各个节点对应的链路的剩余带宽;
时间确定单元,用于根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据访问时间,所述最长数据访问时间为一个所述物理主机访问每个所述节点中的数据块的数据访问时间中时间最长的数据访问时间,所述m为大于1的整数;
集合确定单元,用于确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合;
主机确定单元,用于在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。
7.根据所述权利要求6所述的装置,其特征在于,所述时间确定单元具体用于:
步骤1)根据所述节点上的数据块的大小以及所述节点对应的链路的剩余带宽,计算一个物理主机访问一个所述节点的数据访问时间;
步骤2)在根据所述步骤1)完成了所述一个物理主机对所述各个节点的数据访问时间的计算之后,确定在各个所述数据访问时间中确定所述最长数据访问时间;
根据所述步骤1)和所述根据所述步骤2)确定所述m个物理主机中每个物理主机的最长数据访问时间。
8.根据所述权利要求7所述的装置,其特征在于,所述时间确定单元具体还用于:
确定所述一个物理主机访问一个所述节点的链路中最小的剩余带宽;
根据所述节点对应的所述数据块的大小,以及所述最小的剩余带宽,计算所述节点的数据访问时间。
9.根据所述权利要求6所述的装置,其特征在于,所述主机确定单元具体用于:
选择所述集合中数据访问的链路长度最短的一个物理主机作为所述目标虚拟机的放置主机。
10.根据所述权利要求6所述的装置,其特征在于,所述主机确定单元具体用于:
选择所述集合中,运算资源最优的一个物理主机作为所述目标虚拟机的放置主机,所述运算资源包括:中央处理器和内存。

说明书全文

一种虚拟机放置方法及装置

技术领域

[0001] 本发明涉及计算机领域,尤其涉及一种虚拟机放置方法及装置。

背景技术

[0002] 在I/O(输入/输出)密集型的虚拟化环境下,由于业务系统需要处理的数据量大,通常会采用分布式的文件系统。这时业务数据会被条带化处理,即一个业务数据会分成很多份数据,分别存储到不同的存储节点。因此,当虚拟机中的业务需要获取完整业务数据时,则需要访问该业务数据所分布的所有存储节点,才能将该业务数据完整的读取。此时,在虚拟机到各存储节点的链路剩余带宽中,带宽最小的一段链路决定了该业务数据的完整读取时间。
[0003] 动态资源调度(DRS,Dynamic Resources Scheduling)是建立在虚拟机热迁移基础上的虚拟化集群的一项重要特性,集群管理系统定时监控各个物理主机和虚拟机的资源利用率,根据资源分布情况,利用热迁移调整虚拟机在物理主机上的分布,从而实现集群范围内的负载均衡和集群整合,提高各物理主机的资源使用效率的同时,保证各物理主机都承担适当的负载。
[0004] 在现有技术中,通常采用的虚拟机放置方法,都是根据中央处理器(CPU,Central Processing Unit)、内存两个维度来计算虚拟机的放置位置,这样能够满足虚拟机在CPU和内存方面的要求。但是,现有技术中的虚拟机放置方案,只考虑了CPU和内存两个维度,对于虚拟机获取所有条带化业务数据的时间是没有考虑的,当需要在某些剩余带宽较小的链路中传输较大的条带化业务数据时,该业务数据的完整读取时间将受到该剩余带宽较小的链路限制,导致业务读写数据的性能低下。

发明内容

[0005] 本发明实施例提供了一种虚拟机放置方法及装置,用于根据条带化的业务数据对虚拟机进行放置。
[0006] 本发明实施例第一方面提供的虚拟机放置方法,包括:
[0007] 获取目标虚拟机存储在各个节点中的数据块的大小,以及所述各个节点对应的链路的剩余带宽;
[0008] 根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据访问时间,所述最长数据访问时间为一个所述物理主机访问所述各个节点中的数据块的最长时间,所述m为大于1的整数;
[0009] 确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合;
[0010] 在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。
[0011] 结合第一方面,在第一种可能的实现方式中,所述根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个物理主机的最长数据访问时间,包括:
[0012] 步骤1)根据所述节点上的数据块的大小以及所述节点对应的链路的剩余带宽,计算一个物理主机访问一个所述节点的数据访问时间;
[0013] 步骤2)在根据所述步骤1)完成了所述一个物理主机对所述各个节点的数据访问时间的计算之后,确定在各个所述数据访问时间中确定所述最长数据访问时间;
[0014] 根据所述步骤1)和所述根据所述步骤2)确定所述m个物理主机中每个物理主机的最长数据访问时间。
[0015] 结合第一方面第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述节点上的数据块的大小以及所述节点对应的链路的剩余带宽,计算一个物理主机访问一个所述节点的数据访问时间,包括:
[0016] 确定所述一个物理主机访问一个所述节点的链路中最小的剩余带宽;
[0017] 根据所述节点对应的所述数据块的大小,以及所述最小的剩余带宽,计算所述节点的数据访问时间。
[0018] 结合第一方面,在第三种可能的实现方式中,所述在所述集合中,选择一个物理主机作为所述目标虚拟机的放置主机,包括:
[0019] 选择所述集合中数据访问的链路长度最短的一个物理主机作为所述目标虚拟机的放置主机。
[0020] 结合第一方面,在第四种可能的实现方式中,所述在所述集合中,选择一个物理主机作为所述目标虚拟机的放置主机,包括:
[0021] 选择所述集合中,运算资源最优的一个物理主机作为所述目标虚拟机的放置主机,所述运算资源包括:中央处理器和内存。
[0022] 本发明实施例第二方面提供的虚拟机放置装置,包括:
[0023] 获取单元,用于获取目标虚拟机存储在各个节点中的数据块的大小,以及所述各个节点对应的链路的剩余带宽;
[0024] 时间确定单元,用于根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据访问时间,所述最长数据访问时间为一个所述物理主机访问所述各个节点中的数据块的最长时间,所述m为大于1的整数;
[0025] 集合确定单元,用于确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合;
[0026] 主机确定单元,用于在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。
[0027] 结合第二方面,在第一种可能的实现方式中,所述时间确定单元具体用于:
[0028] 步骤1)根据所述节点上的数据块的大小以及所述节点对应的链路的剩余带宽,计算一个物理主机访问一个所述节点的数据访问时间;
[0029] 步骤2)在根据所述步骤1)完成了所述一个物理主机对所述各个节点的数据访问时间的计算之后,确定在各个所述数据访问时间中确定所述最长数据访问时间;
[0030] 根据所述步骤1)和所述根据所述步骤2)确定所述m个物理主机中每个物理主机的最长数据访问时间。
[0031] 结合第二方面第一种可能的实现方式,在第二种可能的实现方式中,所述时间确定单元具体还用于:
[0032] 确定所述一个物理主机访问一个所述节点的链路中最小的剩余带宽;
[0033] 根据所述节点对应的所述数据块的大小,以及所述最小的剩余带宽,计算所述节点的数据访问时间。
[0034] 结合第二方面,在第三种可能的实现方式中,所述主机确定单元具体用于:
[0035] 选择所述集合中数据访问的链路长度最短的一个物理主机作为所述目标虚拟机的放置主机。
[0036] 结合第二方面,在第四种可能的实现方式中,所述主机确定单元具体用于:
[0037] 选择所述集合中,运算资源最优的一个物理主机作为所述目标虚拟机的放置主机,所述运算资源包括:中央处理器和内存。
[0038] 从以上技术方案可以看出,本发明实施例具有以下优点:
[0039] 在本发明实施中,根据各个节点上的数据块的大小以及各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据访问时间,再选择所述m个物理主机中所述最长数据访问时间最短的物理主机作为所述目标虚拟机的放置主机,从而在充分考虑存储在各个节点上的条带化数据、以及链路剩余带宽的情况下,进行物理主机的选择,实现了资源的优化配置,提高了业务读写数据的性能。附图说明
[0040] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0041] 图1是本发明实施例中的网络架构示意图;
[0042] 图2是本发明实施例中虚拟机放置方法的一个流程示意图;
[0043] 图3是本发明实施例中虚拟机放置的一个架构示意图;
[0044] 图4是本发明实施例中虚拟机放置方法的另一个流程示意图;
[0045] 图5是本发明实施例中虚拟机放置的另一个架构示意图;
[0046] 图6是本发明实施例中虚拟机放置装置的结构示意图;
[0047] 图7是本发明实施例中基于虚拟机放置方法的计算机装置的结构示意图。

具体实施方式

[0048] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0049] 在本发明实施例中,实现虚拟机放置方法的虚拟机放置装置部署在数据中心的管理节点上,所述数据中心由管理节点和计算节点组成(网络架构如图1所示)。计算节点为物理服务器(可以作为本发明实施例中的物理主机),为数据中心提供计算能,通常会运行多个虚拟机。管理节点管理整个数据中心,提供主机/虚拟机生命周期管理、资源调度管理、运维等功能,是整个数据中心的大脑。
[0050] 多个计算节点可以组成一个集群,集群提供资源调度、高可用等高级功能。管理节点除了管理集群外,还可以管理单独的主机,但是对于这些主机并不提供资源调度等高级特性。
[0051] 在本发明实施例中,所述虚拟机放置装置为具备本发明实施例中虚拟机放置功能的设备;具体可以为独单的物理设备,包括多个物理模块;也可以为加载在计算机上的软件程序,或一个软件中的功能模块,或单独软件的形式或以插件的形式存在。虚拟机放置装置的描述仅仅是示意性的,其中单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
[0052] 请参阅图2,本发明实施例中虚拟机放置方法的一个实施例包括:
[0053] 201、获取目标虚拟机存储在各个节点中的数据块的大小,以及所述各个节点对应的链路的剩余带宽;
[0054] 虚拟机放置装置获取目标虚拟机存储在各个节点中的数据块的大小,以及所述各个节点对应的链路的剩余带宽。
[0055] 示例性的,在图2中,storage模块为所述存储节点,sw模块为所述节点(在实际应用中,可以为交换机),host模块为所述物理主机,data模块为被划分的条带化数据块,vm模块为虚拟机,图中左侧vm模块的所述目标虚拟机。
[0056] 具体的,本发明实施中所述节点为存储节点的父节点,且所述存储节点为叶子节点;所述目标虚拟机为将要进行放置的虚拟机;所述节点对应的链路为与所述节点存在连接关系的链路,如图3所示,sw3为所述节点,sw3对应的链路分别为与host3连接的链路,与host4连接的链路,与data2连接的链路,与data3连接的链路,以及与sw2连接的链路。在图3中,存储在所述节点的数据块为data2和data3。
[0057] 202、确定每个所述物理主机的最长数据访问时间;
[0058] 虚拟机放置装置根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据访问时间,所述最长数据访问时间为一个所述物理主机访问所述各个节点中的数据块的最长时间,所述m为大于1的整数。
[0059] 具体的,每个物理主机访问任一节点中的数据块都需要经过固定的链路,以图3中的链路结构为例,若要host1主机要访问sw3中的数据块(即data2和data3),则需要依次经过host1与sw1之间的链路,sw1与sw2之间的链路,sw2与sw3之间的链路,sw3与data2之间的链路以及sw3与data3之间的链路;而host1主机访问sw3中的数据块的数据访问时间,取决于上述各条链路中剩余链路带宽最小的一条链路;在本发明实施了中,每个主机都需要对访问每个所述节点中数据块的数据访问时间进行分别的测算,再比较访问各个节点对应的数据访问时间,选择其中一个时间最长的数据访问时间作为最长数据访问时间。该最长数据访问时间即虚拟机在该物理主机上读取完所有条带化数据所需要的时间(该所有条带化数据指的是属于一个完整业务数据的所有条带化数据)。
[0060] 203、确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合;
[0061] 虚拟机放置装置确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合。
[0062] 具体的,当完成每个物理主机的最长数据访问时间的计算之后,将所述最长数据访问时间最短的物理主机的作为一个集合。
[0063] 204、在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。
[0064] 虚拟机放置装置在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。
[0065] 具体的,在实际应用中,可以随机选择所述集合中的任意一个物理主机作为放置主机;也可以数据访问的链路长度最短的一个物理主机作为所述目标虚拟机的放置主机,所述数据访问为物理主机访问所述节点中数据块对应的过程;也可以运算资源最优的一个物理主机作为所述目标虚拟机的放置主机,所述运算资源包括:中央处理器和内存。放置主机在所述集合中的选择方法可以根据实际需求而定,此次具体不作限定。
[0066] 在本发明实施中,根据各个节点上的数据块的大小以及各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据访问时间,再选择所述m个物理主机中所述最长数据访问时间最短的物理主机作为所述目标虚拟机的放置主机,从而在充分考虑存储在各个节点上的条带化数据、以及链路剩余带宽的情况下,进行物理主机的选择,实现了资源的优化配置,提高了业务读写数据的性能。
[0067] 下面对上述虚拟机放置方法进行详细描述,请参阅图4,本发明实施例中虚拟机放置方法的另一个实施例包括:
[0068] 401、获取目标虚拟机存储在各个节点中的数据块的大小,以及所述各个节点对应的链路的剩余带宽;
[0069] 虚拟机放置装置获取目标虚拟机存储在各个节点中的数据块的大小,以及所述各个节点对应的链路的剩余带宽。
[0070] 具体的,本发明实施中所述节点为存储节点的父节点,且所述存储节点为叶子节点;所述目标虚拟机为将要进行放置的虚拟机;所述节点对应的链路为与所述节点存在连接关系的链路。
[0071] 402、确定每个所述物理主机的最长数据访问时间;
[0072] 虚拟机放置装置根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据访问时间,所述最长数据访问时间为一个所述物理主机访问所述各个节点中的数据块的最长时间,所述m为大于1的整数。
[0073] 具体的,可以通过以下步骤确定每个所述物理主机的最长数据访问时间:
[0074] 步骤1)根据所述节点上的数据块的大小以及所述节点对应的链路的剩余带宽,计算一个物理主机访问一个所述节点的数据访问时间;
[0075] 具体的,虚拟机放置装置可以先确定所述一个物理主机访问一个所述节点的链路中最小的剩余带宽;根据所述节点对应的所述数据块的大小,以及所述最小的剩余带宽,计算所述节点的数据访问时间。在实际应用中,在物理主机访问一个节点的链路中,数据访问时间取决于若该链路的最小剩余带宽。示例性的,若该链路的最小剩余带宽为5M/s,该节点对应的所述数据块的大小为20M,则该物理主机访问所述节点中的数据块的数据访问时间为:数据块的大小除以剩余带宽等于4s。
[0076] 步骤2)在根据所述步骤1)完成了所述一个物理主机对所述各个节点的数据访问时间的计算之后,确定在各个所述数据访问时间中确定所述最长数据访问时间;
[0077] 具体的,所述最长数据访问时间决定了一个物理主机访问存储各个节点的所有条带化数据块的总时间。
[0078] 根据所述步骤1)和所述根据所述步骤2)确定所述m个物理主机中每个物理主机的最长数据访问时间。
[0079] 403、确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合;
[0080] 虚拟机放置装置确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合。
[0081] 具体的,当完成每个物理主机的最长数据访问时间的计算之后,将所述最长数据访问时间最短的物理主机的作为一个集合。
[0082] 示例性的,在实际应用中,如图3和图5所示,storage模块为所述存储节点,sw模块为所述节点(在实际应用中,可以为交换机),host模块为所述物理主机,data模块为被划分的条带化数据块,vm模块为虚拟机,图中圆形模块的vm为所述目标虚拟机。从sw1到sw2的链路的剩余带宽为10M/s,从sw1到sw3的链路的剩余带宽为5M/s,从sw1到sw2的链路为图中sw1左侧所有链路中的最小剩余带宽,从sw1到sw3的链路为图中sw1右侧所有链路中的最小剩余带宽。
[0083] 在图3和图5的实施例中,目标虚拟机需要访问的条带化数据包括:data1、data2和data3,根据本发明实施的算法,对目标虚拟机到该3个数据块的链路带宽最小值进行计算得出:当虚拟机放置在host1或host2上时,最长数据访问时间皆为4s;当虚拟机放置在host3或host4上时,最长数据访问时间皆为2s;因此,所述最长数据访问时间最短的物理主机的集合为{host3,host4}。
[0084] 404、根据预置逻辑在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。
[0085] 虚拟机放置装置根据预置逻辑在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。
[0086] 具体的,所述预置逻辑可以为选择所述集合中数据访问的链路长度最短的一个物理主机作为所述目标虚拟机的放置主机。也可以为选择所述集合中,运算资源最优的一个物理主机作为所述目标虚拟机的放置主机,所述运算资源包括:CPU和内存。
[0087] 示例性的,在图3和图5的实施例中,host3或host4的访问链接的链路长度相比,host3比host4要短,因此,在图5中,选择host3作为所述目标虚拟机的放置主机。
[0088] 下面对实现上述虚拟机放置方法进行描述,请参阅图6,本发明实施例中虚拟机放置装置的一个实施例包括:
[0089] 获取单元601,用于获取目标虚拟机存储在各个节点中的数据块的大小,以及所述各个节点对应的链路的剩余带宽;
[0090] 时间确定单元602,用于根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据访问时间,所述最长数据访问时间为一个所述物理主机访问所述各个节点中的数据块的最长时间,所述m为大于1的整数;
[0091] 集合确定单元603,用于确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合;
[0092] 主机确定单元604,用于在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。
[0093] 具体的,所述时间确定单元具体602用于:
[0094] 步骤1)根据所述节点上的数据块的大小以及所述节点对应的链路的剩余带宽,计算一个物理主机访问一个所述节点的数据访问时间;
[0095] 步骤2)在根据所述步骤1)完成了所述一个物理主机对所述各个节点的数据访问时间的计算之后,确定在各个所述数据访问时间中确定所述最长数据访问时间;
[0096] 根据所述步骤1)和所述根据所述步骤2)确定所述m个物理主机中每个物理主机的最长数据访问时间。
[0097] 进一步的,所述时间确定单元602具体还用于:
[0098] 确定所述一个物理主机访问一个所述节点的链路中最小的剩余带宽;
[0099] 根据所述节点对应的所述数据块的大小,以及所述最小的剩余带宽,计算所述节点的数据访问时间。
[0100] 具体的,所述主机确定单元604具体用于:
[0101] 选择所述集合中数据访问的链路长度最短的一个物理主机作为所述目标虚拟机的放置主机。
[0102] 可选的,所述主机确定单元604具体用于:
[0103] 选择所述集合中,运算资源最优的一个物理主机作为所述目标虚拟机的放置主机,所述运算资源包括:中央处理器和内存。
[0104] 上述各个单元模块的具体操作过程请参考方法实施例,此处不再赘述。
[0105] 本发明实施例还提供了基于所述虚拟机放置方法的虚拟机放置装置,包括:
[0106] 处理器730控制虚拟机放置装置70的操作,处理器730还可以称为CPU(Central Processing Unit,中央处理单元)。存储器740可以包括只读存储器随机存取存储器,并向处理器730提供指令和数据。存储器740的一部分还可以包括非易失性随机存取存储器(NVRAM)。具体的应用中,虚拟机放置装置70的各个组件通过总线系统750耦合在一起,其中总线系统750除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统750。
[0107] 上述本发明实施例揭示的方法可以应用于处理器730中,或者由处理器730实现。处理器730可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器730中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器730可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器740,处理器730读取存储器740中的信息,结合其硬件完成上述方法的步骤。
[0108] 进一步的,所述处理器730还用于获取目标虚拟机存储在各个节点中的数据块的大小,以及所述各个节点对应的链路的剩余带宽;根据所述各个节点上的数据块的大小以及所述各个节点对应的链路的剩余带宽,在所述目标虚拟机能放置的m个物理主机中,确定每个所述物理主机的最长数据访问时间,所述最长数据访问时间为一个所述物理主机访问所述各个节点中的数据块的最长时间,所述m为大于1的整数;确定所述m个物理主机中,所述最长数据访问时间最短的物理主机的集合;在所述集合中选择一个物理主机作为所述目标虚拟机的放置主机。
[0109] 本发明实施例中所述处理器730还可以执行上述方法实施例中的内容,此处不再赘述。
[0110] 在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0111] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0112] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0113] 所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0114] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
[0115] 以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈