Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7116601
  • 博文数量: 3857
  • 博客积分: 6409
  • 博客等级: 准将
  • 技术积分: 15948
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-02 16:48
个人简介

迷彩 潜伏 隐蔽 伪装

文章分类

全部博文(3857)

文章存档

2017年(5)

2016年(63)

2015年(927)

2014年(677)

2013年(807)

2012年(1241)

2011年(67)

2010年(7)

2009年(36)

2008年(28)

分类: Java

2015-02-14 12:29:54

JConsole监控远程WebLogic和Tomcat

[日期:2015-02-14] 来源:Linux社区  作者:Linux [字体:  ]
JConsole可以对远程主机上的Java进程的内存使用情况进行监控。本文将讲解如何使用JConsole监控远程主机上的WebLogic和Tomcat。

一、环境

1、本机环境:Windows XP+JConsole(jdk1.6)

2、远程环境1:sunos(solaris、jdk1.6)+WebLogic

3、远程环境2:(jdk1.6)+Tomcat

本文将介绍两种环境下的配置,两者配置基本上一样,其他的系统应该也差不多。

二、远程连接sunos(solaris)+weblogic

1、jconsole使用jmx进行监控,需要在应用启动时,配置启动参数。因为使用的是weblogic服务器,故需要在${DOMAIN_HOME}/bin/setDomainEnv.sh环境中进行配置。
JAVA_OPTIONS="${JAVA_OPTIONS} -Dcom.sun.management.jmxremote.port=9000"
JAVA_OPTIONS="${JAVA_OPTIONS} -Dcom.sun.management.jmxremote.authenticate=false"
JAVA_OPTIONS="${JAVA_OPTIONS} -Dcom.sun.management.jmxremote.ssl=false"
2、查看/etc/hosts,默认情况下,已经将hostname对应到ip上了,故此处不需要进行调整。 ::1          localhost
127.0.0.1    localhost
10.1.97.20  c20 c20.sinosure.com.cn loghost


3、将${JAVA_HOME}/jre/lib/management目录属性进行修改
chmod -R 777 ./management

4、启动weblogic,并在本地开启jconsole进行远程连接,选择“远程进程”,输入主机IP和端口号。

JConsole监控远程WebLogic和Tomcat

点击“连接”,显示监控界面:

JConsole监控远程WebLogic和Tomcat

注意:在启动和关闭weblogic时,都会调用setDomainEnv.sh脚本。如果配置完成并且启动weblogic后,再关闭weblogic时,会提示端口号已被占用,此问题是因为启动和关闭weblogic时,都会启动对该端口号的监听程序。可以考虑在setDomainEnv.sh中增加一个判断,只有在启动weblogic时,才启动对该端口号的监听。

三、远程连接redhat+tomcat

1、同上一节第一步,不同的是,tomcat在启动时,设置参数的文件时catalina.sh,因此参数需在此设置。
JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=192.168.1.110""
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=9000"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"

2、对于redhat,默认情况下,hostname没有对应到ip。在redhat上,可使用hostname -i查看,如果显示的是127.0.0.1,那就需要配置/etc/hosts。
#127.0.0.1              localhost.localdomain localhost
192.168.1.110          localhost.localdomain localhost

注意:将127.0.0.1那一行注释,然后将hostname对应到192.168.1.110。

3、配置${JAVA_HOME}/jre/lib/management目录下的文件。
cp jmxremote.password.template jmxremote.password

将注释掉的内容还原:
monitorRole  QED
controlRole  R&D

执行命令,修改文件属性:
chmod 600 jmxremote.access
chmod 600 jmxremote.password

4、可参考上一节的第四步。

注意:在启动和关闭tomcat时,都会调用catalina.sh脚本。如果配置完成并且启动tomcat后,再关闭tomcat时,会提示端口号已被占用,此问题是因为启动和关闭tomcat时,都会启动对该端口号的监听程序。可以考虑只有在启动tomcat时,通过判断参数为start时,才启动对该端口号的监听。

通过以上的配置,可以看出在sunos系统和redhat系统上的配置不完全一致,同样在tomcat中的配置也不完全一致,需要注意差异。

 四、校验及异常处理

1、启动后,系统会启动对配置端口的监听,可通过命令查看是否正常启动:
netstat -an | grep 9000

如果有在监听,说明启动正常。

2、在启动jconsole后,提示连接不上,但是在远程主机上发现该端口已经被连接上(可通过netstat -an查看)。
 检查配置是否有误;或者查看防火墙是否关闭。

本文永久更新链接地址

阅读(540) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~