Zookeeper实战之集群模式
原文链接:Zookeeper实战之集群模式前一篇文章介绍了Zookeeper的单机集群模式的安装及应用,今天就来说说在真正的多机集群模式下应该怎样安装配置。
这里解压Zookeeper的安装包到 /opt目录下,且在这三台机器上目录路径相同,假定都是/opt/zookeeper.
1. 首先编辑每个Zookeeper目录下的conf/zoo.cfg文件,这时这三个zookeeper的配置文件的内容都相同,如下
$ cat /opt/zookeeper/conf/zoo.cfg
tickTime=2000
dataDir=/opt/zookeeper/data
clientPort=2181
initLimit=10
syncLimit=5
server.1=fanbinx1:2888:3888
server.2=fanbinx2:2888:3888
server.3=fanbinx3:2888:3888
其中有几点需要注意
* dataDir: 三个Zookeeper实例的dataDir都相同,并指定到Zookeeper实例目录下的data目录。
* clientPort: 三个Zookeeper实例的端口都相同。
* server.: 三个Zookeeper实例的server列表都相同。
2. 创建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。
3. 启动Zookeeper服务
分别进入各个Zookeeper的bin目录,然后运行“./zkServer.sh start”来启动一个Zookeeper服务。
4. 客户端连接
随便进入一个Zookeeper的bin目录,然后运行
./zkCli.sh -server <host>:2181来分别连接Zookeeper服务。
在其中的一个client上创建一个znode节点
create /mykey myvalue然后在别的client上查看新创建zonde节点
get /mykey5. 查看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如果不是Leader
$ ./zkServer.sh status
JMX enabled by default
Using config: /opt/zookeeper/bin/../conf/zoo.cfg
Mode: follower此时可以把leader的那个阶段停了,然后再看查看其它两个Zookeeper实例,此时剩下的两个Zookeeper实例就会再选举出一个leader。
页:
[1]