Jconsole 监控 JBOSS/TOMCAT
Java
在jdk5开始就自带有Jconsole了,要想用Jconsol监控且需要添加启 动参数:
Linux系统:
JAVA_OPTS="$JAVA_OPTS
-Dcom.sun.management.jmxremote.port=8950
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false"
Windows系统也类似,去掉双引号,将环境变量符 号$JAVA_OPTS 变成现在%JAVA_OPTS %即可。
这样就能在本机使用Jconsole监控了:jconsole localhost:8950。
要实现远程监控还要与IP绑定,添加参数:
-Djava
.rmi.server.hostname=192.168.10.31
若要实现使用用户名登陆,修改参数-Dcom.sun.management.jmxremote.authenticate=true;
添加启动参数:-Dcom.sun.management.jmxremote.password.file=$JAVA_HOME/jre/lib /management/jmxremote.password ;
然后进行以下配置:
1. 把 JRE_HOME/lib/management/jmxremote.password.template拷贝为 jmxremote.password。
2. 去掉此目录下 jmxremote.access 最后两行的注释,这个存的就是用户名和权限。
3. 对应的,去掉 jmxremote.password 最后两行注释,这个是用户名和对应的密码。
4. 通过添加和修改这两个文件来管理登陆用户。
最后,要修改jmxremote.password文件的权限chkmod 600 jmxremote.password。
就可以在Jconsole里实现远程监控了:
远程进程 192.168.10.31:8950
或 service:jmx:rmi:///jndi/rmi://192.168.10.31:8950/jmxrmi
一、简言
Java
6.x采用JMX方式提供了一系列监视和管理虚拟机的API,随SDK一起发布的JConsole则是采用这些API实现监控虚拟机的使用工具。
JConsole能够提供被监控虚拟机的内存、线程、类的加载以及MBean等信息,从而能够对服务器的运行情况进行实时监控。
二、运行环境
服务器:Redhat Linux ES 5.3 + JDK 1.6.07 + Jboss 4.2.2
ip地址:10.1.26.253
客户机:Windows + JDK 1.6.10
三、参数配置
1> 修改java虚拟机启动参数
jboos需要修改的文件是在bin目录下的run.sh[Linux]或者run.bat[Windows]
-
Linux下的修改方式:
-
在%JBOSS_HOME%\bin\run.sh文件中将
-
JAVA_OPTS=
"$JAVA_OPTS -Dprogram.name=$PROGNAME "
-
修改为:
-
JAVA_OPTS=
"$JAVA_OPTS -Dprogram.name=$PROGNAME"
-
JAVA_OPTS=
"$JAVA_OPTS -Dcom.sun.management.jmxremote.port=9999"
-
JAVA_OPTS=
"$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false"
-
JAVA_OPTS=
"$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"
-
JAVA_OPTS=
"$JAVA_OPTS -Djava.rmi.server.hostname=192.168.10.1"
#Server ip
Linux下的修改方式:
在%JBOSS_HOME%\bin\run.sh文件中将
JAVA_OPTS="$JAVA_OPTS -Dprogram.name=$PROGNAME "
修改为:
JAVA_OPTS="$JAVA_OPTS -Dprogram.name=$PROGNAME"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=9999"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false"
JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"
JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=192.168.10.1" #Server ip
-
windows下的修改方式:
-
rem -------- 增加jconsole监控 ---------------------------------------------------------------------------
-
set JAVA_OPTS=%JAVA_OPTS% -Dprogram.name=%PROGNAME%
-
set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote.port=
9999
-
set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote.authenticate=false
-
set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote.ssl=false
-
set JAVA_OPTS=%JAVA_OPTS% -Djava.rmi.server.hostname=
192.168
.
10.1
windows下的修改方式:
rem -------- 增加jconsole监控 ---------------------------------------------------------------------------
set JAVA_OPTS=%JAVA_OPTS% -Dprogram.name=%PROGNAME%
set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote.port=9999
set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote.authenticate=false
set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote.ssl=false
set JAVA_OPTS=%JAVA_OPTS% -Djava.rmi.server.hostname=192.168.10.1
注意:
1、9999表示监控的端口号,确保指定的端口不被占用;
2、可以采用netstat -an来查看已经占用的端口;
3、配合lsof -i:portnum 来查看占用端口的具体应用程序;
4、另外如果开启了防火墙服务,请确保端口能够透过防火墙访问;
5、192.168.10.1为当前服务器的IP;
2> 启动JBoss服务器
./run.sh -b192.168.1.5,必须通过-b参数指定Jboss服务器绑定的地址;
允许所有用户连接 则为 -b 0.0.0.0
3> 连接远程虚拟机
启动%JAVA_HOME%\bin目录下的JConsole,
在弹出对话框的“远程进程:”一栏中,输入10.1.26.253:9999,然后点击“连接”,
就能查看到远程Jboss服务器的运行情况了。
四、实验结果
在当前应用环境下,测试通过。
五、参考资料
1、http://blog.csdn.net/JBossWeek/archive/2006/08/04/1017264.aspx
六、jboss debug
分享到:
相关推荐
2. 监控JBoss服务器的性能,例如监控内存使用率、线程数等。 jconsole的使用步骤包括: 1. 配置JVM参数,在catalina.bat文件中添加-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management....
- Tomcat可以作为独立服务器,也可以与Spring Boot、EJB容器(如JBoss、WebLogic)等结合使用。 10. **故障排查**: - 当遇到问题时,查看日志文件是首要步骤。 - 使用JMX或JConsole工具检查内存使用、线程状态...
【标题】:“jmx_tomcat_jboss”指的是在Java管理扩展(JMX)框架下对Tomcat和JBoss服务器的管理和监控。 【描述】:Java管理扩展(JMX)是一种标准,允许开发者创建、管理和监控Java应用程序的组件。在这个上下...
1. Tomcat常与Spring Boot、JBoss、WebLogic等应用服务器一起使用,作为Java EE应用的Web层容器。 通过以上步骤,你可以在Windows 64位系统上成功安装和配置Apache Tomcat7,实现Web应用的部署和管理。记得定期更新...
通过JMX管理工具(如jconsole)监控Tomcat的内存、线程、MBean等状态。 总结,Tomcat学习涵盖了许多方面,包括其架构、配置、性能优化、安全管理和集成策略。深入理解这些知识点对于Java Web开发者来说非常重要,...
- JBoss应用的部署通常也是以EAR或WAR格式,管理工具如JConsole和Management CLI提供了强大的管理和监控功能。 **容器的作用**: Java应用服务器,或者说容器,主要是为Java应用提供运行环境,管理应用的生命周期...
- **JConsole或VisualVM**:使用这些工具可可视化地监控Tomcat的内存、线程、CPU使用情况等。 9. **故障排查** - ** catalina.out**:记录服务器启动和运行时的信息,是问题排查的重要资源。 - **Stacktrace**:...
- 使用JMX监控:开启JMX,并通过JConsole或VisualVM等工具监控Tomcat性能。 - 管理线程池:在`server.xml`中配置`Executor`元素,自定义线程池大小。 8. **安全考虑** - 限制对`manager`和`admin`应用的访问,...
例如,可以修改`standalone.xml`或`domain.xml`中的端口配置,或者使用`jboss-cli.sh`或`jconsole`等工具进行实时监控。正确理解和掌握JBoss的启动顺序和端口占用情况,能有效提高我们对系统的管理和故障排查能力。
- **JMX监控**:启用JMX(Java Management Extensions),可以通过JConsole或VisualVM等工具远程监控Tomcat的运行状态。 **其他特性:** - **连接器**:Tomcat支持多种类型的连接器,如NIO(非阻塞I/O)、APR...
4. **管理工具**:通过JMX(Java Management Extensions),JBoss提供了一套完整的管理工具,用于监控和管理服务器状态,如jconsole和hawtio。 5. **Web容器**:JBoss内嵌了Tomcat或Jetty作为Web服务器,支持...
当遇到问题时,检查日志文件,使用JConsole或VisualVM等工具分析JVM状态,以及使用Tomcat内置的管理控制台查看应用状态。 10. **Tomcat与其他服务器集成**: Tomcat可以作为独立服务器运行,也可以与Apache ...
- 开启日志监控,如通过JMX监控Tomcat的运行状态。 7. **故障排查**: - 查看`logs`目录下的日志文件,如`catalina.out`,找出错误或警告信息。 - 使用JConsole或VisualVM等工具进行JVM性能分析和内存泄漏检查。...
10. **集成其他应用服务器**:虽然Tomcat是一个轻量级的应用服务器,但它可以与其他重量级应用服务器如JBoss、WebLogic等集成,实现特定的功能或满足更高的性能需求。 以上就是关于"apache-tomcat-8.5.56.zip...
- **JMX监控**:通过JMX接口远程监控Tomcat的状态,例如使用JConsole或VisualVM。 - **JSP编译**:默认情况下,JSP会被即时编译成Servlet,可通过调整`开发模式`来优化。 7. **扩展与插件**: - **AJP连接器**:...
2. JMX监控:使用JConsole或VisualVM等工具监控服务器状态。 3. 使用`jstack`命令查看线程堆栈,分析死锁等问题。 九、Tomcat与其他应用服务器对比 Tomcat以其轻量级、易用性和高性能而受到欢迎,但相比完整的Java ...
Apache Tomcat 是一款广泛应用的开源Java Servlet容器,它实现了Java EE的Web应用程序规范,特别是Servlet和JSP。这个"apache-tomcat-9.0.8"版本是Tomcat的一个特定发行版,提供了稳定和高性能的环境来部署和运行...
- Tomcat可以作为其他Java EE应用服务器(如JBoss、GlassFish)的Servlet容器使用。 8. **监控与管理工具** - Tomcat内置了管理应用(Manager App)和Host Manager,允许通过Web界面进行应用部署、管理等操作。 ...
- 利用JMX工具(如VisualVM或JConsole)监控Tomcat的运行状态,包括内存使用、线程状态等。 13. **国际化与本地化** - 学习如何在Tomcat中支持多种语言,为全球用户提供更好的体验。 14. **Web服务和SOAP支持** ...
7. 监控工具:如JConsole或JBoss Management Console,用于监控集群健康状态和性能指标。 8. 失败检测和恢复机制:一旦检测到某个节点故障,集群应能自动将服务转移到其他健康的节点上,确保服务连续性。 9. 配置...