一种基于Docker容器的分布式深度学习系统及其搭建方法、工作方法技术方案

技术编号:16755236 阅读:19 留言:0更新日期:2017-12-09 01:54
本发明专利技术涉及一种基于Docker容器的分布式深度学习系统及其搭建方法、工作方法,包括一台服务器主机、第一分布式深度学习平台、第二分布式深度学习平台。本发明专利技术利用Docker的容器化技术,在一台服务器主机上同时搭载多个分布式深度学习系统。本发明专利技术的改进主要体现在三个方面:一是整个系统可以在一台服务器主机上实现,不需要用多主机,节省成本;二是容器通过模板镜像创建,过程简单,不需要重复搭建,避免出现错误浪费时间;三是服务器的CPU能最大化的利用,不再浪费硬件资源。

A distributed deep learning system based on Docker container and its construction methods and working methods

The invention relates to a distributed deep learning system based on Docker container, and the construction method and working method thereof, which includes a server host, the first distributed deep learning platform, and the second distributed deep learning platform. The invention uses the Docker technology to carry multiple distributed depth learning systems on a server host. The improvement of the invention is mainly embodied in three aspects: one is the whole system can be implemented on a server host, do not need to use the multi host, save the cost; two is the container through the template image creation, the process is simple, do not need to repeat construction, avoid bad waste of time; three is the CPU of the server can maximize the use of the hardware resources are no longer waste.

【技术实现步骤摘要】
一种基于Docker容器的分布式深度学习系统及其搭建方法、工作方法
本专利技术涉及一种基于Docker容器的分布式深度学习系统及其搭建方法、工作方法,属于云计算虚拟化

技术介绍
从本质上讲,云计算是指用户终端通过远程连接获取存储、计算、数据库等计算资源。虚拟化技术是云计算技术的核心组成之一,是将各种计算及存储资源充分整合和高效利用的关键技术,包括服务器虚拟化和桌面虚拟化。Docker作为新兴的轻量级虚拟化技术,与传统的VM相比,它更轻量,启动速度更快,单台硬件上可同时跑成百上千个容器,所以非常适合在业务高峰期通过启动大量容器进行横向扩展。目前深度学习平台多用单机处理,很少用到分布式的深度学习平台,首先分布式深度学习平台搭建比较复杂,所需要的硬件配置较多。但相较于单机的深度学习平台,分布式深度学习平台能更快的进行运算。目前市面上这些技术普遍存在如下问题:1)利用服务器做单机深度学习平台,CPU计算量足够,但是不能完全利用,造成资源浪费。2)分布式深度学习平台,需要多台主机搭建,每台主机的CPU计算量有限,想要搭建大规模平台所需主机数量大,费用高。3)分布式深度学习平台搭建过程繁琐,采用主机搭建方法,每台主机都需进行相同步骤。但重复相同步骤过程中会出现不同的错误,导致搭建进程缓慢。中国专利文献CN106657248A公开了一种基于Docker容器的网络负载均衡系统及其搭建方法、工作方法。采用Docker容器技术作为本系统的基础技术,利用Docker容器节约硬件资源能在一台服务器主机中创建大量容器的特点,在一台服务器主机上实现整套网络负载均衡系统;利用Docker容器能通过镜像秒级创建,并且通过镜像创建的容器能保证完全相同的特点,实现通过容器镜像方便快捷的添加Web服务器进行访问量或数据流的分流。但是,该专利存在以下缺陷:利用Dockerfile创建镜像时,不能可视化和测试镜像中的一些文件配置是否成功。
技术实现思路
针对现有技术的不足,本专利技术提供了一种基于Docker容器的分布式深度学习系统;本专利技术还提供了上述分布式深度学习系统的搭建方法及工作方法;本专利技术利用Docker的容器化技术,在一台服务器主机上同时搭载多个分布式深度学习系统。本专利技术的改进主要体现在三个方面:一是通过利用Docker的commit指令将配置好的容器生成镜像,实现可视化和测试镜像中的一些文件配置是否成功;二是整个系统可以在一台服务器主机上实现,不需要用多主机,节省成本;三是容器通过模板镜像创建,过程简单,不需要重复搭建,避免出现错误浪费时间;四是服务器的CPU能最大化的利用,不再浪费硬件资源。术语解释:1、Hadoop分布式平台,是指由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统HadoopDistributedFileSystem,简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的硬件上;而且它提供高吞吐量来访问应用程序的数据,适合那些有着超大数据集的应用程序。HDFS放宽了POSIX的要求,可以以流的形式访问文件系统中的数据。2、Spark,是指UCBerkeleyAMPlab所开源的类HadoopMapReduce的通用的并行计算框架,Spark基于mapreduce算法实现的分布式计算,拥有HadoopMapReduce所具有的优点;但不同于MapReduce的是Job中间输出和结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的mapreduce的算法。3、NameNode,管理文件系统的命名空间。它维护着文件系统树及整棵树内所有的文件和目录。这些信息以两个文件形式永久保存在本地磁盘上:命名空间镜像文件和编辑日志文件。NameNode也记录着每个文件中各个块所在的数据节点信息,但它并不永久保存块的位置信息,因为这些信息在系统启动时由数据节点重建。本专利技术的技术方案为:一种基于Docker容器的分布式深度学习系统,包括一台宿主机及多个Docker容器,宿主机上安装有Hadoop分布式平台、Spark,宿主机上还安装有第一分布式深度学习平台或第二分布式深度学习平台;每个Docker容器上安装有Hadoop分布式平台、Spark,每个Docker容器上还安装有第一分布式深度学习平台或第二分布式深度学习平台。服务器主机作为宿主机,作为整个平台的硬件支撑,第一分布式深度学习平台和第二分布式深度学习平台为两种现在可用的分布式深度学习平台,都由雅虎开源,是目前主流的分布式深度学习平台。第一分布式深度学习平台、第二分布式深度学习平台是用于帮助进行深度学习的工具,不同于单机深度学习平台;服务器主机作为整个分布式深度学习系统的硬件基础,需要拥有较高处理能力、稳定性、可靠性等方面要求。根据本专利技术优选的,所述宿主机的型号为DELLPowerEdgeR730,所述第一分布式深度学习平台的型号为CaffeOnSpark,所述第二分布式深度学习平台的型号为TensorFlowOnSpark。DELLPowerEdgeR730的服务器,配置为48核CPU、96G内存、8TB本地硬盘;Caffe、TensorFlow为目前最热门的两个单机深度学习平台,以Caffe、TensorFlow为基础的CaffeOnSpark、TensorFlowOnSpark为雅虎开源的基于Hadoop/Spark的分布式深度学习平台。上述基于Docker容器的分布式深度学习系统的搭建方法,具体步骤包括:(1)准备宿主机,宿主机即为所述服务器主机;安装Ubuntu14.04操作系统;Ubuntu14.04作为支持Docker的Linux操作系统中相对稳定的版本,可以用命令行直接安装配置Docker环境;(2)在宿主机根目录下建立Docker容器所需的主文件夹,主文件夹包括能够挂载的文件夹,用于保存进行深度学习所需要的训练模型、训练数据集、测试数据集、代码及配置文件;(3)在宿主机中安装Hadoop分布式平台、Spark;用以支持CaffeOnSpark分布式深度学习平台或TensorFlowOnSpark分布式深度学习平台;测试Hadoop分布式平台、Spark是否安装成功;如果安装成功,则进入步骤(4),否则,重复执行步骤(3);(4)在宿主机中安装型号为CaffeOnSpark的第一分布式深度学习平台或型号为TensorFlowOnSpark的第二分布式深度学习平台,配置该主节点的IP;系统运行时将该宿主机作为主节点;(5)在宿主机上创建一个空白容器;(6)在所述空白容器上安装Hadoop分布式平台、Spark;(7)在步骤(6)安装后的容器上安装型号为CaffeOnSpark的第一分布式深度学习平台或型号为TensorFlowOnSpark的第二分布式深度学习平台,配置该从节点的IP;系统运行时将该容器作为从节点;(8)通过Docker的commit指令以步骤(7)安装后的容器为模板创建镜像;(9)用步骤(8)创建的镜像创建多个Docker容器,并配置每个Docke本文档来自技高网
...
一种基于Docker容器的分布式深度学习系统及其搭建方法、工作方法

【技术保护点】
一种基于Docker容器的分布式深度学习系统,其特征在于,包括一台宿主机及多个Docker容器,宿主机上安装有Hadoop分布式平台、Spark,宿主机上还安装有第一分布式深度学习平台或第二分布式深度学习平台;每个Docker容器上安装有Hadoop分布式平台、Spark,每个Docker容器上还安装有第一分布式深度学习平台或第二分布式深度学习平台。

【技术特征摘要】
1.一种基于Docker容器的分布式深度学习系统,其特征在于,包括一台宿主机及多个Docker容器,宿主机上安装有Hadoop分布式平台、Spark,宿主机上还安装有第一分布式深度学习平台或第二分布式深度学习平台;每个Docker容器上安装有Hadoop分布式平台、Spark,每个Docker容器上还安装有第一分布式深度学习平台或第二分布式深度学习平台。2.根据权利要求1所述一种基于Docker容器的分布式深度学习系统,其特征在于,所述宿主机的型号为DELLPowerEdgeR730,所述第一分布式深度学习平台的型号为CaffeOnSpark,所述第二分布式深度学习平台的型号为TensorFlowOnSpark。3.根据权利要求1或2所述的一种基于Docker容器的分布式深度学习系统的搭建方法,其特征在于,具体步骤包括:(1)准备宿主机,宿主机即服务器主机;(2)在宿主机根目录下建立Docker容器所需的主文件夹,主文件夹包括能够挂载的文件夹,用于保存进行深度学习所需要的训练模型、训练数据集、测试数据集、代码及配置文件;(3)在宿主机中安装Hadoop分布式平台、Spark;测试Hadoop分布式平台、Spark是否安装成功;如果安装成功,则进入步骤(4),否则,重复执行步骤(3);(4)在宿主机中安装...

【专利技术属性】
技术研发人员:张舒吴大雷张秀真
申请(专利权)人:济南浚达信息技术有限公司
类型:发明
国别省市:山东,37

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

1