前言
HBase集群的安装依赖于zookeeper,因为它的root表信息要保存在zk上,因此我们需要Hadoop高可用安装时的zookeeper集群
安装
- 将hadoop中配置文件目录中的hdfs-site.xml和core-site.xml拷贝到hbase/conf下
修改hbase-env.sh
export JAVA_HOME=/usr/jdk/jdk8 //禁用hbase自带的zk export HBASE_MANAGES_ZK=false
修改hbase-site.xml
<configuration> <!-- 指定hbase在HDFS上存储的路径 --> <property> <name>hbase.rootdir</name> <value>hdfs://ns1/hbase</value> </property> <!-- 指定hbase是分布式的 --> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <!-- 指定zk的地址,多个用“,”分割 --> <property> <name>hbase.zookeeper.quorum</name> <value>hadoop:2181,slave1:2181,slave2:2181</value> </property> </configuration>
修改regionservers文件,添加region server节点
slave1 slave2
拷贝habse文件夹到其它节点上
scp -r hbase-0.98/ slave1:/home/hadoop/software/ scp -r hbase-0.98/ slave2:/home/hadoop/software/
启动zk和dfs
zkServer.sh start start-dfs.sh //单节点启动 start-hbase.sh //执行上述命令的节点会运行HMaster进程,在regionservers文件中配置的节点上会启动HRegionServer进程
测试
在浏览器中输入:http://192.168.201.243:60010
在HMaster节点上执行hbase shell命令list //列出所有表 create 'user',{NAME=>'bi', VERSIONS=>3} //创建user表,列族名为bi,时间戳版本为3个 put 'user' ,'id01','bi:name','zlb' //向user表中插入row_key为id01的记录,其中bi列族中有列名为name,值为zlb get 'user','id01','bi' //得到user表中row_key为id01的bi列族信息