说在前面的话
在安装Hadoop集群的时候,需要先配置好JDK环境,配置很简单,教程参见:Linux安装JDK环境
1、环境准备
事先准备好三台虚拟机(当然一台也无妨)主机名和ip分别为:
lantingshuxu –> ip:192.168.77.128【此主机作为主节点】
mini1 –> ip:192.168.77.129
mini2 –> ip:192.168.77.130
【注意,这三台机器的环境要保证一样(JDK安装目录、用户名等环境必须一样)】
可以通过一下的命令去修改主机名【主机名和下面的hosts配置的域名必须要一致!】
1 | vi /etc/sysconfig/network |
修改了主机名后,修改本地host
1 | vim /etc/hosts |
关闭防火墙 or 为防火墙添加白名单
1 | #查看防火墙状态 |
注意本地时间,需要同步各个主机的本地时间,如果不一致,运行MapReduce时会出异常
1 | #设置本地时间 |
2、下载Hadoop并解压
下载Hadoop
64位机器下载链接: https://pan.baidu.com/s/10ESl1QlK2rHscI-MZXv16w 密码: rkr4
32位机器下载链接:链接: https://pan.baidu.com/s/1pDECG9l_D-DbooMzhLrw4A 密码: ejpw。
下载到本地后,我们可以通过scp或者sftp工具(scp可以使用 git的gitbash命令工具,sftp可以使用 filezilla),将该tar.gz包上传到Linux上(假设我们上传到了/home/lanting/hadoop/下)然后解压。
1 | #scp上传命令 |
3、配置Hadoop
假设经过前面几步,我们已经将 hadoop-2.6.4.tar.gz 解压在了 /home/lanting/hadoop/hadoop-2.6.4 下,我们使用cd命令cd /home/lanting/hadoop/hadoop-2.6.4
,进入此文件夹下,然后接着向下的步骤走。
然后再进入 hadoop-2.6.4 下的 etc/hadoop 下 cd etc/hadoop
有几个配置文件需要修改,如下:
1)修改 hadoop-env.sh
1 | vi hadoop-env.sh |
2)修改 core-site.xml,在configuration标签中添加下面的配置
1 | <configuration> |
3)修改hdfs-site.xml(可选,不改也可以)在configuration标签中添加下面的配置
1 | <configuration> |
4)修改mapred-site.xml,在configuration标签中添加下面的配置
1 | #拷贝一份模板,并在模板上进行修改 |
5)修改yarn-site.xml,在configuration标签中添加下面的配置
1 | <configuration> |
4、将Hadoop配置到环境变量
1 | vim /etc/proflie |
5、格式化namenode
1 | hdfs namenode -format |
6、将配置复制给其他节点(如果只有一台,忽略此步骤)
以上的操作均在主节点主机 lantingshuxu 上操作,由于 mini1 和 mini2 也需要做相同的配置,并且 mini1 和 mini2 的环境和 lantingshuxu 相同,因此,我们只需要将配置好的配置文件直接复制过去即可。
1 | # 复制 hosts 到另外两台机器 |
7、配置“一键启动”
由于hadoop会有一个namenode和多个datanode,如果我们一个个去启动hadoop是非常麻烦的,我们可以在我的主节点上配置到另外几台的免密登录,直接通过脚本即可一次性启动,免密登录配置很简单,我的博客也有写详情见:Linux SSH免密登录配置。
免密登录配置成功后,我们可以在hadoop安装目录下的etc/hadoop下的slaves中添加我们需要启动的机器
1 | # 进入hadoop配置文件目录 |
8、启动
配置好后,我们就可以启动服务了。
1 | # 启动dfs服务和yarn服务 |
9、进入网页查看
启动成功后,我们可以通过浏览器 http://主节点ip:50070 (HDFS管理界面) 去查看我们的hdfs。