环境
hbase-0.90.4
hadoop-0.20.2
配置文件
hbase-env.sh
hbase-site.xml
regionservers
hbase-env.sh设置hbase环境变量
hbase-site.xml设置hbase相关参数就在该文件
regionservers指定region server列表,网上说应该用机器名
修改hbase-env.sh
export JAVA_HOME=java home目录
export HBASE_CLASSPATH=hadoop的conf目录
export HBASE_MANAGES_ZK=true 设置hbase管理zookeeper
修改hbase-site.xml
<property>
<name>hbase.master</name> //master机器名与端口
<value>master-desktop:60000</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master-desktop:54310/hbase</value> //与fs.default.name设置的机器名与端口一致
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>server67,server22,server33</value> //必须为奇数与zookeeper机制有关我设置测试也没事
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.property.maxClientCnxns</name>
<value>300</value>
</property>
regionservers文件加入
server67,server22,server33 //注意是机器名
将整个hbase的目录scp到每个regionserver机器
在master机器上./start-dfs.sh启动dfs服务
./start-hbase.sh启动 hbase
jps查看服务
9179 SecondaryNameNode
9361 HMaster
8957 NameNode
9928 Jps
说明启动成功
常见问题
org.apache.hadoop.ipc.RPC$VersionMismatch: Protocol org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch. (client = 42, server = 41)
处理方法
删除把hbase-0.90.3/lib中的hadoop-core-0.20-append-r1056497.jar
将hadoop core.jar ant.jar tools.jar拷贝到hbase/lib下就ok
master-desktop:/opt/hbase-0.90.4/bin$ ./hbase shell //进入hbase 命令行
创建表
hbase(main):006:0> create 'test', 'cf'
0 row(s) in 2.5190 seconds
查看表
list
插入数据
hbase(main):007:0> put 'test', 'row1', 'cf:a', 'value1'
0 row(s) in 0.1160 seconds
hbase(main):008:0> put 'test', 'row2', 'cf:b', 'value2'
0 row(s) in 0.0130 seconds
查看数据
hbase(main):009:0> scan 'test'
ROW COLUMN+CELL
row1 column=cf:a, timestamp=1320653219927, value=value1
row2 column=cf:b, timestamp=1320653236889, value=value2
2 row(s) in 0.0480 seconds
查询指定行
hbase(main):010:0> get 'test', 'row1'
COLUMN CELL
cf:a timestamp=1320653219927, value=value1
1 row(s) in 0.0150 seconds
删除test
hbase(main):011:0> disable 'test'
0 row(s) in 2.0520 seconds
hbase(main):012:0> drop 'test'
0 row(s) in 1.2670 seconds
退出shell
hbase(main):013:0> exit
关闭hbase
./stop-hbase.sh