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

Posted

tags:

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

参考技术A 卸载节点一般不建议直接停掉,需要先将其排除在集群之外,在主节点上编辑配置文件:$HADOOP_HOME/etc/hadoop/hdfs-site.xml

在datanode-deny.list中加入要卸载的节点名称,如:slave3

[图片上传失败...(image-268887-1589181513073)]

卸载节点后,刷新节点信息:

./bin/hdfs dfsdmin -refreshNodes会看到节点变成Dead和Decommissioned状态,如下图:

该命令执行后,同时会强制重新加载配置 ,在后台进行Block块的移动

[图片上传失败...(image-71d33c-1589181513074)]

卸载成功后,再停止节点:

./sbin/hadoop-daemon.sh stop datanode

./sbin/yarn-daemon.sh stop nodemanager

如果希望下次自动启动,修改集群中所有节点的slaves配置文件,具体目录 $HADOOP_HOME/etc/hadoop/slaves

首先准备一台hadoop节点,参考 hadoop、spark install

在hadoop子节点上,HADOOP_HOME目录下启动hdfs: ./sbin/hadoop-daemon.sh --config /usr/hadoop/hadoop-2.7.7/etc/hadoop/ start datanode

启动nodeManage(这个命令会确定其他子节点的nodeManage,可以把该节点的slaves文件中其他节点去掉): ./yarn-daemons.sh --config /usr/hadoop/hadoop-2.7.7/etc/hadoop/ start nodemanager

在主节点上刷新节点信息: ./bin/hdfs dfsadmin -refreshNodes;使用命令可以均衡数据:./sbin/start-balancer.sh

如下图,节点又重新加入了集群

[图片上传失败...(image-a892c6-1589181513074)]

如果希望下次自动启动,修改集群里机器的所有slaves配置文件,具体目录 $HADOOP_HOME/etc/hadoop/slaves

在想要去掉的节点上,SPARK_HOME 目录下执行 ./sbin/stop-slave.sh 即可去掉spark节点。这样操作可以临时去掉spark节点,如果想永久去掉节点,需要在主节点的SPARK_HOME/conf/slaves 文件中去掉子节点

如图,原有三个spark节点

[图片上传失败...(image-50e48c-1589181513074)]

执行./sbin/stop-slave.sh 后,一台节点的状态变成了DEAD

[图片上传失败...(image-c12af8-1589181513074)]

如果希望下次自动启动,修改集群里机器的所有slaves配置文件,具体目录 $SPARK_HOME/conf/slaves

首先准备一台spark节点,参考 hadoop、spark install

在spark子节点上,SPARK_HOME 目录下执行 ./sbin/ start-slave.sh spark://<master>:7077,该子节点即可加入mster集群。

如图,扩容后,集群增加了子节点

[图片上传失败...(image-35bb79-1589181513074)]

如果希望下次自动启动,修改集群里机器的所有slaves配置文件,具体目录 $SPARK_HOME/conf/slaves

在要卸载的子节点上,HBASE_HOME/bin目录下,执行 ./graceful_stop.sh 子节点的hostname,即可卸载子节点。

该命令会自动关闭Load Balancer,然后Assigned Region,之后会将该节点关闭。除此之外,你还可以查看remove的过程,已经assigned了多少个Region,还剩多少个Region,每个Region 的Assigned耗时。

最终要在hbase shell 中关闭balance_switch :balance_switch false,然后再开启:balance_switch true

首先准备一台hbase节点,参考 hbase(2.0.0) install

在新的子节点 HBASE_HOME 目录下,执行 ./bin/hbase-daemon.sh start regionserver 启动节点

在主节点上编辑HBASE_HOME/conf/regionservers文件,增加新的子节点

在新的子节点上,打开hbase shell,执行 balance_switch true 开启集群自动balance.

hbase 本来有两个节点,如下图:

[图片上传失败...(image-182c39-1589181513074)]

增加新节点后变成了三个:

[图片上传失败...(image-991e21-1589181513074)]

参考:

https://blog.51cto.com/6738767/1943228?utm_source=oschina-app

https://blog.csdn.net/xgjianstart/article/details/78437374

http://www.023dns.com/server_ECS/4225.html

hadoop安装


hbase 单节点配置start
vim /etc/profile
export JAVA_HOME=/home/jdk7
export HBASE_HOME=/home/hbase
export PATH=$PATH:$HBASE_HOME/bin:$JAVA_HOME/bin

source /etc/profile

vim hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>file:/home/hbase/data</value>
</property>

!! 重要

本机hosts 文件 113.209.111.99 jdu4e00u53f7
主机host 192.168.0.3 jdu4e00u53f7

---- hbase 单节点配置end

以上是关于hadoop/spark/hbase集群 动态缩容/扩容的主要内容,如果未能解决你的问题,请参考以下文章

hadoop执行hdfs的指令出错 ./hadoop dfs mkdir 出错

hadoop 启动ha错误 nice: /bin/hdfs: No such file or directory

Hadoop+Hbas完全分布式安装部署

大数据调度平台分类(Oozie/Azkaban/AirFlow/DolphinScheduler)

hadoop测试时,出现./hadoop: line 258: /cygdrive/c/Program: No such file or directory,怎么解决?

spark-submit报错/xxx/bin/spark-class: line 100: exec: : not found