目录

  • 前言
  • 一、Hadoop集群配置历史服务器
  • 二、配置日志的聚集
  • 三、集群启动/停止方式总结
  • 四、编写Hadoop集群常用脚本
  • 五、常用端口号说明
  • 最后

前言

这篇文章内容覆盖了Hadoop集群中一些重要且常用的配置和管理任务。首先,我们将介绍如何配置Hadoop集群的历史服务器,这对于查看和分析任务的历史信息非常有帮助。其次,我们将探讨如何配置日志的聚集和管理,以便有效地监控和故障排查集群。然后,我们将总结集群的启动和停止方式,包括常见的启动脚本和命令。接下来,我们将给出一些编写Hadoop集群常用脚本的建议和实例。最后,我们将简要介绍Hadoop集群中常用的端口号,并解释其作用。

一、Hadoop集群配置历史服务器

配置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>

启动历史服务器:bin/mapred --daemon start historyserver

[amo@hadoop104 hadoop-3.2.4]$ bin/mapred --daemon start historyserver
[amo@hadoop104 hadoop-3.2.4]$ jps
2066 SecondaryNameNode
26628 NodeManager
1977 DataNode
26889 Jps
26860 JobHistoryServer

查看jobhistory
http://hadoop102:19888/jobhistory/Hadoop集群配置与管理指南-LMLPHP

二、配置日志的聚集

日志聚集概念:应用运行完成以后,将程序运行日志信息上传到HDFS系统上。

日志聚集功能好处:可以方便的查看到程序运行详情,方便开发调试。
注意:开启日志聚集功能,需要重新启动NodeManager 、ResourceManager和HistoryServer。

开启日志聚集功能具体步骤如下:

  1. 配置 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>
  1. 分发yarn-site.xml 文件到hadoop103、hadoop104
    xsync yarn-site.xml

  2. 关闭NodeManager/ResourceManager
    sbin/stop-yarn.sh

  3. 关闭historyserver
    mapred --daemon stop historyserver

  4. 启动NodeManager/ResourceManager
    sbin/start-yarn.sh

  5. 启动historyserver
    mapred --daemon start historyserver

  6. 测试,执行wordcount
    hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.4.jar wordcount /input /output

  • 任务列表
    Hadoop集群配置与管理指南-LMLPHP
  • 任务运行日志
    Hadoop集群配置与管理指南-LMLPHP
  • 日志详情
    Hadoop集群配置与管理指南-LMLPHP

三、集群启动/停止方式总结

  1. 各个模块分开启动/停止(配置ssh是前提)常用
    • 整体启动/停止HDFS
      start-dfs.sh/stop-dfs.sh
    • 整体启动/停止YARN
      start-yarn.sh/stop-yarn.sh
  2. 各个服务组件逐一启动/停止
    • 分别启动/停止HDFS组件
      hdfs --daemon start/stop namenode/datanode/secondarynamenode
    • 启动/停止YARN
      yarn --daemon start/stop resourcemanager/nodemanager

四、编写Hadoop集群常用脚本

1)Hadoop集群启停脚本(包含HDFS,Yarn,Historyserver):myhadoop.sh

[amo@hadoop102 ~]$ cd /home/amo/bin
[amo@hadoop102 bin]$ vim myhadoop.sh

⦁ 输入如下内容

#!/bin/bash

if [ $# -lt 1 ]
then
    echo "No Args Input..."
    exit ;
fi

case $1 in
"start")
        echo " =================== 启动 hadoop集群 ==================="

        echo " --------------- 启动 hdfs ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.2.4/sbin/start-dfs.sh"
        echo " --------------- 启动 yarn ---------------"
        ssh hadoop103 "/opt/module/hadoop-3.2.4/sbin/start-yarn.sh"
        echo " --------------- 启动 historyserver ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.2.4/bin/mapred --daemon start historyserver"
;;
"stop")
        echo " =================== 关闭 hadoop集群 ==================="

        echo " --------------- 关闭 historyserver ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.2.4/bin/mapred --daemon stop historyserver"
        echo " --------------- 关闭 yarn ---------------"
        ssh hadoop103 "/opt/module/hadoop-3.2.4/sbin/stop-yarn.sh"
        echo " --------------- 关闭 hdfs ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.2.4/sbin/stop-dfs.sh"
;;
*)
    echo "Input Args Error..."
;;
esac

⦁ 保存后退出,然后赋予脚本执行权限
chmod 777 myhadoop.sh
2)查看三台服务器Java进程脚本:jpsall

[amo@hadoop102 ~]$ cd /home/amo/bin
[amo@hadoop102 bin]$ vim jpsall

⦁ 输入如下内容

#!/bin/bash

for host in hadoop102 hadoop103 hadoop104
do
        echo =============== $host ===============
        ssh $host jps 
done

⦁ 保存后退出,然后赋予脚本执行权限
chmod 777 jpsall
3)分发/home/atguigu/bin目录,保证自定义脚本在三台机器上都可以使用
xsync bin/

五、常用端口号说明

最后

希望本篇文章能帮助你更好地理解和应用Hadoop集群的配置与管理方法,从而提高数据处理和分析的效率和可靠性。祝你在Hadoop集群的配置和管理中取得成功!

03-10 01:06