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

文章目录

Mode: standalone

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

启动失败

sh 复制代码
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/zookeeper-3.5.7/bin/../conf/zoo.cfg
Starting zookeeper ... FAILED TO START
sh 复制代码
/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,示例

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

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

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

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

    sh 复制代码
    already running as process XXX 

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

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

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

    sh 复制代码
    systemctl stop firewalld.service # 停止firewall
    systemctl disable firewalld.service # 禁止firewall开机启动

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

    sh 复制代码
    systemctl restart firewalld

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

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

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

相关推荐
大舍传媒18 分钟前
欧美海外媒体发稿,国外新闻发布,外媒发布
大数据·人工智能·游戏引擎·信息与通信·用户运营
meitiyaoyue26 分钟前
「媒体邀约」全国巡演,多地推介会,如何做好媒体宣传
大数据
samLi062031 分钟前
绿色金融相关数据合集(2007-2024年 具体看数据类型)
大数据
java6666688881 小时前
在Spring Boot中集成分布式日志收集方案
spring boot·分布式·jenkins
85程序员老王1 小时前
Spark SQL----内置函数Array Functions
大数据·分布式·sql·spark·apache
WoShop商城源码2 小时前
短视频电商源码的优势及软件架构解析
大数据·教育电商
大数据小朋友2 小时前
Flume工具详解
大数据·flume
3分人生2 小时前
BaseServlet的封装
大数据·hive·hadoop
Rcnhtin3 小时前
Redis 典型应用——分布式锁
数据库·redis·分布式
thanks3 小时前
Bond——大数据时代的数据交换和存储格式
大数据·对象存储