zookeeper启动失败的排错 no route to host 防火墙未关闭导致的

参自:https://blog.csdn.net/konglongaa/article/details/77715352

1.执行zkServer.sh start 后显示:

JMX enabled by default
Using config:/home/Hadoop/app/zookeeper-3.4.5/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

 

2.jps后发现没有QuorumPeerMain进程

3.查看zookeeper-3.4.5/data下的zookeeper-3.4.5.out,如果提示 binding to port 0.0.0.0/0.0.0.0:2181

ERROR [main:QuorumPeerMain@89] - Unexpected exception, exiting abnormally Java.NET.BindException: Address already in use

说明2181端口被占用,通过netstat -nltp | grep 2181检查是否已被占用,如果有则把对应的进程kill掉(kill 进程的pid),然后再启动zookeeper

 

4..jps后发现有QuorumPeerMain进程,然后执行zkServer.sh status,如果显示:

JMX enabled by default
Using config: /home/hadoop/app/zookeeper-3.4.5/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

说明未启动成功,通过查看zookeeper-3.4.5.out,如果提示

Cannot open channel to 1 at election address hadoop05/10.37.129.105:3888
java.net.NoRouteToHostException: No route to host,说明无法连接远程电脑10.37.129.105:3888,很有可能开启了防火墙

通过sudo service iptables status检查,如果确实开启,则通过sudo service iptables stop将其关闭,最后再查看状态zkServer.sh status

此时,基本都能够正常启动了,提示:

JMX enabled by default
Using config: /home/hadoop/app/zookeeper-3.4.5/bin/../conf/zoo.cfg
Mode: leader(或follower)

Zookeeper启动失败可能有多种原因,以下是一些可能的解决方法: 1. 检查zookeeper配置文件 在启动zookeeper之前,需要确保zookeeper配置文件(zoo.cfg)正确。检查以下内容是否正确: - dataDir: 指定zookeeper存储数据的目录路径。 - clientPort: 指定zookeeper监听客户端连接的端口号。 - tickTime: 指定zookeeper使用的基本时间单元(以毫秒为单位)。 2. 检查端口是否被占用 如果zookeeper启动失败,可能是因为监听的端口已经被其他进程占用。可以使用以下命令检查端口是否被占用: ``` netstat -tulnp | grep <port> ``` 如果端口被占用,可以尝试更改zookeeper配置文件中的端口号,或者停止占用该端口的进程。 3. 检查日志文件 启动zookeeper时,它会在指定的日志文件中输出日志信息。通过查看日志文件,可以了解启动失败的原因。默认情况下,zookeeper日志文件位于zookeeper安装目录下的logs目录中。 4. 检查Java版本 zookeeper需要Java环境才能运行,因此需要确保Java版本符合zookeeper要求。可以使用以下命令检查Java版本: ``` java -version ``` 如果Java版本不符合要求,可以尝试安装正确的Java版本。 5. 检查zookeeper数据目录权限 zookeeper需要有足够的权限访问其数据目录。如果zookeeper启动失败,可以检查数据目录的权限是否正确。可以使用以下命令检查目录权限: ``` ls -ld <dataDir> ``` 如果权限不正确,可以使用以下命令更改目录权限: ``` chmod 777 <dataDir> ``` 以上是一些可能的解决方法,如果这些方法都无法解决问题,可以尝试搜索更多的解决方案,或者联系zookeeper的技术支持人员。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值