@[toc]
3.Hadoop运行模式
3.6配置历史服务器
为了查看程序的历史运行情况,需要配置一下历史服务器。具体配置步骤如下:
3.6.1配置mapred-site.xml
配置前记得将yarn关闭
- [summer@hadoop103 hadoop-3.1.3]$ sbin/stop-yarn.sh
- [summer@hadoop102 hadoop]$ vim mapred-site.xml
在该文件里面增加如下配置
<!-- 历史服务器端地址 -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop102:10020</value>
</property>
<!-- 历史服务器web端地址 -->
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop102:19888</value>
</property>
3.6.2分发配置
- [summer@hadoop102 hadoop]$ xsync mapred-site.xml
3.6.3启动yarn
- [summer@hadoop103 hadoop-3.1.3]$ sbin/start-yarn.sh
记得是在hadoop103上启动
3.6.4在hadoop102启动历史服务器
- [summer@hadoop102 hadoop-3.1.3]$ bin/mapred --daemon start historyserver
3.6.5查看历史服务器是否启动
- [summer@hadoop102 hadoop-3.1.3]$ jps
有这个就说明历史服务器启动成功了
3.6.6查看JobHistory
完成了!
3.7配置日志的聚集
日志聚集概念:应用运行完成以后,将程序运行日志信息上传到HDFS系统上
日志聚集功能好处:可以方便的查看到程序运行详情,方便开发调试。
注意:开启日志聚集功能,需要重新启动NodeManager 、ResourceManager和HistoryServer。
开启日志聚集功能具体步骤如下:
3.7.1配置yarn-site.xml
当出现这个是时候是说明日志还没有配置
- [summer@hadoop102 hadoop]$ vim yarn-site.xml
在该文件里面增加如下配置
<!-- 开启日志聚集功能 -->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
<!-- 设置日志聚集服务器地址 -->
<property>
<name>yarn.log.server.url</name>
<value>http://hadoop102:19888/jobhistory/logs</value>
</property>
<!-- 设置日志保留时间为7天 -->
<property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>604800</value>
</property>
3.7.2分发配置
- [summer@hadoop102 hadoop]$ xsync yarn-site.xml
3.7.3关闭NodeManager 、ResourceManager和HistoryServer
- [summer@hadoop102 hadoop]$ mapred --daemon stop historyserver
- [summer@hadoop103 hadoop-3.1.3]$ sbin/stop-yarn.sh
3.7.4启动NodeManager 、ResourceManage和HistoryServer
- [summer@hadoop102 hadoop-3.1.3]$ mapred --daemon start historyserver
- [summer@hadoop103 hadoop-3.1.3]$ sbin/start-yarn.sh
3.7.5删除HDFS上已经存在的文件
- [summer@hadoop102 hadoop-3.1.3]$ hadoop fs -rm -r /output
Deleted /output
- [summer@hadoop102 hadoop-3.1.3]$ hadoop fs -rm -r /testoutput
Deleted /testoutput
- [summer@hadoop102 hadoop-3.1.3]$ hadoop fs -rm -r /output1
Deleted /output1
- [summer@hadoop102 hadoop-3.1.3]$ hadoop fs -rm -r /jdk-8u212-linux-x64.tar.gz
Deleted /jdk-8u212-linux-x64.tar.gz
3.7.6执行WordCount程序
因为刚配置好日志,所以需要再次执行wordcount程序才可以看到日志文件
- [summer@hadoop102 hadoop-3.1.3]$ hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount /testinput /output1
3.7.7查看日志
再次点击logs就会出现这种情况
3.8集群启动/停止方式总结
3.8.1各个模块分开启动/停止(配置ssh是前提)常用
3.8.1.1整体启动/停止HDFS
start-dfs.sh/stop-dfs.sh
3.8.1.2整体启动/停止YARN
start-yarn.sh/stop-yarn.sh
3.8.2各个服务组件逐一启动/停止
当在一台服务器上不小心杀死一个JobHistoryServer、NodeManager、DataNode、NameNode的某一个,可以使用下面的方法来启动,用上面的方法的话还需要将每台都关闭再整体启动,而下面的方式则不用。
3.8.2.1分别启动/停止HDFS组件
hdfs --daemon start/stop namenode/datanode/secondarynamenode
3.8.2.2启动/停止YARN
yarn --daemon start/stop resourcemanager/nodemanager