• zookeeper集群部署


    1. Environment

    • Operation System: CentOS7.4
    • Server IP: 172.50.1.211 & 172.50.1.212 & 172.50.1.218
    • JDK: java version "1.8.0_241"

    2. 下载并解压

    zookeeper 官方下载地址
    zookeeper 中国科学技术大学下载地址

    [root@localhost ~]# wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.6.2/apache-zookeeper-3.6.2.tar.gz
    [root@localhost ~]# tar -zxvf apache-zookeeper-3.6.2.tar.gz -C /usr/local
    

    3. 修改配置文件

    3.1 zoo.cfg

    [root@localhost ~]# cd /usr/local/zookeeper-3.6.2/conf && cp -ra zoo_sample.cfg zoo.cfg && cat zoo.cfg
    
    # tickTime:基本事件单元,这个时间是作为Zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,每隔tickTime时间就会发送一个心跳;最小 的session过期时间为2倍tickTime
    tickTime=2000
    
    # initLimit:允许follower连接并同步到Leader的初始化连接时间,以tickTime为单位。当初始化连接时间超过该值,则表示连接失败。
    initLimit=10
    
    # syncLimit:表示Leader与Follower之间发送消息时,请求和应答时间长度。如果follower在设置时间内不能与leader通信,那么此follower将会被丢弃。
    syncLimit=5
    
    # dataDir:存储内存中数据库快照的位置,除非另有说明,否则指向数据库更新的事务日志 (目录没有,需要手动创建)
    dataDir=/data/zookeeper
    
    # 监听端口
    clientPort=2181
    
    # server.A=B:C:D
    # A:是服务器编号;B是服务器ip;C是Leader选举的端口;D是zk服务器之间的通信端口
    server.0=172.50.1.211:2888:3888
    server.1=172.50.1.212:2888:3888
    server.2=172.50.1.218:2888:3888
    

    3.2 create myid

    # 在"172.50.1.211"上执行
    [root@localhost ~]# echo 0 > /data/zookeeper/myid
    
    # 在"172.50.1.212"上执行
    [root@localhost ~]# echo 1 > /data/zookeeper/myid
    
    # 在"172.50.1.218"上执行
    [root@localhost ~]# echo 2 > /data/zookeeper/myid
    

    4.配置zookeeper环境变量

    # 三台机器都要执行
    [root@localhost ~]# cat > /etc/profile.d/zk_env.sh << EOF
    export ZK_HOME=/usr/local/apache-zookeeper-3.6.2
    export PATH=$PATH:$ZK_HOME/bin
    EOF
    
    # 刷新环境变量生效
    [root@localhost ~]# source /etc/profile
    

    5.启动zookeeper服务

    # 启动
    [root@localhost ~]# zkServer.sh start
    
    # 停止
    [root@localhost ~]# zkServer.sh stop
    
    # 重启
    [root@localhost ~]# zkServer.sh restart
    
    # 查看集群状态
    [root@localhost ~]# zkServer.sh status
    
  • 相关阅读:
    iOS 静态、全局变量、常量
    原子性atomic/nonatomic
    iOS数组遍历
    iOS开发过程中易犯的小错误
    mac开启Airdrop的硬件要求
    Activity Monitor 闪退 & 无法进入睡眠
    在Linux中连接android设备
    网格布局(GridLayout) 行数与列数
    $符号报not defing 报错
    eclipse鼠标变成十字符号
  • 原文地址:https://www.cnblogs.com/herui1991/p/14047933.html
Copyright © 2020-2023  润新知