- 先准备好一台搭建了伪分布式和zookeeper的虚拟机
我这里Hadoop用的是2.7.3、zookeeper是3.4.9
1.下载hbase
2.修改${HBASE_HOME}/conf/文件
--------------2.1 hbase-env.sh
----------------------------(jdk路径、使用外部zk)
--------------2.2 hbase-site.xml
----------------------------(hbase的数据写入目录、声明分布式、zk指定物理路径)
--------------2.3 /etc/profile
----------------------------(hbase全局环境变量)
3.测试
下载
- tar -zxvf hbase-1.3.5-bin.tar.gz
拖进soft文件夹,进入此路径解压
修改配置问件时也可以去官网找找
修改${HBASE_HOME}/conf/文件
hbase-env.sh文件
- echo $JAVA_HOME
获取jdk路径 - cd /usr/soft/hbase-1.3.5/conf/
在此路径下 - vi hbase-env.sh
修改此文件
声明jdk路径和使用外部zookeeper
export JAVA_HOME=/usr/soft/jdk1.8.0_111/
export HBASE_MANAGES_ZK=false
hbase-site.xml文件
- vi hbase-site.xml
hbase.rootdir 声明将数据写入哪个目录
如果是单机版只要配置此属性就可以,value中file:/绝对路径,如果是分布式则配置与hadoop的core-site.sh服务器、端口以及zookeeper中事先创建的目录一致
声明hbase的根目录在hadoop里面(在装配zk的时候创建的/hbase文件夹)
这里建议在hosts里声明一下,下次地址变了改起来比较方便
love代表了我在hosts里声明的地址
<property>
<name>>hbase.rootdir</name>
<value>hdfs://love:9000/hbase</value>
</property>
单机模式不需要配置下面这个,分布式的话配置此项为true
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
单机模式不需要配置 分布式配置此项为zookeeper指定的物理路径名(就是装配zk的时候在soft下创建的 hbase 文件夹的路径)
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/usr/soft/hbase</value>
</property>
hbase环境变量
- vi /etc/profile
export HBASE_HOME=/usr/soft/hbase-1.3.5/
:$HBASE_HOME/bin
- source /etc/profile
激活环境变量
测试(依次启动所有服务)
-
start-all.sh
启动Hadoop
-
zkServer.sh start
启动zk
-
start-hbase.sh
启动hbase
成功!
全部启动后会是上面8个进程,如果多了一个ZookeeperMain也没关系; -
hbase shell
启动hbase客户端