1、必备软件
1.1、JDK1.6+
1.2、SSH
2、安装Hadoop
2.1、hadoop-1.2.1.tar.gz文件上传到/root目录
2.2、解压安装到当前目录 tar zxvf hadoop-1.2.1.tar.gz ./
2.3、创建软链接/home/hadoop-1.2
3、配置hadoop
node1是NameNode服务器
node2、node3是DataNode服务器
Secondary NameNode不能与NameNode同一服务器,所以
node2是Secondary NameNode服务器
3.1、进入hadoop-1.2/conf配置文件目录
3.2、配置core-site.xml(NameNode配置)
3.3、配置hdfs-site.xml
3.4、配置slaves(DataNode配置)
3.5、配置masters(Secondary NameNode配置)
3.6、配置hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_79
4、设置SSH免密码登陆
4.1 配置/etc/hosts后,可以使用SSH访问node2,node3,node4
4.2、生成秘钥 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
进入.ssh目录
id_dsa公钥(别人使用),id_dsa.pub私钥(自己使用)
4.3、执行命令 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 复制私钥到本地,至此可以免密码访问本地了
执行命令 ssh node1 成功
4.4、设置SSH免密码登陆node2
4.4.1、node2执行 生成秘钥 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 和 本地设置免密码登陆 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
4.4.2、拷贝node1的id_dsa.pub到node2
4.4.3、cat ~/id_dsa.pub >> ~/.ssh/authorized_keys 将从node1发送来的id_dsa.pub文件追加到~/.ssh/authorized_keys
node1执行ssh node2 可以免密码登陆了
同上给 node3 加上免登陆
5、启动Hadoop
5.1、node2,node3安装hadoop-1.2.1.tar.gz和建立软链接
tar zxvf hadoop-1.2.1.tar.gz
ln -sf /root/hadoop-1.2.1 /home/hadoop-1.2
5.2、要保证node1,node2,node3的/home/hadoop-1.2/conf配置文件相同,在node1执行命令:
cd /home/hadoop-1.2/conf/
scp ./* root@node2:/home/hadoop-1.2/conf/
scp ./* root@node3:/home/hadoop-1.2/conf/
5.3、启动
bin/hadoop namenode -format
启动hadoop-dfs.sh
bin/start-dfs.sh
注意:如果node2,node3未启动,是防火墙的问题,关闭或设置node1防火墙
关闭防火墙
systemctl stop firewalld.service
或
systemctl stop iptables.service
禁止防火墙启动
systemctl disable firewalld.service
或
systemctl enable iptables.service
Centos7关闭防火墙设置文章:http://blog.csdn.net/alex_bean/article/details/51463369
检查node1:
检查node2:
检查node3:
5.4、访问
设置主机访问
C:\Windows\System32\drivers\etc
192.168.10.1 node1
192.168.10.2 node2
192.168.10.3 node3
192.168.10.4 node4
NameNode - http://node1:50070/