当前位置:   article > 正文

Linux 下 zookeeper 集群部署_zk部署

zk部署

目录

1. zookeeper下载

2.环境准备

3.zookeeper部署

3.1 修改系统配置文件

3.2 开放端口

3.3 安装zookeeper

3.4 验证

4. 设置服务开机自启动


本文将以三台服务器为例,介绍在 linux 系统下zookeeper的部署方式。

1. zookeeper下载

    下载地址:Index of /dist/zookeeper (apache.org)

    选择需要的介质下载,这里以 zookeeper-3.4.14 为例

2.环境准备

   部署zookeeper需要先部署JDK ,JDK部署可以参考Linux下JDK 安装-CSDN博客 

3.zookeeper部署

注:以下操作三台机器均需要修改

3.1 修改系统配置文件

(1)编辑 hosts 文件

         vi /etc/hosts

(2)添加如下内容

         ip(第一台机器)   zk1

         ip(第二台机器)   zk2

         ip(第三台机器)   zk3

3.2 开放端口

zookeeper 默认需要开通节点 2181 、2888 和 3888 端口

  • 2181:客户端连接 Zookeeper 集群使用的监听端口号
  • 3888:选举 leader 使用
  • 2888:集群内机器通讯使用(Leader 和 Follower 之间数据同步使用的端口号,Leader 监听此端口)

(1)查看防火墙状态

        systemctl status firewalld

(2)开放端口

       firewall-cmd --zone=public --add-port=2181/tcp --permanent  

       firewall-cmd --zone=public --add-port=2888/tcp --permanent

       firewall-cmd --zone=public --add-port=3888/tcp --permanent 

(3)防火墙重新加载配置

       firewall-cmd --reload  

(4) 查看防火墙所有开放的端口

       firewall-cmd --zone=public --list-ports

3.3 安装zookeeper

(1) 解压

       上传zookeeper介质(zookeeper-3.4.14.tar.gz)到 /opt 目录

       解压到当前目录下

       tar zxfv zookeeper-3.4.14.tar.gz

(2) 修改配置文件

     创建配置文件

       touch /opt/zookeeper-3.4.14/conf/zoo.cfg

       注:zookeeper-3.4.14可以执行下面的操作

       mv zoo_sample.cfg zoo.cfg

      编辑配置文件

       vi /opt/zookeeper-3.4.14/conf/zoo.cfg

      配置更换成以下内容即可:

  1.   # The number of milliseconds of each tick
  2.         tickTime=2000
  3.         # The number of ticks that the initial 
  4.         # synchronization phase can take
  5.         initLimit=10
  6.         # The number of ticks that can pass between 
  7.         # sending a request and getting an acknowledgement
  8.         syncLimit=5
  9.         # the directory where the snapshot is stored.
  10.         # do not use /tmp for storage, /tmp here is just 
  11.         # example sakes.
  12.         #数据目录
  13.         dataDir=/data/zookeeper
  14.         dataLogDir=/data/zookeeper/logs
  15.         # the port at which the clients will connect
  16.         #工作端口号
  17.         clientPort=2181
  18.         # the maximum number of client connections.
  19.         # increase this if you need to handle more clients
  20.         #maxClientCnxns=60
  21.         #
  22.         # Be sure to read the maintenance section of the 
  23.         # administrator guide before turning on autopurge.
  24.         #
  25.         # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
  26.         #
  27.         # The number of snapshots to retain in dataDir
  28.         #autopurge.snapRetainCount=3
  29.         # Purge task interval in hours
  30.         # Set to "0" to disable auto purge feature
  31.         #autopurge.purgeInterval=1
  32.         #设置集群地址及选主协商端口、集群通信端口
  33.         server.1=zk1:2888:3888
  34.         server.2=zk2:2888:3888
  35.         server.3=zk3:2888:3888

(3) 配置 jvm.option

         touch /opt/zookeeper-3.4.14/conf/java.env

         vi /opt/zookeeper-3.4.14/conf/java.env

         添加如下内容,配置zk占用物理内存

         export JVMFLAGS="-Xms8g -Xmx8g $JVMFLAGS"

(4)创建目录

        创建数据目录

        mkdir -p /data/zookeeper

        创建日志目录

        mkdir -p /data/zookeeper/logs

(5)配置zookeeper myid

       创建myid

       注: '1'为节点ID,各节点唯一,且与zoo.cfg中配置"server.1=zoo1:2888:3888"对应

       第一台机器执行

       echo '1' > /data/zookeeper/myid

       第二台机器执行

       echo '2' > /data/zookeeper/myid

       第三台机器执行

       echo '3' > /data/zookeeper/myid

(6)启动

      /opt/zookeeper-3.4.14/bin/zkServer.sh start

3.4 验证

(1)查询集群状态

      /opt/zookeeper-3.4.14/bin/zkServer.sh status

      显示以下内容 ,说明应用正常启动

(2)查询集群同步

      /opt/zookeeper-3.4.14/bin/zkCli.sh -server zoo1:2181

      [zk: zoo1:2181(CONNECTED) 0] create /hello world

      /opt/zookeeper-3.4.14/bin/zkCli.sh -server zoo2:2181

      [zk: zoo2:2181(CONNECTED) 0]get /hello

      输出以下内容,说明集群同步

4. 设置服务开机自启动

注:以下操作三台机器均需要修改

(1)关闭zk

      /opt/zookeeper-3.4.14/bin/zkServer.sh stop

(2)创建启动服务文件

      touch /etc/systemd/system/zookeeper.service

      vi /etc/systemd/system/zookeeper.service

(3)编写启动脚本

  1. [Unit]
  2. Description=zookeeper-3.4.14
  3. Requires=network.target
  4. After=network.target
  5. [Service]
  6. User=root
  7. Group=root
  8. Type=forking
  9. WorkingDirectory=/opt/zookeeper-3.4.14
  10. ExecStart=/opt/zookeeper-3.4.14/bin/zkServer.sh start /opt/zookeeper-3.4.14/conf/zoo.cfg
  11. ExecStop=/opt/zookeeper-3.4.14/bin/zkServer.sh stop /opt/zookeeper-3.4.14/conf/zoo.cfg
  12. ExecReload=/opt/zookeeper-3.4.14/bin/zkServer.sh restart /opt/zookeeper-3.4.14/conf/zoo.cfg
  13. [Install]
  14. WantedBy=multi-user.target

(4)关闭和启动服务

       启动

       systemctl start zookeeper.service

       停止

       systemctl stop zookeeper.service

       重启

       systemctl restart zookeeper.service

(5)设置服务是否开机启动

      添加系统服务

      systemctl enable zookeeper.service

      删除系统服务

      systemctl disable zookeeper.service

(6)重启机器

       reboot

       查看zookeeper是否开机自启动。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号