zookeeper集群安装

安装步骤:

1、环境介绍: virtualbox安装三台centos虚拟机,分别安装jdk1.8、zookeeper(安装很简单,下载安装就好,本文就不说了);
2、三台虚拟机都进行修改zookeeper配置(内容相同):$zookeeperPath/conf/zoo.cfg(没有就新建一个文件):

tickTime=2000
dataDir=/root/local/opt/data
clientPort=2181
initLimit=10
syncLimit=5
server.1=note1:2888:3888
server.2=note2:2888:3888
server.3=note3:2888:3888

这里我把日志文件放在了/root/local/opt/data目录下,可以根据自己喜好安放。
3、创建data目录和实例id文件
在三台机器上分别运行下面的命令来产生不同的实例id文件

第一台机器:

mkdir /opt/zookeeper/data  
echo 1 > /opt/zookeeper/data/myid

第二台机器:

mkdir /opt/zookeeper/data  
echo 2 > /opt/zookeeper/data/myid  

第三台机器:

mkdir /opt/zookeeper/data  
echo 3 > /opt/zookeeper/data/myid 

这里要注意需要在每个Zookeeper的dataDir目录下创建myid文件,内容是记录各个Zookeeper的实例ID。
4、我们注意到zookeeper配置中有note1、note2、note3这些分别对应到hosts文件中,hosts文件修改如下:

192.168.1.55 note1
192.168.1.66 note2
192.168.1.67 note3

这样就能映射到不同的ip地址。
5、先关闭各台机子的防火墙,不然很有可能在zkServer开启时,无法路由到其他机子的zkServer导致失败。
6、分别启动各台机子的zookeeper服务:./zkServer.sh start。
启动完后,我们看看zkServer的状态:./zkServer.sh status,很可能会出现如下内容:

ZooKeeper JMX enabled by default
Using config: /root/local/opt/zookeeper-3.4.8/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

Error contacting service. It is probably not running.这个不用紧张,因为我们有三台机子,需要全部开起来才正常。如果担心有问题,我们可以这样开启zkServer查看启动日志:./zkServer.sh start-foreground。
7、分别在不同的机子上脸上客户端:./zkCli.sh当然也可以连接特定的机子./zkCli.sh -server host:2181。
在其中的一个client上创建一个znode节点:

create /test haha

然后在别的client上查看新创建zonde节点

get /test

8、查看Zookeeper状态
启动Zookeeper之后,由于Zookeeper自己会有一套leader的选举算法,所以此时如果想知道那个Zookeeper是leader可以在各个Zookeeper的bin目录运行“./zkServer.sh status”命令来查看。

如果是Leader:

$ ./zkServer.sh status  
JMX enabled by default  
Using config: /opt/zookeeper/bin/../conf/zoo.cfg  
Mode: leader 

如果是follower:

$ ./zkServer.sh status  
JMX enabled by default  
Using config: /opt/zookeeper/bin/../conf/zoo.cfg  
Mode: follower  

此时可以把leader的那个阶段停了,然后再看查看其它两个Zookeeper实例,此时剩下的两个Zookeeper实例就会再选举出一个leader。
但是如果再停掉一个,zookeeper就不能正常工作了。会连接不上。因为一半的服务以及挂了。

你可能感兴趣的:(zookeeper,zookeeper)