Apache zookeeper 如何为Zookeeper服务器启用JMX端口

Apache zookeeper 如何为Zookeeper服务器启用JMX端口,apache-zookeeper,jmx,Apache Zookeeper,Jmx,我使用的是Zookeeper版本3.4.6。我正在尝试为相同的应用程序启用JMX。下面是Url。下面是我在zkServer.sh文件中所做的更改 Zookeeper正在启动,但JMX端口未启用。我们必须在zkEnv.sh文件中添加以下行 ZOOMAIN="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

我使用的是Zookeeper版本3.4.6。我正在尝试为相同的应用程序启用JMX。下面是Url。下面是我在zkServer.sh文件中所做的更改


Zookeeper正在启动,但JMX端口未启用。

我们必须在zkEnv.sh文件中添加以下行

ZOOMAIN="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port=2989 -Djava.rmi.server.hostname=xxxxx org.apache.zookeeper.server.quorum.QuorumPeerMain"

如果您有systemd服务,则可以使用以下环境参数执行此操作:

[Unit]
Requires=network.target remote-fs.target
After=network.target remote-fs.target

[Service]
Type=simple
User=kafka
ExecStart=/bin/sh -c 'zookeeper-server-start zookeeper.properties > /var/log/zookeeper.log 2>&1'
ExecStop=zookeeper-server-stop
Restart=on-abnormal
Environment="JMX_PORT=9998"

[Install]
WantedBy=multi-user.target

如果使用卡夫卡,Confluent已经为卡夫卡和Zookeeper提供了systemd脚本
[Unit]
Requires=network.target remote-fs.target
After=network.target remote-fs.target

[Service]
Type=simple
User=kafka
ExecStart=/bin/sh -c 'zookeeper-server-start zookeeper.properties > /var/log/zookeeper.log 2>&1'
ExecStop=zookeeper-server-stop
Restart=on-abnormal
Environment="JMX_PORT=9998"

[Install]
WantedBy=multi-user.target