最近开始实践搭建Linux下的集群环境,在搭建zookeeper的时候,出现了启动失败的情况,介绍下几种情况和解决方法。
首先,强烈建议新手刚开始搭建的时候关掉防火墙,否则可能出现很多奇怪的错误令人心烦。
关闭防火墙并且禁止开机启动
systemctl stop firewalld.service
systemctl disable firewalld.service
1、java.net.BindException: 地址已在使用
端口被占用了,这种情况下只需要把2181端口改成别的就可以了
2、Error contacting service. It is probably not running.
[email protected]30-88-ubuntu:/home/zookeeper-3.4.10# zkServer.sh start ZooKeeper JMX enabled by default Using config: /home/zookeeper-3.4.10/bin/../conf/zoo.cfg Starting zookeeper ... STARTED [email protected]-30-88-ubuntu:/home/zookeeper-3.4.10# zkServer.sh status ZooKeeper JMX enabled by default Using config: /home/zookeeper-3.4.10/bin/../conf/zoo.cfg Error contacting service. It is probably not running.
这种情况下,可以使用命令 bin/zkServer.sh start-foreground 启动,通过查看启动的输出信息或查看zookeeper.out确定问题出在哪。
而我的报错信息如下(这个错误可能只在使用openJDK的时候才有)
Error: Config file not found: /usr/lib/jvm/java-9-openjdk-amd64/conf/management/management.properties
这是软链接不存在,手动创建正确软链接。
cd /usr/lib/jvm/java-9-openjdk-amd64 touch conf ln -s lib conf ls -la conf lrwxrwxrwx 1 root root 3 Jan 31 16:21 conf -> lib