您的位置:首页 > 其它

zookeeper-3.4.6 分布式安装与配置

2015-04-30 19:56 465 查看
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分布式安装配置全部完成
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息