zookeeper 启动失败,报错 “ZooKeeper JMX enabled by default”

zookeeper启动时,出现如下情况:

====== zookeeper node1 启动 ==========
[root@node1 conf]# zkServer.sh start 
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED


====== zookeeper node2 启动 ==========
[root@node2 ~]# zkServer.sh start
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

====== zookeeper node3启动 ==========
[root@node3 ~]# zkServer.sh start
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED

显示JMX是默认关闭的

通过jps命令查看进程时,没有QuorumPeerMain这个进程

网上有很多方法,有说关闭防火墙的,

也有说把命令改成 ./zkServer.sh start

[root@node3 bin]# ./zkServer.sh start
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@node3 bin]# ./zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

我都尝试过,和上面效果一样,均无法启动(可能每一个人的解决办法都不一样)

解决方案

在 zkServer.sh 文件的开头部分,加上jdk环境变量信息

找到zkServer.sh文件,就找安装的zookeeper路径的bin目录下

[root@node1 ~]# cd /usr/local/zookeeper-3.4.6/bin
[root@node1 bin]# ls
README.txt    zkCli.cmd  zkEnv.cmd  zkServer.cmd  zookeeper.out
zkCleanup.sh  zkCli.sh   zkEnv.sh   zkServer.sh
[root@node1 bin]# vi zkServer.sh

添加JAVA_HOME的环境变量(这里要自己去查看自己配置的)

export JAVA_HOME=/usr/java/jdk1.8.0_281-amd64
export PATH=$JAVA_HOME/bin:$PATH

在这里插入图片描述

node1、node2、node3都进行添加

然后刷新语句变量:

source /etc/profile

再次输入启动zkServer.sh,查看开启状态

[root@node1 conf]# zkServer.sh start
[root@node1 conf]# zkServer.sh status
JMX enabled by default
Using config: /usr/local/zookeeper-3.4.6/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

在这里插入图片描述

重新运行脚本,查看jps,就可以找到QuorumPeerMain进程

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

同样的错误,每个人的解决方式可能不一样,但是我用这中方式成功启动ZooKeeper集群

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/18022d3bc6.html