关于进行远程服务器监控

先前我公司用的获取计算机状态都是基于写shell脚本来实现(当时服务器都是linux的)后来从网络上获取还可以通过以下几种方式搞定:

1、最底层的telnet协议:用telnet协议登陆上,无论是操作系统 (linux、windows或其他)、路由器、或其他网元设备,都能够执行telnet指令,根据返回结果进行字符截取获得就可以了。telnet协议则没这个问题,几乎所有的厂家设备、操作系统都支持。开源项目中有java实现telnet协议 的项目

2、nmp监控服务器的物理信息,内存使用率,CPU占有率,用snmp4j,或者snmphibernate来操作,这个东东对snmp4j进行了封装,就像hibernate对jdbc进行封装一样。

像mysql的监控,那就得用jdbc了,可以通过sql命令得到mysql性能,然后你代码分析数据处理数据。 jboss,tomcat的,就用jmx进行监控。

3、sys文件系统是linux下的伪文件系统,利用它可以轻松的获取系统信息,其实一些linux命令如top等也都是读取sys文件系统下的相应文件然后分析输出而已,sys文件系统比较新,和它功能一样还有/proc文件系统。 (主要思想是:使用java程序ssh到远程服务器执行top命令,然后top会一直回调信息给java客户端。 可以把top里面的所有信息返回回来。

用到的远程ssh类库是:trilead-ssh2-build213.jar

 

 

http://wwwwfw.blog.163.com/blog/static/3172781520091103321671/

你可能感兴趣的:(关于进行远程服务器监控)