安装zookeeper
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 
 | # brew搜索zookeeper应用brew search zookeeper
 # brew安装zookeeper
 brew install -v zookeeper
 # 启动zookeeper服务端,输入以下信息
 zkServer start
 ZooKeeper JMX enabled by default
 Using config: /usr/local/etc/zookeeper/zoo.cfg
 Starting zookeeper ... STARTED
 # 查看zookeeper服务端,结果一直显示无法连接服务,感觉是brew下载的应用有问题
 # 网上大多文章指出也许是zoo.cfg配置文件中dataDir或logDataDir配置有问题,
 # 或者防火墙配置导致没有权限生成这些目录,所以启动失败
 zkServer status
 ZooKeeper JMX enabled by default
 Using config: /usr/local/etc/zookeeper/zoo.cfg
 Client port found: 2181. Client address: localhost.
 Error contacting service. It is probably not running.
 
 # 通过Docker安装zookeeper
 docker pull zookeeper
 docker run --privileged=true --name zookeeper -p 2181:2181  -d zookeeper
 docker run -it --rm --link zookeeper:zookeeper zookeeper zkCli.sh -server zookeeper
 
 | 
设计一个master-worker的组成员管理系统,要求系统中只能有一个master,master能实时获取系统中worker的情况
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 
 | # 在一台客户端(主节点)创建/master znode成功后成为master节点create -e /master "m1:8081"
 # 在另一台客户端(从节点)创建/master znode失败后成为slave节点,监控/master znode的数据状态信息
 stat -w /master
 # 当master节点会话断开连接时,临时节点/master znode就会被删除,从节点就可以继续竞争成为master节点
 
 # 在一台客户端(主节点)创建/workers znode
 create /workers "m1:8081"
 # 并且在主节点监控/workers znode的状态信息,包括从节点变化状态信息
 ls -w /workers
 # 分别在其他客户端(从节点)创建临时节点,然后主节点就可以监控主节点/workers状态信息
 create -e /workers/w1 "w1:8082"
 create -e /workers/w2 "w2:8083"
 
 | 
关注【憨才好运】微信公众号,了解更多精彩内容⬇️⬇️⬇️
