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

Posted 一个程序媛的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hadoop+Spark+hbase集群动态增加节点相关的知识,希望对你有一定的参考价值。

如果一个集群资源不够用需要扩展的时候怎么办,那么是可以不关机动态扩展的,具体操作如下:

已有集群:
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.sh
start datanode 启动DataNode进程
yarn-daemon.sh
start nodemanager 启动NodeManager进程

4.spark新增worker节点

start-slave.sh
spark://lyy1:7077 启动Worker进程

5.hbase新增RegionServer

hbase-daemon.sh
start regionserver 启动HRegionServer进程
hbase-daemon.sh
start zookeeper 启动HquorumPeer进程
hbase shell中输入status查看集群状态

6.负载均衡

如果不balance,那么cluster会把新的数据都存放在新的node上,这样会降低工作效率:
查看hdfs节点状态:hdfs
dfsadmin –report
1048576(=1Mb/s)
104857600(=100Mb/s)
hdfs
dfsadmin -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的监控页面上查看到节点。



以上是关于hadoop+Spark+hbase集群动态增加节点的主要内容,如果未能解决你的问题,请参考以下文章

hadoop/spark/hbase集群 动态缩容/扩容

云计算集群搭建记录[Hadoop|Zookeeper|Hbase|Spark | Docker]更新索引 |动态更新

Hadoop+Spark+Zookeeper+Hbase集群搭建

Hadoop+Spark+Zookeeper+Hbase集群搭建

Hadoop+Spark+Zookeeper+Hbase集群搭建

《hadoop 集群搭建spark安装Hbase安装Hive安装Kafka安装》