博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
手把手教你配置Hbase完全分布式环境
阅读量:6341 次
发布时间:2019-06-22

本文共 2413 字,大约阅读时间需要 8 分钟。

  hot3.png

HBase配置相对比较简单,下面的教程也是基于我上面2Hadoop配置的环境下继续往下添加HBase的分布式配置,这次我的HBase安装目录放在跟Hadoop同一目录下面,节点信息跟我前一篇Hadoop完全分布式配置完全一样,不清楚的话可以参考我那篇文章。

HBase根目录:/usr/mywind/hbase

HBase的版本:0.98.8-hadoop2

有图有真相:

完整配置步骤:hadoop-env.shhbase-env.sh → hbase-site.xml → regionservers

当然,配置之前的惯例是把bin目录加到系统环境变量里面,方便命令的使用。然后,详细的步骤如下:

1.    配置hadoop-env.sh,把HBase环境变量告诉Hadoop。

export HBASE_HOME=${HBASE_HOME}
export HADOOP_CLASSPATH=$HBASE_HOME/hbase-it-0.98.8-hadoop2.jar:$HBASE_HOME/hbase-it-0.98.8-hadoop2-tests.jar:$HBASE_HOME/conf:${HBASE_HOME}/lib/zookeeper-3.4.6.jar:${HBASE_HOME}/lib/protobuf-java-2.5.0.jar:${HBASE_HOME}/lib/guava-12.0.1.jar

2. 配置hbase-env.sh,把Java环境变量告诉HBase,并配置ZooKpeer是否托管。

export JAVA_HOME=${JAVA_HOME}export HBASE_HEAPSIZE_ZK=false

3.   配置hbase-site.xml,引用管网的话“假如你第一次配置,那么<configuration></configuration>之间是没有任何内容的”。

hbase.rootdir
hdfs://192.168.8.184:9000/hbase
hbase.cluster.distributed
true
hbase.master
master:60000
hbase.zookeeper.property.dataDir
/home/a01513/zookeeper
hbase.zookeeper.quorum
master,slave1,slave2,slave3
hbase.zookeeper.property.clientPort
2181

这里要特别注意的是hbase.rootdir里面的HDFS地址是要跟Hadoop 的core-site.xml里面的fs.defaultFS 的HDFS的IP地址或者域名、端口必须一致。其次是hbase.zookeeper.property.dataDir,其中a01513是我的操作系统用户名,根据你自己的情况改吧,或者放到其他目录也是可以的。hbase.cluster.distributed 是启用分布式模式,这里必须为true哦。hbase.zookeeper.quorum是配置集群IP地址集或者域名集,逗号分隔。hbase.master配置HBase的主节点端口,web端口是60010,通过web UI你可以确认你是否访问成功了。如下图表示成功了:

4.         最后配置regionservers,这个最简单了,把里面的内容改成下面的就可以了:

slave1slave2slave3

有图有真相,让你模仿起来更有信心:

 

配置完成后启动HBase就可以了:

start-hbase.sh

关于Shell命令、API文档,参考官网吧。

配置中可能遇到的问题:

1.   WARN  [Thread-12] hdfs.DFSClient: DataStreamer Exception

org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /hbase/.tmp/hbase.version could only be replicated to 0 nodes instead of minReplication (=1).  There are 0 datanode(s) running and no node(s) are excluded in this operation.

    问题定位:datanode

    问题原因:datanode没有启动

    解决办法:启动datanode(start-dfs.sh)

2.    执行sh start-hbase.sh时报错,命令兼容性原因还是什么,忘记了,总之,不能使用 sh start-hbase.sh ,要用bash start-hbase.sh。

转载于:https://my.oschina.net/lanzp/blog/348116

你可能感兴趣的文章
JQuery:JQuery捕获HTML
查看>>
js自动闭合html标签,自动补全html标记
查看>>
cpu进程调度---RT Throttling【转】
查看>>
在MapGuide 的Fusion Viewer的选择面板中显示超链接
查看>>
CentOS7下单机部署RabbltMQ环境的操作记录
查看>>
unity shader tags
查看>>
挺有意思的,队列,先进先出,排队进行!
查看>>
错误:“产品订单的调度参数没有被定义”
查看>>
机器视觉在带钢针孔检测中的应用
查看>>
ASP.NET WEB API 调试
查看>>
使用wget命令进行整站下载
查看>>
解读volatile
查看>>
zookeeper安装部署
查看>>
centos6——初始化脚本
查看>>
linux I/O优化 磁盘读写参数设置
查看>>
中断处理 I/O内存
查看>>
Java中的transient关键字
查看>>
私有网盘nextcloud 12的问题处理及优化
查看>>
思科设备VLAN之间通信配置
查看>>
mysql排错 (一)
查看>>