1. 服务器配置:在高可用的基础上,增加ResourceManger和NodeManger,因为192.168.1.6和192.168.1.7两个节点已经作为Name Node节点,因此将192.168.1.8和192.168.1.9作为ResourceManger节点,NodeManger管理的是DataNode的资源信息,因此和DataNode节点同机。
2. 按照教程,配置好高可用环境
https://blog.csdn.net/tiankongbubian/article/details/107440883
3. 在高可用基础上,实现192.168.1.8和192.168.1.9相互之间的ssh认证
- 生成密钥命令
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa //生成秘钥文件
- 本地安装ssh证书
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys //本地安装秘钥
- 测试本地ssh登录
ssh localhost
- 分发文件命令
cd ~/.ssh/ //切换到公钥所在目录
scp id_dsa.pub 192.168.1.9:`pwd`/node608.pub //将公钥发送到.9节点当前目录,并重命名公钥文件,以便区分是哪个服务器的公钥文件
- 安装证书命令
cat ~/.ssh/node608.pub >> ~/.ssh/authorized_keys //安装公钥文件
4. 在192.168.1.6上配置mapred-site.xml
- 将模板文件修改为正式文件(如果已经存在mapred-site.xml文件,可以直接跳过)
mv mapred-site.xml.template mapred-site.xml
- 修改配置内容
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
5. 在192.168.1.6上修改yarn-site.xml
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>cluster1</value>
</property>
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>192.168.1.8</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>192.168.1.9</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address.rm1</name>
<value>192.168.1.8:8088</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address.rm2</name>
<value>192.168.1.9:8088</value>
</property>
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>192.168.1.7:2181,192.168.1.8:2181,192.168.1.9:2181</value>
</property>
6. 将配置好的mapred-site.xml和yarn-site.xml文件,分别分发到192.168.1.7、192.168.1.8、192.168.1.9
scp yarn-site.xml mapred-site.xml 192.168.1.7:`pwd` //分发到当前目录,可根据实际情况调整目录
scp yarn-site.xml mapred-site.xml 192.168.1.8:`pwd` //分发到当前目录,可根据实际情况调整目录
scp yarn-site.xml mapred-site.xml 192.168.1.9:`pwd` //分发到当前目录,可根据实际情况调整目录
7. 启动程序
- 首先启动Zookeeper,在192.168.1.7、192.168.1.8、192.168.1.9分别执行启动命令
zkServer.sh start
- 其次启动HDFS,192.168.1.6执行以下命令
start-dfs.sh
- 再次启动yarn (启动nodemanager),192.168.1.6执行以下命令
start-yarn.sh
- 最后启动ResourceManger,在192.168.1.8、192.168.1.9分别执行启动命令
yarn-daemon.sh start resourcemanager
- 启动成功后,可以通过8088来访问MapReduce对应的可视化平台,我的配置访问地址是:http://192.168.1.8:8088
8. 关闭程序
- 关闭HDFS,在192.168.1.6执行以下命令:
stop-dfs.sh
- 停止nodemanager,在192.168.1.6执行以下命令
stop-yarn.sh
- 停止resourcemanager,在192.168.1.8、192.168.1.9执行以下命令
yarn-daemon.sh stop resourcemanager
- 停止Zookeeper,在192.168.1.7、192.168.1.8、192.168.1.9执行以下命令
zkServer.sh stop