zookeeper集群搭建问题

环境变量
export ZOOKEEPER_HOME=/app/zookeeper
export PATH=$PATH:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin

命令
zkServer.sh start
zkServer.sh status
zkServer.sh restart

zkCli.sh



source /etc/profile
在zookepper/conf下把zoo.sample.cfg 改名为zoo.cfg
配置dataDir=/app/zookeeper/data

添加
server.0=192.168.146.72:2888:3999
server.1=192.168.146.73:2888:3999
server.2=192.168.146.75:2888:3999

一、zookeeper有三个端口(可以修改)
1、2181
2、3888
3、2888
二、3个端口的作用
1、2181:对clint端提供服务
2、3888:选举leader使用
3、2888:集群内机器通讯使用(Leader监听此端口)

在zookeeper下建立data目录
创建myid,分别写入0、1、2



Zookeeper启动失败(java.net.BindException: 地址已在使用)
lsof -i:2181查看端口占用情况,记得 zkServer.sh stop之后再看,如果还有进程占用,就把zoo.cfg端口更改
三个端口都有可能被占用!!!!!

netstat 端口号

myid 可能写错,切记!!!!本人就发生这个错误,查看zookeeper.out


zookeeper 没有到主机的路由

防火墙
vi /etc/sysconfig/iptables


-A INPUT -m state --state NEW -m tcp -p tcp --dport 2182 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3999 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2888 -j ACCEPT

完成后重启
service iptables restart
查看端口开放信息
service iptables status

如果以zkCli.sh 方式进入客户端  显示连接失败,而集群已经成功启动,查看zookeeper.out发现拒绝连接。这时候其实是zkCli.sh 方法调用方式错误,应zkCli.sh -server 127.0.0.1:2182。
因为zkCli.sh 方法调用的端口还是2181.而配置文件中已经改了。




查找 ls /
创建并赋值 create /hello world
获取 get /hello
设值 set /hello fuck
递归删除节点 rmr /path
删除指定某个节点 delete /path/child
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页