以3台机器为例,进行配置。现在有3台机器,ip地址分别为
- 192.168.1.50
- 192.168.1.51
- 192.168.1.52
在这3台机器上配置zookeeper集群。
配置步骤
首先下载zookeeper,这里用的是zookeeper-3.4.8,并解压至每台机器的适当的目录中。
1 在每台机器的zoo.cfg文件中,增加如下配置
#cluster config
server.1=192.168.1.50:2888:3888
server.2=192.168.1.51:2888:3888
server.3=192.168.1.52:2888:3888
解释:
- 1,2,3是定义的机器编号
- 2888和3888是zookeeper之间通讯(选举leader等)时所使用的端口。
2 在每台机器的zookeeper所配置的data目录下,建立myid文件。使用myid为当前机器分配一个编号。
我们这里根据上面的配置,使用以下命令分别为每台机器增加一个
首先看一下zoo.cfg文件中data目录的配置信息
dataDir=/home/app/program/zookeeper-3.4.8/data
然后进入/home/app/program/zookeeper-3.4.8/data目录,执行
- 192.168.1.50服务器上:
echo '1' > myid
- 192.168.1.51服务器上:
echo '2' > myid
- 192.168.1.52服务器上:
echo '3' > myid
这样就完成了集群配置,依次启动3台服务器的zookeeper即可。
Dubbo中配置zookeeper集群的信息
在java程序中使用zookeeper集群时,比如分布式治理框架dubbo,可如下进行配置:
解释:2181端口是zookeeper默认使用的端口,这里使用默认端口
- xml中配置方法
<dubbo:registry address="zookeeper://192.168.1.50:2181?backup=192.168.1.51:2181,192.168.1.52:2181" />
- properties中配置方法
dubbo.registry.address=zookeeper://192.168.1.50:2181?backup=192.168.1.51:2181,192.168.1.52:2181