zookeeper-3.4.6 分布式安装与配置

来源:互联网 发布:mac 鼠标右键 触摸屏 编辑:程序博客网 时间:2024/05/16 19:24
zookeeper集群结构
master节点
slave1节点
slave2节点

zookeeper分布式安装配置步骤
1.下载并解压得到zookeeper-3.4.6目录,并新建指向其的链接zookeeper,将zookeeper链接文件放置/root目录下
2.配置环境变量
编辑 /etc/profile文件,增加ZOOKEEPER_HOME和PATH变量,如下:
#zookeeper
export ZOOKEEPER_HOME=/root/zookeeper
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/lib:/root/php/bin:$ZOOKEEPER_HOME/bin
3.修改zookeeper配置文件 conf/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=/root/zookeeper/data
# 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

dataLogDir=/root/zookeeper/data/logs
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888
###########################################
配置文件黑色部分为默认配置,红色部分为需要修改的
dataDir表示zookeeper数据存放目录,dataLogDir为日志存放目录
server.X用来配置ZooKeeper集群中的各节点,并建议X的值和myid保持一致。
端口2181用于监听客户端的连接,端口2888用于Leader监听Follower的连接,而3888则用于Leader选举。

配置完该文件后,就可以把zookeeper目录复制到相应结点中去了,无需改动。


4.在dataDir目录新建myid文件
在每个zookeeper的数据目录dataDir(/root/zookeeper/data)下新建myid文件,用来标识本机对应zookeeper集群节点的id,所以每个zookeeper节点不一样,这个最好与配置文件conf/zoo.cfg中的server.X一致。如果master节点的myid内容为:1

5.启动zookeeper 服务
启动命令如下:
[root@master ~]# zkServer.sh start
JMX enabled by default
Using config: /root/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
注意:在每个zookeeper节点中都需要执行该命令

6.查看zookeeper服务是否启动成功
#slave1节点为leader节点
[root@slave1 Desktop]# zkServer.sh status
JMX enabled by default
Using config: /root/zookeeper/bin/../conf/zoo.cfg
Mode: leader
#master节点为follower节点
[root@master ~]# zkServer.sh status
JMX enabled by default
Using config: /root/zookeeper/bin/../conf/zoo.cfg
Mode: follower

还可以通过jps命令查看相应的java进程是否启动,成功启动服务后会出现如下进程:
[root@master ~]# jps
2638 QuorumPeerMain

注意:zookeeper-3.4.6版本与之前某些版本不同,之前某些版本zkServer.sh可能有存在漏洞,即使服务启动成功,但使用 zkServer.sh status命令可能还是显示没成功,这时只需要修改下 zkServer.sh文件就行,因为 zkServer.sh使用了linux nc -q命令,某些linux可能不支持,具体可在网上查,此处不再重复。不过zookeeper-3.4.6不存在这个问题。

7.启动zookeeper客户端连接
[root@master ~]# zkCli.sh -server master:2181
后来会输出一大堆信息,当出现 Welcome to ZooKeeper!  表示客户端连接成功

到此为止,zookeeper-3.4.6分布式安装配置全部完成

0 0
原创粉丝点击