集群准备
将Zookeeper压缩包分别上传到各自的服务器,建议为奇数,因为能够很好的执行选举机制
将Zookeeper解压到/usr/local/zookeeper-cluster ,创建data目录 ,将 conf下zoo_sample.cfg 文件改名为 zoo.cfg
配置每一个Zookeeper 的dataDir(zoo.cfg) clientPort 分别为2181 2182 2183等
修改/usr/local/zookeeper-cluster/zookeeper/conf/zoo.cfg
clientPort=2181
dataDir=/usr/local/zookeeper-cluster/zookeeper/data
配置集群
在每个zookeeper的 data 目录下创建一个 myid 文件,内容分别是1、2、3 。这个文件就是记录每个服务器的ID
例如我们为第一个zookeeper指定ID为1,则输入命令
echo 1>myid
在每一个zookeeper 的 zoo.cfg配置客户端访问端口(clientPort)和集群服务器IP列表。
集群服务器IP列表如下
server.1=192.168.25.140:2881:3881
server.2=192.168.25.140:2882:3882
server.3=192.168.25.140:2883:3883
解释:server.服务器ID=服务器IP地址:服务器之间通信端口:服务器之间投票选举端口
只有zookeeper的服务器开启数达到总服务器的一半时,集群才会开启成功,因为选举机制要选出一个leader,一般为中间的那个服务器
使用时将服务器的地址都配入配置文件中
<!-- 指定注册中心地址 -->
<dubbo:registry
protocol="zookeeper" address="192.168.25.140:2181,192.168.25.140:2182,192.168.25.140:2183">
</dubbo:registry>