本发明涉及云计算技术领域,具体涉及一种批量大数据实验环境的快速自动构建方法。
背景技术:
目前,批量的大数据实验环境有很多应用场景,如学校开展大数据实验相关的课程,需要为每位学生分配独立的大数据实验环境;公司为多个部门分配独立的大数据实验环境。部署大数据实验环境的过程繁琐且易出错,不可能手动部署批量的大数据实验环境;近年来也出现了自动构建虚拟网络的技术,但是其构建速度较慢,技术实现过程较为复杂。因此,需要一种能够自动构建批量的大数据实验环境的方法,避免手动部署过程繁琐且易出错,构建速度快,技术易于实现。
技术实现要素:
本发明的目的在于克服现有技术的不足,提供一种批量大数据实验环境的快速自动构建方法,用于解决批量大数据实验环境的自动构建速度慢的问题。
为解决上述问题,本发明采用的技术方案是:一种批量大数据实验环境的快速自动构建方法,包括以下步骤:
s1、自动构建大数据集群网络资源池;
所述大数据实验环境为已配置大数据环境的虚拟机集群,大数据集群网络资源池包括批量独立的虚拟网络,每个虚拟网络通过虚拟路由和外部网络进行连接;
s2、根据大数据集群模版自动生成大数据集群快照;
s3、基于大数据集群快照快速自动构建批量大数据集群。
在优选的实施例中,步骤s1包括:
s11、判断网络资源池中网络资源是否足够用于构建批量的大数据集群,如果不够则进入下一步;
s12、构建批量独立的虚拟网络;
s13、分别为每一个虚拟网络构建一个虚拟路由,并将虚拟网络和外部网络连接至虚拟路由;
s14、将虚拟网络加入到大数据集群网络资源池中。
在优选的实施例中,所述大数据集群模版在步骤s2前创建,大数据集群模版指定模版名字、大数据集群使用的大数据镜像、集群虚拟机节点配置以及不同虚拟机节点对应的数目;集群虚拟机节点配置指定节点硬件资源配置、运行在虚拟机节点上的大数据相关进程及相关进程的运行参数。
在优选的实施例中,步骤s2步骤包括:
s21、判断大数据集群模板对应的大数据集群快照是否存在,如果不存在则进行下一步;
s22、从大数据集群网络资源池中获取网络资源;
s23、生成集群公私钥;
s24、根据大数据集群模版创建虚拟机集群,虚拟机自动将集群公钥复制到指定位置;
s25、根据集群虚拟机网络地址和主机名生成hosts文件并通过网络传输到集群虚拟机中;
s26、根据大数据集群模版生成大数据集群相关配置文件并通过网络传输到集群虚拟机中;
s27、生成大数据集群中所有虚拟机的快照,所有虚拟机快照构成大数据集群模版对应的大数据集群快照。
在优选的实施例中,步骤s3中,大数据集群快速自动构建的具体步骤为:
s31、从大数据集群网络资源池中获取网络资源;
s32、使用大数据集群模版对应的大数据集群快照创建虚拟机集群;
s33、根据集群虚拟机网络地址和主机名生成hosts文件并通过网络传输到集群虚拟机中。
与现有技术相比,本发明技术方案的有益效果包括:
1、通过维护网络资源池,减少网络资源的构建和回收;
2、支持根据不同大数据集群模版生成不同的大数据集群快照;
3、通过大数据集群快照构建批量大数据集群,提高了批量大数据集群的自动构建速度。
附图说明
图1为本发明批量大数据实验环境的快速自动构建方法的总流程图;
图2为本发明大数据集群快照自动生成的流程图;
图3为本发明大数据集群快速自动构建的流程图。
具体实施方式
以下结合附图和实施例对本发明做进一步的阐述,但本发明的实施方式不限于此。
在本发明中,采用云操作系统(如openstack)负责对计算、存储、网络等资源进行管理,并对虚拟机进行管理。
图1为本发明批量大数据实验环境的快速自动构建方法的总流程图,如图1所示,批量大数据实验环境的快速自动构建方法包括以下步骤:
s1、自动构建大数据集群网络资源池;
在具体的实施过程中,大数据实验环境为已配置大数据环境的虚拟机集群,可以通过ssh连接到大数据虚拟机集群进行相关大数据实验。大数据集群网络资源池包括批量独立的虚拟网络,每个虚拟网络通过虚拟路由和外部网络进行连接。当回收大数据集群时不回收对应的网络资源,而是将之释放到网络资源池中,使得网络资源能够被反复利用,减少网络资源的构建和回收。
在本实施例中,步骤s1具体步骤包括:
s11、判断网络资源池中网络资源是否足够用于构建批量的大数据集群,如果不够则进入下一步;
s12、构建批量独立的虚拟网络;
s13、分别为每一个虚拟网络构建一个虚拟路由,并将虚拟网络和外部网络连接至虚拟路由;
s14、将虚拟网络加入到大数据集群网络资源池中。
s2、根据大数据集群模版自动生成大数据集群快照;
大数据集群模版需要在步骤s2前创建,大数据集群模版指定模版名字、大数据集群使用的大数据镜像(如hadoop镜像、spark镜像等)、集群虚拟机节点配置以及不同虚拟机节点对应的数目。大数据镜像使用常用的操作系统(如ubuntu和centos),并安装了大数据组件(如hdfs和yarn等)相关二进制文件。集群虚拟机节点配置指定节点硬件资源(如cpu、内存、磁盘)配置、运行在虚拟机节点上的大数据相关进程(如hdfs的namenode和datanode进程,yarn的resourcemanager和nodemanager进程等)及相关进程的运行参数。
图2为本发明大数据集群快照自动生成的流程图。在具体的实施过程中,如图2所示,步骤s2步骤包括:
s21、判断大数据集群模板对应的大数据集群快照是否存在,如果不存在则进行下一步;
s22、从大数据集群网络资源池中获取网络资源;
s23、生成集群公私钥;
s24、根据大数据集群模版创建虚拟机集群,虚拟机自动将集群公钥复制到指定位置;
s25、根据集群虚拟机网络地址和主机名生成hosts文件并通过网络传输到集群虚拟机中;
s26、根据大数据集群模版生成大数据集群相关配置文件(如slaves、core-site.xml、hdfs-site.xml、mapred-site.xml、yaml-site.xml等文件)并通过网络传输到集群虚拟机中;
s27、生成大数据集群中所有虚拟机的快照,所有虚拟机快照构成大数据集群模版对应的大数据集群快照。
s3、基于大数据集群快照快速自动构建批量大数据集群。
大数据集群快照包括集群中所有虚拟机的快照,根据大数据集群快照可以构建批量相同的大数据集群。基于大数据集群快照快速自动构建批量大数据集群可以生成批量相同的大数据集群,通过大数据集群快照构建大数据集群可以避免集群公私钥、大数据集群相关配置文件的生成与网络传输,可加快大数据集群的构建速度,进而大大加快批量大数据集群的构建速度。
图3为本发明大数据集群快速自动构建的流程图。在具体的实施过程中,大数据集群快速自动构建的具体步骤为:
s31、从大数据集群网络资源池中获取网络资源;
s32、使用大数据集群模版对应的大数据集群快照创建虚拟机集群;
s33、根据集群虚拟机网络地址和主机名生成hosts文件并通过网络传输到集群虚拟机中。
在具体的实施过程中,步骤s3为批量执行上述基于大数据集群快照快速自动构建大数据集群的过程。
显然,本发明的上述实施案例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属技术领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。