前期准备
准备四个已经装好java的虚拟机
先将hadoop包上传,再解压
[root@localhost downloads]# tar -zxvf hadoop-2.7.7.tar.gz -C ../soft/
重命名,
[root@localhost soft]# mv hadoop-2.7.7/ hadoop
配置环境变量,
[root@localhost soft]# vim /etc/profile
使环境变量生效,
[root@localhost soft]# source /etc/profile
查看Hadoop版本,
[root@localhost soft]# hadoop version
搭建完全分布式
修改主机名
[root@localhost soft]# vim /etc/hostname
修改主机名后,需要重启机器才会生效
修改hosts文件,
[root@localhost soft]# vim /etc/hosts
将所有的主机都准备好,配置所有主机之间ssh免密登录,
生成公钥和私钥,
[root@s201 ~]# ssh-keygen # 一路回车
将公钥拷贝到别的机器上,包括自己,
[root@s201 .ssh]# ssh-copy-id s201
测试,
所有机器都完成以后,进行下一步,文件配置,
(以下所有配置文件还可以配置其他选项,看自己需求)
core-site.xml
[root@s201 soft]# vim hadoop/etc/hadoop/core-site.xml
hdfs-site.xml
[root@s201 soft]# vim hadoop/etc/hadoop/hdfs-site.xml
mapred-site.xml
# 原文件中没有这个文件,需要重命名
[root@s201 soft]# cp hadoop/etc/hadoop/mapred-site.xml.template hadoop/etc/hadoop/mapred-site.xml
[root@s201 soft]# vim hadoop/etc/hadoop/mapred-site.xml
yarn-site.xml
[root@s201 soft]# vim hadoop/etc/hadoop/yarn-site.xml
slaves (内容是作为datanode的节点)
[root@s201 soft]# vim hadoop/etc/hadoop/slaves
hadoop-env.sh
[root@s201 soft]# vim hadoop/etc/hadoop/hadoop-env.sh
文件都配置完成后,将配置文件发送到各个机器上,
[root@s201 soft]# scp -r hadoop/etc/hadoop/ root@s202:/lrx/soft/hadoop/etc/
[root@s201 soft]# scp -r hadoop/etc/hadoop/ root@s203:/lrx/soft/hadoop/etc/
[root@s201 soft]# scp -r hadoop/etc/hadoop/ root@s204:/lrx/soft/hadoop/etc/
完成后,格式化文件系统,
[root@s201 soft]# hadoop namenode -format
启动集群
[root@s201 soft]# start-all.sh
查看是否启动成功,
s201是主节点
s202,s203,s204 都是数据节点
完成!
如有错误,欢迎交流!