zoukankan      html  css  js  c++  java
  • CentOS 7/8 部署Zookeeper集群

    首先要安装JDK,参考 https://www.cnblogs.com/dotqin/p/13560419.html

    环境说明:三台百度云服务器,内网IP分别为: 192.168.32.36、192.168.32.37、192.168.32.38, 不开放公网IP访问

    分别在三台服务器上执行以下操作:

    1.创建目录及下载解压

    mkdir /usr/local/zookeeper
    cd /usr/local/zookeeper/
    wget https://mirrors.bfsu.edu.cn/apache/zookeeper/zookeeper-3.6.1/apache-zookeeper-3.6.1-bin.tar.gz
    tar -zxvf apache-zookeeper-3.6.1-bin.tar.gz
    mv apache-zookeeper-3.6.1-bin zookeeper-3.6.1

    2.设置环境变量

    vim /etc/profile
    # 在文件最后添加以下内容
    export ZOOKEEPER_HOME=/usr/local/zookeeper/zookeeper-3.6.1
    export PATH=$ZOOKEEPER_HOME/bin:$PATH
    
    # 使环境变量生效
    source /etc/profile

    3.设置zkEnv.sh

    vim /usr/local/zookeeper/zookeeper-3.6.1/bin/zkEnv.sh
    # 在ZOOBINDIR="${ZOOBINDIR:-/usr/bin}"上面添加JAVA_HOME设置 为了之后添加到systemctl服务管理
    JAVA_HOME=/usr/local/java/jdk1.8.0_261

    4.创建目录及myid文件

    mkdir -p /usr/local/zookeeper/data
    mkdir -p /usr/local/zookeeper/log
    
    # 在/usr/local/zookeeper/data下建一个myid文件并写入一个数值比如0做为服务器编号,这里三台服务器分别对应 0 1 2
    echo 0 > /usr/local/zookeeper/data/myid

    5.编辑配置文件

    cd /usr/local/zookeeper/zookeeper-3.6.1/conf/
    cp zoo_sample.cfg zoo.cfg
    
    vim zoo.cfg
    # 设置以下内容(三台一样)
    tickTime=2000
    initLimit=10
    syncLimit=5
    dataDir=/usr/local/zookeeper/data
    dataLogDir=/usr/local/zookeeper/log
    clientPort=2181
    # 以及集群配置(三台一样) server.0=192.168.32.36:2888:3888 server.1=192.168.32.37:2888:3888 server.2=192.168.32.38:2888:3888
    # 集群配置可以抽象出一个公式,即server.A=B:C:D,其中A是一个数字,代表服务器的编号,就是前面设置的myid文件中的值,集群中每台服务器的编号必需唯一;B代表服务器的IP地址,C表示服务器与集群中的leader服务器交换信息的端口;D表示选举时服务器之间互相通信的端口。

    6.添加到服务管理

    vim /usr/lib/systemd/system/zookeeper.service
    # 添加以下内容
    [Unit]
    Description=zookeeper-3.6.1
    After=syslog.target network.target
    
    [Service]
    Restart=always
    RestartSec=1 Type
    =forking TimeoutSec=120 User=root ExecStart=/usr/local/zookeeper/zookeeper-3.6.1/bin/zkServer.sh start ExecStop=/usr/local/zookeeper/zookeeper-3.6.1/bin/zkServer.sh stop ExecReload=/usr/local/zookeeper/zookeeper-3.6.1/bin/zkServer.sh restart Restart=always [Install] WantedBy=multi-user.target

     7.设置服务生效及开机自启动

    systemctl daemon-reload
    systemctl enable zookeeper.service

    8.启动zookeeper

    systemctl start zookeeper
    systemctl status zookeeper
  • 相关阅读:
    Java Sping 第一章——初识 Spring
    C++设计模式——状态模式 State
    线性代数思维导图(3)——向量组
    基于Servlet实现简单系统登录
    优秀博客汇总
    整理一些开源项目
    Android UI性能优化详解
    (原创)如何在spannableString中使用自定义字体
    (原创)用讯飞语音实现人机交互的功能
    (原创)speex与wav格式音频文件的互相转换(二)
  • 原文地址:https://www.cnblogs.com/dotqin/p/13560764.html
Copyright © 2011-2022 走看看