shuffle文件损坏导致nodemanager重启失败

第六课HDFS+MapReduce Hadoop Distributed File System,是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。HDFS的使用场景:适合一次写入,多次读出的场景,且不支持文件的修改。适合用来做数据分析,并不适合用来做网盘应用。 阅读详情

现象

CDH集群,生产环境发现一台数据节点nodemanager失联,重启失败。尝试重启整个yarn,结果导致所有nodemanager失联不可用。

问题原因

最开始的一个NM失联是因为内存溢出,导致NM挂了

JAVA_HOME=/usr/java/jdk1.8.0_181
using /usr/java/jdk1.8.0_181 as JAVA_HOME
using 6 as CDH_VERSION
using /opt/cloudera/parcels/CDH-6.2.1-1.cdh6.2.1.p0.1425774/lib/hadoop-yarn as CDH_YARN_HOME
using /opt/cloudera/parcels/CDH-6.2.1-1.cdh6.2.1.p0.1425774/lib/hadoop-mapreduce as CDH_MR2_HOME
using /var/run/cloudera-scm-agent/process/5742-yarn-NODEMANAGER as CONF_DIR
CONF_DIR=/var/run/cloudera-scm-agent/process/5742-yarn-NODEMANAGER
CMF_CONF_DIR=
java.lang.OutOfMemoryError: Java heap space
Dumping heap to /tmp/yarn_yarn-NODEMANAGER-cb40d8036dd59b6cc2f0d7748f7561ce_pid440050.hprof ...
Heap dump file created [3141289255 bytes in 18.481 secs]
#
# java.lang.OutOfMemoryError: Java heap space
# -XX:OnOutOfMemoryError="/opt/cloudera/cm-agent/service/common/killparent.sh"
#   Executing /bin/sh -c "/opt/cloudera/cm-agent/service/common/killparent.sh"...
2022年 08月 10日 星期三 08:56:18 CST
JAVA_HOME=/usr/java/jdk1.8.0_181
using /usr/java/jdk1.8.0_181 as JAVA_HOME
using 6 as CDH_VERSION
using /opt/cloudera/parcels/CDH-6.2.1-1.cdh6.2.1.p0.1425774/lib/hadoop-yarn as CDH_YARN_HOME
using /opt/cloudera/parcels/CDH-6.2.1-1.cdh6.2.1.p0.1425774/lib/hadoop-mapreduce as CDH_MR2_HOME
using /var/run/cloudera-scm-agent/process/5742-yarn-NODEMANAGER as CONF_DIR
CONF_DIR=/var/run/cloudera-scm-agent/process/5742-yarn-NODEMANAGER
CMF_CONF_DIR=
java.lang.OutOfMemoryError: Java heap space
Dumping heap to /tmp/yarn_yarn-NODEMANAGER-cb40d8036dd59b6cc2f0d7748f7561ce_pid450025.hprof ...
Heap dump file created [3141287223 bytes in 17.360 secs]

正常情况下,此时重启NM即可解决。那为什么这次重启失败呢?
咨询cloudera官方,将NM的日志级别调为debug,发现Node Manager 启动时做recovery出了问题,推测可能是shuffle文件的问题

解决办法

删除数据节点上所有的shuffle文件:

rm -rf /var/lib/hadoop-yarn/yarn-nm-recovery/nm-aux-services/mapreduce_shufflemapreduce_shuffle_state/
rm -rf /var/lib/hadoop-yarn/yarn-nm-recovery/nm-aux-services/spark_shuffle/registeredExecutors.ldb/
rm -rf /var/lib/hadoop-yarn/yarn-nm-recovery/yarn-nm-state/*

重启成功!
同样的操作,在其他NM节点上都进行一遍,所有的NM都恢复正常。

分析总结

recovery只有在重启的时候才会进行,所以平时都正常运行没有问题。一旦进行重启操作,就会触发这个问题,导致重启失败。

PS:遇到yarn的NM问题可以去以下几个地方看看日志:

  • /var/run/cloudera-scm-agent/process/*-yarn-NODEMANAGER/logs
  • /var/log/hadoop-yarn
Hadoop伪分布式环境从零搭建与实战排错指南 Hadoop是一个基于Java的分布式计算框架,其核心由HDFS(分布式文件系统)和YARN(资源调度器)构成,支撑MapReduce等计算模型运行。理解组件间协同原理——如NameNode与DataNode的元数据管理、ResourceManager与NodeManager的资源分配契约——是稳定部署的前提。技术价值在于提供高容错、可扩展的大数据存储与计算能力,广泛应用于日志分析、ETL、实时数仓等场景。而伪分布式模式作为本地验证集群行为的关键路径,既能规避单机模式对网络和权限机制的屏蔽,又无需多节点硬件 阅读详情

相关推荐

PySpark数据处理核心原理与工程实践指南

PySpark不是分布式Pandas,而是面向超大规模数据的声明式处理范式。其本质是基于逻辑计划(Logical Plan)与懒执行(Lazy Evaluation)的分布式计算契约,通过DAG调度将SQL/DF语义自动编译为物理执行计划。技术价值在于屏蔽集群复杂性,让数据科学家专注业务逻辑而非资源协调;典型应用场景涵盖TB级日志分析、实时特征工程、跨源主数据融合及AI训练数据准备。本文深入剖析数据倾斜治理、Shuffle优化、内存协同策略与Python生态融合等关键工程问题,结合真实生产案例揭示从单机思维

weixin_30861797的博客 417

Hadoop实战手册:从本地伪分布到3节点集群的踩坑指南

Hadoop作为大数据基础设施的核心,其本质是围绕HDFS分布式存储、MapReduce计算模型和YARN资源调度构建的协同系统。理解HDFS的块复制机制与NameNode元数据管理,是避免磁盘空间误判和safemode陷阱的关键;掌握MapReduce的Shuffle阶段磁盘缓冲原理,能精准定位90%的性能卡顿;而YARN的DominantResourceCalculator配置,则直接决定CPU与内存资源的真实隔离效果。这些技术细节共同支撑起日志分析、数仓底座、Spark on YARN等典型应用场景。

weixin_30402343的博客 413

从零搭建Hadoop集群:手把手教你部署分布式大数据处理平台

分布式计算是处理海量数据的核心技术,其核心原理在于将大规模计算任务分解,分配到多台机器上并行执行,从而突破单机性能瓶颈。Hadoop作为这一领域的基石框架,通过HDFS实现可靠的数据存储,通过YARN进行统一的资源调度,其技术价值在于提供了高容错、高扩展的通用数据处理能力,广泛应用于日志分析、数据仓库和机器学习等场景。本文聚焦于Hadoop集群的实战部署,详细解析了从虚拟机规划、网络配置、服务安装到核心参数调优的全过程,并深入探讨了如何结合MapReduce框架进行分布式计算,为构建稳定高效的大数据平台提供

weixin_30279671的博客 394

Hadoop生态分层能力模型与生产级协同实践

Hadoop生态本质上是一套分层协作的分布式数据操作系统,其核心价值不在于工具堆砌,而在于按需补足存储增强、计算加速、查询交互和数据治理四层能力缺口。理解YARN资源调度、HDFS数据访问模式与ZooKeeper协调机制这三大物理连接点,是实现Hive、Spark、HBase等组件稳定协同的基础。尤其在实时分析、交互式查询与高并发在线服务等典型场景中,脱离分层逻辑的盲目选型极易导致资源浪费与SLA失控。本文聚焦真实生产环境中的能力断层识别、跨组件配置咬合及典型协同坑点,为构建可演进的大数据平台提供工程化路线

Coding 523

Hadoop集群部署实战:版本选择、配置陷阱与生产级稳定性保障

Hadoop不是单一软件,而是由HDFS、YARN等组件构成的分布式协作机制。其核心原理在于元数据高可用(NameNode HA)、数据块冗余存储(DataNode+副本策略)与资源协同调度(ResourceManager+NodeManager)。技术价值体现在PB级低成本存储、批流一体底座能力及企业级权限治理(Kerberos)支撑。典型应用场景包括金融风控数据湖、电商用户行为分析、物流轨迹离线计算等对稳定性、一致性和可扩展性要求严苛的生产环境。本文聚焦真实部署中Java版本兼容性、fs.default

dienangpiao2051的博客 433

Ubuntu 22.04安装Hadoop 3.3.6伪分布式实战指南

Hadoop是构建大数据存储与计算基础设施的核心分布式框架,其运行依赖于Linux系统底层机制、Java运行时环境及网络配置的深度协同。Hadoop 3.x架构升级带来YARN资源调度强化、HDFS纠删码(Erasure Coding)存储优化和MapReduce v2解耦等关键能力,但这些特性在Ubuntu 22.04等新版本发行版中易受systemd服务管理、DNS解析劫持(如127.0.0.53)、Java安全随机源阻塞及权限模型差异影响。本指南聚焦原生环境部署,覆盖从swap禁用、hosts精准绑定

weixin_30788619的博客 351

zookeeper安装

zookeeper安装

轻描时光 794

Hadoop集群手动部署与分布式扩展实战指南

Hadoop是典型的分布式文件系统与计算框架,其核心在于HDFS的分布式存储原理和YARN的资源调度机制。理解NameNode元数据管理、DataNode心跳注册、块复制策略及容错设计,是构建高可用大数据基础设施的技术基础。本文聚焦真实物理环境下的Hadoop 3.3.6集群搭建,涵盖CentOS 7.9系统适配、核心配置文件调优(如hadoop.tmp.dir安全路径、dfs.replication动态设置)、YARN内存模型精调(memory-mb与java.opts协同),以及从3节点到12节点的平滑

a359798678的博客 362

基于Centos7.6安裝CDH6集群

前提:所有cdh相关安装文件均放在master节点(cdh节点)的/root/cdh目录下 1.2配置hosts文件 echo -e ‘10.0.24.6 cdh\n10.0.20.2 cdh01\n10.0.20.7 cdh02\n10.0.20.10 cdh03’ >> /etc/hostscat /etc/hosts 1.3关闭selinux setenforce 01.4关闭防火墙 关闭防火墙 systemctl stop firewalld.service 关闭开机自启动 systemctl di

weixin_44074288的博客 561

GB28181协议心跳机制:从标准解读到代码实现的保活策略

本文深入解析GB28181协议中的心跳机制,从标准解读到代码实现,详细介绍了保活策略的核心价值和底层逻辑。通过实战案例和技术要点,帮助开发者优化心跳间隔、超时次数等参数配置,提升安防监控系统的可靠性和性能。文章还提供了代码实现的防坑指南和特殊场景处理建议,适用于各类网络环境下的设备在线状态管理。

weixin_29611239的博客 106

VS Code配置MASM32汇编环境:从安装到调试的完整指南

本文提供了一份详尽的指南,教你如何在VS Code中配置MASM32汇编开发环境,实现从安装、环境变量设置到编写、编译和调试32位Windows汇编窗口程序的完整工作流。通过集成现代编辑器的便利性与经典汇编工具链,旨在降低学习门槛,提升底层开发效率。

nn3456的博客 486

CDH6.3.2安装文档

安装说明 CDH是一个完善的Apache Hadoop及相关项目的发行版。CDH通过WEB界面管理,并提供了hadoop的两个核心功能:可扩展存储和分布式计算,以及企业级的重要功能。CDH是遵循Apache-licensed的开源软件,提供了基于hadoop的批处理、交互SQL、交互查询、基于角色的访问控制。 Cloudera Manager是一个管理CDH集群端到端的应用。Cloudera Manager通过向CDH集群的每个部分提供细粒度的可见性及可控性,建立出一套企业部署标准,这可以提高性能、服务质量

别人笑我太疯癫,我笑他人看不穿。 3100

【ELF2学习板】基于OpenMP与RK3588多核架构优化FFTW的并行计算效率

本文详细介绍了如何在ELF2学习板上利用OpenMP与RK3588多核架构优化FFTW的并行计算效率。通过编译支持OpenMP的FFTW库、合理设置线程绑定与调度策略,以及内存访问优化等技巧,显著提升了FFT计算的性能。实测数据显示,多核并行优化可使4096点FFT计算速度提升一倍以上,特别适合信号处理、图像分析等高性能计算场景。

weixin_30352645的博客 607

nodemanager启动:Failed to initialize spark2_shuffle...java.net.BindException: Address already in use

提示端口被占用,但日志没找到具体端口,默认spark.shuffle.service.port是7337,日志有打印但发现未被占用然后找了下yarn和spark配置文件相关的端口,还列出所有端口,一个个根据端口找到应用排查,折腾了半个多小时,最终还是采用重启大法搞定...

周源的专栏 1674

STM32驱动四位共阳极数码管实现高精度秒表计时器

本文详细介绍了如何使用STM32驱动四位共阳极数码管实现高精度秒表计时器。项目基于STM32F103C8T6最小系统板,通过定时器中断和GPIO控制,实现0.1秒精度的计时功能,并解析了共阳极数码管的动态扫描原理及按键消抖等关键技术。

n8m7b6v5c4的博客 951

企业级 Token 中转架构设计:高并发、多模型、费用监控一次搞定

摘要:本文针对企业级AI开发中的多模型接口混乱、高并发稳定性差及Token费用失控等痛点,提出一套2026年企业级Token中转架构解决方案。该方案采用五层分层设计(接入层、网关层、调度层、服务层、存储层),实现多模型统一接口、智能路由、高并发限流容错及精细化成本监控。核心功能包括:异构模型标准化接入、动态路由策略(场景/成本/负载/容灾)、多级限流熔断机制、全链路Token计费与安全防封体系(指纹清洗、IP池隔离)。通过分层解耦与模块化设计,企业可降低50%成本、提升99%稳定性,并避免封号风险。文章还提

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 147

大数据运维实战第二十七课 Hadoop 平台常见故障汇总以及操作系统性能调优

本课时,我主要介绍了 Hadoop 大数据运维中,常见的运维故障以及解决问题的方法和思路;如果设置的 JVM 值已经很大,但还是出现该问题,则需要查看 NodeManager 运行日志,具体是什么原因导致的,需要具体问题具体分析,当然,最直接的方法就是重启此节点的 NodeManager 服务。有时候,你通过 Yarn 集群运行数据分析任务时,会发现这样一个问题:各节点的负载会不均衡(也就是任务数目不同),有的节点有很多任务在执行忙碌,而有的节点没有任务执行,那么如何平衡各节点运行的任务数目呢?

fegus的博客 1398

手把手教你学Simulink--使用Simulink进行双冗余电机驱动系统的故障切换验证

提高系统可靠性:当一个电机或其驱动器出现故障时,另一个可以立即接管,避免系统停机。增强安全性:对于一些关键任务的应用场景(如飞行控制),确保即使在硬件故障情况下也能维持基本操作能力。简化维护:允许在不影响系统正常工作的情况下进行维护和更换故障部件。确定可能发生的故障类型(如过流、欠压、温度过高),以及每种故障对应的条件。通过上述步骤,我们简要介绍了如何基于Simulink实现双冗余电机驱动系统的故障切换验证。

MHD0815的博客 443

数据工程师实战指南:Hadoop、Spark、Flink等五大框架生产调优与避坑

大数据(Big Data)指在分布式环境下对海量、高速、多样数据进行采集、存储、计算与服务的系统性工程能力。其核心原理在于通过分而治之(Shuffle/Partition)、容错重试(Speculative Execution/Checkpointing)和统一资源调度(YARN/K8s)保障SLA。技术价值体现在降低TCO、提升分析时效性与支撑实时决策闭环。典型应用场景包括电商用户行为分析、金融风控实时拦截、IoT设备时序处理等。本文聚焦Hadoop、Spark、Flink、Hive、Storm五大高频框

weixin_30772105的博客 780

如何在飞腾平台上安装Ubuntu操作系统

注意: 若主板上配置的是NVME硬盘,在进行内核配置时,需要将内核的NEME驱动勾选上,否则移植内核时,无法找到文件系统,进不去操作系统。可以通过rufus软件将镜像做到U盘中,本次使用版本为Rufus 3.9.124 ,其他版本也可以。不要下载live版本的,没有准备网络环境,是一个头疼的事情,笔者暂时没有实现网络安装。将U盘接到主板usb口上,接上串口,显示器,,必需串口有打印才可以安装。可以通过dd命令,将iso安装到U盘。安装的是最小系统,缺少很多命令,需要联网更新,或则更换飞腾专用内核。

技术联盟 2645

[QMT和ptrade量化交易小白入门]-122、基于聚类分析的动态股票池构建与ETF轮动策略,回测年化 132.09%

本专栏主要是介绍QMT和ptrade的基础用法,常见函数,写策略的方法,也会分享一些量化交易的思路,大概会写200篇左右。QMT的相关资料较少,在使用过程中不断的摸索,遇到了一些问题,记录下来和大家一起沟通,共同进步。

木头大左的博客 1029

spark任务优化参数

本文总结了Apache Spark任务优化的关键参数配置和使用经验。核心内容包括:1) 资源分配参数如driver/executor内存和核数设置;2) 任务执行优化如分区控制、文件大小限制(如maxPartitionBytes参数);3) 数据压缩配置。特别指出不同模块(core/sql)参数差异,SQL模块推荐使用AQE(自适应查询执行)优化。资源分配需根据数据量和计算复杂度平衡,建议动态调整executor数量。同时强调不同Spark发行版(如Kyuubi、阿里EMR)可能有特有参数。官方文档是验证参

别人笑我太疯癫,我笑他人看不穿。 3738

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

基于Docker Compose快速搭建3节点Hadoop集群实战指南

容器化技术通过将应用及其依赖打包成标准单元,实现了环境的一致性与快速部署,其核心原理在于利用操作系统级虚拟化提供隔离的运行环境。Docker作为主流容器引擎,凭借其轻量、可移植的特性,在DevOps和微服务架构中展现出巨大技术价值。Docker Compose作为多容器应用编排工具,通过声明式YAML文件简化了复杂分布式系统的定义与管理流程。这一技术组合特别适用于大数据平台等需要多组件协同的场景,能够显著提升开发测试环境的搭建效率与可复现性。本文聚焦于利用Docker镜像和Docker Compose编排,

weixin_34341229的博客 439

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

hadoop3.1.2 配置 3台 完全分布式

本文旨在为读者提供一个完整的三节点Hadoop集群搭建指南,涵盖从环境准备到集群验证的全过程。通过本文,您将学习如何在三台虚拟机(master、slave1、slave2)上部署Hadoop 3.1.2,并配置高可用的分布式计算环境。具备Linux基础操作知识的开发者希望学习大数据平台搭建的初学者需要搭建Hadoop测试环境的技术人员基本的Linux命令行操作虚拟机网络配置基础SSH免密登录原理Java环境配置经验。

ywl470812087的博客 11万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

爱奇艺Hadoop工程师校招笔试复盘:核心考点与实战调优

在大数据技术栈中,Hadoop生态体系是构建分布式存储与计算平台的基石,也是企业级数据工程师必须掌握的核心技能。HDFS通过NameNode与DataNode的协作实现高可靠存储,MapReduce以Shuffle和排序机制完成分布式计算,而YARN则负责统一资源调度与管理。理解和掌握这些组件的底层原理,不仅能帮助你诊断集群故障、优化作业性能,更是应对数据倾斜、小文件等真实挑战的关键。随着Zookeeper在HA高可用、分布式协调中的深度应用,从伪分布式搭建到生产级集群调优,系统化提升Hadoop工程能力已

weixin_34234829的博客 334

爱奇艺校招Hadoop工程师笔试复盘:HDFS与MapReduce核心考点解析

分布式存储与并行计算是大数据技术体系的基石,HDFS通过数据分片和副本策略实现高可靠存储,MapReduce则凭借Shuffle机制完成分布式任务的归并排序。理解这些底层原理,不仅有助于解决数据倾斜、小文件等生产环境常见问题,也是掌握YARN资源调度与Zookeeper高可用协调的关键前置知识。在互联网视频平台海量日志处理的场景下,Hadoop生态依然是离线数据链路的主流选择。本文以爱奇艺校招笔试为线索,系统拆解HDFS读写流程、MapReduce执行原理、YARN任务生命周期,并延伸至Zookeeper

weixin_30819085的博客 388
上一篇: hive数据导入es外表,报错java.lang.IndexOutOfBoundsException:Index:74,Size:74
下一篇: Nodemanager Unhealthy(exit code :143/35)
magicchu
博客等级 码龄15年 424粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值