公司本地:
官网下载:
官网的安装步骤:单机模式、伪分布式、分布式,但安装步骤比较简单,本次记录的是分布式安装。
hbase-0.90.5据官网文档说吻合hadoop-0.2x版本
安装步骤:
PS:前提已安装了jdk和hadoop;本人环境是hadoop-0.21 ; 可以独立安装zookeeper,但本次安装中使用hbase中
自带服务进行运行。
1. cd /data && wget
2. tar -zxvf hbase-0.90.5.tar.gz && chown -R hadoop:hadoop hbase-0.90.5 (我hadoop环境和hive环境都是运行
在hadoop用户和组上,所以为了统一也把hadoop运行在hadoop用户上)
3. 修改hbase-env.sh 设置相应的环境变量
jdk环境变量: export JAVA_HOME=/usr/java/jdk1.6.0_21/
日志环境变量: export HBASE_LOG_DIR=${HBASE_HOME}/log/hbase
如果启动的时候发现寻找不了HBASE_HOME可以添加 export HBASE_HOME=/data/hbase-0.90.5
打开zk管理: export HBASE_MANAGES_ZK=true
4. 修改hbase-site.xml,配置hbase
配置hbase中在hadoop的根路径
打开集群模式
false: standalone and pseudo-distributed setups with managed Zookeeper
true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)
hbase.cluster.distributed设置为true,表明是完全分布式的hbase集群
配置hbase所使用端口
配置多路zookeeper,官网提示的个数最好为奇数(3,5,7)
The directory where the snapshot is stored.
5. 编辑regionservers文件,设置regionservers的服务器,和hadoop的slaves一样即可
6. 将本机已配置好的hbase,整个打一一个包,传输到其它各个节点中。
7. 启动hbase
${HBASE_HOME}/bin/start-hbase.sh (停止为${HBASE_HOME}/bin/stop-hbase.sh)
------------------------------------------------------------------------------------
Hbase默认只有一个Master,我们可以也启动多个Master:
${HBASE_HOME}/bin/hbase-daemon.sh start master
不过,其它的Master并不会工作,只有当主Master down掉后其它的Master才会选择接管Master的工作
------------------------------------------------------------------------------------
启动中可能出现这样的问题:
org.apache.hadoop.ipc.RPC$VersionMismatch: Protocol org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch. (client = 42, server = 41)
hadoop 与 hbase版本兼容问题
我是这样解决的:
把/data/hadoop-0.20.2/hadoop-0.20.2-core.jar /data/hbase-0.90.5/lib/hadoop-core-0.20-append-r1056497.jar 进行复制
(复制前可以备份一下被覆盖的jar包),copy过来后,记得文件的权限用户归属的也要和前jar包一样。
然后重启,就可以让hbase正常运行。
8.登录hbase
/data/hbase-0.90.5/bin/hbase shell
见到如上见面可以说明你的hbase安装成功
通过连点查看信息
通过 查看zookeeper信息