hadoop集群负载均衡以及配置方法

HDFS数据负载均衡原理 HDFS负载均衡 Hadoop的HDFS集群非常容易出现机器与机器之间磁盘利用率不平衡的情况,例如:当集群内新增、删除节点,或者某个节点机器内硬盘存储达到饱和值。当数据不平衡时,Map任务可能会分配到没有存储数据的机器,这将导致网络带宽的消耗,也无法很好的进行本地计算。 当HDFS负载不均衡时,需要对HDFS进行数据的负载均衡调整,即对各节点机器上数据的存储分布进行调整。从而,让数据均匀的分布在各个DataNode上,均衡IO性能,防止热点的发生。进行数据的负载均衡调整,必须要满足如下原则: 数据平衡不 阅读详情

    一个良好的hadoop集群应该是数据均匀的分布在各个节点上,而不是一个节点磁盘都满了,而另一个磁盘使用率才不到10%,这里简单介绍一下hadoop数据存储的原理以及如何保证数据均匀的分布在各个节点上。

    本地数据上传hdfs存储流程:

        第一块副本:首先集群会判断该上传主机是不是DataNode,如果是DataNode,并且空间够用的情况下,会首先把数据存储在本DataNode上(重点),如果上传主机不是DataNode,则会找个磁盘不太慢的节点进行数据存储

        第二块副本:如配置机架并在配置文件中进行指定,则第二块副本会存储在不同的机架的磁盘空间富足的节点上,如未配置机架,会随机找一个磁盘空间富足的节点进行数据存储

        第三块副本:按照第二块副本存储的机制进行存储    

    到这里大家就会发现问题了,对于生产集群来说,为了提高主机的利用率,一般上传数据节点一般也有DataNode的功能,这样问题就来了,对于日复一日的数据传输来说,上传数据的DataNode数据存储磁盘使用率肯定很高,而且就算上传数据主机非DataNode,但对于任务繁重的hadoop集群来说,大量的数据导入和数据清理都会导致各个节点上数据的失衡。

    那么问题来了,就算我的集群数据不均衡,又有什么影响呢?

    大家都知道hadoop集群在进行计算时使用的是mr,集群数据的不均衡,就无法利用mr本地化计算的,就是对于主机A来说,运行的map任务需要的数据不在主机A上,在主机B上,那么就要进行跨节点的数据读取,肯定一定程度上减缓了任务的执行效率,尤其对于磁盘使用率达到100%的节点来说,甚至导致任务失败。

    为了防止集群数据的不均衡,集群资源不能充分利用,所以hadoop中存在数据均衡机制(以下简称:balancer),启动balancer任务后集群会自动读取各个节点磁盘使用情况,根据设置的主机空间使用率差值来进行计算,从远超该平均值的节点数据开始往空间使用率低于该平均值的主机开始进行数据复制,复制完成之后删除原节点数据,因为数据的复制传输会占用磁盘IO,所以为了不影响集群正常提供服务,该复制传输效率低下,通过hdfs-site.xml配置文件可以设置,如集群数据变化量不大,使用默认值,如数据均衡速度达不到要求,可修改该配置文件以下参数进行修改:

  1. <property>  
  2. <name>dfs.balance.bandwidthPerSec</name>  
  3. <value>1048576</value> =>1M/s  
  4. </property></span> 

    数据均衡的配置:

    在任意一集群节点上使用 hadoop balancer -Threshold 10 命令即可进行集群数据的均衡,英文不解释,对于参数10,代表的是集群中各个节点的磁盘空间利用率相差不超过10%,可根据实际情况进行调整。

    定时任务的设置:

    知道数据均衡的方法了,但总不能我每天盯着看吧,而且今天数据均衡了,但是明天来新的数据导致失衡怎么办,那就用到了定时任务,大家可根据集群的数据变化量来进行定时任务的执行,例如:我们公司集群周末没人用,那我可以把时间设置为周五晚上,或者我们公司每月月初有大量数据导入,我可以把数据均衡时间设置在数据导入完毕之后,以下附带一个简单的每周周五晚上10点进行数据均衡的crontab设置:

00 22 * * 5 hadoop balancer -Threshold 5 >>/home/zcb/log/balancer_`date +"\%Y\%m\%d"`.log 2>&1


纯手工敲打,希望点赞评论谢谢!



[ hadoop ] 集群性能调优全面总结 引子 文章涵盖了hadoop框架的三个组成架构各自的优化方法,涉及存储,计算,故障排除等多个方面的具体调优内容,先后解决HDFS,MapReduce,Yarn的常见问题,最终结合小文件给出了Hadoop综合调优. 1 HDFS调优 1.1 核心参数 1.1.1 NameNode内存 Hadoop2.x系列,NN内存默认2000M,根据服务器(以4G为例)的3/4来配: hadoop-env.sh文件中配置:HADOOP_NAMENODE_OPTS=-Xmx3072m Hadoop3.x系列,had 阅读详情

相关推荐

Cloudera对HDFS做Balance数据均衡/数据平衡/数据倾斜

如果说Hadoop集群的某些DataNode存储数据达到阈值或者出现数据倾斜的情况,任务会高频的打到很多“经常性访问的”数据节点。 这个时候某些节点资源会出现紧张或者异常情况,如下图: 其中HDFS有7个节点出现异常情况,我们点击查看详情。 具体异常信息如上图。 我们对于这种数据倾斜或者存储异常的情况(重启单节点服务无效的时候)。 我们可以点击操作,点击重新平衡。这时系统会...

杨鑫newlife的专栏 2648

Hadoop负载均衡问题处理记录

1、现象: 总共10台机器,其中2台机器磁盘使用率达到80%以上,其他机器使用率不到60%。通过du -sh查看,发现是2台机器的hdfs文件比较大。 想通过删除hive里面在大数据表,来降低磁盘使用率,发现其他机器的磁盘使用率有所下降,但是这两台问题的结点不降反升(有实时数据写入)。这时怀疑是hdfs文件系统有问题。 2、处理方式一: 通...

floatingmaple的博客 496

AI小智语音服务架构与嵌入式成本优化实践

语音交互系统是智能硬件的核心能力,其本质是端云协同的实时数据处理链路,涵盖音频采集、流式传输、语义理解与语音合成四大技术环节。原理上需严格划分物理层(确定性音频I/O)、协议层(WebSocket/Range可靠性通信)和语义层(ASR/LLM/TTS职责解耦),以保障低延迟与高可用。技术价值在于通过VAD前置过滤、分块下载、Token截断等嵌入式级优化,显著降低云端调用成本与网络开销。典型应用场景包括儿童故事机、智能音箱、教育机器人等对响应速度、音色自然度和单次交互成本敏感的AI小智设备。本文聚焦火山引擎

weixin_30653091的博客 352

Centos7原生hadoop环境,搭建Impala集群和负载均衡配置

Centos7原生hadoop环境,搭建Impala集群和负载均衡配置

m0_46168848的博客 1808

关于使用CMT2300A FIFO缓存区间设置为64Byte的问题

帮助你解决在使用CMT2300A 时遇到的各种问题,若有需要,请及时与我交流

teleger的博客 1429

实验室LIMS系统选型指南:从赛默飞到金现代,5大主流方案横评

本文深入分析了实验室LIMS系统选型的5大核心维度,包括架构选择、行业适配性、合规性设计、智能化程度和成本模型。通过对比赛默飞、金现代等主流厂商的优劣势,提供实战避坑策略,帮助实验室管理者做出明智决策,提升运营效率和合规水平。

plum99的博客 259

[Hadoop集群篇]Hadoop集群配置,入门搭建

Hadoop集群架构主要包括HDFS(Hadoop Distributed File System)和YARN(Yet Another Resource Negotiator)两大组件。HDFS是Hadoop中的分布式文件系统,用于存储海量数据;YARN则负责资源管理,为Hadoop应用提供计算资源。

w3474271593的博客 2355

LC整流滤波电路DIY:电感电容配合,手把手搭建低纹波直流电源

在直流电源设计中,整流滤波是连接交流输入与稳定输出的关键环节。常见的电容滤波虽然简单,但在大负载下纹波抑制能力有限,电感抵抗电流突变、电容抵抗电压突变,二者组合构成的LC滤波能有效降低输出电压纹波,同时减小开机浪涌电流。在工频线性电源、功放电源等对噪声敏感的场景中,LC滤波常作为稳压前的平滑缓冲。本文以一套完整DIY项目为线索,介绍整流桥后串联功率电感、并联滤波电容的电路构成,结合实际计算与波形测试,讨论电感量估算、电容选取、谐振风险、饱和电流等工程问题,并给出上电测试和故障排查方法。通过搭建与调试,可直观

weixin_29168813的博客 378

hadoop集群添加新节点

0.说明 Hadoop集群已经运行正常,现在新买了一些机子,要加入到集群里面增加新的节点。以下就是增加的过程。 1.配置运行环境 安装与master和其他slave相同的java环境,jdk版本要相同。具体安装过程这里不再赘述。 修改新节点的ip和主机名对应关系,修改/etc/hosts配置文件,定义ip与hostname的映射。 关闭新节点防火墙,因为Hadoop集群是在内网环境运行,...

Rashaun`s blog 1499

DA14531-外设驱动篇-UART收发通信应用

宏定义注解CFG_PRINTF用户开启串口串口打印宏设置波特率选择115200。

hejinwu1314的博客 730

Windows下Anaconda和PyTorch深度学习环境完整安装配置教程

本文详细介绍了在Windows系统下安装配置PyTorch深度学习环境的完整流程。主要内容包括:硬件环境检查(确认GPU支持)、Anaconda环境管理系统的安装与配置、虚拟环境的创建与管理方法、以及PyTorch及其相关组件的安装指南。特别强调了版本兼容性选择策略(如CUDA版本的确定)、显卡驱动更新、使用Anaconda创建隔离的PyTorch专用环境等关键步骤。无论是使用CPU还是GPU版本,读者都能按照教程快速搭建稳定的PyTorch开发环境,为深度学习项目打下坚实基础。

FJN110的博客 974

hadoop集群的负载均衡配置与添加DataNode节点和TaskTracker节点

这是在成功安装和配置hadoop的情况下,对hadoop集群的负载进行调整,我的hadoop集群有三台虚拟机,一台为master,另外两台分别为slave1和slave2。并向master节点添加DataNode节点和TaskTracker节点。

chenyuangege的专栏 2578

Codex 100个真实案例 - 全系列总结与Codex最佳实践全解析

历经100个案例的淬炼,我们终于来到了终点!本篇是整个系列的压轴之作——全面回顾100个案例的分类统计、提炼Codex使用的核心技巧和最佳实践、总结Prompt工程的精华要点、剖析常见错误及解决方案、展望AI编程的未来趋势,并为不同水平的读者规划学习路径。这不仅是一篇总结,更是一本Codex实战手册!

yueyeguzhuo的专栏 137

hadoop集群中动态增加新的DataNode节点

在现有hadoop集群中动态增加新的节点

司念 3387

如何借助GPT- 6 写好一篇论文:从引言到参考文献完整步骤(附专业提示词)

七哥就结合这篇文章的写作思路,依次拆解引言、方法、结果、讨论、摘要、标题和参考文献分别应该怎么写,同时也聊聊,在每一个环节里,我们可以怎样合理借助 GPT-6,让论文写作变得更清晰、更高效。可以和七哥交流学术写作或Gemini、GPT、Claude 等大模型 学术实操相关问题,多多交流,相互成就,共同进步。8、不修改、不补写、不猜测任何样本量、阈值、剂量、设备型号、参数或统计方法,所有缺失但影响方法完整性的信息统一标记为【待作者确认】、检查方法中设定的每一个分析项目能否在后续结果章节找到对应位置。

智能AI让学术科研更容易 113

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

hadoop集群安装教程

通常,集群里的一台机器被指定为 NameNode,另一台不同的机器被指定为JobTracker。这些机器是masters。余下的机器即作为DataNode也作为TaskTracker。这些机器是slaves。   1 先决条件 确保在你集群中的每个节点上都安装了所有必需软件:sun-JDK ,ssh,Hadoop JavaTM1.5.x,必须安装,建议选择Sun公司发行的Java版

acmilanvanbasten的专栏 2106

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Hadoop集群动态扩容、缩容

一、 Hadoop集群动态扩容、缩容 随着公司业务的增长,数据量越来越大,原有的datanode节点的容量已经不能满足存储数据的需求,需要在原有集群基础上动态添加新的数据节点。也就是俗称的动态扩容。 有时候旧的服务器需要进行退役更换,暂停服务,可能就需要在当下的集群中停止某些机器上hadoop的服务,俗称动态缩容。 1. 动态扩容 1.1. 基础准备 在基础准备部分,主要是设置...

dingqiu6346的博客 1798

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Hive分布式集群部署

Hive编程,可以使开发者不需要考虑底层MapReduce算法如何实现,而只需集中精力关注SQL语句的编写即可。 Apache Hive 是建立在Hadoop上的数据仓库,它提供了一系列工具,可以用来查询和分析数据,Hive提供了执行SQL的接口,用于操作存储在Hadoop分布式文件系统HDFS中的数据。 Hive 可以将结构化的数据文件映射成为一张数据库表,并且提供了便捷的sql语句查询功能,开发者可以通过SQL语句将实现的业务功能转化为MapReduce任务来运行。 Hive 数据仓库是构建在Ha

上帝之手&传奇 - MartinLee 3343

hadoop集群中动态添加新的DataNode节点

集群中现有的计算能力不足,须要另外加入新的节点时,使用例如以下方法就能动态添加新的节点: 1、在新的节点上安装hadoop程序,一定要控制好版本号,能够从集群上其它机器cp一份改动也行 2、把namenode的相关配置文件拷贝到该节点 3、改动masters和slavers文件,添加节点 4、设置ssh免password登录该节点 5、单独启动该节点上的datanode...

weixin_30832405的博客 133

Hadoop 2.7.4 HDFS+YRAN HA删除datanode和nodemanager

当前集群 主机名称 IP地址 角色 统一安装目录 统一安装用户 sht-sgmhadoopnn-01 172.16.101.55 namenode,resourcemanager /usr/local/hadoop(软连接) /usr/local/hadoop-2.7.4 /usr/local/zookeeper(软连接) /usr/local/zo...

weixin_30591551的博客 299

Hadoop动态扩容,增加节点

转载:https://www.cnblogs.com/mengzj233/p/9759457.html 基础准备 在基础准备部分,主要是设置hadoop运行的系统环境 修改系统hostname(通过hostname和/etc/sysconfig/network进行修改) 修改hosts文件,将集群所有节点hosts配置进去(集群所有节点保持hosts文件统一) 设置NameNode(两台HA均需...

涂作权的博客 1464

hadoop动态增加删除节点

在master的conf/hdfs-site.xml中加入 dfs.hosts.exclude value>excludesvalue> 在$HADOOP_HOME下创建exclueds文件 文件内容增加你想删除的节点,一行一个 /bin/hadoop dfsadmin -refreshNodes命令刷新datanode例表 /bin/hadoop dfsadmin -rep

chuanzhongdu1的专栏 2053

hadoop配置core-site.xml,hdfs-site.xml,mapred-site.xml

配置hadoop,主要是配置core-site.xml,hdfs-site.xml,mapred-site.xml三个配置文件,有两个方法可以正确配置: 1.选择相应版本的hadoop,下载解压后,搜索*.xml,找到core-default.xml,hdfs-default.xml,mapred-default.xml,这些就是默认配置,可以参考这些配置的说明和key,配置hadoop集群。 2.浏览apache官网,三个配置文件链接如下: http://hadoop.apache.org/docs

Rnan_prince的博客 5304

Hadoop的集群搭建(HA),HDFS的工作流程(读、写、nn和snn(1)

1. HDFS的是基于流数据模式访问(来了一点数据,就立马处理掉,立马分发到各个存储节点来响应分析、查询等,重点关注数据的吞吐量而不是访问速度)和处理超大文件的需求而开发的一个主从架构的分布式文件系统(分布式文件系统:一种允许文件透过网络在多台主机上分享的文件系统,可让多机器上的多用户分享文件和存储空间);2. 流式数据: 将数据序列化为字节流来存储;3. 序列化:对文件进行切片就需要该文件支持序列化;4. 存储文件,通过目录树定位文件;6. 适合一次写入,多次读出的场景。

2401_86454660的博客 1426
上一篇: hadoop集群重启后数据丢失处理
下一篇: hadoop从节点linux系统崩溃数据恢复实记
AA赵师傅
博客等级 码龄9年 89粉丝 124原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值