系统 | Red hat linux 6.4 |
Hadoop版本 | 1.2.1 |
Hbase版本 | 0.94.16 |
Hbase的完全分布式安装概述:
1. 配置hosts,确保涉及的主机名均可解析为ip
2. 编辑hbase-env.xml
3. 编辑hbase-site.xml
4. 编辑regionservers文件,文件默认内容是localhost
/home/grid/hbase/conf/regionservers,将所有的slavenode添加到这个文件
5. Hbase复制到其他节点
6. 启动Hbase
7. 验证
备注:我选择的版本不存在坚容性问题,所以无需覆盖core jar包
选择Hadoop和Hbase版本不同,可能会有不兼容的情况,
例如Hadoop 0.20
解决版本、jar包冲突:
1)删除hbase/lib/hadoop-core-0.20-append-r1056497.jar(备份到其它路径,以备万一);
2)拷贝hadoop/hadoop-core-0.20.203.0.jar(注意是hadoop根目录下),hadoop/lib/commons-collections-3.2.1.jar,hadoop/lib/commons-configuration-1.6.jar到hbase/lib下
Setp 1 下载解压hbase
Step 2 修改配置文件
第一个文件:/home/zhang/hbase/hbase-0.94.16/conf/hbase-env.sh
Step 3 设置环境变量
Step 4 配置/hbase/hbase-0.94.16/conf/hbase-site.xml
模板文件路径:~/hbase/hbase-0.94.16/src/main/resources/hbase-default.xml
拷贝需要的内容
添加修改到hbase-site.xml文件,内容如下:
hbase.rootdir :存放数据目录
hbase.rootdir
hdfs://node01:9000/hbase
打开分布模式:
hbase.cluster.distributed
true
设置临时文件目录:
hbase.tmp.dir
/home/criss/hbase/tmp
添加Zookeeper的节点主机名:
hbase.zookeeper.quorum
node01,node02,node03
hbase.zookeeper.property.dataDir
/home/criss/hbase/tmp/zookeeper
Property from ZooKeeper's config zoo.cfg.
The directory where the snapshot is stored.
Step 5 编辑/home/grid/hbase/conf/regionservers,将所有的slavenode添加到这个文件
我在hbase-site.xml 没有配置hmater,所以这里吧3台机都添加进去了
Step6将Hbase拷贝到其他节点机并对其他节点机配置环境变量
scp -r hbase/ node03:/home/criss/hbase
scp -r hbase/ node02:/home/criss/hbase
Step 7 启动Hbase
Step 8验证HMaster
Node01主机:
验证Node03和Node02主机:
Step 9 测试Hbase shell
Create ‘test’,’data’
Disable ‘test’
Dorp ‘test’
可以查看下tmp文件夹下生成的内容: