一种光盘镜像文件的创建方法、虚拟机部署方法及装置与流程

文档序号:13240366阅读:263来源:国知局
一种光盘镜像文件的创建方法、虚拟机部署方法及装置与流程

本发明涉及云平台技术,尤指一种光盘镜像文件的创建方法、虚拟机部署方法及装置。



背景技术:

目前,在将数据库安装到虚拟机之后,需要用户手动对数据库和虚拟机进行配置。但是,当虚拟机的数量比较多时,配置的工作量非常大,需要耗费大量的人力资源。而且用户手动配置的速度比较慢,导致了效率比较低。基于以上背景,越来越多的用户希望能够实现虚拟机自动完成虚拟机和数据库的配置,无需人工参与。



技术实现要素:

为了解决上述技术问题,本发明提供了一种光盘镜像文件的创建方法、虚拟机部署方法及装置,能够提高虚拟机部署的效率。

为了达到本发明目的,本发明提供了一种光盘镜像文件的创建方法,包括:

云平台为虚拟机分配网络配置信息,以及为在虚拟机上安装的数据库生成登录信息;

创建包括分配的网络配置信息和生成的登录信息的光盘镜像文件。

进一步地,所述为虚拟机分配网络配置信息之前,还包括:

所述云平台根据安装有数据库的虚拟机模板创建安装有数据库的所述虚拟机。

进一步地,所述创建安装有数据库的虚拟机之前,还包括:

所述云平台根据来自用户输入的数据库信息,选择所述虚拟机模板,其中选择的所述虚拟机模板上安装的数据库的信息与来自用户输入的数据库信息一致;和/或

所述云平台根据来自用户输入的网络,选择集群;

所述创建安装有数据库的所述虚拟机,包括:

所述云平台在选择的集群中的主机上创建所述虚拟机。

进一步地,所述创建包括分配的网络配置信息和生成的登录信息的光盘镜像文件之后,还包括:

所述云平台将所述光盘镜像文件插入到所述虚拟机的光驱中。

本发明提供一种虚拟机部署方法,包括:

虚拟机读取光盘镜像文件中的网络配置信息和数据库的登录信息;

根据读取到的网络配置信息配置虚拟机的网络,以及将读取到的登录信息配置到虚拟机上安装的数据库中。

进一步地,所述虚拟机包括脚本文件,所述虚拟机按照该脚本文件执行所述读取的步骤和配置的步骤。

进一步地,所述读取光盘镜像文件中的网络配置信息和登录信息之前,还包括:

所述虚拟机按照所述脚本文件还执行:将所述光盘镜像文件存储到云平台的共享存储上。

进一步地,所述将读取到的登录信息配置到虚拟机上安装的数据库中之后,还包括:

所述虚拟机按照所述脚本文件还执行:将所述数据库的文件存储路径修改为所述虚拟机挂接的数据盘。

本发明提供一种光盘镜像文件的创建装置,包括:

处理模块,用于为虚拟机分配网络配置信息,以及为在虚拟机上安装的数据库生成登录信息;

第一创建模块,用于创建包括分配的网络配置信息和生成的登录信息的光盘镜像文件。

本发明提供一种虚拟机部署装置,包括:

读取模块,用于读取光盘镜像文件中的网络配置信息和数据库的登录信息;

配置模块,用于根据读取到的网络配置信息配置虚拟机的网络,以及将读取到的登录信息配置到虚拟机上安装的数据库中。

本发明至少包括云平台为虚拟机分配网络配置信息,以及为在虚拟机上安装的数据库生成登录信息;创建包括分配的网络配置信息和生成的登录信息的光盘镜像文件。从本发明实施例可见,通过将虚拟机的网络配置信息和虚拟机上安装的数据库的登录信息写入到光盘镜像文件中,虚拟机可以根据光盘镜像文件自动对网络和在该虚拟机上安装的数据库进行配置,实现了用户无需参与虚拟机和数据库的配置,节省了人力资源,提高了虚拟机部署的效率。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1为本发明实施例提供的一种光盘镜像文件的创建方法的流程示意图;

图2为本发明实施例提供的一种虚拟机部署方法的流程示意图;

图3为本发明实施例提供的一种创建光盘镜像文件和部署虚拟机的方法的流程示意图;

图4为本发明实施例提供的一种光盘镜像文件的创建装置的结构示意图;

图5为本发明实施例提供的另一种光盘镜像文件的创建装置的结构示意图;

图6为本发明实施例提供的一种虚拟机部署装置的结构示意图;

图7为本发明实施例提供的另一种虚拟机部署装置的结构示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本发明实施例提供一种光盘镜像文件的创建方法,如图1所示,该方法包括:

步骤101、云平台为虚拟机分配网络配置信息,以及为在虚拟机上安装的数据库生成登录信息。

具体地,在创建虚拟机之后,自动为虚拟机分配网络配置信息,该网络配置信息包括但不限于以下之一或多种的组合:互联网协议(internetprotocol,ip)地址、子网掩码、网关。以及为在虚拟机上安装的数据库生成登录信息,该登录信息包括:用户名和密码,该登录信息具有唯一性,从而保证了数据库使用该登录信息进行登录后数据库的安全性。

步骤102、创建包括分配的网络配置信息和生成的登录信息的光盘镜像文件。

具体地,云平台创建一个空的光盘镜像文件,将分配的网络配置信息和生成的登录信息写入到该空的光盘镜像文件中。虚拟机读取创建的光盘镜像文件中的网络配置信息就可以对自身的网络进行配置,读取该光盘镜像文件中的登录信息以将该登录信息设置到虚拟机上安装的数据库中。

进一步地,在图1对应实施例的基础上,步骤101之前,还包括:

云平台根据安装有数据库的虚拟机模板创建安装有数据库的虚拟机。

由于虚拟机模板上安装有数据库,因此在根据该虚拟机模板创建虚拟机时,创建的虚拟机上安装有与虚拟机模板上安装的数据库相同的数据库。在虚拟机模板上除了可以安装有数据库,还可以万维网(worldwideweb,简称web)客户端和万维网客户端对应的容器,该容器可以是tomcat类型的容器或者php(hypertextpreprocessor,超级文本预处理语言)类型的容器,tomcat是阿帕奇软件基金会(apachesoftwarefoundation)的jakarta(雅加达)项目中的一个核心项目。如果虚拟机模板上安装有万维网客户端和容器,那么根据该虚拟机模板创建的虚拟机上也安装有相同的万维网客户端和容器。

进一步地,创建安装有数据库的虚拟机之前,还包括:

云平台根据来自用户输入的数据库信息,选择虚拟机模板,其中选择的虚拟机模板上安装的数据库的信息与来自用户输入的数据库信息一致。

具体地,预先在虚拟机上安装数据库,将该虚拟机导出作为虚拟机模板。按照以上的方式形成多个虚拟机模板并上传到云平台上,例如将多个虚拟机模板上传到云平台的二级存储缓冲区上。用户可以通过云平台的显示界面输入需要的数据库信息,例如输入数据库的类型、版本和配置,云平台根据来自用户输入的数据库信息在预先存储的多个虚拟机模板中选择虚拟机模板,选择的虚拟机模板上安装的数据库与来自用户输入的数据库信息一致。例如,用户在云平台的显示界面上输入需要在待创建的虚拟机上安装mysql5.2版本的数据库,则云平台选择安装有mysql5.2版本的数据库的虚拟机模板。

另外,用户在输入数据库信息时,还可以输入待创建虚拟机的参数,例如,虚拟机的cpu个数、存储大小和存储大小,以选择满足该参数的虚拟机模板。

进一步地,创建安装有数据库的虚拟机之前,还包括:

云平台根据来自用户输入的网络选择集群,以在选择的集群中的主机上创建虚拟机。

具体地,用户可以在云平台的显示界面上输入待创建虚拟机连接的网络,这样云平台根据该网络来选择集群。例如,当用户输入的网络为公司内网下的网络时,选择内网下的集群,这样就可以将虚拟机创建在该集群中的主机上。当选择的集群数据有多个时,可以根据每个集群的负载情况来选择承载创建的虚拟机的集群,具体地,选择负载最小的集群来承载创建的虚拟机。

进一步地,在图1对应实施例的基础上,步骤102之后,还包括:

云平台将光盘镜像文件插入到虚拟机的光驱中。

通过将光盘镜像文件插入到虚拟机的光驱中,这样虚拟机可以读取光盘镜像文件,以根据读取到的内容来对虚拟机和虚拟机上安装的数据库进行配置。在将光盘镜像文件插入到虚拟机的光驱中之后,云平台还可以控制虚拟机重启,以在虚拟机重启之后能够正常读取到虚拟机的光驱中的光盘镜像文件。

进一步地,虚拟机包括脚本文件,该脚本文件用于使虚拟机利用光盘镜像文件配置虚拟机的网络和在虚拟机上安装的数据库。

具体地,在虚拟机模板的特定目录下存储有脚本文件,根据该虚拟机模板创建虚拟机,那么在创建的虚拟机的特定目录下也存储有脚本文件。虚拟机在重启后会自动读取该脚本文件,并按照该脚本文件执行:利用光盘镜像文件配置虚拟机的网络和配置在虚拟机上安装的数据库的步骤,实现了虚拟机自动配置网络和数据库的目的。脚本文件为shell脚本文件,shell是一种程序设计语言,作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。

本发明实施例所提供的光盘镜像文件的创建方法,云平台为虚拟机分配网络配置信息,以及为在虚拟机上安装的数据库生成登录信息;创建包括分配的网络配置信息和生成的登录信息的光盘镜像文件。从本发明实施例可见,通过将虚拟机的网络配置信息和虚拟机上安装的数据库的登录信息写入到光盘镜像文件中,虚拟机可以根据光盘镜像文件自动对网络和在该虚拟机上安装的数据库进行配置,实现了用户无需参与虚拟机和数据库的配置,节省了人力资源,提高了虚拟机部署的效率。

本发明实施例提供一种虚拟机部署方法,如图2所示,该方法包括:

步骤201、虚拟机读取光盘镜像文件中的网络配置信息和数据库的登录信息。

具体地,云平台将光盘镜像文件插入到虚拟机的光驱中之后,虚拟机重启后会自动读取光驱中的光盘镜像文件,以读取出光盘镜像文件的网络配置信息和数据库的登录信息。

步骤202、根据读取到的网络配置信息配置虚拟机的网络,以及将读取到的登录信息配置到虚拟机上安装的数据库中。

具体地,云平台将读取到的网络配置信息替换到虚拟机的网络配置文件中,重启虚拟机的网络服务,即完成了虚拟机的网络配置。云平台将读取到的登录信息(登录信息包括用户名和密码)配置到虚拟机上安装的数据库中,数据库使用该登录信息进行登录。由于根据虚拟机模板创建虚拟机,因此在创建的虚拟机上安装的数据库的登录信息和在虚拟机模板上安装的数据库的登录信息是相同的,通过将光盘镜像文件中的登录信息配置到虚拟机上安装的数据库中,即修改虚拟机上安装的数据库原始的登录信息,从而保证了数据库的安全性。

其中,本发明并不一定按照步骤201和步骤202的先后顺序执行的。换句话说,可以先执行步骤201,再执行步骤202。还可以按照如下顺序执行:虚拟机读取光盘镜像文件中的网络配置信息,根据网络配置信息配置虚拟机的网络,重启虚拟机的网络服务即完成了虚拟机的网络配置;在完成虚拟机的网络配置之后,虚拟机读取光盘镜像文件中的数据库的登录信息,将该登录信息配置到数据库中。

进一步地,虚拟机包括脚本文件,虚拟机按照该脚本文件执行步骤201和步骤202。

具体地,虚拟机本身包括脚本文件,虚拟机在重启之后读取该脚本文件,并按照该脚本文件执行以上的步骤201和步骤202,实现了脚本文件和光盘镜像文件的结合使虚拟机自动进行虚拟机和数据库的配置。

进一步地,在图1对应实施例的基础上,步骤201之前,还包括:

虚拟机按照脚本文件还执行:将光盘镜像文件存储到云平台的共享存储上。

如果将光盘镜像文件存储到虚拟机所在的主机上,只有在虚拟机安装到该主机上时才能读取光盘镜像文件,而当虚拟机从该主机切换到其他集群的主机上时,由于集群之间不能传输数据,因此,虚拟机无法读取光盘镜像文件。将光盘镜像文件存储到云平台的共享存储上,任一集群中的主机都可以访问共享存储,从而读取共享存储上的光盘镜像文件。而且如果将光盘镜像文件存储到虚拟机所在的主机上,需要在虚拟机和主机上做很多对应配置,虚拟机才能找到并读取该光盘镜像文件,将光盘镜像文件存储到云平台的共享存储上,不需要做很多配置虚拟机就能读取共享存储上的光盘镜像文件。

进一步地,在图1对应实施例的基础上,步骤202之后,还包括:

虚拟机按照脚本文件还执行:将数据库的文件存储路径修改为虚拟机挂接的数据盘。

通过将数据库的文件存储路径修改为虚拟机挂接的数据盘,以使虚拟机的系统盘和数据盘相对隔离,即使虚拟机损坏,数据库的数据也不会丢失。进一步地,虚拟机按照脚本文件还执行:在修改数据库的文件存储路径之前,将虚拟机挂接的数据盘格式化,以保证虚拟机挂接的数据盘能够正常使用;在修改数据库的文件存储路径之后,若虚拟机上安装了万维网客户端,启动该万维网客户端,关闭执行脚本文件的进程。最后弹出光盘镜像文件。基于以上方案已经完成了对虚拟机和在虚拟机上安装的数据库的配置,可以在云平台的显示界面上对虚拟机进行生命周期的管理。

本发明实施例所提供的虚拟机部署方法,虚拟机读取光盘镜像文件中的网络配置信息和数据库的登录信息;根据读取到的网络配置信息配置虚拟机的网络,以及将读取到的登录信息配置到虚拟机上安装的数据库中。从本发明实施例可见,虚拟机读取光盘镜像文件自动对网络和在该虚拟机上安装的数据库进行配置,实现了用户无需参与虚拟机和数据库的配置,节省了人力资源,提高了虚拟机部署的效率。

本发明实施例提供一种创建光盘镜像文件和部署虚拟机的方法,如图3所示,该方法包括:

步骤301、云平台根据来自用户输入的数据库信息和网络,选择虚拟机模板、集群和数据盘。

技术人员预先在虚拟机上安装数据库、万维网客户端和该客户端对应的容器,并编写脚本文件,将脚本文件存储在虚拟机的特定目录下。将该虚拟机导出作为虚拟机模板,此虚拟机模板上安装的数据库是一版本的通用数据库。按照以上的方式形成多个虚拟机模板并上传到云平台上,例如将多个虚拟机模板上传到云平台的二级存储缓冲区上。用户可以通过云平台的显示界面输入待创建的数据库的类型、版本和配置以及网络,云平台根据来自用户输入的数据库信息在预先存储的多个虚拟机模板中选择虚拟机模板,选择的虚拟机模板上安装的数据库的信息与来自用户输入的数据库信息一致。并根据来自用户输入的网络选择集群,以在该集群中的主机上创建虚拟机。为虚拟机选择用于存储数据的数据盘。

步骤302、云平台根据选择的虚拟机模板创建虚拟机。

在创建的虚拟机上安装有数据库、万维网客户端和对应的容器,在创建的虚拟机上有脚本文件。

步骤303、云平台修改虚拟机的配置,挂接数据盘。

云平台可以根据用户的需求修改虚拟机的配置,将虚拟机挂接到选择的数据盘。

步骤304、云平台创建光盘镜像文件,并将光盘镜像文件插入到虚拟机的光驱中。

具体地,云平台在创建虚拟机之后,为虚拟机分配网络配置信息,以及为在虚拟机上安装的数据库生成登录信息,光盘镜像文件包括分配的网络配置信息和生成的登录信息。

步骤305、云平台重启虚拟机。

步骤306、虚拟机读取脚本文件,并按照脚本文件执行:将虚拟机的光驱中光盘镜像文件挂载到云平台的共享存储上。

步骤307、虚拟机从共享存储上读取光盘镜像文件中的网络配置信息,并将网络配置信息替换到虚拟机的网络配置文件中。

步骤308、虚拟机重启网络服务,完成了虚拟机的网络配置。

步骤309、虚拟机从共享存储上读取光盘镜像文件中的数据库的登录信息,并将登录信息配置到虚拟机上安装的数据库中。

步骤310、虚拟机读取自身挂接的数据盘,对挂接的数据盘进行格式化,将虚拟机上安装的数据库的文件存储路径修改为该挂接的数据盘。

步骤311、虚拟机启动自身上安装的万维网客户端。

步骤312、虚拟机关闭执行脚本文件的进程。

步骤313、虚拟机弹出光盘镜像文件。

步骤306至步骤312都是虚拟机按照脚本文件执行的步骤。

本发明实施例提供一种光盘镜像文件的创建装置,如图4所示,该创建装置4包括:

处理模块41,用于为虚拟机分配网络配置信息,以及为在虚拟机上安装的数据库生成登录信息。

第一创建模块42,用于创建包括分配的网络配置信息和生成的登录信息的光盘镜像文件。

进一步地,在图4对应实施例的基础上,本发明提供另一种光盘镜像文件的创建装置,如图5所示,该创建装置4还包括:

第二创建模块43,用于根据安装有数据库的虚拟机模板创建安装有数据库的虚拟机。

进一步地,如图5所示,光盘镜像文件的创建装置4还包括:

第一选择模块44,用于根据来自用户输入的数据库信息,选择虚拟机模板,其中选择的虚拟机模板上安装的数据库的信息与来自用户输入的数据库信息一致。

进一步地,如图5所示,光盘镜像文件的创建装置4还包括:

第二选择模块45,用于根据来自用户输入的网络,选择集群。

第二创建模块43具体用于:

在第二选择模块45选择的集群中的主机上创建虚拟机。

进一步地,如图5所示,创建装置4还包括:

插入模块46,用于将光盘镜像文件插入到虚拟机的光驱中。

进一步地,虚拟机包括脚本文件,该脚本文件用于使虚拟机利用光盘镜像文件配置虚拟机的网络和在虚拟机上安装的数据库。

在实际应用中,处理模块41、第一创建模块42、第二创建模块43、第一选择模块44、第二选择模块45和插入模块46均可由光盘镜像文件的创建装置4中的cpu、微处理器(microprocessorunit,mpu)、数字信号处理器(digitalsignalprocessor,dsp)或现场可编程门阵列(fieldprogrammablegatearray,fpga)等实现。

本发明实施例所提供的光盘镜像文件的创建装置,为虚拟机分配网络配置信息,以及为在虚拟机上安装的数据库生成登录信息;创建包括分配的网络配置信息和生成的登录信息的光盘镜像文件。从本发明实施例可见,通过将虚拟机的网络配置信息和虚拟机上安装的数据库的登录信息写入到光盘镜像文件中,虚拟机可以根据光盘镜像文件自动对网络和在该虚拟机上安装的数据库进行配置,实现了用户无需参与虚拟机和数据库的配置,节省了人力资源,提高了虚拟机部署的效率。

本发明实施例提供一种虚拟机部署装置,如图6所示,该虚拟机部署装置5包括:

读取模块51,用于读取光盘镜像文件中的网络配置信息和数据库的登录信息。

配置模块52,用于根据读取到的网络配置信息配置虚拟机的网络,以及将读取到的登录信息配置到虚拟机上安装的数据库中。

进一步地,虚拟机包括脚本文件,读取模块51按照该脚本文件执行读取的步骤,配置模块52按照该脚本文件执行配置的步骤。

进一步地,在图6对应的实施例的基础上,本发明提供另一种虚拟机部署装置,如图7所示,该虚拟机部署装置5还包括:

挂载模块53,用于按照脚本文件执行:将光盘镜像文件存储到云平台的共享存储上。

进一步地,如图7所示,虚拟机部署装置5还包括:

修改模块54,用于按照脚本文件还执行:将数据库的文件存储路径修改为虚拟机挂接的数据盘。

在实际应用中,读取模块51、配置模块52、挂载模块53和修改模块54均可由虚拟机部署装置5中的cpu、微处理器(microprocessorunit,mpu)、数字信号处理器(digitalsignalprocessor,dsp)或现场可编程门阵列(fieldprogrammablegatearray,fpga)等实现。

本发明实施例所提供的虚拟机部署装置,读取光盘镜像文件中的网络配置信息和数据库的登录信息;根据读取到的网络配置信息配置虚拟机的网络,以及将读取到的登录信息配置到虚拟机上安装的数据库中。从本发明实施例可见,虚拟机读取光盘镜像文件自动对网络和在该虚拟机上安装的数据库进行配置,实现了用户无需参与虚拟机和数据库的配置,节省了人力资源,提高了虚拟机部署的效率。

本发明实施例提供又一种光盘镜像文件的创建装置,该光盘镜像文件的创建装置包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现的步骤包括:

为虚拟机分配网络配置信息,以及为在虚拟机上安装的数据库生成登录信息;

创建包括分配的网络配置信息和生成的登录信息的光盘镜像文件。

进一步地,上述处理器执行计算机程序时实现的步骤还包括:

根据安装有数据库的虚拟机模板创建安装有数据库的虚拟机。

进一步地,上述处理器执行计算机程序时实现的步骤还包括:

根据来自用户输入的数据库信息,选择虚拟机模板,其中选择的虚拟机模板上安装的数据库的信息与来自用户输入的数据库信息一致;和/或

根据来自用户输入的网络,选择集群;

进一步地,上述处理器执行计算机程序时实现的步骤具体包括:

在选择的集群中的主机上创建虚拟机。

进一步地,上述处理器执行计算机程序时实现的步骤还包括:

将光盘镜像文件插入到虚拟机的光驱中。

本发明实施例提供又一种虚拟机部署装置,该虚拟机部署装置包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现的步骤包括:

虚拟机读取光盘镜像文件中的网络配置信息和数据库的登录信息;

根据读取到的网络配置信息配置虚拟机的网络,以及将读取到的登录信息配置到虚拟机上安装的数据库中。

进一步地,虚拟机包括脚本文件,上述处理器执行计算机程序时实现的步骤还包括:

按照该脚本文件执行读取的步骤和配置的步骤。

进一步地,上述处理器执行计算机程序时实现的步骤还包括:

按照脚本文件还执行:将光盘镜像文件存储到云平台的共享存储上。

进一步地,上述处理器执行计算机程序时实现的步骤还包括:

按照脚本文件还执行:将数据库的文件存储路径修改为虚拟机挂接的数据盘。

虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1