当前位置: 首页 > 专利查询>清华大学专利>正文

一种一键部署大数据和深度学习容器云平台及其构建方法技术

技术编号:24497660 阅读:128 留言:0更新日期:2020-06-13 03:41
本发明专利技术涉及一键部署大数据和深度学习容器云平台及其构建方法,其特征在于,该云平台包括存储计算层、采集分析层、监控管理层和数据来源层,其中,存储计算层内设置有HDFS、Hive数据仓库模块、Hbase海量存储模块、MapReduce离线计算模块和Storm流式计算模块,采集分析层内设置有Sqoop数据采集模块、Flume数据采集模块和Pig数据分析模块,监控管理层内设置有HUE管理工具、Ganglia监控工具和Nagios报警工具,存储计算层、采集分析层和监控管理层内的各模块均设置在对应Docker容器内,数据来源层内存储有结构化数据、半结构化数据和实时数据,本发明专利技术可以广泛应用于计算机领域中。

One key deployment of big data and deep learning container cloud platform and its construction method

【技术实现步骤摘要】
一种一键部署大数据和深度学习容器云平台及其构建方法
本专利技术是关于一种一键部署大数据和深度学习容器云平台及其构建方法,属于计算机领域。
技术介绍
Docker(容器技术)、Hadoop(大数据存储和计算引擎)、HBase(分布式Nosql数据库)、Hive(数据分析引擎)、Pig(数据分析引擎)、Sqoop(数据采集引擎)、Flume(数据采集引擎)、Zookeeper(分布式协同服务)、HUE(大数据可视化管理界面)、Shipyard(Docker图形化管理工具)、Tensorflow(基于数据流编程的符号数学模块)等现有的大数据分析和应用和深度学习框架均为开源软件,但是均需要进行安装部署和集成,安装过于复杂。现有商业化的大数据管理平台一键部署软件HDP(数据平台),其安装前期的准备工作较多,并未做到真正意义上的一键部署。
技术实现思路
针对上述问题,本专利技术的目的是提供一种安装简单且基于Docker容器的一键部署大数据和深度学习容器云平台及其构建方法。为实现上述目的,本专利技术采取以下技术方案:一种一键部署大数据和深度学习容器云平台,其特征在于,该云平台包括存储计算层、采集分析层、监控管理层和数据来源层,所述存储计算层、采集分析层和监控管理层内的各模块均设置在对应Docker容器内,所述数据来源层内存储有结构化数据、半结构化数据和实时数据,其中:所述采集分析层内设置有:Sqoop数据采集模块,用于采集数据来源层存储的预处理后的数据;Flume数据采集模块,用于采集、缓存和保存产生的日志;Pig数据分析模块,用于当需要进行数据分析时,针对半结构化数据和实时数据,将类SQL的数据分析请求转换为一系列优化处理后的MapReduce运算数据集;所述存储计算层内设置有:MapReduce离线计算模块,用于获取并存储大数据处理需求以及对优化处理后的MapReduce运算数据集进行并行离线运算;HDFS,用于根据大数据处理需求,对预处理后的数据进行批量存储和备份;Storm流式计算模块,用于根据大数据处理需求,对预处理后的数据进行实时计算、存储和备份;Hive数据仓库模块,用于当需要进行数据分析时,针对结构化数据,将数据导入至采用Hive引擎建立的数据模型中,并采用SQL语句进行分析;Hbase海量存储模块,用于当需要进行数据查询时,导入所述数据来源层存储的对应数据;所述监控管理层内设置有:HUE管理工具,用于对各模块进行可视化管理,并与所述存储计算层进行交互;Ganglia监控工具,用于实时监控各所述Docker容器的状态;Nagios报警工具,用于当任一所述Docker容器不工作时进行报警。进一步地,所述采用Hive引擎建立的数据模型包括内部表、分区表、外部表和桶表。进一步地,所述数据来源层内设置有关系型数据库MySQL、Oracle和非关系型数据库MongoDB。进一步地,所述监控管理层、采集分析层和存储计算层均包括核心处理部分,每一核心处理部分均包括计算机主机、内存、CPU、硬盘和所述Docker容器,每一所述计算机主机均通过虚拟机进行分割,每一所述计算机主机与对应所述Docker容器之间均采用网络信息传输的连接方式连接。一种一键部署大数据和深度学习容器云平台的构建方法,其特征在于,包括以下内容:1)将云平台中的所有模块均通过Dockerfile脚本构建成一个Docker镜像;2)将云平台中所有模块的配置信息分别写入对应的配置文件中;3)通过linux脚本,对各模块进行交互式设置,完成云平台的构建。进一步地,所述步骤3)的具体过程为:3.1)创建Docker容器的自定义网络类型;3.2)搭建HDFS,并将HDFS中的每一节点均进行容器化处理;3.3)搭建Hbase海量存储模块,并将Hbase海量存储模块中的每一节点均进行容器化处理;3.4)搭建MapReduce离线计算模块、Zookeeper集群、Hive数据仓库模块、Pig数据分析模块、Sqoop数据采集模块、Flume数据采集模块、HUE管理工具和数据库,并分别进行容器化处理,完成云平台的搭建。进一步地,所述步骤3.4)中的数据库包括关系型数据库MySQL、Oracle和非关系型数据库MongoDB。进一步地,所述步骤3.2)的具体过程为:对HDFS的主节点NameNode和从节点DataNode分别进行HDFS的管理和数据的存储;在HDFS对应的配置文件中进行参数配置;在一键部署的linux脚本中,配置Hadoop中的slaves文件,指定从节点DataNode的容器数量;通过Docker命令创建主节点NameNode容器,并指定主节点NameNode容器的容器名、容器IP地址、容器所使用的网络和将容器端口映射到本地的端口号,以及在本地指定一个将容器中的数据导入至本地的目录;通过Docker命令创建从节点DataNode容器,根据指定的从节点DataNode容器数量,分别指定从节点DataNode容器的容器名、容器IP地址、容器所使用的网络和将容器端口映射到本地的端口号。进一步地,所述步骤3.3)的具体过程为:在Hbase海量存储模块对应的配置文件中进行参数配置;在一键部署的linux脚本中,通过Docker命令创建主节点HMaster容器,并指定主节点HMaster容器的容器名、容器IP地址、容器所使用的网络和将容器端口映射到本地的端口号;通过Docker命令创建从节点RegionServer容器,并根据从节点RegionServer容器的数量,分别指定每一从节点RegionServer容器的容器名、容器IP地址和容器所使用的网络,以及在本地指定一个将容器中的数据导入至本地的目录。进一步地,所述步骤3.4)的具体过程为:3.4.1)对资源调度引擎Yarn进行容器化处理:分配资源调度引擎Yarn的某一容器为主节点,其余容器为从节点;在一键部署的linux脚本中,指定从节点容器的数量,并设定从节点容器IP地址的范围;在资源调度引擎Yarn对应的配置文件中进行参数配置;3.4.2)采用三个节点组成Zookeeper集群,并分别进行容器化处理:指定主节点leader容器和从节点follower容器,并在Zookeeper集群对应的配置文件中进行参数配置;创建一个myid空文件,并分别编写对应容器数量的shell脚本;在一键部署的linux脚本中,通过docker命令创建Zookeeper容器集群,并指定每一容器的容器名、容器所使用的网络、容器IP地址和将容器端口映射到本地的端口号,以及在本地指定一个将容器中的数据导入至本地的目录;3.4.3)对Hive数据仓库模块进行容器化处理:将Hive数据仓库模块安装在HDFS的主节点NameNode所在的容器中,并对相应配置文件进行修改;在一键部署的linux脚本中,通过Docker命令创建关系型数据库Mysql容器,并指定关系型数据库Mysql容器的容器名、容器IP地址、容器所使用的网络、将容器端口映射到本地的端口号、用户名、密码、数据库名,以及在本地本文档来自技高网...

【技术保护点】
1.一种一键部署大数据和深度学习容器云平台,其特征在于,该云平台包括存储计算层、采集分析层、监控管理层和数据来源层,所述存储计算层、采集分析层和监控管理层内的各模块均设置在对应Docker容器内,所述数据来源层内存储有结构化数据、半结构化数据和实时数据,其中:/n所述采集分析层内设置有:/nSqoop数据采集模块,用于采集数据来源层存储的预处理后的数据;/nFlume数据采集模块,用于采集、缓存和保存产生的日志;/nPig数据分析模块,用于当需要进行数据分析时,针对半结构化数据和实时数据,将类SQL的数据分析请求转换为一系列优化处理后的MapReduce运算数据集;/n所述存储计算层内设置有:/nMapReduce离线计算模块,用于获取并存储大数据处理需求以及对优化处理后的MapReduce运算数据集进行并行离线运算;/nHDFS,用于根据大数据处理需求,对预处理后的数据进行批量存储和备份;/nStorm流式计算模块,用于根据大数据处理需求,对预处理后的数据进行实时计算、存储和备份;/nHive数据仓库模块,用于当需要进行数据分析时,针对结构化数据,将数据导入至采用Hive引擎建立的数据模型中,并采用SQL语句进行分析;/nHbase海量存储模块,用于当需要进行数据查询时,导入所述数据来源层存储的对应数据;/n所述监控管理层内设置有:/nHUE管理工具,用于对各模块进行可视化管理,并与所述存储计算层进行交互;/nGanglia监控工具,用于实时监控各所述Docker容器的状态;/nNagios报警工具,用于当任一所述Docker容器不工作时进行报警。/n...

【技术特征摘要】
1.一种一键部署大数据和深度学习容器云平台,其特征在于,该云平台包括存储计算层、采集分析层、监控管理层和数据来源层,所述存储计算层、采集分析层和监控管理层内的各模块均设置在对应Docker容器内,所述数据来源层内存储有结构化数据、半结构化数据和实时数据,其中:
所述采集分析层内设置有:
Sqoop数据采集模块,用于采集数据来源层存储的预处理后的数据;
Flume数据采集模块,用于采集、缓存和保存产生的日志;
Pig数据分析模块,用于当需要进行数据分析时,针对半结构化数据和实时数据,将类SQL的数据分析请求转换为一系列优化处理后的MapReduce运算数据集;
所述存储计算层内设置有:
MapReduce离线计算模块,用于获取并存储大数据处理需求以及对优化处理后的MapReduce运算数据集进行并行离线运算;
HDFS,用于根据大数据处理需求,对预处理后的数据进行批量存储和备份;
Storm流式计算模块,用于根据大数据处理需求,对预处理后的数据进行实时计算、存储和备份;
Hive数据仓库模块,用于当需要进行数据分析时,针对结构化数据,将数据导入至采用Hive引擎建立的数据模型中,并采用SQL语句进行分析;
Hbase海量存储模块,用于当需要进行数据查询时,导入所述数据来源层存储的对应数据;
所述监控管理层内设置有:
HUE管理工具,用于对各模块进行可视化管理,并与所述存储计算层进行交互;
Ganglia监控工具,用于实时监控各所述Docker容器的状态;
Nagios报警工具,用于当任一所述Docker容器不工作时进行报警。


2.如权利要求1所述的一种一键部署大数据和深度学习容器云平台,其特征在于,所述采用Hive引擎建立的数据模型包括内部表、分区表、外部表和桶表。


3.如权利要求1所述的一种一键部署大数据和深度学习容器云平台,其特征在于,所述数据来源层内设置有关系型数据库MySQL、Oracle和非关系型数据库MongoDB。


4.如权利要求1所述的一种一键部署大数据和深度学习容器云平台,其特征在于,所述监控管理层、采集分析层和存储计算层均包括核心处理部分,每一核心处理部分均包括计算机主机、内存、CPU、硬盘和所述Docker容器,每一所述计算机主机均通过虚拟机进行分割,每一所述计算机主机与对应所述Docker容器之间均采用网络信息传输的连接方式连接。


5.一种基于权利要求1至4所述的一键部署大数据和深度学习容器云平台的构建方法,其特征在于,包括以下内容:
1)将云平台中的所有模块均通过Dockerfile脚本构建成一个Docker镜像;
2)将云平台中所有模块的配置信息分别写入对应的配置文件中;
3)通过linux脚本,对各模块进行交互式设置,完成云平台的构建。


6.如权利要求5所述的一种一键部署大数据和深度学习容器云平台的构建方法,其特征在于,所述步骤3)的具体过程为:
3.1)创建Docker容器的自定义网络类型;
3.2)搭建HDFS,并将HDFS中的每一节点均进行容器化处理;
3.3)搭建Hbase海量存储模块,并将Hbase海量存储模块中的每一节点均进行容器化处理;
3.4)搭建MapReduce离线计算模块、Zookeeper集群、Hive数据仓库模块、Pig数据分析模块、Sqoop数据采集模块、Flume数据采集模块、HUE管理工具和数据库,并分别进行容器化处理,完成云平台的搭建。


7.如权利要求6所述的一种一键部署大数据和深度学习容器云平台的构建方法,其特征在于,所述步骤3.4)中的数据库包括关系型数据库MySQL、Oracle和非关系型数据库MongoDB。


8.如权利要求6所述的一种一键部署大数据和深度学习容器云平台的构建方法,其特征在于,所述步骤3.2)的具体过程为:
对HDFS的主节点NameNode和从节点DataNode分别进行HDFS的管理和数据的存储;
在HDFS对应的配置文件中进行参数配置;
在一键部署的linu...

【专利技术属性】
技术研发人员:李金泽赵千川杨文
申请(专利权)人:清华大学
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1