hadoop+Spark+hbase集群动态增加节点

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinadrew/article/details/79972557
如果一个集群资源不够用需要扩展的时候怎么办,那么是可以不关机动态扩展的,具体操作如下:
192.168.111.11 lyy1 ---master节点
192.168.111.12 lyy2
192.168.111.13 lyy3
192.168.111.14 lyy4
新增:
192.168.111.15 lyy5
192.168.111.16 lyy6

1.从lyy1节点克隆出两台虚拟机,保证所有配置和软件一样,然后修改ip和hostname
(本集群是基于proxmox的虚拟集群,可以很方便的复制、开关虚拟机等,如果是物理集群可以把master节点镜像拷贝给新节点)
vim /etc/network/interfaces
vim /etc/hostname
2.修改vim /etc/hosts,加入ip映射。使用批处理命令并同步到所有机器
for i in $(seq 1 6); do echo lyy$i; scp /etc/hosts root@lyy$i:/etc/;done
同时还要修改hadoop的workers,spark的slaves,hbase的regionservers,增加主机名
for i in $(seq 1 6); do echo lyy$i; scp /opt/hadoop-3.0.0/etc/hadoop/workers root@lyy$i:/opt/hadoop-3.0.0/etc/hadoop;done
for i in $(seq 2 6); do echo lyy$i; scp /opt/hbase-1.2.4/conf/regionservers root@lyy$i:/opt/hbase-1.2.4/conf;done
for i in $(seq 2 6);do echo lyy$i; scp /opt/spark-2.2.0-bin-hadoop2.7/conf/slaves root@lyy$i:/opt/spark-2.2.0-bin-hadoop2.7/conf;done

还要同步hbase-site.xml配置文件
for i in $(seq 2 6); do echo lyy$i; scp /opt/hbase-1.2.4/conf/hbase-site.xml root@lyy$i:/opt/hbase-1.2.4/conf;done
for i in $(seq 1 6); do echo lyy$i; ssh lyy$i "cp /opt/hbase-1.2.4/conf/hbase-site.xml /opt/spark-2.2.0-bin-hadoop2.7/conf && cp /opt/hbase-1.2.4/conf/hbase-site.xml /opt/hadoop-3.0.0/etc/hadoop";done

注:不用重启集群,直接在新增的节点上分别启动以下进程即可:
3.hadoop增加datanode节点
hadoop-daemon.shstart datanode 启动DataNode进程
yarn-daemon.shstart nodemanager 启动NodeManager进程
4.spark新增worker节点
start-slave.shspark://lyy1:7077 启动Worker进程

5.hbase新增RegionServer

hbase-daemon.shstart regionserver 启动HRegionServer进程
hbase-daemon.shstart zookeeper 启动HquorumPeer进程
hbase shell中输入status查看集群状态
6.负载均衡
如果不balance,那么cluster会把新的数据都存放在新的node上,这样会降低工作效率:
查看hdfs节点状态:hdfsdfsadmin –report
1048576(=1Mb/s)
104857600(=100Mb/s)
hdfsdfsadmin -setBalancerBandwidth 104857600
#设置不同节点之间复制数据的带宽是受限的,默认是1MB/s
start-balancer.sh -threshold 1
#设置如果某个datanode的磁盘里使用率比平均水平高出1%,Blocks向其他低于平均水平的datanode中传送, 也就是每个节点使用率相差不超过1%。
或者:
start-balancer.sh
stop-balancer.sh

负载均衡之前的使用率
负载均衡之后各节点硬盘使用率趋于平衡:

负载均衡之后的使用率
此外Hbase也需要负载均衡:
hbase shell中输入: balance_switch true
至此可以就完成了节点扩展,现在集群已经有6个节点了,可以分别在hadoop、spark、hbase的监控页面上查看到节点。


我准备写一个公众号技术博客,回顾我学大数据以来的个人经验,希望和大家一起每天进步一点点!刚刚开始写,请大家多多支持,如有不足之处多多包含,最后多多关注哈哈哈。


阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页