大数据开发之Hive案例篇14:某个节点HDFS块比较多

文章目录

  • 一. 问题描述
  • 二. 解决方案
    • 2.1 查看节点安装的组件
    • 2.2 排查HDFS配置
    • 2.3 排查Yarn配置
      • 2.3.1 首先查看下nodemanager的日志
      • 2.3.2 查看container分配情况
      • 2.3.3 查看调度机制
      • 2.3.4 查看集群任务情况
      • 2.3.5 集群负载情况
      • 2.3.6 resourcemanager与nodemanager是否可以混合部署
    • 2.4 初步判断
    • 2.5 最终结论
  • 参考:

一. 问题描述

今天早上到公司,突然收到CDH集群某个节点的存储量的告警,如下图所示:
image.png

从图中可以看出,每个节点的HDFS空间是相同的,大多节点HDFS使用量在40%左右,而出问题的这个节点居然直逼80%,鉴于之前问题出现过多次,且每次都是利用空余时间使用HDFS的rebalance进行解决的,此处需要找出具体问题,规避此类问题。

二. 解决方案

2.1 查看节点安装的组件

image.png

2.2 排查HDFS配置

初步排查了一下各个节点的HDFS配置,暂未发现问题,且各个节点HDFS的配置是通过 Cloudera Manager进行配置的,配置也相同,不存在某个节点的HDFS相关配置出现问题,进而出现个别节点资源使用率高的情况。

2.3 排查Yarn配置

2.3.1 首先查看下nodemanager的日志

对比出问题的节点和正常的节点,从审计日志量来看,出问题的节点审计日志明显比正常节点多。
image.png

审计日志内容均是申请AM的,现在的问题是为什么cdh10节点的AM比其他节点多那么多?
image.png

2.3.2 查看container分配情况

正在运行container:
从下面截图来看,未发现啥异常情况。
image.png

从历史分配情况来看:
对比了cdh10和cdh7,发现近7天分配的container是均匀的。
image.png

image.png

2.3.3 查看调度机制

那么此时可以这么理解,当集群处于空闲时,突然来了一个任务,那么此时因为所有container的优先级相同,优先选择的就是本节点的container,而第一个container 用于启动作业的AM进程,这也就对应了之前的,chd10节点申请AM会比其他节点多很多。
image.png

我们知道AM用于协调,并不直接参与预算,真正参与运算的是container,而HDFS一般是计算节点优先写一份数据导datanode,然后再写其他副本。但是从上一步的分配情况来看,container分布是均匀的,

2.3.4 查看集群任务情况

从 job history上来看,可以看到,集群内小任务比较多,而因为是CDH集群,调度采用的是 Fair Scheduler(公平调度器),没有给小任务预留一部分集群资源。
image.png

2.3.5 集群负载情况

从集群的负载情况来看,集群存在明显的业务高峰期和空闲期。
image.png

image.png

image.png

2.3.6 resourcemanager与nodemanager是否可以混合部署

搜索到某个大佬给得说法:
image.png

一般是建议分开进行部署。

2.4 初步判断

初步判断,由于cdh10节点,既包含resourcemanager又包含nodemanager,且对于优先级相同的 Containers,优选选择满足本地性的 Container,参与计算的Container会优先写一份到本地的HDFS,故cdh10节点写HDFS会比较多。

于是建议运维先进行 HDFS rebalance,然后将cdh10节点nodemanager进行删除。

2.5 最终结论

近期比较忙,没让运维的处理,然后又有flume消费Kafka的数据实时同步到HDFS,因为之前缺失一部分数据,然后某几个节点在补录数据,刚好补录历史数据的进程出现了问题,就把这部分数据从HDFS上删除了,打算重新补录。

删除后发现,cdh10和cdh3的HDFS使用量突然降下来了,问题最终浮出水面。

cdh10和cdh3上刚好就是补录数据,而HDFS的写流程,第一个副本客户端优先,此例中flume节点所在的节点就是客户端。

参考:

  1. https://www.cnblogs.com/lemonu/p/13566208.html
  2. https://www.saoniuhuo.com/question/detail-1955187.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/3211.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【ArcGIS Pro二次开发】(44):属性结构描述表【Excel】转空库(批量)

随着县级国土空间总体规划数据库规范的下发,建立标准空库是一项马上就要着手的工作。国空的数据库体量很大,单是要素类就有100多个,不是以前村规数据库能比的,手动建库是不可能的,工具自动建库就是一个很合理的选择。 …

JavaScript数据存储方式

内置对象 js内部提供的对象,包含各种属性和方法给开发者调用 document.write() console.log() Math Math对象是js提供的一个 “数学”对象,提供了一系列做数学运算的方法 max找最大值Math.max(3,8,5,4) 返回8min找最小值Math.min(3,8,5,4) 返回4ab…

nginx部署本地项目如何让异地公网访问?服务器端口映射配置!

接触过IIS或apache的小伙伴们,对nginx是比较容易理解的,nginx有点类似,又有所差异,在选择使用时根据自己本地应用场景来部署使用即可。通过一些对比可能会更加清楚了解: 1.nginx是轻量级,比apache占用更少…

【Matlab】神经网络遗传算法函数极值寻优——非线性函数求极值

目前关于神经网络遗传算法函数极值寻优——非线性函数求极值的博客资源已经不少了,我看了下来源,最初的应该是来自于Matlab中文论坛,论坛出版的《MATLAB神经网络30个案例分析》第4章就是《神经网络遗传算法函数极值寻优——非线性函数极值寻优…

深入理解浏览器的缓存机制之协商缓存与强缓存

目录 什么是浏览器缓存 浏览器缓存的分类 🎗️ 强缓存 🎗️ 协商缓存 👉🏻 缓存请求流程 👉🏻 为什么要有Etag 👉🏻 缓存优先级 👉🏻 启发式缓存 &a…

DBeaver连接mysql时报错com.mysql.cj.jdbc.Driver的解决方法【修改驱动下载的maven地址和重新下载驱动】

文章目录 说明解决方法1、打开DBeaver点击窗口-->窗口-->首选项-->链接-->点击驱动-->Maven-->添加2、删除已有的驱动3、重新创建mysql链接 说明 网上下载了最新版本的DBeaver软件,但是链接mysql的时候驱动下载失败,所以就报下面错误…

【计算机视觉】DINO

paper:Emerging Properties in Self-Supervised Vision Transformers 源码:https://github.com/facebookresearch/dino 20230627周二目前只把第一部分看完了。 论文导读:DINO -自监督视觉Transformers - deephub的文章 - 知乎 综述类型&a…

LangChain:LLM应用程序开发(上)——Models、Prompt、Parsers、Memory、Chains

文章目录 一、Models、Prompt、Parsers1.1 环境配置(导入openai)1.2 辅助函数(Chat API : OpenAI)1.3 使用OpenAI API进行文本翻译1.4使用LangChain进行文本翻译1.5 使用LangChain解析LLM的JSON输出1.5.1 LangChain输出为string格…

16.RocketMQ之消费重试以及原理

highlight: arduino-light 1.4 消费重试 对于顺序消息,当消费者消费消息失败后,消费者会在本地自动不断进行消息重试,每次间隔时间为 1 秒,重试最大值是 Integer.MAX_VALUE。 对于无序消息(普通、定时、延时、事务消息)当消费者消费消息失败时可以通过设置返回状态达到重试的目…

面向初学者的卷积神经网络

卷积神经网络在机器学习中非常重要。如果你想做计算机视觉或图像识别任务,你根本离不开它们。但是很难理解它们是如何工作的。 在这篇文章中,我们将讨论卷积神经网络背后的机制、它的优点和应用领域。 什么是神经网络? 首先,让…

【Docker】什么是Docker,它用来干什么

作者简介: 辭七七,目前大一,正在学习C/C,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: 七七的闲谈 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖&#x1f…

网安等保 | 主机安全之KylinOS银河麒麟服务器配置优化与安全加固基线文档脚本分享...

欢迎关注「全栈工程师修炼指南」公众号 点击 👇 下方卡片 即可关注我哟! 设为「星标⭐」每天带你 基础入门 到 进阶实践 再到 放弃学习! “ 花开堪折直须折,莫待无花空折枝。 ” 作者主页:[ https://www.weiyigeek.top ] 博客&…