zookeeper的observer模式

3台机器,其中1台为观察者模式(observer)
配置如下

server.1=192.168.80.130:2888:3888
server.2=192.168.80.128:2888:3888:observer
server.3=192.168.80.1:2888:3888

【上为配置1】

在每台机器的 zoo.cfg的 dataDir目录下创建一个myid文件
文件内容为机器序号
比如 server1的myid内容为1

其中server2(observer)那台机器除如上配置,还需在zoo.cfg加入一行
peerType=observer

启动前,防火墙设置
vi /etc/sysconfig/iptables

-A INPUT -m state –state NEW -m tcp -p tcp –dport 2181 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 2888 -j ACCEPT
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3888 -j ACCEPT

重启防火墙
service iptables restart

粗暴一点,直接关闭防火墙【仅限本地调试】
service iptables stop

我在实践中发现,如果只有2台机器,配置其中1台为obsever是不行的,无法启动。
因为 作为observer的机器不参与投票(vote) , 而每次投票都要超半数机器通过才行。

0%