在安装hbase之前我们要安装jdk和hadoop如果这些安装我就不说了,之前博客写过,hbase和zookeeper介绍我们会写以后博客介绍,我们在这里只做安装步骤。
1,准备工作:
1),jdk 1.8
2),hadoop 2.7.4
3),hbase 1.2.6
4),zookeper 3.4.9 (这些都是互相兼容版本)
5,)4台机器(t124,t125,t126,t127)
2,安装hbase(完全分布式 4台机器)
1,首先解压hbase
tar -zxvf hbase-1.2.6.tar.gz -C /opt/modules/
2,创建符号链接
ln -s hbase-1.2.6 hbase
3,配置环境变量
1, sudo nano /etc/profile
2,在环境变量下添加如下,并退出
#hbase
export HBASE_HOME=/opt/modules/hbase
export PATH=$PATH:$HBASE_HOME/bin 3,使环境变量生效
source /etc/profile
4,验证hbase
hbase -version
4,进入hbase的安装包下的conf目录下:
1,编辑hbase-env.sh
1,配置jdk
export JAVA_HOME=/opt/modules/jdk
2,使用外部zookeeper管理hbase
export HBASE_MANAGES_ZK=flase
2,编辑hbase-site.xml
1,配置zk本地数据存放目录,
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/centos/hbase/zk</value>
</property>
2, 启用分布式集群
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
3, 配置hbase在hdfs上存储
<property>
<name>hbase.rootdir</name>
<value>hdfs://t124:8020/user/hbase</value>
</property>
4, 指定zk的配置信息
<property>
<name>hbase.zookeeper.quorum</name>
<value>t125:2181,t126:2181,t127:2181</value>
</property>
3,编辑regionservers文件
t125
t126
t127
3,配置zookeeper(完全分布式 3台机器)
1,首先解压zookeeper
tar -zxvf zookeeper-3.4.9.tar.gz -C /opt/modules/
2,创建符号链接
ln -s zookeeper-3.4.9 zk
3,配置环境变量
1, sudo nano /etc/profile
2,在环境变量下添加如下,并退出
#zk
export ZK_HOME=/opt/modules/zk
export PATH=$PATH:$ZK_HOME/bin 3,使环境变量生效
source /etc/profile
4,进入到zookeeper的conf目录下
1,cp zoo_sample.cfg zoo.cfg 并编辑zoo.cfg
1,进去后把没有的内容删掉留下如下字段
tickTime=2000 默认值
initLimit=10 默认值
syncLimit=5 默认值
dataDir=/home/had/zookeeper 把这个路径改成你自己的用户下的一个目录下,最好创建一个
zookeeper目录
clientPort=2181 默认值
2,添加集群
server.1=t125:2888:3888
server.2=t126:2888:3888
server.3=t127:2888:3888
3,退出
4,在之前用户目录的zookeeper目录下创建一个myid文件
touch myid
4,分发机器和后续的零碎
1,分别进入hbase和zookeeper的所在的目录上,不是目录里。使用scp命令把我们安装包分别分发到另外的3个机器,
scp -r hbase/ admin@node22:`pwd` admin=你的用户 node22=你的机器名
pwd=你要把总共目录放在另外的那台机器上
列如: scp -r hbase/ had@t125:/opt/modules/
(注意在分发后个个机器的安装包要给上符号链接要不你之前配置的都不管用的)
2,把分发后的机器加上环境变量,前写的有
3,在分发后的机器的用户目录上创建zookeeper目录和目录下的myid文件
4,给myid写入值
t125 myid里写入 1
t126 myid里写入 2
t127 myid里写入 3
5,这样我们配置的信息就OK
5,测试hbase和zookeeper
1, 首先我们把hadoop的hdfs打开 start-dfs.sh
2,启动hbase start-hbase.sh
3, zkServer.sh start 分别在t125、t126、t127上执行这个命令
4,查看进程
========t124==========
5732 HMaster 1
1822 NameNode
6718 Jps
2111 ResourceManager
========t125==========
5520 Jps
1523 NodeManager
4215 HRegionServer 1
1386 DataNode
4058 QuorumPeerMain 2
1452 SecondaryNameNode
3500 ZooKeeperMain 2 这个是调用zookeeper命令, zkCli.sh 他开启的
========t126==========
1557 DataNode
3177 QuorumPeerMain 2
3340 HRegionServer 1
4301 Jps
1630 NodeManager
========t127==========
3446 HRegionServer 1
1624 NodeManager
3289 QuorumPeerMain 2
1550 DataNode
4334 Jps
如下我标记的1的是hbase进程,2的zookeeper进程,如果没错的话看下一步5,进入zookeeper的命令窗口
zkCli.sh 我这个是在t125机器上运行的
我们会发现他多了一个hbase的节点
6,在浏览器上访问他的webui 默认端口是16010 ,必须是开启Hmaster这个进程的机器才能访问
如果以下都没错的话,那么你的环境就搭建成功了!