专利名称:一种虚拟机系统的运行方法及虚拟机系统的制作方法
技术领域:
本发明涉及计算机领域中网络和虚拟化技术,特别涉及一种虚拟机系统的运行方法及虚拟机系统。
背景技术:
虚拟化技术是一种用软件模拟计算机硬件的技术,自从虚拟化技术获得了硬件厂商的支持以来,这种软件模拟硬件的性能获得了巨大的提升了,以至于整个操作系统,例如Windows,不需要直接安装在物理硬件上,而是运行在虚拟硬件上,便可获得完全可以接受的性能。这种物理硬件,称之为物理机(PhysicalMachine,PM),而虚拟硬件,称之为虚拟机(Virtual Machine, VM) 虚拟化技术带来的好处是明显的,即可以动态的调整虚拟机的性能。假设有一台配置很高的物理机,那么采用虚拟化技术,就可以在这台物理机上创建多个虚拟机,每个虚拟机可根据其运行应用的需要配置不同的性能。例如,可以为运行时占用计算机资源很小的应用所处的虚拟机配置较低的性能,或者为运行时占用计算机资源很大的应用所处的虚拟机配置较高的性能。此外,如果低配置的虚拟机的负载随着业务量的增加而变大时,还可以动态的提高虚拟机的配置以满足性能的需求,如果高配置的虚拟机的负载随着业务量的降低而变小时,也可以动态的降低虚拟机的配置,从而把节约出来的计算资源分配给其他的虚拟机。 基于上述好处,虚拟技术得到了广泛应用。企业将闲置的硬件资源整合起来,形成虚拟的互联网数据中心(Internet Data Center, IDC),用户就可以从IDC租用虚拟机开展互联网业务。在这种方式下,用户不再需要单独购买物理机即可按需使用计算资源,大大降低了用户架设网站和开展互联网业务的成本。虚拟机在使用时,需要通过IP地址访问。如果IDC对管理的虚拟机采用静态的方式分配IP地址,而虚拟机被用户关闭后又长期不启动,就会造成有限的IP资源的浪费。因此,通常IDC对管理的虚拟机采用动态的方式分配IP地址,即在虚拟机启动时向虚拟机分配IP地址,在虚拟机关闭后将分配的IP地址收回。但是现有技术的这种方式,对同一台虚拟机而言,每次启动后被分配的IP地址很可能是不同的。如果用户为了让虚拟机上运行的网站能够以固定域名的方式被访问,就必须在每次虚拟机重新启动后,都到域名系统(Domain NameSystem,DNS)服务器上修改配置,将DNS服务器上域名对应的IP地址修改为虚拟机当次启动后被分配的IP地址,这增加了用户的负担,给用户使用虚拟机带来了不便。
发明内容本发明所要解决的技术问题是提供一种虚拟机系统的运行方法及虚拟机系统,以提高用户使用虚拟机的便利性。本发明为解决技术问题而采用的技术方案是提供一种虚拟机系统的运行方法,包括虚拟机在启动时向DHCP服务器发送租用IP地址的请求,所述请求包含所述虚拟机的MAC地址;所述DHCP服务器在接收到所述请求后向所述虚拟机分配IP地址,并根据预设的MAC地址与域名之间的映射表确定所述虚拟机的MAC地址对应域名,以及,将所述对应域名与分配的IP地址发送至DNS服务器,其中所述DNS服务器在接收到所述对应域名与分配的IP地址后建立所述对应域名与分配的IP地址之间的关联关系;当所述DHCP服务器确认所述虚拟机关闭后,将分配的IP地址收回,并向所述DNS服务器发送通知,其中所述DNS服务器在接收到所述通知后删除所述对应域名与分配的IP地址之间的关联关系。根据本发明之一优选实施例,根据预设的MAC地址与域名之间的映射表确定所述虚拟机的MAC地址对应域名的操作具体包括a.从所述请求中提取所述虚拟机的MAC地址;b.判断预设的MAC地址与域名之间的映射表中是否存在与所述虚拟机的MAC地址相关的记录,如果是,则执行步骤c,否则执行步骤d ;c.提取所述记录中的域名作为所述虚拟机的MAC地址对应域名;d.为所述虚拟机分配域名,并将分配的域名作为所述虚拟机的MAC地址对应域名,以及,将分配的域名与所述虚拟机的MAC地址之间的对应关系记录至所述映射表。根据本发明之一优选实施例,所述虚拟机的MAC地址对应域名是所述虚拟机备访域名的别名。根据本发明之一优选实施例,所述DHCP服务器确认所述虚拟机关闭的操作具体包括当所述DHCP服务器接收到所述虚拟机发送的关闭通知时,确认所述虚拟机关闭;或者,所述DHCP服务器在设定长度的时间内未接收到所述虚拟机对分配的IP的续租请求时,确定所述虚拟机关闭。本发明还提供了一种虚拟机系统,包括虚拟机、DHCP服务器及DNS服务器,所述虚拟机,用于在启动时向所述DHCP服务器发送租用IP地址的请求,所述请求包含所述虚拟机的MAC地址;所述DHCP服务器,`包括地址管理单元及域名确定单元,所述地址管理单元,用于在所述DHCP服务器接收到所述请求后,向所述虚拟机分配IP地址;所述域名确定单元,用于在所述DHCP服务器接收到所述请求后,根据预设的MAC地址与域名之间的映射表确定所述虚拟机的MAC地址对应域名;所述地址管理单元,还用于将所述对应域名与分配的IP地址发送至所述DNS服务器;所述DNS服务器,用于在接收到所述对应域名与分配的IP地址后建立所述对应域名与分配的IP地址之间的关联关系;所述地址管理单元,还用于在确定所述虚拟机关闭后,将分配的IP地址收回,并向所述DNS服务器发送通知;所述DNS服务器,还用于在接收到所述通知后删除所述对应域名与分配的IP地址之间的关联关系。根据本发明之一优选实施例,所述域名确定单元包括提取子单元,用于从所述请求中提取所述虚拟机的MAC地址;判断子单元,用于判断预设的MAC地址与域名之间的映射表中是否存在与所述虚拟机的MAC地址相关的记录,如果是,则提取所述记录中的域名作为所述虚拟机的MAC地址对应域名,否则为所述虚拟机分配域名,并将分配的域名作为所述虚拟机的MAC地址对应域名,以及,将分配的域名与所述虚拟机的MAC地址之间的对应关系记录至所述映射表。根据本发明之一优选实施例,所述虚拟机的MAC地址对应域名是所述虚拟机备访域名的别名。根据本发明之一优选实施例,所述地址管理单元确定所述虚拟机关闭的方式具体包括当所述地址管理单元接收到所述虚拟机发送的关闭通知时,确认所述虚拟机关闭;或者,所述地址管理单元在设定长度的时间内未接收到所述虚拟机对分配的IP的续租请求时,确定所述虚拟机关闭。由以上技术方案可以看出,本发明中的DHCP服务器在接收到一台虚拟机发送的租用IP地址的请求后,通过预设的MAC地址与域名之间的映射表可以将这台虚拟机与唯一的域名绑定,这样,无论虚拟机启动多少次,DHCP服务器都可以确定属于这台虚拟机的唯一域名,并将当次分配的IP地址与这个唯一域名发送至DNS服务器,由DNS服务器建立关联关系以方便用户以域名的方式访问虚拟机时对域名进行解析。通过上述的方式,本发明不需要对虚拟机终端的实现进行任何更改,就可以避免在虚拟机重启时人工修改DNS服务器上的记录的缺陷,因此,本发明不仅大大提高了用户使用虚拟机的便利性,也因为具有很强的普适性而有利于对现有的虚拟机系统进行改造。
图1为本发明中虚拟机系统的实施例的结构示意框图;图2为本发明中域名确定单元202的实施例的结构示意框图;图3为本发明中虚拟机系统的运行方法的实施例的流程示意图。
具体实施方式为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。请参考图1,图1为本发明中虚拟机系统的实施例的结构示意框图。如图1所示,该实施例中的虚拟机系统包括虚拟机100、DHCP服务器200及DNS服务器300,并且虚拟机100、DHCP服务器200及DNS服务器300位于同一个局域网内。其中,虚拟机100,位于一台物理机上,该台物理机上还可以运行多台其他虚拟机。DHCP服务器200是一台按照动态主机设置协议(Dynamic HostConfigurationProtocol, DHCP)为局域网内以DHCP方式获取IP地址的终端分配IP地址的服务器。虚拟机100预先配置了以DHCP的方式在启动时获取IP地址,这样,当虚拟机100启动时,就会向DHCP服务器发送租用IP地址的请求,即一个UDP (User DatagramProtocol)的广播包,该广播包中含有虚拟机100的MAC (Media Access Control)地址。本实施例中的DHCP服务器200,包含地址管理单元201及域名确定单元202。其中,地址管理单元201,在DHCP服务器200接收到虚拟机100发送的租用请求后,向虚拟机100分配IP地址。根据DHCP协议,可以预先配置DHCP服务器的可供分配的IP地址范围,构成IP地址池。这样,在接收到虚拟机100发送的请求后,地址管理单元201就可以从这个IP地址池中提取一个当前未被占用的IP地址分配给虚拟机100。域名确定单元202,在DHCP服务器200接收到虚拟机100发送的租用请求后,根据预设的MAC地址与域名之间的映射表确定虚拟机100的MAC地址对应域名。对虚拟机100而言,MAC地址可以唯一标识其网络位置,即无论虚拟机100启动多少次,其MAC地址均不会发生变化。域名确定单元202将在后面通过具体实施例进行介绍。
地址管理单元201,在域名确定单元202得到虚拟机100的MAC地址对应域名后,还用于将对应域名和为虚拟机100分配的IP地址发送至DNS服务器300。DNS服务器300,在接收到地址管理单元201发送的对应域名和为虚拟机100分配的IP地址后,建立对应域名与所述分配的IP地址之间的关联关系。DNS服务器300建立的上述关联关系,可以是一条表记录,这与现有技术中的DNS服务器记录用户输入的域名和IP地址之间的对应关系是类似的。地址管理单元201,进一步还用于在确定虚拟机100关闭后,将之前分配给虚拟机100的IP地址收回,并向DNS服务器300发送通知。DNS服务器300在接收到地址管理单元201发送的通知后,将之前建立的虚拟机100的MAC地址对应域名与分配给虚拟机100的IP地址之间的关联关系删除。地址确定单元201,确定虚拟机100关闭的方式具体包括当地址管理单元201接收到虚拟机100发送的关闭通知时,确认虚拟机100关闭,或者,地址管理单元201在设定长度的时间内未接收到虚拟机100对分配的IP的续租请求时,确定虚拟机100关闭。例如,虚拟机100正常关闭时向DHCP服务器200发送关闭通知,这时地址确定单元201可以确认虚拟机关闭。此外,如果虚拟机100由于异常,如所处的物理机故障,或者断电等情况导致关闭,地址管理单元201在设定长度的时间内就无法收到续租请求,这时也可以确认虚拟机已经关闭。下面通过一个具体实施例对域名确定单元202的实施方式进行介绍。请参考图2,图2为本发明中域名确定单元202的一个实施例的结构示意框图。如图2所示,该实施例中,域名确定单元202包括提取子单元2021、判断子单元2022。其中,提取子单元2021,从接收到的租用请求中提取虚拟机100的MAC地址。如前面所述的,虚拟机100发送的请求是一个UDP (User DatagramProtocol)的广播包,该广播包中含有虚拟机100的MAC (Media AccessControl)地址,因此,提取子单元2021可以从该请求中提取出虚拟机100的MAC地址。判断子单元2022,判断MAC地址与域名之间的映射表中是否存在与虚拟机100的MAC地址相关的记录,如果是,则提取与虚拟机100的MAC地址相关的记录中的域名作为虚拟机100的MAC地址对应域名,否则为虚拟机100分配域名,并将分配的域名作为虚拟机100的MAC地址对应域名,以及,将分配的域名与虚拟机的MAC地址之间的对应关系记录至
映射表中。请参见表1,表I为本发明中MAC地址与域名之间的映射表的实施例的示意结构。表I
权利要求
1.一种虚拟机系统的运行方法,包括 虚拟机在启动时向DHCP服务器发送租用IP地址的请求,所述请求包含所述虚拟机的MAC地址; 所述DHCP服务器在接收到所述请求后向所述虚拟机分配IP地址,并根据预设的MAC地址与域名之间的映射表确定所述虚拟机的MAC地址对应域名,以及,将所述对应域名与分配的IP地址发送至DNS服务器,其中所述DNS服务器在接收到所述对应域名与分配的IP地址后建立所述对应域名与分配的IP地址之间的关联关系; 当所述DHCP服务器确认所述虚拟机关闭后,将分配的IP地址收回,并向所述DNS服务器发送通知,其中所述DNS服务器在接收到所述通知后删除所述对应域名与分配的IP地址之间的关联关系。
2.根据权利要求1所述的方法,其特征在于,根据预设的MAC地址与域名之间的映射表确定所述虚拟机的MAC地址对应域名的操作具体包括 a.从所述请求中提取所述虚拟机的MAC地址; b.判断预设的MAC地址与域名之间的映射表中是否存在与所述虚拟机的MAC地址相关的记录,如果是,则执行步骤C,否则执行步骤d ; c.提取所述记录中的域名作为所述虚拟机的MAC地址对应域名; d.为所述虚拟机分配域名,并将分配的域名作为所述虚拟机的MAC地址对应域名,以及,将分配的域名与所述虚拟机的MAC地址之间的对应关系记录至所述映射表。
3.根据权利要求1或2所述的方法,其特征在于,所述虚拟机的MAC地址对应域名是所述虚拟机备访域名的别名。
4.根据权利要求1所述的方法,其特征在于,所述DHCP服务器确认所述虚拟机关闭的操作具体包括 当所述DHCP服务器接收到所述虚拟机发送的关闭通知时,确认所述虚拟机关闭;或者, 所述DHCP服务器在设定长度的时间内未接收到所述虚拟机对分配的IP的续租请求时,确定所述虚拟机关闭。
5.一种虚拟机系统,包括虚拟机、DHCP服务器及DNS服务器, 所述虚拟机,用于在启动时向所述DHCP服务器发送租用IP地址的请求,所述请求包含所述虚拟机的MAC地址; 所述DHCP服务器,包括地址管理单元及域名确定单元, 所述地址管理单元,用于在所述DHCP服务器接收到所述请求后,向所述虚拟机分配IP地址; 所述域名确定单元,用于在所述DHCP服务器接收到所述请求后,根据预设的MAC地址与域名之间的映射表确定所述虚拟机的MAC地址对应域名; 所述地址管理单元,还用于将所述对应域名与分配的IP地址发送至所述DNS服务器; 所述DNS服务器,用于在接收到所述对应域名与分配的IP地址后建立所述对应域名与分配的IP地址之间的关联关系; 所述地址管理单元,还用于在确定所述虚拟机关闭后,将分配的IP地址收回,并向所述DNS服务器发送通知;所述DNS服务器,还用于在接收到所述通知后删除所述对应域名与分配的IP地址之间的关联关系。
6.根据权利要求5所述的系统,其特征在于,所述域名确定单元包括 提取子单元,用于从所述请求中提取所述虚拟机的MAC地址; 判断子单元,用于判断预设的MAC地址与域名之间的映射表中是否存在与所述虚拟机的MAC地址相关的记录,如果是,则提取所述记录中的域名作为所述虚拟机的MAC地址对应域名,否则为所述虚拟机分配域名,并将分配的域名作为所述虚拟机的MAC地址对应域名,以及,将分配的域名与所述虚拟机的MAC地址之间的对应关系记录至所述映射表。
7.根据权利要求5或6所述的系统,其特征在于,所述虚拟机的MAC地址对应域名是所述虚拟机备访域名的别名。
8.根据权利要求5所述的系统,其特征在于,所述地址管理单元确定所述虚拟机关闭的方式具体包括 当所述地址管理单元接收到所述虚拟机发送的关闭通知时,确认所述虚拟机关闭;或者, 所述地址管理单元在设定长度的时间内未接收到所述虚拟机对分配的IP的续租请求时,确定所述虚拟机关闭。
全文摘要
本发明提供了一种虚拟机系统的运行方法及虚拟机系统,其中运行方法包括虚拟机在启动时向DHCP服务器发送租用IP地址的请求,所述请求包含所述虚拟机的MAC地址;所述DHCP服务器在接收到所述请求后向所述虚拟机分配IP地址,并确定所述虚拟机的MAC地址对应域名,以及,将所述对应域名与分配的IP地址发送至DNS服务器,其中所述DNS服务器建立所述对应域名与分配的IP地址之间的关联关系;当所述DHCP服务器确认所述虚拟机关闭后,将分配的IP地址收回,并向所述DNS服务器发送通知,其中所述DNS服务器删除所述对应域名与分配的IP地址之间的关联关系。通过上述方式,可以提高用户使用虚拟机时的便利性。
文档编号H04L29/12GK103037023SQ201210484688
公开日2013年4月10日 申请日期2012年11月23日 优先权日2012年11月23日
发明者江峰, 谢朝阳 申请人:中国电信股份有限公司云计算分公司