hadoop(12)--zookeeper集群搭建

大家很疑惑,大数据分享的好好的怎么摇身一变,又到zookeeper了,从事java开发的大部分都接触过zookeeper,其实zookeeper是hadoop生态体系的的一个子项目,一个动物管理员,hadoop的其他子项目的名称很有意思,基本上都是动物,可见hadoop里面的好东西真不少,好了,言归正传!
什么是zookeeper?
这个也是一个考验对zookeeper理解的一个问题,完全没有必要背概念,我概念也记不住,zookeeper就是一个协调者,尤其是在分布式中。

开始搭建!
这里我用三台服务器


hadoop(12)--zookeeper集群搭建_第1张图片
image.png
linux小技巧记录
复制一行并粘贴到下一行     当前行yy     p   
修改network
sudo vi /etc/sysconfig/network
sudo hostname my01

添加hosts
sudo vi /etc/hosts
这个命令不用启用,使用到的时候读取的,这样就可以了

正式开始!

hadoop(12)--zookeeper集群搭建_第2张图片
image.png

解压到app中 tar -zxvf zoo** -C app/

cd app/zoo**/conf

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/songlj/app/zookeeper-3.4.5/data
# the port at which the clients will connect
clientPort=2181
#
# 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=my06:2888:3888
server.2=my07:2888:3888
server.3=my08:2888:3888

并且要在/home/songlj/app/zookeeper-3.4.5/data这个目录下创建一个myid的文件对应id
echo 1 > myid

将这个zookeeper-3.4.5发送到my07,my08上

scp -r zookeeper-3.4.5/ my07:/home/songlj/app/
scp -r zookeeper-3.4.5/ my08:/home/songlj/app/

这样就准备好了,启动!

三台都运行 bin目录下 ./zkServer.sh start

./zkServer.sh status


image.png
hadoop(12)--zookeeper集群搭建_第3张图片
image.png
image.png

我启动的时候是6,7,8依次启动的,这里先说明一下,zookeeper的leader的选举到中间的那一台服务器就是第7台,为什么呢?这个就需要看源码了,有机会给大家分享zookeeper的leader选举的算法,今天就到这里
望指正,不吝赐教!

你可能感兴趣的:(hadoop(12)--zookeeper集群搭建)