zookeeper介绍及使用

zookeeper介绍

什么是分布式协调技术在这里插入代码片

分布式协调技术主要用来解决分布式环境当中多个进程之间的同步控制,让他们有序的去访问某种临界资源,防止造成“脏数据”的后果。

什么是分布式锁

为了防止分布式系统中的多个进程之间相互干扰,我们需要一种分布式协调技术来对这些进程进行调度,而这个分布式协调技术的核心就是实现这个分布式锁

在这里插入图片描述

什么是zookeeper

一种分布式协调服务(分布式锁),同时也是服务注册与发现

docker 安装 zookeeper

部署集群
在usr/local/docker/zookeeper 下 创建docker-compose.yml

version: '3.1'
services:
    zoo1:
        image: zookeeper
        restart: always
        hostname: zoo1
        ports:
            - 2181:2181
        environment:
            ZOO_MY_ID: 1
            ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888

    zoo2:
        image: zookeeper
        restart: always
        hostname: zoo2
        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: zoo3
        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

如果要看谁是leader 和 follower 的话

通过交互式的方式进入:

docker exec -it docker_zool_1 /bin/bash
pwd 
# /zookeeper-3.4  # 这是指当前根目录下
cd bin
./zkServer.sh status
# follower # 发现 docker_zool_1 是一个 从节点

看一下zookeeper 的配置文件
配置文件路径:/conf/zoo.cfg

clientPort=2181
dataDir=/data 
dataLogDir=/datalog
tickTime=2000  # 心跳频率 2000毫秒(客服端和服务端的时间间隔)
initLimit=5 # leader 和 follower 之间连接心跳允许最大应答次数,2000 * 5 = 10秒
syncLimit=2 # leader 和 follower 之间请求应答时间长度 ,2000 * 2 = 4秒
autopurge.snapRetainCount=3 # 指定了清理频率,单位是小时,需要填写一个 1 或更大的整数,默认是 0,表示不开启自己清理功能。
autopurge.purgeInterval=0 # 指定了需要保留的文件数目。默认是保留 3 个。
maxClientCnxns=60 # 限制连接到 Zookeeper 的客户端的数量,限制并发连接的数量,它通过 IP 来区分不同的客户端。此配置选项可以用来阻止某些类别的 Dos 攻击。将它设置为 0 或者忽略而不进行设置将会取消对并发连接的限制。
server.1=192.168.0.1:2888:3888
server.2=192.168.0.2:2888:3888
server.3=192.168.0.3:2888:3888
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值