Zookeeper 集群搭建过程中常见错误

Mode: standalone

这通常表示 Zookeeper 配置为单节点模式,而不是集群模式。需要检查 zoo.cfg 文件中的配置,确保包含了所有集群节点的信息。

启动失败

/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.5.7/bin/../conf/zoo.cfg
Starting zookeeper ... FAILED TO START
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.5.7/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost.
Error contacting service. It is probably not running.

首先查看 $ZOOKEEPER_HOME/logs 目录下的 .out 后缀文件中报错内容(在 hadoop 系统中,.log 结尾的日志文件通常用于记录应用程序的日志信息,而 .out 结尾的文件则用于存储标准输出和标准错误信息),出现其他的报错问题都可以去 .out 后缀文件里查看报错信息,根据报错信息能更容易找到问题所在,更方便解决问题。

常见的错误如下:

  • 数据目录和日志目录:写绝对路径,不要写相对路径,也不要直接写 $ZOOKEEPER_HOME/tmp/data,示例

    dataDir=/opt/zookeeper-3.5.7/tmp/data
    
  • 服务器地址问题,如果这里写的 B 写的是用户名,检查 /etc/hosts 是否配置 IP 映射

    server.A=B:C:D
    
  • myid 不匹配: 在每个 Zookeeper 节点的数据目录下的 myid 文件,其中包含一个数字,表示该节点在集群中的唯一标识。如果这个数字与 zoo.cfg 中上述配置 A 不匹配,可能会导致集群故障。

  • 权限问题: 操作系统权限不足可能导致 Zookeeper 无法启动或运行。需要确保 Zookeeper 安装目录具有适当的读写执行 rwx 权限。

  • 进程冲突: 如果在启动 Zookeeper 时出现错误信息

    already running as process XXX 
    

    表示同一台机器上已经有一个 Zookeeper 进程在运行。可能需要停止现有的进程,或者检查是否有残留的进程占用端口,可以通过查看端口占用情况,如使用 netstat -apn | grep 2181 命令,解决端口冲突问题。

  • 防火墙未关闭:防火墙可能会阻止 Zookeeper 集群之间的通信。需要确保防火墙已关闭,或者将 Zookeeper 集群的端口添加到防火墙白名单中。

    例如,如果你使用的是firewalld,关闭防火墙示例代码

    systemctl stop firewalld.service # 停止firewall
    systemctl disable firewalld.service # 禁止firewall开机启动
    

    修改完防火墙配置文件后你需要保存修改并重启防火墙服务,以使更改生效。可以使用以下命令重启防火墙。具体的命令也取决于你使用的防火墙软件

    systemctl restart firewalld
    

    如果你使用的是 iptables 添加白名单示例代码

    iptables -A INPUT -p tcp --dport 2181 -j ACCEPT
    
  • Java 环境问题Java 环境未正确配置或使用的 Java 版本与 Zookeeper 不兼容。

解决这些问题通常需要仔细检查配置文件、日志文件和操作系统设置,并根据具体错误信息进行相应的调整。

相关推荐

  1. Zookeeper 过程常见错误

    2023-12-22 17:16:02       27 阅读
  2. Zookeeper

    2023-12-22 17:16:02       39 阅读
  3. ZooKeeper

    2023-12-22 17:16:02       42 阅读
  4. Zookeeper

    2023-12-22 17:16:02       20 阅读
  5. 在Linux进行ZooKeeper

    2023-12-22 17:16:02       25 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-22 17:16:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-22 17:16:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-22 17:16:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-22 17:16:02       20 阅读

热门阅读

  1. DeamonSet详解

    2023-12-22 17:16:02       32 阅读
  2. vue介绍以及基本指令

    2023-12-22 17:16:02       30 阅读
  3. LeetCode239. Sliding Window Maximum

    2023-12-22 17:16:02       33 阅读
  4. Macos 删除过期失效的软链接symlink

    2023-12-22 17:16:02       43 阅读
  5. 【PHP】取出数组中的第一个元素

    2023-12-22 17:16:02       41 阅读
  6. 常见数据库安装

    2023-12-22 17:16:02       34 阅读
  7. ****Linux下Mysql的安装和配置

    2023-12-22 17:16:02       40 阅读