"""
hbase安装
"""
"""
服务器环境:Master,Slave1,Slave2,Slave3,其中Master,Slave1,Slave2已安装zookeeper服务,四台服务器已安装hadoop,且服务全部正常启动
"""
# 1.下载hbase:下载bin.tar.gz 结尾的文件
# 2.上传文件至Master的 /usr/local并解压,改名
tar -zxvf hbase-2.5.1-bin.tar.gz
mv hbase-2.5.1-bin hbase
# 3.修改配置文件
# 3.1配置java环境
vim /usr/local/hbase/conf/hbase-env.sh
# 根据自己的java环境配置目录
export JAVA_HOME=/usr/local/jdk8
export HBASE_MANAGES_ZK=false
# 3.2 配置hbase-site.xml, vim /usr/local/hbase/conf/hbase-site.xml
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 指定hbase在HDFS上存储的路径 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://Master:9000/hbase</value>
</property>
<!-- 指定zk的地址,多个用“,”分割 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>Master,Slave1,Slave2</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>./tmp</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
<property>
<name>hbase.master</name>
<value>Master:6000</value>
</property>
# 3.3 配置节点, vim /usr/local/hbase/conf/regionservers
Master
Slave1
Slave2
Slave3
# 45G新公参切换.分发配置到Slave1,Slave2,Slave3
scp -r /usr/local/hbase Slave1:/usr/local/
scp -r /usr/local/hbase Slave2:/usr/local/
scp -r /usr/local/hbase Slave3:/usr/local/
# 5.启动、停止hbase
start-hbase.sh
stop-hbase.sh
# 6.网页访问hbase
主节点:
支节点:
# 7.进入hbase
hbase shell
常见错误;
1.hbase启动报错: Will not attempt to authenticate using SASL (unknown error)
原因是hbase的配置文件hbase-site.xml的zookeeper端口号写错了
vim /usr/local/hbase/conf/hbase-site.xml 去掉zookeeper的端口号,然后重启zookeeper服务
zkServer.sh restart
2.hbase shell查询报错:ERROR: org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: Server is n
修改hbase-env.sh 把export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"注释放开,重启hbase服务即可