一种上传文件到虚拟机的实现系统及方法
【专利摘要】一种上传文件到虚拟机的实现系统及方法,涉及云计算【技术领域】,该系统包括用户管理主机和虚拟化平台,所述虚拟化平台包括控制节点和至少一个计算节点,所述用户管理主机通过互联网与控制节点相连,控制节点通过内部网络与每一个计算节点相连,且每一个计算节点至少设有一台虚拟机。本发明文件传输过程简单快捷,不会受限于物理环境的距离限制和内外网的隔离限制。
【专利说明】一种上传文件到虚拟机的实现系统及方法
【技术领域】
[0001]本发明涉及云计算【技术领域】,具体来讲是一种上传文件到虚拟机的实现系统及方法。
【背景技术】
[0002]在云计算虚拟化场景中,虚拟机通常运行在物理服务器上,物理服务器放置在中心机房,用户通过浏览器或客户端登录管理界面对虚拟机进行管理。在管理和使用虚拟机过程中,需要用到用户本地的文件,如安装各种软件,或使用本地的文档。
[0003]为了在虚拟机中安装存放在本地的软件,或处理本地的文件,需要先将文件上传或共享给虚拟机。目前上传文件到虚拟机的方式主要有两种:
[0004]1.基于物理传输介质。将需要的文件拷贝到U盘这类物理传输介质上,然后插到相应虚拟机所在的物理服务器上,之后通过虚拟化管理平台将物理传输介质映射给虚拟机使用,最后将文件拷贝到虚拟机中。这是用户最熟悉、最简单的方式,与传统PC环境下,不同物理机间拷贝文件的方式一致。但这种方式虚拟化环境中并不方便,由于物理服务器都放在中心机房中,并不是所有的用户都可以自由出入,甚至有些机房为了安全和保密,还限制U盘这类设备的使用。
[0005]2.基于文件共享服务。为了解决物理上的限制,还可以使用FTP(File TransferProtocol,文件传输协议)这类文件共享服务,通过网络将文件共享给虚拟机使用。在虚拟化管理平台上搭建文件共享服务,在本地和虚拟机中安装文件共享客户端,用户将本地文件上传到共享服务器上,然后在虚拟机中通过共享客户端共享服务器上相应的文件。这种文件共享的方式,虽然解决了物理上的限制,还可以通过配置管理平台上的共享服务器设置用户权限,保证共享文件的安全问题,但是该实现方法还是存在有一些缺点:首先需要本地和虚拟机中都安装文件共享客户端,使用麻烦。其次,需要虚拟机内部网络与用户在同一个网络中,如果虚拟机网络不正常,或由于运行的业务需要必须使用其它网段,则不能使用该功能。
【发明内容】
[0006]针对现有技术中存在的缺陷,本发明的目的在于提供一种上传文件到虚拟机的实现系统及方法,本发明文件传输过程简单快捷,不会受限于物理环境的距离限制和内外网的隔离限制。
[0007]为达到以上目的,本发明采取的技术方案是:一种上传文件到虚拟机的实现系统,包括用户管理主机和虚拟化平台,所述虚拟化平台包括控制节点和至少一个计算节点,所述用户管理主机通过互联网与控制节点相连,控制节点通过内部网络与每一个计算节点相连,且每一个计算节点至少设有一台虚拟机。
[0008]在上述技术方案的基础上,所述控制节点通过交换机与每一个计算节点相连。
[0009]在上述技术方案的基础上,所述控制节点包括文件上传模块、内部通讯发送模块;所述计算节点包括内部通讯接收模块、虚拟化管理模块、文件打包模块;文件上传模块,用于接收用户管理主机发送的数据包;内部通讯发送模块,用于将控制节点上的数据包发送至目标计算节点;内部通讯接收模块,用于接收控制节点发送的数据包;文件打包模块,用于将计算节点上的数据包转换为ISO文件,供虚拟机光驱使用;虚拟化管理模块,用于模拟虚拟机的各种设备,为虚拟机提供运行环境。
[0010]在上述技术方案的基础上,所述虚拟化管理模块用于模拟虚拟机的光驱、CPU、内存、磁盘等设备。
[0011]本发明还提供一种基于上述系统的上传文件到虚拟机的方法,包括以下步骤:步骤S1.用户管理主机通过互联网访问虚拟化平台,向控制节点发送需要上传到虚拟机的文件;步骤S2.文件上传模块接收所述文件的数据包,并通过内部通讯发送模块将数据包发送至目标虚拟机所在的计算节点;步骤S3.所述计算节点的内部通讯接收模块接收数据包并保存;步骤S4.文件打包模块将数据包转换为ISO文件;步骤S5.虚拟化管理模块将ISO文件替换至目标虚拟机的光驱中,用户通过用户管理主机查看虚拟机光驱中的文件。
[0012]在上述技术方案的基础上,步骤SI中,用户通过用户管理主机上的Web浏览器或客户端访问虚拟化管理平台。
[0013]在上述技术方案的基础上,步骤S3中,在计算节点上为每个虚拟机建立一个独立目录,并设置权限仅允许对应的虚拟机访问该目录;所述内部通讯接收模块将数据包保存到目标虚拟机对应的独立目录中。
[0014]在上述技术方案的基础上,步骤S5中,虚拟机的光驱设备由所在计算节点的虚拟化管理模块模拟,光驱中的内容是计算节点文件系统上的ISO文件;虚拟化管理模块动态更换光驱中的内容,且虚拟机的操作系统自动识别光驱内容的改变。
[0015]本发明的有益效果在于:
[0016]1、本发明中文件先通过外部的互联网络到达控制节点,再通过内部网络转到相应的计算节点,因此文件传输过程简单快捷,不会受限于物理环境的距离限制和内外网的隔离限制。
[0017]2、本发明中上传的文件存放在虚拟机所在的计算节点,最终以ISO (Isolat1n,光盘镜像文件)文件直接供虚拟机光驱使用,不依赖于虚拟机网络,且不受服务器物理环境和虚拟机网络环境限制。
[0018]3、本发明中用户只需选择要上传的本地文件,而其他过程完全由后台自动完成,用户不需要安装任何第三方工具,操作简单方便。
[0019]4、本发明中上传的文件存放在目标虚拟机对应的独立目录中,通过目录隔离防止其它虚拟机的访问,确保了文件的安全性。
【专利附图】
【附图说明】
[0020]图1为本发明实施例中上传文件到虚拟机的实现系统的结构示意图;
[0021]图2为本发明实施例中各模块的结构示意图;
[0022]图3为本发明实施例中基于虚拟机光驱的上传文件到虚拟机的方法流程示意图。【具体实施方式】
[0023]以下结合附图及实施例对本发明作进一步详细说明。
[0024]参见图1所示,一种上传文件到虚拟机的实现系统,包括用户管理主机和虚拟化平台,所述虚拟化平台包括控制节点和至少一个计算节点,所述用户管理主机通过互联网与控制节点相连,控制节点通过内部网络与每一个计算节点相连,且每一个计算节点至少设有一台虚拟机。优选的,所述控制节点通过交换机与每一个计算节点相连。
[0025]参见图2所示,所述控制节点包括文件上传模块、内部通讯发送模块;所述计算节点包括内部通讯接收模块、虚拟化管理模块、文件打包模块;文件上传模块,用于接收用户管理主机发送的数据包;内部通讯发送模块,用于将控制节点上的数据包发送至目标计算节点,即目标虚拟机所在的计算节点;内部通讯接收模块,用于接收控制节点发送的数据包;文件打包模块,用于将计算节点上的数据包转换为ISO文件,供虚拟机光驱使用;虚拟化管理模块,用于模拟虚拟机的各种设备,为虚拟机提供运行环境。优选的,所述虚拟化管理模块用于模拟虚拟机的光驱、CPU、内存、磁盘等设备。
[0026]参见图3所示,基于上述系统的基于虚拟机光驱的上传文件到虚拟机的方法,包括以下步骤:
[0027]步骤S1.用户管理主机通过互联网访问虚拟化平台,向控制节点发送需要上传到虚拟机的文件;其中,用户通过用户管理主机上的Web浏览器或客户端访问虚拟化管理平台。
[0028]步骤S2.文件上传模块接收所述文件的数据包,并通过内部通讯发送模块将数据包发送至目标虚拟机所在的计算节点。
[0029]步骤S3.在计算节点上为每个虚拟机建立一个独立目录,并设置权限仅允许对应的虚拟机访问该目录;所述计算节点的内部通讯接收模块接收数据包并保存到目标虚拟机对应的独立目录中。
[0030]步骤S4.文件打包模块将数据包转换为ISO文件。ISO文件能够被虚拟机光驱当作光盘直接使用,本地文件为该ISO文件的实际内容。打包过程不涉及数据压缩,因此执行效率高。
[0031]步骤S5.虚拟化管理模块将ISO文件替换至目标虚拟机的光驱中,用户即可通过用户管理主机查看虚拟机光驱中的文件。其中,虚拟机的光驱设备由所在计算节点的虚拟化管理模块模拟,光驱中的内容是计算节点文件系统上的ISO文件;虚拟化管理模块动态更换光驱中的内容,且虚拟机的操作系统自动识别光驱内容的改变。
[0032]本发明不局限于上述实施方式,对于本【技术领域】的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
【权利要求】
1.一种上传文件到虚拟机的实现系统,其特征在于:包括用户管理主机和虚拟化平台,所述虚拟化平台包括控制节点和至少一个计算节点,所述用户管理主机通过互联网与控制节点相连,控制节点通过内部网络与每一个计算节点相连,且每一个计算节点至少设有一台虚拟机。
2.如权利要求1所述的上传文件到虚拟机的实现系统,其特征在于:所述控制节点通过交换机与每一个计算节点相连。
3.如权利要求1所述的上传文件到虚拟机的实现系统,其特征在于:所述控制节点包括文件上传模块、内部通讯发送模块;所述计算节点包括内部通讯接收模块、虚拟化管理模块、文件打包模块; 文件上传模块,用于接收用户管理主机发送的数据包; 内部通讯发送模块,用于将控制节点上的数据包发送至目标计算节点; 内部通讯接收模块,用于接收控制节点发送的数据包; 文件打包模块,用于将计算节点上的数据包转换为ISO文件,供虚拟机光驱使用; 虚拟化管理模块,用于模拟虚拟机的各种设备,为虚拟机提供运行环境。
4.如权利要求3所述的上传文件到虚拟机的实现系统,其特征在于:所述虚拟化管理模块用于模拟虚拟机的光驱、CPU、内存、磁盘等设备。
5.基于权利要求1所述系统的上传文件到虚拟机的方法,其特征在于:所述控制节点包括文件上传模块、内部通讯发送模块;所述计算节点包括内部通讯接收模块、虚拟化管理模块、文件打包模块;该方法包括以下步骤: 步骤S1.用户管理主机通过互联网访问虚拟化平台,向控制节点发送需要上传到虚拟机的文件; 步骤S2.文件上传模块接收所述文件的数据包,并通过内部通讯发送模块将数据包发送至目标虚拟机所在的计算节点; 步骤S3.所述计算节点的内部通讯接收模块接收数据包并保存; 步骤S4.文件打包模块将数据包转换为ISO文件; 步骤S5.虚拟化管理模块将ISO文件替换至目标虚拟机的光驱中,用户通过用户管理主机查看虚拟机光驱中的文件。
6.如权利要求5所述的基于虚拟机光驱的上传文件到虚拟机的方法,其特征在于:步骤SI中,用户通过用户管理主机上的Web浏览器或客户端访问虚拟化管理平台。
7.如权利要求5所述的基于虚拟机光驱的上传文件到虚拟机的方法,其特征在于:步骤S3中,在计算节点上为每个虚拟机建立一个独立目录,并设置权限仅允许对应的虚拟机访问该目录;所述内部通讯接收模块将数据包保存到目标虚拟机对应的独立目录中。
8.如权利要求5所述的基于虚拟机光驱的上传文件到虚拟机的方法,其特征在于:步骤S5中,虚拟机的光驱设备由所在计算节点的虚拟化管理模块模拟,光驱中的内容是计算节点文件系统上的ISO文件;虚拟化管理模块动态更换光驱中的内容,且虚拟机的操作系统自动识别光驱内容的改变。
【文档编号】G06F9/455GK104333603SQ201410657347
【公开日】2015年2月4日 申请日期:2014年11月18日 优先权日:2014年11月18日
【发明者】邓林文 申请人:武汉噢易云计算有限公司