zookeeper

2020-06-19  本文已影响0人  晨曦_lcq

作用

在分布式环境中保证数据的强一致性。

使用场景如

工作原理:zab协议

配置说明

配置项 说明
tickTime 2000 控制心跳和超时时间(毫秒)
initLimit 2 集群中的follower与leader中间初始连接时能容忍的最大心跳数(tickTime的倍数)
syncLimit 5 主从节点请求和应答的超时时间
dataDir /home/zk/data 用于存储zk产生的数据
clientPort 2181 zookeeper客户端端口
maxClientCnxn 0 最大客户端连接数量(??为何不-1,如果不允许连接??)
server.1 server.1=47.96.170.165:2181 ... 集群环境,节点名称以及端口

使用docker搭建集群环境

服务ID,要保持唯一

        ZOO_MY_ID: 1

2888端口号是zookeeper服务之间通信的端口

3888端口是zookeeper与其他应用程序通信的端口

        ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888

zoo2:
    image: zookeeper
    restart: always
    hostname: localhost
    ports:
        - 2182:2181
    environment:
        ZOO_MY_ID: 2
        ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888

zoo3:
    image: zookeeper
    restart: always
    hostname: localhost
    ports:
        - 2183:2181
    environment:
        ZOO_MY_ID: 3
        ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
root@localhost:/apache-zookeeper-3.6.1-bin# bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Mode: leader
上一篇 下一篇

猜你喜欢

热点阅读