<configuration>
<property>
<!-指定Mapreduce运行在yarn上-->
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
2.5、yarn-site.xml
<configuration> <!-- 指定ResourceManager的地址--> <property> <name>yarn.resourcemanager.hostname</name> <value>mip</value> </property> <!-- 指定reducer获取数据的方式--> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.local-dirs</name> <value>file:///data/hadoop/yarn/nm</value> </property>
分析:
mip:在主节点的mip就是自己的ip,而所有从节点的mip是主节点的ip。
2.6、创建上面配置的目录
sudo mkdir -p /data/hadoop/hdfs/nn sudo mkdir -p /data/hadoop/hdfs/dn sudo mkdir -p /data/hadoop/hdfs/snn sudo mkdir -p /data/hadoop/yarn/nm
一定要设置成:sudo chmod -R 777 /data
三、全分布式集群搭建测试3.1、运行环境
有三台ubuntu服务器(ubuntu 17.04):
主机名:udzyh1 IP:1.0.0.5 作为主节点(名字节点)
主机名:server1 IP:1.0.0.3 作为从节点(数据节点)
主机名:udzyh2 IP:1.0.0.7 作为从节点(数据节点)
jdk1.8.0_131
hadoop 2.8.1
3.2、服务器集群的启动与关闭
名字节点、资源管理器:这是在主节点中启动或关闭的。
数据节点、节点管理器:这是在从节点中启动或关闭的。
MR作业日志管理器:这是在主节点中启动或关闭的。
3.3、效果
在主节点:udzyh1中
在从节点:server1中
在从节点:udzyh2中
我们在主节点的web控制页面中:http:1.0.0.5:50070中查看到两个从节点
说明配置成功
3.4、监控平台
四、Hadoop全分布式集群配置免密登录实现主节点控制从节点
配置这个是为了实现主节点管理(开启和关闭��从节点的功能:
我们只需要在主节点中使用start-dfs.sh/stop-dfs.sh就能开启或关闭namenode和所有的datanode,使用start-yarn.sh/stop-yarn.sh就能开启或关闭resourcemanager和所有的nodemanager。
4.1、配置主从节点之间的免密登录
1)在所有的主从节点中执行
如果以前配置过免密登录的话,建议删除重新建立过,因为我们需要配置的是多台服务器:
rm -r ~/.ssh
执行ssh-keygen为了在主节点中生成公钥和私钥,在从从节点生成.ssh目录
2)在主节点中执行
scp ~/.ssh/id_rsa.pub 从节点的用户名@从节点ip:~
注意:第一次远程连接的话,首先输入yes,然后是从节点密码
3)在所有的从节点中执行
我们把主节点的公钥已经拿到了所有的从节点中,接下来就是:
cat id_rsa.pub>>.ssh/authorized_keys当中
在从节点:1.0.0.3
在从节点1.0.0.7
4)测试
我们可以查看他们是用户名相同的,所以可以直接使用ssh 1.0.0.3远程连接
4.2、实现主节点控制从节点
1)在主节点中
打开vi /opt/hadoop/etc/hadoop/slaves
把它删掉,然后配置上所有从节点的主机名
注意:这样配置的前提是主节点要能免密登录到从节点中
当你去执行start-dfs.sh时,它会去slaves文件中去找从节点(这就是配置免密登录的原因)
然后去启动从节点。同时自己也需要做免密登录也就是说要自己对自己做免密登录.
2)在主节点中
cat .ssh/id_rsa.pub >> .ssh/authorized_keys
3) 测试
ssh 127.0.0.1
注意:在主节点执行start-dfs.sh中主节点的用户名必须和所有从节点的用户名相同。因为那个服务器执行这个脚本