主动设置虚拟机网络参数的装置和方法

文档序号:7854711阅读:132来源:国知局
专利名称:主动设置虚拟机网络参数的装置和方法
技术领域
本发明涉及虚拟计算机技术领域,具体而言,涉及一种主动设置虚拟机网络参数的装置和一种主动设置虚拟机网络参数的方法。
背景技术
云计算是一种基于互联网的计算新方式,通过互联网上异构、自治的服务为个人和企业用户提供按需即取的计算。云计算的出现在某种意义上剥离了软件与硬件之间的联系。虚拟化,则是云计算的基石。一个云计算的应用必定是基于虚拟化的。虚拟化是一个抽象层,它将物理硬件与操作系统分开,从而提供更高的IT资源利用率和灵活性。
虚拟化允许具有不同操作系统的多个虚拟机在同一物理机上独立并行运行。每个虚拟机都有自己的一套虚拟硬件(例如RAM、CPU、网卡等),可以在这些硬件中加载操作系统和应用程序。无论实际采用了什么物理硬件组件,操作系统都将它们视为一组一致、标准化的硬件。虚拟机在创建完成后,需要进行IP地址的分配。一般情况下主要通过以下二种方式进行IP地址的分配方式一,通过控制台连接虚拟机,手工设置IP地址。这种方式主要的缺陷是需要手工设置,无法通过自动化的方式实现IP的分配。方式二,设置虚拟机通过DHCP的方式自动获取IP地址等。这种方式实现了 IP的自动获取,但获取的IP地址是不可控的,主控端没法主动地获得虚拟机的IP地址,人们不能可控地设置该虚拟机的IP地址,而且网络环境中需要搭建DHCP服务器提供DHCP服务。因此,需要一种虚拟机控制技术,可以根据用户的需要自动设置虚拟机的网络参数,使虚拟机的IP地址可控。

发明内容
针对上述问题,本发明的目的之一是提供一种主动设置虚拟机网络参数的装置,可以根据用户的需要自动设置虚拟机的网络参数,使虚拟机的IP地址可控。有鉴于此,本发明提出了一种主动设置虚拟机网络参数的装置,包括配置文件生成单元,根据输入的虚拟机所需要的网络参数生成配置文件并将所述配置文件上传至文件仓库;虚拟机创建单元,创建虚拟机,创建好的所述虚拟机启动后下载所述配置文件,根据所述配置文件设置所述虚拟机的网络参数。其中所述文件仓库是一个用于存储文件的服务器,支持文件的上传和下载功能。在该技术方案中,用户可以根据自己的需要设置虚拟机的网络参数,例如虚拟机的IP地址,使虚拟机的IP地址可控。设置过程可以由虚拟机自动执行,不需要登录虚拟机手动修改,简化了用户的操作。优选地,所述虚拟机创建单元具体用于创建一个模板虚拟机,在所述模板虚拟机中安装ー个配置脚本,所述模板虚拟机启动过程中执行所述配置脚本,从所述文件仓库下载所述配置文件,井根据所述配置文件设置所述模板虚拟机的网络參数;根据所述模板虚拟机创建虚拟机。在该技术方案中,通过模板虚拟机来创建虚拟机是一种高效快捷的方法。在模板虚拟机中安装ー个配置脚本,通过配置脚本使整个设置过程自动完成。由该模板虚拟机创建得到的虚拟机与模板虚拟机完全相同,均安装有该配置脚本,可以通过执行该配置脚本自动设置网络參数。优选地,所述虚拟机创建单元还用于在所述虚拟机中设置第一网卡和第二网卡,所述第一网卡采用NAT方式并自动获取网络參数连接至所述文件仓库。所述虚拟机下载所述配置文件后禁用所述第一网卡,并设置所述第二网卡的网络參数。在该技术方案中,第一网卡用于连接至文件仓库,使虚拟机能够下载配置文件。当完成配置文件的下载后,不再使用第一网卡,可以根据配置文件设置第二网卡通过桥接的方式连接至网络。根据配置文件中的HWADDR和DHCPHW ADD这两个參数来区分第一网卡、第二网卡。优选地,所述配置文件生成単元根据所述虚拟机的所述第二网卡的MAC地址命名所述配置文件,所述虚拟机根据所述第二网卡的MAC地址下载所述配置文件。在该技术方案中,在创建多台虚拟机时,多台虚拟机需要分别设置各自的网络參数,因此需要将多台虚拟机的配置文件区分开,使每台虚拟机分别得到与之对应的配置文件。这里通过MAC地址来区分,例如,虚拟机的第二网卡的MAC地址为52 54 00 2B 7B C4,即可将为该虚拟机生成的配置文件命名为52_54_00_2B_7B_C4,这样虚拟机就可以根据自己的MAC地址找到对应的配置文件并且下载。优选地,所述文件仓库包括支持FTP协议的FTP服务器。在该技术方案中,FTP是用于在网络上进行文件传输的ー套标准协议,可以用于文件的上传和下载。通过FTP服务器作为文件仓库,可以提供文件上传和下载的功能。将生成的配置文件上传至FTP服务器,虚拟机启动时,可以从FTP服务器下载配置文件。本发明还提供了一种主动设置虚拟机网络參数的方法,包括输入要创建的虚拟机所需要的网络參数,根据所述网络參数生成配置文件并将所述配置文件上传至文件仓库;创建虚拟机,创建好的所述虚拟机启动后下载所述配置文件,根据所述配置文件设置所述虚拟机的网络參数。其中所述文件仓库是一个用于存储文件的服务器,支持文件的上传和下载功能。在该技术方案中,用户可以根据自己的需要设置虚拟机的网络參数,例如虚拟机的IP地址,使虚拟机的IP地址可控。设置过程可以由虚拟机自动执行,不需要登录虚拟机手动修改,简化了用户的操作。优选地,其中所述创建虚拟机,创建好的所述虚拟机启动后下载所述配置文件,根据所述配置文件设置所述虚拟机的网络參数具体包括创建ー个模板虚拟机,在所述模板虚拟机中安装ー个配置脚本,所述模板虚拟机启动过程中执行所述配置脚本,从所述文件仓库下载所述配置文件,井根据所述配置文件设置所述模板虚拟机的网络參数;根据所述模板虚拟机创建虚拟机。在该技术方案中,通过模板虚拟机来创建虚拟机是一种高效快捷的方法。在模板虚拟机中安装ー个配置脚本,通过配置脚本使整个设置过程自动完成。由该模板虚拟机创建得到的虚拟机与模板虚拟机完全相同,均安装有该配置脚本,可以通过执行该配置脚本自动设置网络參数。优选地,其中所述创建虚拟机,创建好的所述虚拟机启动后下载所述配置文件,根据所述配置文件设置所述虚拟机的网络參数还包括在所述虚拟机中设置第一网卡和第二网卡,所述第一网卡采用NAT方式并自动获取网络參数连接至所述文件仓库,所述虚拟机下载所述配置文件后禁用所述第一网卡,并设置所述第二网卡的网络參数。在该技术方案中,第一网卡用于连接至文件仓库,使虚拟机能够下载配置文件。当完成配置文件的下载后,不再使用第一网卡,可以根据配置文件设置第二网卡通过桥接的方式连接至网络。根据配置文件中的HWADDR和DHCPHW ADD这两个參数来区分第一网卡、第二网卡。优选地,所述配置文件根据所述虚拟机的所述第二网卡的MAC地址命名,所述虚拟机根据所述第二网卡的MAC地址下载所述配置文件。
在该技术方案中,在创建多台虚拟机时,多台虚拟机需要分别设置各自的网络參数,因此需要将多台虚拟机的配置文件区分开,使每台虚拟机分别得到与之对应的配置文件。这里通过MAC地址来区分,例如,虚拟机的第二网卡的MAC地址为52 54 00 2B 7B C4,即可将为该虚拟机生成的配置文件命名为52_54_00_2B_7B_C4,这样虚拟机就可以根据自己的MAC地址找到对应的配置文件并且下载。优选地,所述文件仓库包括支持FTP协议的FTP服务器。在该技术方案中,FTP是用于在网络上进行文件传输的ー套标准协议,可以用于文件的上传和下载。通过FTP服务器作为文件仓库,可以提供文件上传和下载的功能。将生成的配置文件上传至FTP服务器,虚拟机启动时,可以从FTP服务器下载配置文件。通过上述技术方案,可以根据用户的需要自动设置虚拟机的网络參数,使虚拟机的IP地址可控。


图I示出了根据本发明的实施例的主动设置虚拟机网络參数的装置的框图;图2示出了根据本发明的实施例的主动设置虚拟机网络參数的方法的流程图;图3示出了根据本发明的另ー个实施例的主动设置虚拟机网络參数的方法的原理图;图4是图3所示实施例的流程图。
具体实施例方式为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式
对本发明进行进一歩的详细描述。在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围不受下面公开的具体实施例的限制。下面结合附图和实施例对本发明做进ー步说明。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。图I示出了根据本发明的实施例的主动设置虚拟机网络參数的装置的框图。如图I所示,根据本发明的实施例的主动设置虚拟机网络參数的装置100包括配置文件生成単元102,根据输入的虚拟机所需要的网络參数生成配置文件并将配置文件上传至文件仓库;虚拟机创建单元104,创建虚拟机,创建好的虚拟机启动后下载配置文件,根据配置文件设置虚拟机的网络參数。其中文件仓库是一个用于存储文件的服务器,支持文件的上传和下载功能。在该技术方案中,用户可以根据自己的需要设置虚拟机的网络參数,例如虚拟机的IP地址,使虚拟机的IP地址可控。设置过程可以由虚拟机自动执行,不需要登录虚拟机手动修改,简化了用户的操作。优选地,虚拟机创建单元104具体用于创建ー个模板虚拟机,在模板虚拟机中安装ー个配置脚本,模板虚拟机启动过程中执行配置脚本,从文件仓库下载配置文件,并根据配置文件设置模板虚拟机的网络參数;根据模板虚拟机创建虚拟机。在该技术方案中,通过模板虚拟机来创建虚拟机是一种高效快捷的方法。在模板虚拟机中安装ー个配置脚本,通过配置脚本使整个设置过程自动完成。由该模板虚拟机创建得到的虚拟机与模板虚拟机完全相同,均安装有该配置脚本,可以通过执行该配置脚本自动设置网络參数。优选地,虚拟机创建单元104还用于在虚拟机中设置第一网卡和第二网卡,第一网卡采用NAT方式并自动获取网络參数连接至文件仓库。虚拟机下载配置文件后禁用第一网卡,并设置第二网卡的网络參数。在该技术方案中,第一网卡用于连接至文件仓库,使虚拟机能够下载配置文件。当完成配置文件的下载后,不再使用第一网卡,可以根据配置文件设置第二网卡通过桥接的方式连接至网络。根据配置文件中的HWADDR和DHCPHW_ADD这两个參数来区分第一网卡、
第二网卡。优选地,配置文件生成単元102根据虚拟机的第二网卡的MAC地址命名配置文件,虚拟机根据第二网卡的MAC地址下载配置文件。在该技术方案中,在创建多台虚拟机时,多台虚拟机需要分别设置各自的网络參数,因此需要将多台虚拟机的配置文件区分开,使每台虚拟机分别得到与之对应的配置文件。这里通过MAC地址来区分,例如,虚拟机的第二网卡的MAC地址为52 54 00 2B 7B C4,即可将为该虚拟机生成的配置文件命名为52_54_00_2B_7B_C4,这样虚拟机就可以根据自己的MAC地址找到对应的配置文件并且下载。优选地,文件仓库包括支持FTP协议的FTP服务器。在该技术方案中,FTP是用于在网络上进行文件传输的ー套标准协议,可以用于文件的上传和下载。通过FTP服务器作为文件仓库,可以提供文件上传和下载的功能。将生成的配置文件上传至FTP服务器,虚拟机启动时,可以从FTP服务器下载配置文件。图2示出了根据本发明的实施例的主动设置虚拟机网络參数的方法的流程图。如图2所示,根据本发明的实施例的主动设置虚拟机网络參数的方法包括步骤202,输入要创建的虚拟机所需要的网络參数,根据网络參数生成配置文件并将配置文件上传至文件仓库;步骤204,创建虚拟机,创建好的虚拟机启动后下载配置文件,根据配置文、件设置虚拟机的网络參数。其中文件仓库是一个用于存储文件的服务器,支持文件的上传和下载功能。在该技术方案中,用户可以根据自己的需要设置虚拟机的网络參数,例如虚拟机的IP地址,使虚拟机的IP地址可控。设置过程可以由虚拟机自动执行,不需要登录虚拟机手动修改,简化了用户的操作。优选地,步骤204具体包括创建ー个模板虚拟机,在模板虚拟机中安装ー个配置脚本,模板虚拟机启动过程中执行配置脚本,从文件仓库下载配置文件,并根据配置文件设置模板虚拟机的网络參数;根据模板虚拟机创建虚拟机。在该技术方案中,通过模板虚拟机来创建虚拟机是一种高效快捷的方法。在模板虚拟机中安装ー个配置脚本,通过配置脚本使整个设置过程自动完成。由该模板虚拟机创建得到的虚拟机与模板虚拟机完全相同,均安装有该配置脚本,可以通过执行该配置脚本自动设置网络參数。
优选地,步骤204还包括在虚拟机中设置第一网卡和第二网卡,第一网卡采用NAT方式并自动获取网络參数连接至文件仓库,虚拟机下载配置文件后禁用第一网卡,并设置第二网卡的网络參数。在该技术方案中,第一网卡用于连接至文件仓库,使虚拟机能够下载配置文件。当完成配置文件的下载后,不再使用第一网卡,可以根据配置文件设置第二网卡通过桥接的方式连接至网络。根据配置文件中的HWADDR和DHCPHW_ADD这两个參数来区分第一网卡、
第二网卡。优选地,配置文件根据虚拟机的第二网卡的MAC地址命名,虚拟机根据第二网卡的MAC地址下载配置文件。在该技术方案中,在创建多台虚拟机时,多台虚拟机需要分别设置各自的网络參数,因此需要将多台虚拟机的配置文件区分开,使每台虚拟机分别得到与之对应的配置文件。这里通过MAC地址来区分,例如,虚拟机的第二网卡的MAC地址为52 54 00 2B 7B C4,即可将为该虚拟机生成的配置文件命名为52_54_00_2B_7B_C4,这样虚拟机就可以根据自己的MAC地址找到对应的配置文件并且下载。优选地,文件仓库包括支持FTP协议的FTP服务器。在该技术方案中,FTP是用于在网络上进行文件传输的ー套标准协议,可以用于文件的上传和下载。通过FTP服务器作为文件仓库,可以提供文件上传和下载的功能。将生成的配置文件上传至FTP服务器,虚拟机启动时,可以从FTP服务器下载配置文件。下面结合图3和图4对根据本发明的另ー实施例的主动设置虚拟机网络參数的方法进行说明。參见图3,图3为该主动设置虚拟机网络參数的方法的原理图。该方法主要包括以下几个模块配置文件生成器,以约定的规则生成配置文件,该文件将是传递给虚拟机的网络參数;配置文件仓库,该仓库提供IP地址等信息的配置文件上传和下载,通过网络服务进行发布,例如HTTP服务,FTP服务等;网络服务,虚拟机在启动网络模块后自动获得IP地址,并且能访问到配置文件仓库;虚拟机配置脚本,该脚本在虚拟机启动过程中执行,分析配置文件,并自动修改网络參数。
主控端302创建虚拟机306并输入相关网络參数,配置文件生成器根据网络參数生成配置文件并上传至配置文件仓库304。虚拟机306启动,自动下载配置文件,执行系统服务分析配置文件并设置网络參数。參见图4,图4为该主动设置虚拟机网络參数的方法的流程图。该主动设置虚拟机网络參数的方法包括以下流程步骤402,主控端输入虚拟机所需要的网络參数。步骤404,配置文件生成器根据输入的网络參数生成配置文件,并将配置文件上传到文件仓库。步骤406,虚拟机创建并启动,执行配置脚本,自动下载配置文件。步骤408,虚拟机继续执行配置脚本,根据配置文件设置网络參数。 步骤410,虚拟机创建完成。为实现上述方法,需要搭建配置文件仓库,提供配置文件的上传下载。该实施例中采用FTP服务来充当配置文件仓库。FTP是用于在网络上进行文件传输的ー套标准协议,他能被用于文件的上传和下载,我们可以通过搭建ー个FTP服务器充当配置文件仓库,提供配置文件的上传和下载。当主控端发起创建虚拟机的操作吋,会生成该虚拟机的配置文件并上传到配置文件仓库中,当虚拟机启动时,下载对应的配置文件。配置文件仓库起到中转传递配置文件的目的。然后需要约定配置文件的格式,在虚拟机的配置脚本中将根据该格式进行配置文件的分析,以获得相关网络參数。当主控端发起创建虚拟机的操作时,将根据输入的网络信息,按照格式生成配置文件。在该实施例中,配置文件的名称以虚拟机桥接网卡的MAC地址进行命名,这样,虚拟机就可以根据桥接网卡的MAC地址找到对应的配置文件并且下载。例如配置虚拟机桥接网卡的MAC地址为52:54:00: 2B: 7B: C4,则为该虚拟机生成ー个配置文件,文件名为 52_54_00_2B_7B_C4。虚拟机在启动后必须能够访问文件仓库,否则无法从文件仓库下载到对应的配置文件。在该实施例中,通过在虚拟机中设置两个网卡来实现。在虚拟机中设置两块网卡,ー块通过采用NAT方式访问外部网络,ー块通过桥接方式访问外部网络。采用NAT方式的那块网卡是该方法中的ー个关键。当虚拟机启动后,配置为NAT的那块网卡自动获取到IP地址后,虚拟机将能访问到文件仓库,通过自己的MAC地址,到文件仓库中下载对应的配置文件。这里,采用NAT方式的那块网卡作为ー个冗余网卡,其目的就是通过其在启动后直接能访问到文件仓库,达到下载配置文件的目的。虚拟机启动后执行配置脚本,下载配置文件并且按照约定规则分析文件。由于虚拟机此时存在ニ块网卡,也就是具有ニ个MAC地址,可以根据配置文件中的HWADDR和DHCPHW_ADD这两个參数来确定虚拟机中的两块网卡哪块为NAT方式的,哪块是桥接方式的。在知道哪块网卡为桥接的网卡后,根据配置文件里的IPADDR等參数修改该网卡的网络參数,同时禁用NAT方式的网卡,重启网络服务,此时虚拟机的IP地址将设置为事先设定的那个值。用户将能通过该IP地址访问该虚拟机。通过上述步骤,我们实现了可控的虚拟机IP地址设置,并且整个过程实现自动化。该方法通过文件仓库为中转站,进行网络參数的传递,巧妙的通过NAT网卡访问外部网络的方式下载配置文件,并且通过配置脚本实现整个配置过程的自动化,很好的解决了云计算系统中虚拟机IP地址的自动分配和可控。本方法做到了对虚拟机IP地址的可控,用户可根据自己的需要设置虚拟机所需要的IP地址。相比创建虚拟机后,登入虚拟机手工修改IP地址,本方法能更好的实现自动化,通过脚本的方式使得整个过程自动完成,不需要手工干预。相比较通过DHCP自动获取IP地址的方式,本方法做到了真正的对IP地址的可控,即虚拟机的IP地址为用户主动分配,而不是DHCP获取一个IP地址,控制端还需通过DHCP服务器获取该虚拟机的IP地址。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种主动设置虚拟机网络参数的装置,其特征在于,包括 配置文件生成单元,根据输入的虚拟机所需要的网络参数生成配置文件并将所述配置文件上传至文件仓库; 虚拟机创建单元,创建虚拟机,创建好的所述虚拟机启动后下载所述配置文件,根据所述配置文件设置所述虚拟机的 网络参数, 其中所述文件仓库是一个用于存储文件的服务器,支持文件的上传和下载功能。
2.根据权利要求I所述的主动设置虚拟机网络参数的装置,其特征在于,所述虚拟机创建单元具体用于 创建一个模板虚拟机,在所述模板虚拟机中安装一个配置脚本,所述模板虚拟机启动过程中执行所述配置脚本,从所述文件仓库下载所述配置文件,并根据所述配置文件设置所述模板虚拟机的网络参数; 根据所述模板虚拟机创建虚拟机。
3.根据权利要求I或2所述的主动设置虚拟机网络参数的装置,其特征在于,所述虚拟机创建单元还用于在所述虚拟机中设置第一网卡和第二网卡,所述第一网卡采用NAT方式并自动获取网络参数连接至所述文件仓库, 所述虚拟机下载所述配置文件后禁用所述第一网卡,并设置所述第二网卡的网络参数。
4.根据权利要求3所述的主动设置虚拟机网络参数的装置,其特征在于,所述配置文件生成单元根据所述虚拟机的所述第二网卡的MAC地址命名所述配置文件,所述虚拟机根据所述第二网卡的MAC地址下载所述配置文件。
5.根据权利要求I或2所述的主动设置虚拟机网络参数的装置,其特征在于,所述文件仓库包括支持FTP协议的FTP服务器。
6.一种主动设置虚拟机网络参数的方法,其特征在于,包括 输入要创建的虚拟机所需要的网络参数,根据所述网络参数生成配置文件并将所述配置文件上传至文件仓库; 创建虚拟机,创建好的所述虚拟机启动后下载所述配置文件,根据所述配置文件设置所述虚拟机的网络参数, 其中所述文件仓库是一个用于存储文件的服务器,支持文件的上传和下载功能。
7.根据权利要求6所述的主动设置虚拟机网络参数的方法,其特征在于,其中所述创建虚拟机,创建好的所述虚拟机启动后下载所述配置文件,根据所述配置文件设置所述虚拟机的网络参数具体包括 创建一个模板虚拟机,在所述模板虚拟机中安装一个配置脚本,所述模板虚拟机启动过程中执行所述配置脚本,从所述文件仓库下载所述配置文件,并根据所述配置文件设置所述模板虚拟机的网络参数; 根据所述模板虚拟机创建虚拟机。
8.根据权利要求6或7所述的主动设置虚拟机网络参数的方法,其特征在于,其中所述创建虚拟机,创建好的所述虚拟机启动后下载所述配置文件,根据所述配置文件设置所述虚拟机的网络参数还包括在所述虚拟机中设置第一网卡和第二网卡,所述第一网卡采用NAT方式并自动获取网络参数连接至所述文件仓库,所述虚拟机下载所述配置文件后禁用所述第一网卡,并设置所述第二网卡的网络参数。
9.根据权利要求8所述的主动设置虚拟机网络参数的方法,其特征在于,所述配置文件根据所述虚拟机的所述第二网卡的MAC地址命名,所述虚拟机根据所述第二网卡的MAC地址下载所述配置文件。
10.根据权利要求6或7所述的主动设置虚拟机网络参数的方法,其特征在于,所述文件仓库包括支持FTP协议的FTP服务器。
全文摘要
本发明提供了一种主动设置虚拟机网络参数的装置,包括配置文件生成单元,根据输入的虚拟机所需要的网络参数生成配置文件并将所述配置文件上传至文件仓库;虚拟机创建单元,创建虚拟机,创建好的所述虚拟机启动后下载所述配置文件,根据所述配置文件设置所述虚拟机的网络参数,其中所述文件仓库是一个用于存储文件的服务器,支持文件的上传和下载功能。本发明还提出一种主动设置虚拟机网络参数的方法。通过本发明的技术方案,可以根据用户的需要自动设置虚拟机的网络参数,使虚拟机的IP地址可控。
文档编号H04L29/12GK102752137SQ20121021939
公开日2012年10月24日 申请日期2012年6月28日 优先权日2012年6月28日
发明者陈杰 申请人:用友软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1