Hadoop2OnLinuxCluster
本文主要是讲如何在Linux系统下安装部署Hadoop集群。
环境说明
- 三台Linux机器(SUSE)
- JDK1.8(提前下载好对应的tar.gz)
- Hadoop2.7.2(提前下载好对应的tar.gz)
以下所有配置需要在每个主机上都进行,但按照本文配置,可以配置一个以后复制过去,不用任何修改。另外,本文是精简配置,如果想了解更多配置参数,可参考另一篇博文或查看官网左下角的配置文件。
1. 同步时间
集群上的机器需要进行时间同步,不然运行MR任务时会报错。一般集群机器不能联网,手动修改每台机器时间。
2. 关闭防火墙
如果机器上正在运行防火墙,需要把它关上。
但以上命令只会当次机器运行有效,机器重启又会无效,如需要,可使用如下命令:
3. 配置Host文件
首先,要先给所有机器分配好IP和hostname,hadoop会根据主机名去/etc/hosts文件中查找对应的ip。注意此处的ip和hostname,切记全文替换为自己的。
4. 配置SSH互信
为了使集群之间无密码访问(为了以后集群通信时不用每次都输入密码),需要在机器之间配置互信(只要确保能从master无密码访问slave就好了)。配置互信前请确保已经安装并启动了ssh服务。
5. 安装JDK和Hadoop
Hadoop是用java开发的,Hadoop的编译和MR的运行都需要使用JDK,所以JDK是必须安装的。
6. 修改Hadoop配置文件
配置文件都在${HADOOP_HOME}/etc/hadoop目录下。
6.1 配置slave文件
vim slave
,写入ip或hostname。
6.2 配置hadoop-env.sh
检查并确认该文件中有如下配置:export JAVA_HOME=${JAVA_HOME}
,但有时${JAVA_HOME}
并不能生效,可选择性修改为对应的目录。
6.3 配置core-site.xml
|
|
6.4 配置hdfs-site.xml
|
|
6.5 配置mapred-site.xml
将mapred-site.xml.template重命名为mapred-site.xml,然后修改。
6.6 配置yarn-site.xml
|
|
7. 配置其他节点
至此,master节点上必要的配置完成,这时可以复制到其他两个机器上。
8. 启动验证
至此,所有配置完成,可以启动Hadoop了。
在第一次启动前,必须先格式化namenode:hadoop namenode -format
。
然后,通过${HADDDOP_HOME}/sbin/start-all.sh
启动Hadoop。
之后,通过jsp
在master节点上,应该可以看到以下五个进程:
在slave节点上,应该可以看到以下两个进程:
以上进程缺一不可,缺少的说明启动失败,可以通过查看日志查明失败原因进行修正。
正常启动以后,还可以通过Web UI查看相应的UI界面。
- RM的Web UI:
http://${RM节点IP}:8088
,即Master节点 - NM的Web UI:
http://${NM节点IP}:50070
,所有节点都有
以上列出的Web UI访问地址,是默认的配置地址,具体的配置详解、各组件的命令和UI使用,参见下一篇博文。