您的位置:首页 > 运维架构 > Docker

docker应用-3(搭建hadoop以及hbase集群)

2017-04-28 09:29 489 查看
要用docker搭建集群,首先需要构造集群所需的docker镜像。构建镜像的一种方式是,利用一个已有的镜像比如简单的linux系统,运行一个容器,在容器中手动的安装集群所需要的软件并进行配置,然后commit容器到新的镜像。另一种方式是,使用Dockerfile来自动化的构造镜像。

下面采用第二种.


1.创建带ssh服务的ubuntu14.04系统镜像

使用ubuntu14系统来安装hadoop和hbase,由于hadoop集群机器之间通过ssh通信,所以需要在ubuntu14系统中安装ssh服务。

编写Dockerfile如下:



创建好的系统镜像位于:https://hub.docker.com/r/debugman007/ubt14-ssh/

Dockerfile位于:https://github.com/gtarcoder/dockerfiles/blob/master/ubt14-ssh/Dockerfile


2.创建hadoop和hbase基本镜像

编写Dockerfile如下:

创建好的镜像位于:https://hub.docker.com/r/debugman007/ubt14-hadoop-hbase/

Dockerfile位于:https://github.com/gtarcoder/dockerfiles/blob/master/ubt14-hadoop-hbase/Dockerfile


3.给hadoop,hbase镜像进行配置

Dockerfile如下:

除了Dockerfile文件,还需要hadoop和hbase的一些配置文件,包括core-site.xml,hadoop-env.sh,hbase-env.sh,hbase-site.xml,hdfs-site.xml,mapred-env.sh,regionservers,slaves,yarn-env.sh,yarn-site.xml等。

创建好的镜像位于:https://hub.docker.com/r/debugman007/ubt14-hadoop-hbase/

Dockerfile以及配置文件位于:https://github.com/gtarcoder/dockerfiles/tree/master/ubt14-hadoop-hbase-v1


4.启动

(1)启动一个容器作为hadoopmaster节点:

dockerrun-it--namehadoop-master-hhadoop-master-d-P-p50070:50070-p8088:8088debugman007/ubt14-hadoop-hbase:v1


(2)启动三个容器作为hadopslave节点

dockerrun-it--namehadoop-slave1-hhadoop-slave1debugman007/ubt14-hadoop-hbase:v1


三个容器名和容器内的主机名分别设为hadoop-slave1,hadoop-slave2,hadoop-slave3.

(3)设置各个节点的/etc/hosts文件

编辑一个run_hosts.sh脚本文件,用来设置各个节点的名称解析。假设hadoop-master容器内的IP地址为10.0.1.2,hadoop-slave1/2/3的IP地址分别为10.0.1.3/4/5.

在hadoop-master和hadoop-salve1/2/3容器中都执行该脚本。

(4)进入hadoop-master容器

dockerexec-ithadoop-masterbash


然后在容器内/usr/local/hadoop/sbin目录下执行:
hdfsnamenode-format
./start-dfs.sh
./start-yarn.sh


启动hadoop服务。

在容器内执行start-hbase.sh启动hbase服务。

(5)在hadoop-master节点和hadoop-slave节点内查看服务是否正常启动

在各个节点容器内都执行jps查看,发现在mster节点中出现

Jps,ResourceManager,NameNode,SecondaryNamenode,HMaster等服务;

在slave节点中出现Jps,DataNode,NodeManager,HRegionServer等服务。

出现以上服务,说明集群正常启动。

参考:
http://blog.csdn.net/god_wot/article/details/52550657http://blog.csdn.net/god_wot/article/details/52554313
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: