Linux巩固记录(6) Hbase环境准备-zookeeper安装

Hbase是运行在hadoop之上,所以请参考第3篇文章搭建好一个master,两个slave的hadoop环境,我采用的版本为hadoop2.7.4

不了解Hbase的同学可以参考下这篇文章,分析得相当深刻,感谢作者 http://blog.csdn.net/u010270403/article/details/51648462

 

为啥在安装Hbase前需要安装zookeeper?

1,hbase regionserver 向zookeeper注册,提供hbase regionserver状态信息(是否在线)

2,hmaster启动时候会将hbase 系统表-ROOT- 加载到 zookeeper cluster,通过zookeeper cluster可以获取当前系统表.META.的存储所对应的regionserver信息。

注意:zookeeper集群节点最少3台,这样才能满足选举规则,少数服从多数

 

忘了讲一个问题

集群中,所有节点的时间同步非常重要,所以要将所有节点的时间设置为一样,

当然,手动设置时间肯定不行,需要用到ntp来自动同步

#设置时区为上海
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


#安装ntp
yum -y install ntp

# 同步时间
ntpdate pool.ntp.org


#确认时间是否正确
date

#写回bios,防止重启后失效
hwclock -w

 

 

现在master节点上配置,配置好后复制到两个slave节点就好了

wget http://mirror.bit.edu.cn/apache/zookeeper/current/zookeeper-3.4.10.tar.gz

tar -zxvf zookeeper-3.4.10.tar.gz 

#进入conf目录
cp -p zoo_sample.cfg zoo.cfg

#编辑cfg文件
vi zoo.cfg

#内容修改为如下

# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just
# example sakes.
dataDir=/home/dataDir/zookeeper
#事物日志的存储路径,不配置会产生性能问题
dataLogDir=/home/dataDir/zookeeperDataLog
# the port at which the clients will connect clientPort=2181 # the maximum number of client connections. # increase this if you need to handle more clients #maxClientCnxns=60 # # Be sure to read the maintenance section of the # administrator guide before turning on autopurge. # # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance # # The number of snapshots to retain in dataDir autopurge.snapRetainCount=3 # Purge task interval in hours # Set to "0" to disable auto purge feature autopurge.purgeInterval=1 server.1=master:2888:3888 server.2=slave1:2888:3888 server.3=slave2:2888:3888
#所有节点
mkdir -p
/home/dataDir/zookeeper
#master
echo "1" > /home/dataDir/zookeeper/myid

#slave1
echo "2" > /home/dataDir/zookeeper/myid

#slave2
echo "3" > /home/dataDir/zookeeper/myid

#启动
/home/zookeeper-3.4.10/bin/zkServer.sh start /home/zookeeper-3.4.10/conf/zoo.cfg

#状态查看
[root@master conf]# /home/zookeeper-3.4.10/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /home/zookeeper-3.4.10/bin/../conf/zoo.cfg
Mode: follower
[root@master conf]#

#如果启动失败,查看日志
less zookeeper.out

#停止服务
[root@master conf]# /home/zookeeper-3.4.10/bin/zkServer.sh stop
ZooKeeper JMX enabled by default
Using config: /home/zookeeper-3.4.10/bin/../conf/zoo.cfg Stopping zookeeper ... STOPPED
[root@master conf]# jps
3589 Jps
[root@master conf]#

找到leader节点,并停掉,你会发现刚开始为follower的某个节点又变为leader了

 

至此zookeeper配置完成

 

发现了一篇详细介绍zookeeper的系列好文 http://www.cnblogs.com/sunddenly/category/620563.html

posted @ 2017-09-07 22:12  肖哥哥  阅读(742)  评论(0编辑  收藏  举报
生命不息  奋斗不止  每天进步一点点