zookeeper啓動後查看狀態報Error contacting service. It is probably not running.錯誤

在集羣上安裝並啓動zookeeper後,查看zookeeper狀態,出現以下情況:

[hadoop@oceanbase06 zookeeper-3.4.12]$ zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/modules/zookeeper-3.4.12/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

但實際上zookeeper進程是啓動了並且正常運行的:

[hadoop@oceanbase06 hadoop]$ zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/modules/zookeeper-3.4.12/bin/../conf/zoo.cfg
Starting zookeeper ... already running as process 16783.

使用jps命令查看已啓動進程,報錯如下:

[hadoop@oceanbase06 zookeeper-3.4.12]$ jps
Error occurred during initialization of VM
Could not reserve enough space for object heap
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

從報錯可以看出是Java虛擬機(JVM)分配的內存大於系統可用內存數,所以沒有足夠的空間分配給JVM來創建Object。
解決方法:可以看看機器的系統內存目前還剩下多少,保證足夠啓動Java時設定的內存。

在/etc/profile中設置JVM參數並生效

export _JAVA_OPTIONS="-Xmx10240M"

重新啓動zookeeper,查看狀態,不再報錯。

[hadoop@oceanbase06 zookeeper-3.4.12]$ zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/modules/zookeeper-3.4.12/bin/../conf/zoo.cfg
Mode: follower
[hadoop@oceanbase06 zookeeper-3.4.12]$ 

[hadoop@oceanbase06 zookeeper-3.4.12]$ jps
Picked up _JAVA_OPTIONS: -Xmx10240M
17528 Jps
17326 QuorumPeerMain

如果JVM的-Xmx設置太大,可能會報如下錯誤:

[hadoop@oceanbase06 ~]$ java -version
Picked up _JAVA_OPTIONS: -Xmx10240M
Error occurred during initialization of VM
Could not reserve enough space for the card marking array
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章