资讯专栏INFORMATION COLUMN

Hadoop on Docker

fizz / 1484人阅读

摘要:是源码,要编译才能用。的是给位机器用的,想在位机器上用只能用编译的。解压配置环境变量在和中添加环境变量添加环境变量修改修改修改文件修改在文件中添加镜像启动集群进入到每个节点执行每个节点配置查看地址配置启动查看参考

docker安装

安装

yum install -y epel-releas
yum install docker-io

加入开机启动

chkconfig docker on

启动docker

service docker start

拉取基础镜像 centos

centos镜像

sudo docker pull insaneworks/centos

制作Hadoop镜像

进入centos容器

sudo docker run -it -h master --name master insaneworks/centos /bin/bash

装gcc

yum install -y gcc

装vim

yum install -y vim

装lrzsz

yum install -y lrzsz

装ssh

yum -y install openssh-server

yum -y install openssh-clients

修改ssh配置

vim /etc/ssh/sshd_config

放开 PermitEmptyPasswords no

更改 UsePAM no

放开 PermitRootLogin yes

启动sshd

service sshd start

ssh密码设置

ssh-keygen -t rsa -P "" -f ~/.ssh/id_dsa

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

ssh连master

ssh master    

安装java

在docker容器中安装Java(从宿主机向docker容器中拷贝文件)

安装tar

yum install -y tar

下载Hadoop

http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.8.2/hadoop-2.8.2.tar.gz    

tar.gz是已经编译好的了,解压改改配置文件就能用。src.tar.gz是源码,要编译才能用。tar.gz的是给32位机器用的,想在64位机器上用只能用编译的。

解压

tar zxvf hadoop-2.8.2.tar.gz

配置环境变量

export HADOOP_HOME=/home/hadoop/hadoop-2.8.2
export PATH=$JAVAHOME/bin:$HADOOP_HOME/bin:$PATH

hadoop-env.shyarn-env.sh中添加环境变量

vim hadoop-env.sh
vim yarn-env.sh

添加环境变量
export JAVA_HOME=/usr/java/jdk1.7.0_75

修改 hadoop core-site.xml



fs.defaultFS
hdfs://master:9000


io.file.buffer.size
131702


hadoop.tmp.dir
file:/mnt/hadoop-2.8.2/tmp

   

修改hdfs-site.xml



dfs.namenode.name.dir
file:/mnt/hadoop-2.8.2/dfs/name


dfs.datanode.data.dir
file:/mnt/hadoop-2.8.2/dfs/data


dfs.replication
2


dfs.namenode.secondary.http-address
master:9001


dfs.webhdfs.enabled
true

修改mapred-site.xml文件



mapreduce.framework.name
yarn


mapreduce.jobhistory.address
master:10020


mapreduce.jobhistory.webapp.address
master:19888


修改yarn-site.xml



yarn.nodemanager.aux-services
mapreduce_shuffle


yarn.nodemanager.auxservices.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler


yarn.resourcemanager.address
master:8032


yarn.resourcemanager.scheduler.address
master:8030


yarn.resourcemanager.resource-tracker.address
master:8031


yarn.resourcemanager.admin.address
master:8033


yarn.resourcemanager.webapp.address
master:8088


yarn.nodemanager.resource.memory-mb
1024

slaves文件中添加

slave1
slave2
slave3

ldd

yum install -y wget

wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz

tar zxvf glibc-2.14.tar.gz

cd glibc-2.14

mkdir build

cd build

../configure --prefix=/usr/local/glibc-2.14

make

make install

ln -sf /usr/local/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6

ldd /home/hadoop/hadoop-2.6.0/lib/native/libhadoop.so.1.0.0

commit镜像

docker commit master hadoop

启动hadoop集群

docker rm master

sudo docker run -it -p 50070:50070 -p 19888:19888 -p 8088:8088 -h master --name master hadoop /bin/bash

sudo docker run -it -h slave1 --name slave1 hadoop /bin/bash

sudo docker run -it -h slave2 --name slave2 hadoop /bin/bash

sudo docker run -it -h slave3 --name slave3 hadoop /bin/bash
    

进入到每个节点执行

source /etc/profile

service sshd start

每个节点配置hosts

查看IP地址
docker inspect --format="{{.NetworkSettings.IPAddress}}" master

配置hosts
172.42.0.42 master

172.42.0.46  slave1

172.42.0.47  slave2

172.42.0.48  slave3

启动hadoop

./sbin/start-all.sh

查看

jps  

参考:

http://blog.csdn.net/xu470438000/article/details/50512442
http://www.tashan10.com/yong-dockerda-jian-hadoopwei-fen-bu-shi-ji-qun/
http://www.thebigdata.cn/Hadoop/30208.html
http://www.cnblogs.com/songfy/p/4716431.html

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27097.html

相关文章

  • 基于Docker搭建Hadoop集群之升级版

    摘要:总之,项目还算很受欢迎吧,这篇博客将介绍项目的升级版。一项目介绍将打包到镜像中,就可以快速地在单个机器上搭建集群,这样可以方便新手测试和学习。之前的版本使用为集群提供服务,由于网络功能更新,现在并不需要了。运行参考第二部分启动,并运行。 摘要: kiwenlau/hadoop-cluster-docker是去年参加Docker巨好玩比赛开发的,得了二等奖并赢了一块苹果手表,目前这个项目...

    Zoom 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<