在现有的hadoop集群中增加新节点服务器

系列文章目录

Hadoop 集群安装部署及新增服务器节点(详细):
现根据业务需要,需要在原有的3台完全分布式的节点增设一台新的服务器节点,以下文章正文编写了在原有的完全分布hadoop中增设新节点的部署。



前言

前置工作:空闲服务器一台,并将jkd8在该服务器安装完毕(环境变量的添加等工作),并将该服务器的的ip映射配置完毕
环境要求: hadoop3.1.3版本环境安装包 。


提示:以下是本篇文章正文内容,下面案例可供参考

一、部署步骤

1.将新加节点信息补充至多台服务器的/etc/hosts中(包含新增节点自己这台服务器)

代码如下(示例):

[root@hadoop128 ~] vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.146.128  hadoop128
192.168.146.134  hadoop134
192.168.146.135  hadoop135
192.168.146.132  hadoop132   `#(新增节点)` 

然后在 hadoop134,hadoop135上重复以上操作 将该行信息同步至其他服务器的/etc/hosts中
均在其他节点(hadoop128、hadoop134、hadoop135)中的/etc/hosts中添加新节点的解析主机名
并在hadoop132的节点上 修改自己的主机名称

[root@CentOS ~] hostnamectl set-hostname hadoop132

然后跳回hadoop128中添加授信

[root@CentOS ~] ssh hadoop128
[root@hadoop128 ~] ssh-copy-id  hadoop132 # hadoop132为新增
[root@hadoop128 ~] ssh hadoop132
2.通过前文我们写过的xsync脚本再次修改 将新增节点的信息写入到脚本文件xsync中(注意缩进

代码如下(示例):

#!/bin/bash

#判断参数个数
#!/bin/bash

#判断参数个数
if [ $# -lt 1 ];then
	echo Not Enough Arguement !
	exit;
fi

#遍历所有机器
for host in hadoop128 hadoop134 hadoop135  hadoop132   #hadoop132为新增的节点
do
	echo =====================$host========================
	# 遍历目录,挨个发送
	for file in $@
	do
		if [ -e $file ];then
			#获取父目录
			pdir=$(cd -P $(dirname $file) ; pwd)
			#获取当期文件名称
			fname=$(basename $file)
			ssh $host "mkdir -p $pdir"
			rsync -av $pdir/$fname $host:$pdir
		else
			echo $file is not exist !
		fi
	done
done

二、启动新增节点

1.利用xsync脚本将hadoop128上的所有文件同步至新节点hadoop132中 执行
[root@hadoop128 sbin] xsync ../../hadoop-3.1.3/

完成后查看

[root@hadoop128 sbin] ssh hadoop132
[root@hadoop132 ~] cat /opt/module/hadoop-3.1.3/etc/hadoop/core-site.xml

在这里插入图片描述
发现和hadoop132上的core-site.xml内容一致 可以断定 新增节点132上的所有配置文件已完成同步

重点:首先通过上文我们已经启动了hadoop集群
如下图所示
在这里插入图片描述
现在演示的为 在多台服务器都在运行的环境中 热增加节点(不用关闭集群重新启动的情况)

首先:在hadoop132上启动datanode节点

[root@hadoop132 ~] cd /opt/module/hadoop-3.1.3/sbin/
[root@hadoop132 sbin] hadoop-daemon.sh start datanode
…
…

启动完毕后查看一下hadoop132服务器jps进程情况
在这里插入图片描述
正常

2.然后启动数据同步命令(重点)
[root@hadoop132 sbin] start-balancer.sh 

执行这行命令以后,如果其余三台服务器上都有大量的冗余数据,会导致同时回写新增节点hadoop132,这时有可能会造成资源竞争问题,导致新节点阻塞而不能正常提供服务。

提示:可以通过设置回写带宽来调整回写速度,这样在既保证了提供服务的情况下,还可以一边回写数据。

启动yarn

[root@hadoop132 sbin] yarn-daemon.sh start nodemanager

然后在hadoop132上查看Jps进程
在这里插入图片描述
同时具备这两个进程 表明 新节点已经同步和增设完毕了已经 正常 新增服务器节点增设完毕!结束

  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

愚者oO

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值