zookeeper集群部署安装

以下是 Zookeeper 3.8 在三台机器(IP 分别为 192.168.0.200、192.168.0.201、192.168.0.202)上部署集群模式的详细指导。操作系统为 RedHat 8.2。

前提条件

  1. 确保所有机器上已经安装了 Java 环境(JDK 8 或以上)。
  2. 确保所有机器之间的网络连接正常。

步骤 1:在每台机器上下载并解压 Zookeeper

  1. 登录到每台机器。

  2. 下载 Zookeeper 3.8 并解压:

    bash 复制代码
    wget https://downloads.apache.org/zookeeper/stable/apache-zookeeper-3.8.0-bin.tar.gz
    tar -xzf apache-zookeeper-3.8.0-bin.tar.gz
    mv apache-zookeeper-3.8.0-bin /opt/zookeeper

步骤 2:配置 Zookeeper

  1. 在每台机器上,进入 Zookeeper 目录并复制示例配置文件:

    bash 复制代码
    cd /opt/zookeeper
    cp conf/zoo_sample.cfg conf/zoo.cfg
  2. 编辑 conf/zoo.cfg 文件,确保内容如下:

    properties 复制代码
    tickTime=2000
    initLimit=10
    syncLimit=5
    dataDir=/var/lib/zookeeper
    dataLogDir=/var/log/zookeeper
    clientPort=2181
    server.1=192.168.0.200:2888:3888
    server.2=192.168.0.201:2888:3888
    server.3=192.168.0.202:2888:3888
    4lw.commands.whitelist=*

步骤 3:创建数据和日志目录

  1. 在每台机器上,创建数据目录和日志目录,并设置权限:

    bash 复制代码
    mkdir -p /var/lib/zookeeper
    mkdir -p /var/log/zookeeper

步骤 4:配置 myid 文件

  1. 在每台机器的 dataDir 目录中创建 myid 文件。根据每台机器的 IP 地址,写入对应的 ID:

    • 192.168.0.200 上:

      bash 复制代码
      echo "1" > /var/lib/zookeeper/myid
    • 192.168.0.201 上:

      bash 复制代码
      echo "2" > /var/lib/zookeeper/myid
    • 192.168.0.202 上:

      bash 复制代码
      echo "3" > /var/lib/zookeeper/myid

步骤 5:启动 Zookeeper 服务

  1. 在每台机器上启动 Zookeeper 服务:

    bash 复制代码
    cd /opt/zookeeper
    bin/zkServer.sh start
  2. 验证 Zookeeper 服务状态:

    bash 复制代码
    bin/zkServer.sh status

步骤 6:防火墙配置

  1. 在每台机器上,确保防火墙允许 Zookeeper 所使用的端口(2181、2888、3888)进行通信:

    bash 复制代码
    sudo firewall-cmd --permanent --add-port=2181/tcp
    sudo firewall-cmd --permanent --add-port=2888/tcp
    sudo firewall-cmd --permanent --add-port=3888/tcp
    sudo firewall-cmd --reload

步骤 7:验证 Zookeeper 集群

  1. 使用 Zookeeper 客户端工具连接到集群并验证集群状态。在任何一台机器上执行以下命令:

    bash 复制代码
    cd /opt/zookeeper
    bin/zkCli.sh -server 192.168.0.200:2181
  2. 在 Zookeeper CLI 中,运行以下命令查看集群状态:

    bash 复制代码
    stat

    您应该能看到 Leader 和 Follower 的信息,表明集群已经成功启动并运行。

示例配置文件

以下是完整的 zoo.cfg 配置文件示例:

properties 复制代码
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/var/lib/zookeeper
dataLogDir=/var/log/zookeeper
clientPort=2181
server.1=192.168.0.200:2888:3888
server.2=192.168.0.201:2888:3888
server.3=192.168.0.202:2888:3888
4lw.commands.whitelist=*

完成后的检查和维护

  1. 日志检查

    • 查看 Zookeeper 日志文件,确保没有错误或警告。日志文件通常位于 dataLogDir 目录中,例如 /var/log/zookeeper/zookeeper.out
  2. 健康检查

    • 定期检查集群的健康状态,确保所有节点都在正常运行。
  3. 配置管理

    • 确保所有节点上的配置文件一致。如果需要更新配置,确保同步更新所有节点。

通过上述步骤,您可以成功部署并配置一个 Zookeeper 集群,以便为分布式应用提供可靠的协调服务。下·

相关推荐
小生凡一2 小时前
腾讯二面:TCC分布式事务 | 图解TCC|用Go语言实现一个TCC
开发语言·分布式·golang
Leaf吧2 小时前
分布式定时任务(xxl-job)
java·分布式
青灯文案14 小时前
RabbitMQ 四种交换机(Direct、Topic、Fanout、Headers)详解
分布式·rabbitmq·ruby
煤烦恼7 小时前
kafka整合flume与DStream转换
分布式·kafka
小马爱打代码18 小时前
SpringBoot原生实现分布式MapReduce计算
spring boot·分布式·mapreduce
悻运18 小时前
如何配置Spark
大数据·分布式·spark
懒惰的橘猫19 小时前
Spark集群搭建之Yarn模式
大数据·分布式·spark
2401_8242568619 小时前
Spark-Streaming
大数据·分布式·spark
爱吃泡芙的小白白1 天前
爬虫学习——使用HTTP服务代理、redis使用、通过Scrapy实现分布式爬取
redis·分布式·爬虫·http代理·学习记录
降世神童1 天前
大数据系列 | 详解基于Zookeeper或ClickHouse Keeper的ClickHouse集群部署--完结
大数据·clickhouse·zookeeper