首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以通过Munin监视JVM对Elasticsearch的使用情况?

是否可以通过Munin监视JVM对Elasticsearch的使用情况?
EN

Unix & Linux用户
提问于 2016-02-10 15:56:07
回答 1查看 959关注 0票数 1

我想使用Munin来监视Elasticsearch使用的JVM的状态,它是通过Java运行的( ps的输出如下):

代码语言:javascript
复制
elastic+  1083     1  3 09:29 ?        00:13:23 /usr/bin/java -Xms8g -Xmx8g -Djava.awt.headless=true -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly -XX:+HeapDumpOnOutOfMemoryError -XX:+DisableExplicitGC -Dfile.encoding=UTF-8 -Djna.nosys=true -Des.path.home=/usr/share/elasticsearch -cp /usr/share/elasticsearch/lib/elasticsearch-2.1.0.jar:/usr/share/elasticsearch/lib/* org.elasticsearch.bootstrap.Elasticsearch start -d -p /var/run/elasticsearch/elasticsearch.pid --default.path.home=/usr/share/elasticsearch --default.path.logs=/var/log/elasticsearch --default.path.data=/var/lib/elasticsearch --default.path.conf=/etc/elasticsearch

几个用于的的Munin插件;但是,

  • jstat__*程序需要通过JSVC运行,据我所知,jsvc需要修改源代码: Requirements:您需要在http://jakarta.apache.org/commons/daemon/提供的jsvc下执行您的Java程序,这使您能够使用指定的pid文件使用-pidfile选项运行Java程序。
  • jmx_*程序要求Java公开JMX接口,这是通过向Java二进制文件传递特定参数来完成的:为了监视Java,它必须公开JMX接口。使用Java1.5,可以通过添加参数(如:-Dcom.sun.management.jmxremote.port=<PORT> -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false )来实现

实际上,针对Munin的现有弹性搜索插件跳过JVM并通过端口9200上的JSON获取数据。

那么,如何通过JVM来实现这一点呢?如果这是不可能的,我也对监视Elasticsearch的其他免费解决方案感兴趣。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2016-02-14 18:46:47

如果您只对JVM自己的统计数据感兴趣(而不是Elasticsearch的),那么尝试使用JVM的内置SNMP - 来自OpenNMS的教程应该会有帮助。

JMX也可以在本地模式下运行;客户端必须在与JVM相同的用户帐户下运行。jmxterm能够实现这个(这是它所做的),但是很明显,Munin的jmxquery工具不是。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/261294

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档