一、实验环境(实验设备)
硬件:单核CPU、内存1G 软件:Ubuntu 16.04操作系统、Docker、Hadoop
二、实验原理及内容
1.在Ubuntu系统中安装Docker
Apt install docker
复制代码

Apt-get install docker.io
复制代码

2.Docker 安装 hadoop
1).查找hadoop 镜像

2)将镜像pull下

3)通过docker images命令查看hadoop镜像是否pull成功

4)先通过命令
docker run -i -t --name Master -h Master -p 50070:50070 sequenceiq/hadoop-docker /bin/bash
复制代码
运行一个hadoop镜像作为hadoop集群的namenode

再分别创建两个该hadoop集群的datanode
docker run -i -t --name Slave1 -h Slave1 sequenceiq/hadoop-docker /bin/bash
docker run -i -t --name Slave2 -h Slave2 sequenceiq/hadoop-docker /bin/bash
复制代码

这样hadoop的集群环境搭建完成。
3.hadoop三个节点之间无秘ssh配置
1)进入Master容器里面运行/etc/init.d/sshd start开启ssh,然后使用命令ssh-keygen -t rsa生成秘钥,最后将秘钥保存到authorized_keys中。

其余结点做相同操作。 进入3者查看ip信息 Master

Slave1

Slave2

4.hadoop的配置 由于hadoop集群环境已经搭建完成,我们只需更改Master节点上的hadoop配置文件,然后使用scp命令发送到其余各节点进行覆盖配置。 1)core-site.xml 配置

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://had0:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/data/hadoopdata</value>
</property>
</configuration>
复制代码
2)hdfs-site.xml配置

<property>
<name>dfs.namenode.name.dir</name>
<value>/home/data/hadoopdata/name</value>
</property>
  <!--配置存储namenode数据的目录-->
  <property>
<name>dfs.datanode.data.dir</name>
<value>/home/data/hadoopdata/data</value>
</property>
  <!--配置存储datanode数据的目录-->
  <property>
<name>dfs.replication</name>
<value>2</value>
</property>
  <!--配置部分数量-->
复制代码
3)mapred-site.xml配置

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>  <!--配置mapreduce任务所在的资源调度平台-->
</configuration>
复制代码
4)yarn-site.xml配置

<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>slave1</value>
</property>
<!--配置yarn主节点-->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!--配置执行的计算框架-->
</configuration>
复制代码
然后使用命令scp将该配置分发到其余两个节点,至此hadoop的配置完成

5.hadoop的运行 在Master中进入/usr/local/hadoop-2.7.0/sbin文件夹下执行命令./start-all.sh来启动该hadoop集群

成功启动之后使用命令jps查看是否启动

本文介绍了如何在Ubuntu16.04操作系统上利用Docker安装和配置Hadoop集群。首先通过Apt安装Docker,然后拉取并运行Hadoop镜像创建Master和两个DataNode。接着,配置各节点间的无密SSH连接,并修改Hadoop的配置文件,包括core-site.xml、hdfs-site.xml、mapred-site.xml和yarn-site.xml。最后,启动Hadoop集群并通过jps检查服务状态。
3620

被折叠的 条评论
为什么被折叠?



