JVM的SNMP监控配置

近期看了一下JVM对监控的支持,除了常规的JMX外居然还有SNMP, 有点意思, 这个网管协议适配的地方还真多,那么就先测试一下。

先随便找一个能在后台持续运行的java小程序,如我手头的BIO的socket服务器。

JVM端SNMP的配置

启动SNMP需要两个地方更改,(http://docs.oracle.com/javase/7/docs/technotes/guides/management/snmp.html)

  • 在jvm的system properties上加一个

com.sun.management.snmp.port=PORT_NUMBER, PORT_NUMBER指JVM监控的SNMP端口,常规应该是161

  • 还需要Copy the ACL template file from JRE_HOME/lib/management/snmp.acl.template to JRE_HOME/lib/management/snmp.acl.

将这个原始的模板文件改一下,解注释掉一些comments,变为以下格式:

 acl = {
  {
    communities = public, private
    access = read-only
    managers = localhost
  }
 }
 trap = {
   {
     trap-community = public
     hosts = localhost
   }
 }

然后操作系统改一下,让这个acl文件只有一个owner,就是启动java的这个用户的名字,如何改参考这个文章http://docs.oracle.com/javase/6/docs/technotes/guides/management/security-windows.html

如果这步不搞,启动时会报错

Error: Password file read access must be restricted: C:\Program Files\Java\jre7\
lib\management\snmp.acl

我这里嫌麻烦,直接将启动参数设成不检查(com.sun.management.snmp.acl=false),这样能跳过这个检查

java -Dcom.sun.management.snmp.port=161 -Dcom.sun.management.snmp.acl=false com.tool.server.MyBIOServer

这里JVM这边的配置就都OK了。

SNMP管理端的配置

先到这个地址下JVM的SNMP MIB文件:http://java.sun.com/j2se/1.5.0/docs/guide/management/JVM-MANAGEMENT-MIB.mib

然后找一个SNMP客户端,我用的是iReasoning MIB Browser,load这个下过来的MIB文件。

地址填上localhost, 端口用我们之前设置的161, 直接walk一下被管理端JVM的所有暴露出来的属性

可以看到各种JVM内部信息都有, jvmClassessLoadedCount 等,还支持trap,低内存警告,还是不错。

JVM的SNMP监控配置

时间: 2024-08-01 22:01:21

JVM的SNMP监控配置的相关文章

Centos 6.5下SNMP简单配置(snmp protocol v3,监控宝)

[email protected]/7/25 1,安装 >yum -y install net-snmp net-snmp-devel 2,配置用户信息 > echo "rouser jkb auth" >> /etc/snmp/snmpd.conf > echo "createUser jkb MD5 iampassword" >> /etc/snmp/snmpd.conf 密码至少要有8个字节 3,启动 >serv

zabbix 配置SNMP监控

什么是SNMP? 简单网络管理协议(SNMP),由一组网络管理的标准组成,包含一个应用层协议(application layer protocol).数据库模型(database schema)和一组资源对象. 该协议能够支持网络管理系统,用以监测连接到网络上的设备是否有任何引起管理上关注的情况.现在服务器.交换机.路由器.打印机等设备都支持SNMP协议. zabbix配置SNMP思路:(zabbix服务器是Linux系统) 第一步:zabbix服务器先安装SNMP服务,配置SNMP服务,设置开

zabbix-3.2.6之snmp监控(无需安装agent也能监控)

一.snmp监控介绍 概述 如果我们需要监控打印机.路由器.UPS等设备,肯定不能使用zabbix agentd,因为他们不能安装软件的,还好他们一般都支持SNMP协议,这样我可以使用SNMP来监控他们.如果你希望使用SNMP agent来获取这些设备的信息,那么在安装zabbix server的时候你需要增加snmp的支持. 备注:SNMP检查基于UDP协议 注意事项 如果监控基于SNMPv3协议的设备,确保msgAuthoritativeEngineID(通常叫做snmpEngineID 或

JVM之tomcat-安装配置

JAVA包含4个独立且相关的技术: JAVA程序设计语言(由sun公司的一个团队开发) JAVA API(一类是由sun公司定义的规范( 只维持了很少一段时间),一类是由JAVA的规范开放组织定义的规范(受欢迎的)) JVM的种类: Hotspot JVM(sun公司的) JRE     JVM+java+SE API(java 运行时环境,实现java的运行) JDK    java+API+JVM,还额外提供一些调试和监控工具等,是用于实现java开发的最小环境(java开发组件,实现jav

zabbix snmp监控交换机流量

zabbix监控交换机是非常的简单,只需知道交换机snmp的密码,然后连结下自带的snmp模板,就可以完成监控了,还有什么比这配置更简单的? 1.配置交换机的snmp 1 2 snmp-server community yang ro   #配置读取snmp的密码   snmp-server community yangrong rw   #配置可写的snmp密码,为安全起见,最好别开启 在linux上安装net-snmp net-snmp-utils包,测试snmp访问 1 2 #snmpwa

LR通过snmp监控linux下的mysql

LR通过snmp监控linux下的mysql 在linux底下安装配置snmp: 1.使用系统盘安装rpm包(这种方式最好) 2.在www.net-snmp.org处下载net-snmp安装(安装后有可能找不到snmpd.conf文件) tar xzvf  net-snmp-5.4.2.1.tar.gzcd  net-snmp-5.4.2.1./configure这里会叫你输入一些信息,其中有一步(好像是第二步)是问要安装什么版本:1.2.3,输入2回车其它都直接回车就可以makemake in

cacti通过snmp监控带宽

1.安装和配置snmp a. yum install -y net-snmp net-snmp-utils b. chkconfig snmpd on c. chkconfig –list|grep snmpd d. vi /etc/snmp/snmpd.conf 将 view systemview included .1.3.6.1.2.1.1 改为 view systemview included .1.3.6.1.2.1 将 com2sec notConfigUser  default  

snmp监控设置

Wget 下载net-snmp源代码包 wget http://sourceforge.net/projects/net-snmp/files/net-snmp/5.7.2.1/net-snmp-5.7.2.1.tar.gz 解包 [[email protected] home]# tar -zxf net-snmp-5.7.2.1.tar.gz mv net-snmp-5.7.2.1 snmp 编译注意参数请注意参数: --prefix=/usr/local/snmp 选项,选择snmp的安装

技巧:结合Zabbix与SNMP监控嵌入式设备

在如何利用Zabbix监控网络设备三篇文章的前两篇中,我们介绍了如何通过Zabbix代理监控网络设备.但有些设备无法安装Zabbix代理,需要采用其他方法监控.需要考虑无法安装软件的嵌入式设备或应用程序.对于这些设备,可通过SNMP进行监控. 这是关于Zabbix网络监控三篇文章的第二部分.第一部分详见此处. 许多设备都提供SNMP支持.在大多数情况下,只需要进行简单的配置:开启SNMP服务,配置设备可以通过网络访问并确保安全.SNMP的默认安全配置为通过定义团体名称定义.get communi