Hadoop:Hadoop-3.0.0-alpha1 http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-3.0.0-alpha1/hadoop-3.0.0-alpha1.tar.gz
jdk:jdk_1.8.0_121 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Ubuntu16.04LTS(未在root权限下搭建)
节点:namenode 192.168.1.121
datanode 192.168.1.124
datanode 192.168.1.125
第一步:安装jdk
(1)选择一个路径(/usr/lib/jvm 其中jvm是我自己创建)将jdk的gz包移动到该目录下
(2)然后在该目录下:tar zxvf jdk-*-tar.gz
(3)配置环境变量vim ~/.bashrc
export JAVA_HOME=/usr/lib/jvm/java1.8.0_121(相应的jdk版本号)
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
(4)source ~/.bashrc 使配置生效
(5)使用java -version 检查是否成功
第二步先配置好ssh免密登录
(1)首先设置好主机名称在/etc/hostname里面设置
设置好hosts 在/etc/hosts下设置 (设置 hostname-ip的映射)
注意:在每个节点下我都不是在root权限下操作。
用户名 主机名(hostname) IP
Leename Lee-Master 192.168.1.121
Leedata1 Lee-Slaves1 192.168.1.124
Leedata2 Lee-Slaves2 192.168.1.125
(用户名在配置workers和ssh使用)
(2)使用检查ssh是否已经安装否则使用apt-get install ssh
(3)执行命令生成密钥:ssh-keygen –t rsa 一直回车
(4)cd ~/.ssh文件夹中观察生成的文件
(5)将生成的公钥id_rsa.pub内容追加到authorized_keys (执行命令:cat id_rsa.pub >> authorized_keys)
(6)可使用ssh localhost判断是否成功
(7)节点间的互相免密登录:
前面步骤一样,后面在DataNode中将生成的公钥都发送到名称节点NameNode中执行命令:scp id_rsa.pub 用户名@主机名(或者ip):/tmp/id_rsa.pub.d1(d1是在传过 来后命名,表示是节点一的,自己设置,传输到tmp是因为不能直接传输到相应文件夹下)
然后 mv /tmp/id_rsa.pub.d1~/.ssh
同样 catid_rsa.pub.d1 >> authorized_keys
这样就完成了一个节点的免密访问
其他节点均是如此。
(8)将NameNode的authorized_keys 文件通过scp复制到所有的节点上,就实现了所有节点之间的免密登录。
第三步:配置Hadoop
1.core-site.xml文件配置(均为vim)
2.hdfs-site.xml 配置
3.workers配置
leename@Lee-Master
leedata1@Lee-Slaves1
leedata2@Lee-Slaves2
4.配置 mapred-site.xml
该步参考博客:http://blog.csdn.net/u010499619/article/details/52886872
先执行:cp mapred-site.xml.template mapred-site.xml
/opt/hadoop-3.0.0-alpha1/etc/hadoop,
/opt/hadoop-3.0.0-alpha1/share/hadoop/common/*,
/opt/hadoop-3.0.0-alpha1/share/hadoop/common/lib/*,
/opt/hadoop-3.0.0-alpha1/share/hadoop/hdfs/*,
/opt/hadoop-3.0.0-alpha1/share/hadoop/hdfs/lib/*,
/opt/hadoop-3.0.0-alpha1/share/hadoop/mapreduce/*,
/opt/hadoop-3.0.0-alpha1/share/hadoop/mapreduce/lib/*,
/opt/hadoop-3.0.0-alpha1/share/hadoop/yarn/*,
/opt/hadoop-3.0.0-alpha1/share/hadoop/yarn/lib/*
5.yarn.site.xml
6.hadoop-env.sh配置
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_121
第四步:
将配置好的Hadoop发送到各个节点下。
执行命令:scp hadoop-3.0.0-alpha1 用户名@主机名(或者ip):/tmp
然后mv hadoop-3.0.0-alpha1 /opt
配置完成
第五步测试:
1.格式化namenode
bin/hdfs namenode –format
2. 启动dfs和yarn
sbin/start-dfs.sh
sbin/start-yarn.sh
3.打开页面http://192.168.1.121:8088及http://192.168.1.121:9870 查看是否成功