• HDFS 常见的运维技巧汇总


    前言

    本文隶属于专栏《大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!

    本专栏目录结构和参考文献请见大数据技术体系


    正文

    Hadoop 是一个大型的分布式系统,在实际运行中不免会出现一些问题,这些都增加了 Hadoop 运维的难度。

    下面汇总一些常见的 Hadoop 运维技巧(不定期更新)。


    查看日志

    日志是 Hadoop 运维最重要的依据,无论遇到什么异常情况,通常首先做的就是查看日志。

    下面介绍日志的存放路径。

    • NameNode 当天日志路径:$HADOOP_HOME/logs/hadoop-hadoop-namenode-master.log。
    • ResourceManager 当天日志路径:$HADOOP_HOME/logs/hadoop-hadoop-resourcemanager-master.log
    • DataNode 当天日志路径:$HADOOP_HOME/logs/hadoop-hadoop-datanode-slave1.log。
    • NodeManager 当天日志路径:$HADOOP_HOME/logs/hadoop-hadoop-nodemanager-slave1.log。

    我们可以通过直接查看日志文件的方式查看日志,也可以通过 tail -f 的命令实时地查看更新的日志,在有些情况下,第二种方法显得非常有效。


    清理临时文件

    很多时候,由于对集群的操作太频繁,或是日志输出不太合理时,日志文件或者是临时文件可能变得十分巨大,影响正常HDFS的存储,可以视情况定期清理。

    • HDFS的临时文件路径:/export/hadoop/tmp/mapred/staging
    • 本地临时文件路径:${mapred.local.dir}/mapred/userlogs

    定期执行数据均衡脚本

    导致 HDFS 数据不均衡的原因有很多种,如新增一个 DataNode、快速删除 HDFS 上的大量文件、计算任务分布不均匀等。

    数据不均衡会降低 MapReduce 计算本地化的可能,降低作业执行效率。

    当察觉到了数据不均衡的情况后,可以通过执行 Hadoop 自带的均衡器脚本来重新平衡整个集群,脚本的路径为 $HADOOP_HOME/bin/start-balancer.sh。

    需要注意的是,在执行脚本时,网络带宽会被大量地消耗,这时如果有作业正在运行,作业的执行将会变得非常缓慢。

    我们可以通过 dfs.balance.bandwidthPerSec 来设置传输速率。

    在均衡器执行的时候,可以随时中断,不会影响数据的完整性。

  • 相关阅读:
    bp神经网络模型的优缺点,什么是BP神经网络模型?
    FFmpeg安卓平台编译
    [PAT练级笔记] 30 Basic Level 1030 人口普查
    unreal windows SDK version 关联错误
    数学分析:傅里叶级数
    高等数学啃书汇总重难点(五)定积分
    成立不到一年!MIT衍生量子计算公司完成900万美元融资
    C++入门介绍之“栈”
    CentOS 安装 Docker
    DevOps流程的简单总结
  • 原文地址:https://blog.csdn.net/Shockang/article/details/125381827