文章更新于:2020-05-05
注1:JDK 版本适配参见:Table 2. Java support by release line
注2: HADOOP 版本适配参见:Hadoop version support matrix
安装惯例,需要的文件附上链接放在文首。
文件名:hbase-2.1.10-bin.tar.gz
文件大小:220.88MB
下载链接:http://download.csdn.net/download
SHA256: 7A51A8A586C05E9602001AB635D107DA82C45BC789E4D0E7F12F3564221C9AD1
文件名:hbase-2.2.4-bin.tar.gz
文件大小:213.24 MB
下载链接:http://download.csdn.net/download
SHA256: EC91B628352931E22A091A206BE93061B6BF5364044A28FB9E82F0023ACA3CA4
下载安装配置 HBASE
一、下载 HBASE 2.2.4
下载方式 | 下载链接 | 备注 |
---|---|---|
官网下载 | hbase.apache.org/downloads.html | 下载速度慢 |
北京理工大学镜像站 | mirror.bit.edu.cn | |
清华大学镜像站 | mirrors.tuna.tsinghua.edu.cn | 下载速度快 |
CSDN 下载站 | http://download.csdn.net/download |
二、安装 HBASE
2.1、找到下载的 hbase
如果你是使用虚拟机进行安装,你可以直接在虚拟机里面下载,这样可以免去传送文件的步骤。
如果你需要从宿主机传送文件到客户机,你可以使用 scp
命令:
# 在宿主机命令行执行以下命令:
scp 文件名 虚拟机用户名@虚拟机的IP:虚拟机保存文件的路径
# 比如:
scp hbase-2.2.4-bin.tar.gz bigdata@192.168.11.136:/home/bigdata
2.2、安装 hbase 2.2.4
sudo tar -zxvf hbase-2.2.4-bin.tar.gz -C /usr/local/ | tail -n 10
cd /usr/local
sudo mv hbase-2.2.4/ hbase
sudo chown -R bigdata:bigdata hbase
2.2、配置环境变量
# 在 ~/.bashrc 文件中追加下面这条语句
export PATH=/usr/local/hbase/bin:$PATH
# 然后就可以在任意位置执行 hbase version 查看版本了
source .bashrc # 使配置立即生效
hbase version
# 如可正常显示版本,即安装成功。
注:上面截图中找到了两个可用的 binding
,但不影响使用,它会自己选择一个来用。
三、HBASE 的单机配置
3.1、配置 hbase-env.sh
# 将 /usr/local/hbase/conf/hbase-env.sh 中下面行的注释去掉
# 这一行是设定 JAVA_HOME 的路径
export JAVA_HOME=/usr/local/jdk/
# 这一行是指定 hbase 自己管理 zookeeper
export HBASE_MANAGES_ZK=true
3.2、配置 hbase-site.xml
# 在 /usr/local/hbase/conf/hbase-site.xml 文件中添加以下内容
# 主要是设定 hbase 的数据存储位置,默认是 /tmp/xxx 容易丢失。
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///usr/local/hbase/hbase-tmp</value>
</property>
</configuration>
3.3、启动/停止 hbase
# 启动 hbase
start-hbase.sh
# 打开 hbase 命令行
hbase shell
# 停止 hbase
stop-hbase
四、HBASE 的伪分布式配置
4.1、配置 hbase-env.sh
# 在 /usr/local/hbase/conf/hbase-env.sh 中添加或取消注释下面三行
export JAVA_HOME=/usr/local/jdk/
# export HBASE_CLASSPATH=/usr/local/hadoop/etc/hadoop
export HBASE_MANAGES_ZK=true
4.2、配置 hbase-site.xml
在 /usr/local/hbase/conf/hbase-site.xml
中添加或更改以下内容:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
</configuration>
4.3、报错处理
如果在启动的时候出现下面这个错误:
可以添加 wal.dir
项。
2020-05-05 17:21:00,846 WARN [RpcServer.default.FPBQ.Fifo.handler=29,queue=2,port=16000] master.Mast
erRpcServices: .hbase.wal.WALFactory.getWAL(WALFactory.java:286)
at org.apache.hadoop.hbase.regionserver.HRegionServer.getWAL(HRegionServer.java:2181)
at org.apache.hadoop.hbase.regionserver.HRegionServer.buildServerLoad(HRegionServer.java:1387
)
2020-05-05 08:57:07,341 ERROR [main] regionserver.HRegionServer: Failed constructio
n RegionServer
java.lang.NoClassDefFoundError: org/apache/htrace/SamplerBuilder
at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:644)
at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:628)
at org.apache.hadoop.hdfs.DistributedFileSystem.initialize(DistributedFileS
ystem.java:149)
如果出现因安全问题导致错误之类的,
可以添加 hbase.unsafe.stream.capability.enforce
选项
最后 hbase-site.xml
的文件内容如下:
<configuration>
<property>
<name>hbase.wal.dir</name>
<value>file:///tmp/wal.dir</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
</configuration>
如果出现 Failed construction RegionServer
错误:
把/hbase-2.1.2/lib/client-facing-thirdparty目录下的htrace-core-3.1.0-incubating.jar
复制到/hbase-2.1.2/lib即可。
refer:toward_south
4.3、启动/停止 hbase
# 先启动 hdfs
start-dfs.sh
# 再启动 hbase
start-hbase.sh
# 先停止 hbase
stop-hbase.sh
# 再停止 hdfs
stop-dfs.sh
# 如果 jps 发现还有一个server左右停止,可以
#停止regionserver
hbase-daemon.sh stop regionserver RegionServer
#启动regionserver
hbase-daemon.sh start regionserver RegionServer
#重启regionserver
graceful_stop.sh --restart --reload --debug nodename
4.4、通过web界面访问
启动 hbase 之后,还可以通过端口 16010
访问 Hbase web 界面。