【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容

这篇具有很好参考价值的文章主要介绍了【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  增加或缩减服务器,注意不允许白名单和黑名单同时出现同一个主机。

1 服役新服务器

  原有数据节点不能满足数据存储需求时,需要在原有集群的基础上动态增加节点,即动态增加服务器,增加服务器的同时不需要重启集群。

  hadoop完全分布式集群设置了3个datanode节点,当白名单里只配置了2台主机时,在hdfs系统中显示datanode还是有3个节点的原因:

  白名单只限制哪些机器可以作为DataNode加入到集群中,但是这只是一个限制条件,并不会阻止DataNode节点向NameNode注册。因为配置了3个DataNode节点,即使其中某些节点不在白名单中,它们仍然会向NameNode注册并成为集群的一部分。开发时注意如果某个DataNode节点不在白名单中,则在设置白名单时,需要在配置文件中将该节点的IP地址添加到白名单中,以确保它不会被误删或误配置。

  根据上述原因需要一台新的主机hadoop105进行测试。
环境准备
(1)在hadoop100主机上克隆一台hadoop105主机。
(2)修改ip地址和主机名,然后重启。

vim /etc/sysconfig/network-scripts/ifcfg-ens33
vim /etc/hostname
reboot

(3)在hadoop102拷贝/opt/module和/etc/profile.d/my_env.sh到hadoop105。

scp -r module/* liaoyanxia@hadoop105:/opt/module/
sudo scp /etc/profile.d/my_env.sh root@hadoop105:/etc/profile.d/my_env.sh

(4)在hadoop105让环境变量生效,并且删除Hadoop历史数据即data、logs文件。

source /etc/profile
rm -rf data/ logs/

(5)配置在hadoop102和hadoop103到hadoop105的ssh免密登录。

ssh-copy-id hadoop105

(6)在hadoop105直接启动DataNode,单点启动hdfs和yarn,可关联到集群。

hdfs --daemon start datanode
yarn --daemon start nodemanager

【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容

2 添加白名单

  白名单:在白名单的主机IP可以访问集群,用于存储数据。
  不在白名单上的主机可以访问集群,但是不能存储数据。配置白名单可以一定程度上防止黑客攻击。
【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容
配置白名单步骤:
(1)在NameNode节点的hadoop-3.3.1/etc/hadoop创建whitelist和blacklist文件,白名单whitelist中添加主机名称102、103、104,黑名单为空白。

touch blacklist

(2)在hdfs-site.xml配置文件中增加dfs.hosts配置参数。

<!-- 白名单 -->
<property>
     <name>dfs.hosts</name>
     <value>/opt/module/hadoop-3.3.1/etc/hadoop/whitelist</value>
</property>

<!-- 黑名单 -->
<property>
     <name>dfs.hosts.exclude</name>
     <value>/opt/module/hadoop-3.3.1/etc/hadoop/blacklist</value>
</property>

(3)分发whitelist,hdfs-site.xml,重启集群,如果不是第一次添加白名单只需要刷新NameNode节点就可以。

xsync hdfs-site.xml whitelist blacklist

(4)在web查看DataNode,http://hadoop102:9870/dfshealth.html#tab-datanode,只有在白名单的主机节点。
【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容
(5)在hadoop105上传数据失败(不在白名单的主机可以访问集群,但是不能存储数据)

hadoop fs -put test105.txt /

【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容
(6)把hadoop105加到白名单上,分发白名单,刷新NameNode(接1 服役新服务器)

vim whitelist   然后添加 hadoop105
xsync whitelist
hdfs dfsadmin -refreshNodes

【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容
(7)在hadoop105上传文件。

hadoop fs -put test105.txt /

【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容
【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容
  在hadoop105提交任务,则必然显示105,因为就近原则选择节点距离最近的,先选择本地,也就是105的距离为0,别的节点距离为1。

  当前存在一个情况:hadoop105数据少,别的节点数据多,即数据不均衡问题。

3 服务器间数据均衡

  可能出现两种情况:经常在某些节点上提交任务,由于本地原则,导致这些节点的数据过多,别的节点存储数据量小;新服役的服务器数据量较少。这两种情况需要执行集群均衡命令。

  PS:由于HDFS需要启动单独的Rebalance Server来执行Rebalance操作,所以尽量不要在NameNode上执行start-balancer.sh,而是找一台比较空闲的机器。
【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容
  开启数据均衡命令,参数10,代表的是集群中各个节点的磁盘空间利用率相差不超过10%(也就是任何两个节点的数据都不超过10%),可根据实际情况进行调整:

sbin/start-balancer.sh -threshold 10

停止数据均衡命令:

sbin/stop-balancer.sh

4 黑名单退役服务器

  黑名单:黑名单里的主机不能用来存储数据,企业设置黑名单用于退役服务器。
【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容
(1)在blacklist文件中添加要退役节点:hadoop105。且hdfs-site.xml中有黑名单的配置参数:

<!-- 黑名单 -->
<property>
     <name>dfs.hosts.exclude</name>
     <value>/opt/module/hadoop-3.3.1/etc/hadoop/blacklist</value>
</property>

(2)分发blacklist和hdfs-site.xml,第一次添加黑名单需要重启集群,否则只用刷新NameNode节点。

xsync blacklist hdfs-site.xml
hdfs dfsadmin -refreshNodes

(3)检查Web浏览器,退役节点的状态为decommission in progress(退役中),说明数据节点正在复制块(退役节点的副本)到其他节点。
【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容
(4)等待退役节点状态为decommissioned(所有块已经复制完成),停止该节点及节点资源管理器。

hdfs --daemon stop datanode
yarn --daemon stop nodemanager

(5)如果数据不均衡,可以用命令实现集群的再平衡。文章来源地址https://www.toymoban.com/news/detail-437483.html

sbin/start-balancer.sh -threshold 10

到了这里,关于【大数据之Hadoop】二十八、生产调优-HDFS集群扩容及缩容的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • hadoop之hdfs生产数据块损坏修复方法

    1、手动修复 检查数据块丢失情况 hdfs fsck / 修复指定路径的hdfs文件,尝试多次 hdfs debug recoverLease -path 文件位置 -retries 重复次数 删除所有损坏的块的数据文件 hdfs fsck / -delete 2、自动修复 hdfs会自动修复损坏的数据块,当数据块损坏后, DN节点执行directoryscan(datanode进行内村和

    2023年04月11日
    浏览(49)
  • HDFS 跨集群数据同步(hive,hadoop)

    两个不同的HDFS 集群数据迁移( A集群的数据 - B 集群) 采用的是 SHELL 脚本  按表进行; 日期分区进行; #!/bin/bash ##################### #创建人:DZH #创建日期: 2020-04 #内容: 数据迁移 ##################### ##################################### [ \\\"$#\\\" -ne 0 ] FILE=$1 path=$(cd `dirname $0`; pwd) ############## 获取执

    2024年04月27日
    浏览(36)
  • 0201hdfs集群部署-hadoop-大数据学习

    下面我们配置下单namenode节点hadoop集群,使用vmware虚拟机环境搭建。vmware虚拟机的配置,在下面链接2有,或者自行查阅文档。hadoop安装包可到官网下载,当前相关软件环境如下: 软件 版本 说明 hadoop 3.3.4 jar包 vmware 15.5 虚拟机 centos 7.6 服务器操作系统 xshell 6 远程连接 jdk 1.8

    2024年02月11日
    浏览(33)
  • 大数据技术之Hadoop:HDFS集群安装篇(三)

    目录 分布式文件系统HDFS安装篇 一、为什么海量数据需要分布式存储 二、 分布式的基础架构分析 三、 HDFS的基础架构 四 HDFS集群环境部署 4.1 下载安装包 4.2 集群规划 4.3 上传解压 4.4 配置HDFS集群 4.5 准备数据目录 4.6 分发hadoop到其他服务器 4.7 配置环境变量 4.8 为普通用户授

    2024年02月14日
    浏览(39)
  • 【大数据之Hadoop】二十三、Yarn命令行操作及生产环境下的配置

    Yarn状态查询可以在hadoop103:8088页面查看,也可以通过命令查看。 先运行案例再查看运行情况。 (1)yarn application 查看任务 (2)yarn logs 查看日志 (3) yarn application attempt 查看尝试运行的任务(即正在运行的任务状态) (4) yarn container查看容器 只有任务在执行过程中才能看

    2024年02月16日
    浏览(36)
  • 生产环境ES集群扩容及优化

    ES集群优化 具体详情请看官方文档建议:https://www.elastic.co/guide/en/elasticsearch/reference/7.5/restart-cluster.html 1.先把elasticsearch的服务停掉 2.修改jvm.options配置文件下最大、最小内存限制 3.重启elasticsearch 4.配置 5.可供使用的查询地址

    2024年02月12日
    浏览(30)
  • 大数据内容分享(九):Hadoop-生产集群搭建(完全分布式)

    目录 Hadoop运行模式——完全分布式 1、准备3台虚拟机(关闭防火墙、配置静态IP 和 主机名称) 2、安装JDK 和 Hadoop 并配置JDK和Hadoop的环境变量 3、配置完全分布式集群 4、集群配置 1)集群部署规划 2)配置文件说明 3)配置集群 5、集群启动 与 测试 1)workers的配置 2)启动集

    2024年02月21日
    浏览(87)
  • Hadoop3教程(三十四):(生产调优篇)MapReduce生产经验汇总

    MR程序执行效率的瓶颈,或者说当你觉得你的MR程序跑的比较慢的时候,可以从以下两点来分析: 计算机性能 节点的CPU、内存、磁盘、网络等,这种属于硬件上的检查; IO操作上的检查 是否发生了数据倾斜?即单一reduce处理了绝大部分数据 Map运行时间过长,导致Reduce一直在

    2024年02月08日
    浏览(41)
  • Hadoop3教程(三十一):(生产调优篇)异构存储

    异构存储,也叫做冷热数据分离 。其中,经常使用的数据被叫做是热数据,不经常使用的数据被叫做冷数据。 把冷热数据,分别存储在不同的存储介质里,从而达到对每个介质的利用率最高,从而实现整体最佳性能,或者说性价比更高(比如说高性能硬盘放经常使用的数据

    2024年02月08日
    浏览(38)
  • Hadoop3教程(三十六):(生产调优篇)企业开发场景中的参数调优案例概述

    这章仅做兴趣了解即可。 需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4 3 3) 当然,这只是个案例演示,生产环境中一般是结合机器

    2024年02月08日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包