CN108205460A - 宿主机可用资源的生成方法和装置 - Google Patents

宿主机可用资源的生成方法和装置 Download PDF

Info

Publication number
CN108205460A
CN108205460A CN201611169335.1A CN201611169335A CN108205460A CN 108205460 A CN108205460 A CN 108205460A CN 201611169335 A CN201611169335 A CN 201611169335A CN 108205460 A CN108205460 A CN 108205460A
Authority
CN
China
Prior art keywords
host
virtual machine
configuration data
data
target virtual
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.)
Pending
Application number
CN201611169335.1A
Other languages
English (en)
Inventor
高阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201611169335.1A priority Critical patent/CN108205460A/zh
Publication of CN108205460A publication Critical patent/CN108205460A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种宿主机可用资源的生成方法和装置。其中,该方法包括:查找数据库中配置数据满足预设条件的目标虚拟机,其中,预设条件用于表示配置数据未被采集;通过采集工具从虚拟机管理服务器上采集目标虚拟机的配置数据;利用采集到的目标虚拟机的配置数据对数据库中记载的目标虚拟机的配置数据进行更新;根据更新后的数据库中的配置数据生成宿主机的可用资源。本发明解决了按照现有的宿主机的可用资源生成方法无法准确地生成宿主机的可用资源的技术问题。

Description

宿主机可用资源的生成方法和装置
技术领域
本发明涉及计算机领域,具体而言,涉及一种宿主机可用资源的生成方法和装置。
背景技术
通过CMDB(配置管理数据库)系统来处理虚拟服务器的开通需求,虚拟服务器开通前必须要选择一个宿主机,CMDB系统可以根据宿主机上已经存在的虚拟机配置来计算宿主机的可用资源,再提供给运维选择。计算公式为以下:
(1)磁盘绝对剩余空间=宿主机总硬盘量-该宿主机的所有虚拟机的总磁盘量-该宿主机的所有虚拟机的总内存量
(2)可用内存=宿主机总内存量-该宿主机的所有虚拟机的总内存量
在实际操作过程中,时常有虚拟机数据收集不全的问题,比如某虚拟机的内存信息没有收集成功,则其内存数据会为0,那么就影响了宿主机剩余资源计算值的准确性。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种宿主机可用资源的生成方法和装置,以至少解决按照现有的宿主机的可用资源生成方法无法准确地生成宿主机的可用资源的技术问题。
根据本发明实施例的一个方面,提供了一种宿主机可用资源的生成方法,包括:查找数据库中配置数据满足预设条件的目标虚拟机,其中,所述预设条件用于表示所述配置数据未被采集;通过采集工具从虚拟机管理服务器上采集所述目标虚拟机的配置数据;利用采集到的所述目标虚拟机的配置数据对所述数据库中记载的所述目标虚拟机的配置数据进行更新;根据更新后的所述数据库中的配置数据生成所述宿主机的可用资源。
进一步地,所述采集工具为客户端/服务器程序,其中,所述客户端/服务器程序包服务器程序和客户端程序,所述客户端程序设置在所述虚拟机管理服务器上,通过采集工具从虚拟机管理服务器上采集所述目标虚拟机的配置数据包括:向所述服务器程序发送所述目标虚拟机的名称,其中,所述服务器程序将所述目标虚拟机的名称转发给所述客户端程序,所述客户端程序按照所述目标虚拟机的名称,从所述虚拟机管理服务器的数据库中读取所述目标虚拟机的配置数据,并将所述目标虚拟机的配置数据发送给所述服务器程序;获取所述服务器程序接收到的所述目标虚拟机的配置数据。
进一步地,所述配置数据包括内存数据、CPU数据和硬盘数据,查找数据库中配置数据满足预设条件的目标虚拟机包括:查找所述内存数据、所述CPU数据和所述硬盘数据中至少一个数据为0的目标虚拟机。
进一步地,所述宿主机的可用资源包括所述宿主机的硬盘绝对剩余空间和所述宿主机的可用内存,根据更新后的所述数据库中的配置数据生成所述宿主机的可用资源包括:根据所述数据库中虚拟机的配置数据,生成所述宿主机的硬盘绝对剩余空间;根据所述数据库中虚拟机的配置数据,生成所述宿主机的可用内存。
进一步地,根据所述数据库中虚拟机的配置数据,生成所述宿主机的硬盘绝对剩余空间包括:获取所述宿主机的总硬盘量;获取所述宿主机的所述有虚拟机的配置数据;获取所述宿主机的总硬盘量与所述宿主机的所有虚拟机的总硬盘量之差,得到第一差值,其中,所述宿主机的所有虚拟机的总硬盘量为所述宿主机的所有虚拟机的硬盘量的和;将所述第一差值和所述宿主机的所有虚拟机的总内存量之差作为所述宿主机的硬盘绝对剩余空间,其中,所述宿主机的所有虚拟机的总内存量为所述宿主机的所有虚拟机的内存量的和。
进一步地,根据所述数据库中虚拟机的配置数据,生成所述宿主机的可用内存包括:获取所述宿主机的总内存量;获取所述宿主机的所述有虚拟机的配置数据;获取所述宿主机的总内存量与所述宿主机的所有虚拟机的总内存量之差,得到第二差值,其中,所述宿主机的所有虚拟机的总内存量为所述宿主机的所有虚拟机的内存量的和;将所述第二差值和宿主机的所有虚拟机所消耗的运行内存之差作为所述宿主机的可用内存,其中,宿主机的所有虚拟机所消耗的运行内存为运行一台虚拟机所消耗的所述宿主机的运行内存与所述宿主机的所有虚拟机的数量的乘积。
根据本发明实施例的另一方面,还提供了一种宿主机可用资源的生成装置,包括:查找单元,用于查找数据库中配置数据满足预设条件的目标虚拟机,其中,所述预设条件用于表示所述配置数据未被采集;采集单元,用于通过采集工具从虚拟机管理服务器上采集所述目标虚拟机的配置数据;更新单元,用于利用采集到的所述目标虚拟机的配置数据对所述数据库中记载的所述目标虚拟机的配置数据进行更新;生成单元,用于根据更新后的所述数据库中的配置数据生成所述宿主机的可用资源。
进一步地,所述采集工具为客户端/服务器程序,其中,所述客户端/服务器程序包服务器程序和客户端程序,所述客户端程序设置在所述虚拟机管理服务器上,所述采集单元包括:发送模块,用于向所述服务器程序发送所述目标虚拟机的名称,其中,所述服务器程序将所述目标虚拟机的名称转发给所述客户端程序,所述客户端程序按照所述目标虚拟机的名称,从所述虚拟机管理服务器的数据库中读取所述目标虚拟机的配置数据,并将所述目标虚拟机的配置数据发送给所述服务器程序;获取模块,用于获取所述服务器程序接收到的所述目标虚拟机的配置数据。
进一步地,所述配置数据包括内存数据、CPU数据和硬盘数据,所述查找单元包括:查找模块,用于查找所述内存数据、所述CPU数据和所述硬盘数据中至少一个数据为0的目标虚拟机。
进一步地,所述宿主机的可用资源包括所述宿主机的硬盘绝对剩余空间和所述宿主机的可用内存,所述生成单元包括:第一生成模块,用于根据所述数据库中虚拟机的配置数据,生成所述宿主机的硬盘绝对剩余空间;第二生成模块,用于根据所述数据库中虚拟机的配置数据,生成所述宿主机的可用内存。
进一步地,所述第一生成模块包括:第一获取子模块,用于获取所述宿主机的总硬盘量;第二获取子模块,用于获取所述宿主机的所述有虚拟机的配置数据;第三获取子模块,用于获取所述宿主机的总硬盘量与所述宿主机的所有虚拟机的总硬盘量之差,得到第一差值,其中,所述宿主机的所有虚拟机的总硬盘量为所述宿主机的所有虚拟机的硬盘量的和;硬盘空间模块,用于将所述第一差值和所述宿主机的所有虚拟机的总内存量之差作为所述宿主机的硬盘绝对剩余空间,其中,所述宿主机的所有虚拟机的总内存量为所述宿主机的所有虚拟机的内存量的和。
进一步地,所述第二生成模块包括:第四获取模块,用于获取所述宿主机的总内存量;第五获取模块,用于获取所述宿主机的所述有虚拟机的配置数据;第六获取模块,用于获取所述宿主机的总内存量与所述宿主机的所有虚拟机的总内存量之差,得到第二差值,其中,所述宿主机的所有虚拟机的总内存量为所述宿主机的所有虚拟机的内存量的和;可用内存模块,用于将所述第二差值和所述宿主机的所有虚拟机所消耗的运行内存之差作为所述宿主机的可用内存,其中,所述宿主机的所有虚拟机所消耗的运行内存为运行一台虚拟机所消耗的所述宿主机的运行内存与所述宿主机的所有虚拟机的数量的乘积。
在本发明实施例中,采用查找数据库中配置数据满足预设条件的目标虚拟机,其中,预设条件用于表示配置数据未被采集;通过采集工具从虚拟机管理服务器上采集目标虚拟机的配置数据;利用采集到的目标虚拟机的配置数据对数据库中记载的目标虚拟机的配置数据进行更新;根据更新后的数据库中的配置数据生成宿主机的可用资源的方式,通过对未采集到的目标虚拟的配置数据进行采集,达到了准确地获取宿主机的所有虚拟机的配置数据的目的,从而实现了准确地生成宿主机的可用资源的技术效果,进而解决了按照现有的宿主机的可用资源生成方法无法准确地生成宿主机的可用资源的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种宿主机可用资源的生成方法的流程图;
图2是根据本发明实施例的一种宿主机可用资源的生成装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例,提供了一种宿主机可用资源的生成方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的宿主机可用资源的生成方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,查找数据库中配置数据满足预设条件的目标虚拟机,其中,预设条件用于表示配置数据未被采集。
数据库中存储有所有虚拟机的名称及其配置信息,其中,虚拟机的配置信息是预先收集到的并与虚拟机的名称一一对应的存储在数据库中。在数据库中查找满足预设条件的配置信息,并获取该配置信息对应的虚拟机的名称,将该虚拟机作为目标虚拟机。其中,目标虚拟机的配置信息满足预设条件,表示目标虚拟机的配置信息未被收集到,即预先收集并存储在数据库中的目标虚拟机的配置信息与该目标虚拟机实际的配置信息不相符。
步骤S104,通过采集工具从虚拟机管理服务器上采集目标虚拟机的配置数据。
虚拟机管理服务器上存储有所有虚拟机的实际配置数据,通过采集工具从虚拟机管理服务器上对目标虚拟机的配置数据进行重新采集。
步骤S106,利用采集到的目标虚拟机的配置数据对数据库中记载的目标虚拟机的配置数据进行更新。
根据重新采集到的配置数据对数据库中目标虚拟机的配置数据进行更新,即用新采集到目标虚拟机的配置数据替换数据库中预先存储的目标虚拟机的配置信息。
步骤S108,根据更新后的数据库中的配置数据生成宿主机的可用资源。
采用步骤S102到步骤S106可以实现查找出所有数据库中的配置数据与实际不相符的虚拟机,并完成对其配置数据的重新采集以及对数据库中配置信息的更新。在完成上述操作之后,根据数据库中的配置数据生成宿主机的可用资源。
在本发明实施例中,采用查找数据库中配置数据满足预设条件的目标虚拟机,其中,预设条件用于表示配置数据未被采集;通过采集工具从虚拟机管理服务器上采集目标虚拟机的配置数据;利用采集到的目标虚拟机的配置数据对数据库中记载的目标虚拟机的配置数据进行更新;根据更新后的数据库中的配置数据生成宿主机的可用资源的方式,通过对未采集到的目标虚拟的配置数据进行采集,达到了准确地获取宿主机的所有虚拟机的配置数据的目的,从而实现了准确地生成宿主机的可用资源的技术效果,进而解决了按照现有的宿主机的可用资源生成方法无法准确地生成宿主机的可用资源的技术问题。
可选地,采集工具为客户端/服务器程序,其中,客户端/服务器程序包服务器程序和客户端程序,客户端程序设置在虚拟机管理服务器上,通过采集工具从虚拟机管理服务器上采集目标虚拟机的配置数据包括:向服务器程序发送目标虚拟机的名称,其中,服务器程序将目标虚拟机的名称转发给客户端程序,客户端程序按照目标虚拟机的名称,从虚拟机管理服务器的数据库中读取目标虚拟机的配置数据,并将目标虚拟机的配置数据发送给服务器程序;获取服务器程序接收到的目标虚拟机的配置数据。
在本发明实施例中,由于虚拟机管理服务器不提供对外的接口,因此采用客户端/服务器程序作为采集工具对目标虚拟机的配置数据进行采集。具体地,客户端/服务器程序包括服务器程序和客户端程序,将客户端程序设置在虚拟机管理服务器上,服务器程序设置在数据库所在的服务器上,在采集配置数据时,先将从数据库中查找到的目标虚拟机的名称发送给服务器程序,服务器程序将目标虚拟机的名称转发给客户端程序,客户端程序根据目标虚拟机的名称从虚拟机管理服务器上采集配置数据并将配置数据回传给服务器程序,最后获取服务器程序接收到的配置数据。
可选地,配置数据包括内存数据、CPU数据和硬盘数据,查找数据库中配置数据满足预设条件的目标虚拟机包括:查找内存数据、CPU数据和硬盘数据中至少一个数据为0的目标虚拟机。
在本发明实施例中,虚拟机的配置数据包括多个子数据,如内存数据、CPU数据和硬盘数据等。将预设条件设置为:内存数据、CPU数据和硬盘数据中至少一个数据为0,按照该预设条件查找数据库中配置数据满足预设条件的目标虚拟机。
可选地,宿主机的可用资源包括宿主机的硬盘绝对剩余空间和宿主机的可用内存,根据更新后的数据库中的配置数据生成宿主机的可用资源包括:根据数据库中虚拟机的配置数据,生成宿主机的硬盘绝对剩余空间;根据数据库中虚拟机的配置数据,生成宿主机的可用内存。
在本发明实施例中,宿主机的可用资源包括硬盘绝对剩余空间和可用内存,在完成对目标虚拟机的配置数据进行重新采集以及根据新采集的数据对数据库进行更新之后,根据数据库中的配置数据生成宿主机的硬盘绝对剩余空间和宿主机的可用内存。
可选地,根据数据库中虚拟机的配置数据,生成宿主机的硬盘绝对剩余空间包括:获取宿主机的总硬盘量;获取宿主机的所有虚拟机的配置数据;获取宿主机的总硬盘量与宿主机的所有虚拟机的总硬盘量之差,得到第一差值,其中,宿主机的所有虚拟机的总硬盘量为宿主机的所有虚拟机的硬盘量的和;将第一差值和宿主机的所有虚拟机的总内存量之差作为宿主机的硬盘绝对剩余空间,其中,宿主机的所有虚拟机的总内存量为宿主机的所有虚拟机的内存量的和。
在本发明实施例中,根据数据库中虚拟机的配置数据,生成宿主机的硬盘绝对剩余空间采用如下方法:获取任意一个宿主机的总硬盘量、该宿主机的所有虚拟机的硬盘量以及该宿主机的所有虚拟机的内存量,通过运算得到该宿主机的总硬盘量减去该宿主机的所有虚拟机的硬盘量、该宿主机的所有虚拟机的内存量的结果,该结果即为该宿主机的硬盘绝对剩余空间。
可选地,根据数据库中虚拟机的配置数据,生成宿主机的可用内存包括:获取宿主机的总内存量;获取宿主机的所有虚拟机的配置数据;获取宿主机的总内存量与宿主机的所有虚拟机的总内存量之差,得到第二差值,其中,宿主机的所有虚拟机的总内存量为宿主机的所有虚拟机的内存量的和;将第二差值和宿主机的所有虚拟机所消耗的运行内存之差作为宿主机的可用内存,其中,宿主机的所有虚拟机所消耗的运行内存为运行一台虚拟机所消耗的宿主机的运行内存与宿主机的所有虚拟机的数量的乘积。
在本发明实施例中,根据数据库中虚拟机的配置数据,生成宿主机的可用内存采用如下方法:获取任意一个宿主机的总内存量、该宿主机的所有虚拟机的内存量、该宿主机的所有虚拟机的数量以及该宿主机每运行一台虚拟机所消耗的运行内存,通过运算得到该宿主机的总内存量减去该宿主机的所有虚拟机的内存量、该宿主机运行所有虚拟机所消耗的总运行内存的结果,该结果即为该宿主机的可用内存。其中,该宿主机运行所有虚拟机所消耗的总运行内存为该宿主机的所有虚拟机的数量与该宿主机每运行一台虚拟机所消耗的运行内存的积,如:该宿主机共有10台虚拟机,该宿主机每运行一台虚拟机需要消耗自身1.5G的运行内存,则该宿主机运行所有虚拟机所消耗的总运行内存=1.5G/台*10台=15G。
根据本发明实施例,提供了一种宿主机可用资源的生成装置,该装置主要用于执行本发明实施例上述内容所提供的宿主机可用资源的生成方法,图2是根据本发明实施例的宿主机可用资源的生成装置的示意图,如图2所示,该装置包括:
查找单元210,用于查找数据库中配置数据满足预设条件的目标虚拟机,其中,预设条件用于表示配置数据未被采集。
数据库中存储有所有虚拟机的名称及其配置信息,其中,虚拟机的配置信息是预先收集到的并与虚拟机的名称一一对应的存储在数据库中。查找单元210在数据库中查找满足预设条件的配置信息,并获取该配置信息对应的虚拟机的名称,将该虚拟机作为目标虚拟机。其中,目标虚拟机的配置信息满足预设条件,表示目标虚拟机的配置信息未被收集到,即预先收集并存储在数据库中的目标虚拟机的配置信息与该目标虚拟机实际的配置信息不相符。
采集单元220,用于通过采集工具从虚拟机管理服务器上采集目标虚拟机的配置数据。
虚拟机管理服务器上存储有所有虚拟机的实际配置数据,采集单元220通过采集工具从虚拟机管理服务器上对目标虚拟机的配置数据进行重新采集。
更新单元230,用于利用采集到的目标虚拟机的配置数据对数据库中记载的目标虚拟机的配置数据进行更新。
更新单元230根据重新采集到的配置数据对数据库中目标虚拟机的配置数据进行更新,即用新采集到目标虚拟机的配置数据替换数据库中预先存储的目标虚拟机的配置信息。
生成单元240,用于根据更新后的数据库中的配置数据生成宿主机的可用资源。
生成单元240根据更新后的数据库中的配置数据生成宿主机的可用资源。
可选地,采集工具为客户端/服务器程序,其中,客户端/服务器程序包服务器程序和客户端程序,客户端程序设置在虚拟机管理服务器上,采集单元包括:发送模块,用于向服务器程序发送目标虚拟机的名称,其中,服务器程序将目标虚拟机的名称转发给客户端程序,客户端程序按照目标虚拟机的名称,从虚拟机管理服务器的数据库中读取目标虚拟机的配置数据,并将目标虚拟机的配置数据发送给服务器程序;获取模块,用于获取服务器程序接收到的目标虚拟机的配置数据。
在本发明实施例中,由于虚拟机管理服务器不提供对外的接口,因此采用客户端/服务器程序作为采集工具对目标虚拟机的配置数据进行采集。具体地,客户端/服务器程序包括服务器程序和客户端程序,将客户端程序设置在虚拟机管理服务器上,服务器程序设置在数据库所在的服务器上,在采集配置数据时,发送模块先将从数据库中查找到的目标虚拟机的名称发送给服务器程序,服务器程序将目标虚拟机的名称转发给客户端程序,客户端程序根据目标虚拟机的名称从虚拟机管理服务器上采集配置数据并将配置数据回传给服务器程序,最后获取模块获取服务器程序接收到的配置数据。
可选地,配置数据包括内存数据、CPU数据和硬盘数据,查找单元包括:查找模块,用于查找内存数据、CPU数据和硬盘数据中至少一个数据为0的目标虚拟机。
在本发明实施例中,虚拟机的配置数据包括多个子数据,如内存数据、CPU数据和硬盘数据等。将预设条件设置为:内存数据、CPU数据和硬盘数据中至少一个数据为0,查找单元按照该预设条件查找数据库中配置数据满足预设条件的目标虚拟机。
可选地,宿主机的可用资源包括宿主机的硬盘绝对剩余空间和宿主机的可用内存,生成单元包括:第一生成模块,用于根据数据库中虚拟机的配置数据,生成宿主机的硬盘绝对剩余空间;第二生成模块,用于根据数据库中虚拟机的配置数据,生成宿主机的可用内存。
在本发明实施例中,宿主机的可用资源包括硬盘绝对剩余空间和可用内存,在完成对目标虚拟机的配置数据进行重新采集以及根据新采集的数据对数据库进行更新之后,第一生成模块根据数据库中的配置数据生成宿主机的硬盘绝对剩余空间,第二生成模块根据数据库中的配置数据生成宿主机的可用内存。
可选地,第一生成模块包括:第一获取子模块,用于获取宿主机的总硬盘量;第二获取子模块,用于获取宿主机的所有虚拟机的配置数据;第三获取子模块,用于获取宿主机的总硬盘量与宿主机的所有虚拟机的总硬盘量之差,得到第一差值,其中,宿主机的所有虚拟机的总硬盘量为宿主机的所有虚拟机的硬盘量的和;硬盘空间模块,用于将第一差值和宿主机的所有虚拟机的总内存量之差作为宿主机的硬盘绝对剩余空间,其中,宿主机的所有虚拟机的总内存量为宿主机的所有虚拟机的内存量的和。
在本发明实施例中,根据数据库中虚拟机的配置数据,生成宿主机的硬盘绝对剩余空间采用如下方法:获取任意一个宿主机的总硬盘量、该宿主机的所有虚拟机的硬盘量以及该宿主机的所有虚拟机的内存量,通过运算得到该宿主机的总硬盘量减去该宿主机的所有虚拟机的硬盘量、该宿主机的所有虚拟机的内存量的结果,该结果即为该宿主机的硬盘绝对剩余空间。
可选地,第二生成模块包括:第四获取模块,用于获取宿主机的总内存量;第五获取模块,用于获取宿主机的所有虚拟机的配置数据;第六获取模块,用于获取宿主机的总内存量与宿主机的所有虚拟机的总内存量之差,得到第二差值,其中,宿主机的所有虚拟机的总内存量为宿主机的所有虚拟机的内存量的和;可用内存模块,用于将第二差值和宿主机的所有虚拟机所消耗的运行内存之差作为宿主机的可用内存,其中,宿主机的所有虚拟机所消耗的运行内存为运行一台虚拟机所消耗的宿主机的运行内存与宿主机的所有虚拟机的数量的乘积。
在本发明实施例中,根据数据库中虚拟机的配置数据,生成宿主机的可用内存采用如下方法:获取任意一个宿主机的总内存量、该宿主机的所有虚拟机的内存量、该宿主机的所有虚拟机的数量以及该宿主机每运行一台虚拟机所消耗的运行内存,通过运算得到该宿主机的总内存量减去该宿主机的所有虚拟机的内存量、该宿主机运行所有虚拟机所消耗的总运行内存的结果,该结果即为该宿主机的可用内存。其中,该宿主机运行所有虚拟机所消耗的总运行内存为该宿主机的所有虚拟机的数量与该宿主机每运行一台虚拟机所消耗的运行内存的积,如:该宿主机共有10台虚拟机,该宿主机每运行一台虚拟机需要消耗自身1.5G的运行内存,则该宿主机运行所有虚拟机所消耗的总运行内存=1.5G/台*10台=15G。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种宿主机可用资源的生成方法,其特征在于,包括:
查找数据库中配置数据满足预设条件的目标虚拟机,其中,所述预设条件用于表示所述配置数据未被采集;
通过采集工具从虚拟机管理服务器上采集所述目标虚拟机的配置数据;
利用采集到的所述目标虚拟机的配置数据对所述数据库中记载的所述目标虚拟机的配置数据进行更新;
根据更新后的所述数据库中的配置数据生成所述宿主机的可用资源。
2.根据权利要求1所述的方法,其特征在于,所述采集工具为客户端/服务器程序,其中,所述客户端/服务器程序包服务器程序和客户端程序,所述客户端程序设置在所述虚拟机管理服务器上,通过采集工具从虚拟机管理服务器上采集所述目标虚拟机的配置数据包括:
向所述服务器程序发送所述目标虚拟机的名称,其中,所述服务器程序将所述目标虚拟机的名称转发给所述客户端程序,所述客户端程序按照所述目标虚拟机的名称,从所述虚拟机管理服务器的数据库中读取所述目标虚拟机的配置数据,并将所述目标虚拟机的配置数据发送给所述服务器程序;
获取所述服务器程序接收到的所述目标虚拟机的配置数据。
3.根据权利要求1或2所述的方法,其特征在于,所述配置数据包括内存数据、CPU数据和硬盘数据,查找数据库中配置数据满足预设条件的目标虚拟机包括:
查找所述内存数据、所述CPU数据和所述硬盘数据中至少一个数据为0的目标虚拟机。
4.根据权利要求1所述的方法,其特征在于,所述宿主机的可用资源包括所述宿主机的硬盘绝对剩余空间和所述宿主机的可用内存,根据更新后的所述数据库中的配置数据生成所述宿主机的可用资源包括:
根据所述数据库中虚拟机的配置数据,生成所述宿主机的硬盘绝对剩余空间;
根据所述数据库中虚拟机的配置数据,生成所述宿主机的可用内存。
5.根据权利要求4所述的方法,其特征在于,根据所述数据库中虚拟机的配置数据,生成所述宿主机的硬盘绝对剩余空间包括:
获取所述宿主机的总硬盘量;
获取所述宿主机的所有虚拟机的配置数据;
获取所述宿主机的总硬盘量与所述宿主机的所有虚拟机的总硬盘量之差,得到第一差值,其中,所述宿主机的所有虚拟机的总硬盘量为所述宿主机的所有虚拟机的硬盘量的和;
将所述第一差值和所述宿主机的所有虚拟机的总内存量之差作为所述宿主机的硬盘绝对剩余空间,其中,所述宿主机的所有虚拟机的总内存量为所述宿主机的所有虚拟机的内存量的和。
6.根据权利要求4所述的方法,其特征在于,根据所述数据库中虚拟机的配置数据,生成所述宿主机的可用内存包括:
获取所述宿主机的总内存量;
获取所述宿主机的所有虚拟机的配置数据;
获取所述宿主机的总内存量与所述宿主机的所有虚拟机的总内存量之差,得到第二差值,其中,所述宿主机的所有虚拟机的总内存量为所述宿主机的所有虚拟机的内存量的和;
将所述第二差值和所述宿主机的所有虚拟机所消耗的运行内存之差作为所述宿主机的可用内存,其中,所述宿主机的所有虚拟机所消耗的运行内存为运行一台虚拟机所消耗的所述宿主机的运行内存与所述宿主机的所有虚拟机的数量的乘积。
7.一种宿主机可用资源的生成装置,其特征在于,包括:
查找单元,用于查找数据库中配置数据满足预设条件的目标虚拟机,其中,所述预设条件用于表示所述配置数据未被采集;
采集单元,用于通过采集工具从虚拟机管理服务器上采集所述目标虚拟机的配置数据;
更新单元,用于利用采集到的所述目标虚拟机的配置数据对所述数据库中记载的所述目标虚拟机的配置数据进行更新;
生成单元,用于根据更新后的所述数据库中的配置数据生成所述宿主机的可用资源。
8.根据权利要求7所述的装置,其特征在于,所述采集工具为客户端/服务器程序,其中,所述客户端/服务器程序包服务器程序和客户端程序,所述客户端程序设置在所述虚拟机管理服务器上,所述采集单元包括:
发送模块,用于向所述服务器程序发送所述目标虚拟机的名称,其中,所述服务器程序将所述目标虚拟机的名称转发给所述客户端程序,所述客户端程序按照所述目标虚拟机的名称,从所述虚拟机管理服务器的数据库中读取所述目标虚拟机的配置数据,并将所述目标虚拟机的配置数据发送给所述服务器程序;
获取模块,用于获取所述服务器程序接收到的所述目标虚拟机的配置数据。
9.根据权利要求7或8所述的装置,其特征在于,所述配置数据包括内存数据、CPU数据和硬盘数据,所述查找单元包括:
查找模块,用于查找所述内存数据、所述CPU数据和所述硬盘数据中至少一个数据为0的目标虚拟机。
10.根据权利要求7所述的装置,其特征在于,所述宿主机的可用资源包括所述宿主机的硬盘绝对剩余空间和所述宿主机的可用内存,所述生成单元包括:
第一生成模块,用于根据所述数据库中虚拟机的配置数据,生成所述宿主机的硬盘绝对剩余空间;
第二生成模块,用于根据所述数据库中虚拟机的配置数据,生成所述宿主机的可用内存。
CN201611169335.1A 2016-12-16 2016-12-16 宿主机可用资源的生成方法和装置 Pending CN108205460A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611169335.1A CN108205460A (zh) 2016-12-16 2016-12-16 宿主机可用资源的生成方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611169335.1A CN108205460A (zh) 2016-12-16 2016-12-16 宿主机可用资源的生成方法和装置

Publications (1)

Publication Number Publication Date
CN108205460A true CN108205460A (zh) 2018-06-26

Family

ID=62602452

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611169335.1A Pending CN108205460A (zh) 2016-12-16 2016-12-16 宿主机可用资源的生成方法和装置

Country Status (1)

Country Link
CN (1) CN108205460A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109032755A (zh) * 2018-06-29 2018-12-18 优刻得科技股份有限公司 一种容器服务托管系统及提供容器服务的方法
CN113722338A (zh) * 2020-05-25 2021-11-30 中移(苏州)软件技术有限公司 一种数据同步方法、数据同步装置、电子设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102946413A (zh) * 2012-10-17 2013-02-27 北京搜狐新媒体信息技术有限公司 虚拟机调度和执行部署过程中的资源预处理方法及系统
CN103440748A (zh) * 2013-06-24 2013-12-11 江苏大学 面向集中供暖分户计量的无线温度采集方法及其装置
CN104407938A (zh) * 2014-11-21 2015-03-11 上海爱数软件有限公司 一种虚拟机镜像级备份后的多种粒度恢复方法
CN104461683A (zh) * 2014-11-07 2015-03-25 华为技术有限公司 一种虚拟机非法配置的校验方法、装置及系统
CN105204948A (zh) * 2015-10-29 2015-12-30 广州云宏信息科技股份有限公司 虚拟机物理内存配置方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102946413A (zh) * 2012-10-17 2013-02-27 北京搜狐新媒体信息技术有限公司 虚拟机调度和执行部署过程中的资源预处理方法及系统
CN103440748A (zh) * 2013-06-24 2013-12-11 江苏大学 面向集中供暖分户计量的无线温度采集方法及其装置
CN104461683A (zh) * 2014-11-07 2015-03-25 华为技术有限公司 一种虚拟机非法配置的校验方法、装置及系统
CN104407938A (zh) * 2014-11-21 2015-03-11 上海爱数软件有限公司 一种虚拟机镜像级备份后的多种粒度恢复方法
CN105204948A (zh) * 2015-10-29 2015-12-30 广州云宏信息科技股份有限公司 虚拟机物理内存配置方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109032755A (zh) * 2018-06-29 2018-12-18 优刻得科技股份有限公司 一种容器服务托管系统及提供容器服务的方法
CN113722338A (zh) * 2020-05-25 2021-11-30 中移(苏州)软件技术有限公司 一种数据同步方法、数据同步装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN105426408B (zh) 一种多索引的数据处理方法及装置
CN102737057B (zh) 一种商品类目信息的确定方法及装置
CN108667725A (zh) 一种基于多种接入及边缘计算的工业软网关以及实现方法
CN110224878A (zh) 网关配置更新方法、装置和服务器
CN102597966B (zh) 运行管理装置以及运行管理方法
CN108959337A (zh) 大数据获取方法、装置、设备及存储介质
CN109299157A (zh) 一种分布式大单表的数据导出方法及装置
JP6865763B2 (ja) データ処理方法及び装置
CN107241305A (zh) 一种基于多核处理器的网络协议分析系统及其分析方法
CN110201393A (zh) 一种配置数据的存储方法、装置及电子设备
CN105159925B (zh) 一种数据库集群数据分配方法及系统
CN109213758A (zh) 数据存取方法、装置、设备及计算机可读存储介质
CN105389266B (zh) 一种数据管理方法及装置
CN113706100A (zh) 配电网物联终端设备实时探测识别方法与系统
CN103248636B (zh) 离线下载的系统及方法
CN108205460A (zh) 宿主机可用资源的生成方法和装置
CN109242656A (zh) 一种基于云计算销售数据与用户评价的商品推送系统
CN106933644A (zh) 数据处理方法和装置
CN109698814A (zh) 僵尸网络发现方法及僵尸网络发现装置
CN110266598A (zh) 一种路由信息处理方法、装置、设备及可读存储介质
CN106156356A (zh) 基于xml的oais信息封装方法及系统
CN105493050B (zh) 数据处理装置及数据处理方法
CN106547764A (zh) 网页数据去重的方法及装置
CN107437174B (zh) 虚拟卡片管理方法和装置
CN111429061A (zh) 订单分配方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Applicant after: Beijing Guoshuang Technology Co.,Ltd.

Address before: 100086 Cuigong Hotel, 76 Zhichun Road, Shuangyushu District, Haidian District, Beijing

Applicant before: Beijing Guoshuang Technology Co.,Ltd.

RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20180626