一、前提说明
1.本博客仅针对《大数据基础教程、实验和案例教程---林子雨版》一书中“第5章HBase的安装和基础编程”中缺少的HBase分布式配置内容给出个人解决方案。若本博客会对林子雨先生产生了任何消极影响或涉及到任何对林先生的侵权行为,请及时联系笔者删除,以避免造成不良后果,谢谢!
2.该博客仅针对HBase分布式配置给出参考解决方案,前提要求读者JDK,SSH,Hadoop已经安装,并可正常执行分布式实例
二、分布式HBase配置
1.HBase下载、解压、安装、配置环境变量、添加用户权限(按书中步骤可快速完成,在名为master的电脑上操作)
2.分布式配置过程
2.1 配置hbase-env.sh文件(名为master的电脑上操作)
hadoop@master:~$ vim /usr/local/hbase/conf/hbase-env.sh #使用vim编辑器打开需配置文件
进行入下图配置
修改完成,保存hbase-env.sh文件并退出vim编辑器
2.2 配置hbase-site.xml文件(名为master的电脑上操作)
hadoop@master:~$ vim /usr/local/hbase/conf/hbase-site.xml #使用vim编辑器打开需配置文件
进行如下配置(master是我的主节点机名,slave1是我的一个从节点机名,请读者结合个人情况对相应节点进行的修改、添加、删除等灵活性操作)
、
保存并退出。
2.3 配置regionservers(名为master的电脑上操作)
hadoop@master:~$ vim /usr/local/hbase/conf/regionservers #使用vim编辑器打开需配置文件
删除原内容localhost,并进行如下配置,保存并退出
2.4 复制hbase到从节点(slave1)中,若有多个slave请进行重复性操作 (名为master的电脑上操作)
hadoop@master:~$ scp -r /usr/local/hbase slave1:/usr/local #将hbase发送到slave1中
2.4.1 如该语句无任何报错或不良提示,可直接进行HBase的启动与测试
2.4.2 若该语句执行后有如下提示:
scp: /usr/local/hbase: Permission denied 说明无权访问
可进行如下方式操作
- hadoop@master:~$ cd /usr/local #切换目录
- hadoop@master:/usr/local$ tar -zcf ~/hbase.master.tar.gz ./hbase #将hbase文件夹进行压缩复制
- hadoop@master:/usr/local$ cd ~ #切换到根目录
- hadoop@master:~$ scp ./hbase.master.tar.gz slave1:/home/hadoop #将压缩包发送到slave1的指定文件夹内
若出现如下结果,则发送成功
hbase.master.tar.gz 100% 107MB 107.3MB/s 00:01
发送成功后在slave1(节点电脑)上进行如下操作
hadoop@slave1:~$ sudo tar -zxf ~/hbase.master.tar.gz -C /usr/local #解压
hadoop@slave1:~$ sudo chown -R hadoop /usr/local/hbase #修改文件权限,以便直接访问
若对分布式配置仍存在问题可参考如下网址:
https://mp.weixin.qq.com/s?src=11×tamp=1562062299&ver=1704&signature=Xfm1p8DBsZ1H-94k*mySiFqpHimFlhA6-xvFoToKOeQ4pmyCOLfAMIRicnnf7qYbD7VXP4YL1HugkXPpUlOzE-hCAYnpH*1waoaFQQN3hm0pWy33OowRWIPZXtBk77OC&new=1
三、启动并运行HBase(在master所在电脑上操作)
注意: 启动顺序: hadoop-> hbase
停止顺序:hbase-> hadoop
3.1 启动hadoop
hadoop@master:~$ cd /usr/local/hadoop
hadoop@master:/usr/local/hadoop$ ./sbin/start-dfs.sh #启动hadoop
3.2 启动hbase
hadoop@master:/usr/local/hadoop$ cd /usr/local/hbase
hadoop@master:/usr/local/hbase$ bin/start-hbase.sh #启动hbase
3.3 然后通过指令jps分别查看master和slave1上的进程
master有如下进程
Jps、HMaster、HQuorumpeer、NameNode、HRegionserver、SecondaryNameNode
slave1有如下进程
HRegionServer、HQuorumpeer、DataNode、Jps
则表示HBase启动成功
四、通过HBase Shell模式测试HBase
如本人在master机上向HBase中创建了一张表,并填充了数据
然后在slave1上通过list和get指令查看可知同样也存在该张表
五.关闭HBase和Hadoop(先关hbase,再关hadoop)
cd /usr/local/hbase
bin/stop-hbase.sh
cd /usr/local/hadoop
./sbin/stop-dfs.sh
至此,分布式HBase的配置已经完成了
该博客是笔者借助《大数据基础教程、实验和案例教程---林子雨版》一书并结合其它博主方法针对性的解决问题,具有很大的局限性,但也希望能够给向我一样初学大数据的小白提供一种解决办法。
若该博客能对您有所帮助,请点赞或评论!
若该博客存在问题,请评论区交流指正!