前面做了基于Hbase自带Zookeeper的安装配置(参考 http://blog.csdn.net/wzy0623/article/details/51241641),今天做了个基于独立Zookeeper集群的。

一、实验环境
3台CentOS release 6.4虚拟机,IP地址为
192.168.56.101 master
192.168.56.102 slave1
192.168.56.103 slave2

master作为hadoop的NameNode、SecondaryNameNode、ResourceManager,hbase的HMaster
slave1、slave2作为hadoop的DataNode、NodeManager,hbase的HRegionServer
同时master、slave1、slave2作为三台zookeeper服务器

hadoop 2.7.2
hbase 1.2.1
zooeeper 3.4.8

二、安装配置zooeeper
# 在master上执行以下命令
cd /home/grid/
tar -zxvf zookeeper-3.4.8.tar.gz
ln -s zookeeper-3.4.8 zookeeper
cd zookeeper
mkdir data
cd conf

vi zoo.cfg
# 在配置文件中添加如下内容
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/grid/zookeeper/data
clientPort=2181
server.1=192.168.56.101:2888:3888
server.2=192.168.56.102:2888:3888
server.3=192.168.56.103:2888:3888

vi /home/grid/zookeeper/data/myid
# 内容就是1
1

scp -r /home/grid/zookeeper slave1:/home/grid/
scp -r /home/grid/zookeeper slave2:/home/grid/

# 在slave1上执行以下命令
vi /home/grid/zookeeper/data/myid
# 改为2
2

# 在slave2上执行以下命令
vi /home/grid/zookeeper/data/myid
# 改为3
3

三、配置hbase的zookeeper
# 在master上执行以下命令
vi /home/grid/hbase/conf/hbase-site.xml
# 修改下面的两个属性
<property>
    <name>hbase.zookeeper.quorum</name>
    <value>192.168.56.101,192.168.56.102,192.168.56.103</value> # 指定 zookeeper 集群节点名 , 因为是由 zookeeper 表决算法决定的
</property>

<property>
    <name>hbase.zookeeper.property.dataDir</name> # 指 zookeeper 集群 data 目录
    <value>/home/grid/zookeeper/data</value>
</property>

把配置文件拷贝到另外两个RegionServer节点
scp /home/grid/hbase/conf/hbase-site.xml slave1:/home/grid/hbase/conf/
scp /home/grid/hbase/conf/hbase-site.xml slave2:/home/grid/hbase/conf/

四、测试
1. 分别启动三个zookeeper服务器
/home/grid/zookeeper/bin/zkServer.sh start
用jps可以看到QuorumPeerMain进程,如图1所示


图1


2. 启动hadoop和hbase
$HADOOP_HOME/sbin/start-dfs.sh
$HADOOP_HOME/sbin/start-yarn.sh
/home/grid/hbase/bin/start-hbase.sh
master上jps看到进程,如图2所示


图2

slave1、slave2上jps看到进程,如图3所示


图3


zkCli.sh中看到hbase如图4所示


图4

http://192.168.17.210:16010/master-status中看到如图5所示


图5


参考:

Zookeeper分布式安装手册


Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐