【问题标题】:How do I monitor Tomcat6 with JVisualvm in Ubuntu Linux?如何在 Ubuntu Linux 中使用 JVisualvm 监控 Tomcat6?
【发布时间】:2011-09-14 21:23:59
【问题描述】:

我正在尝试设置 JVisualVm 来监控 Tomcat 6 实例(在 Ubuntu Server 10.04 LTS 上运行)。我见过其他问题,但没有一个能直接回答我的问题。我尝试使用 JVisualvm 连接到 Tomcat,但它返回“无法连接”错误 - 但正在与服务器建立 TCP 连接;服务器在短暂的流量爆发后断开连接。

我已经将这个添加到 /etc/default/tomcat6 并重新启动了 tomcat6

# This enables JMX in order to permit VisualVM to profile the JVM.
JAVA_OPTS="${JAVA_OPTS} -Dcom.sun.management.jmxremote=true -Dcom.sun.management.jmxremote.port=9090 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false"

我使用默认设置启动 rmiregistry:

rmiregistry &

我还没开始jstatd;在服务器上安装它需要完整的 JDK,它需要 X 库。我不会为了获得一个二进制文件而安装 X。

我想知道不运行jstatd 是否与它有关;我的印象是我不需要 RMI 也不需要 jstatd,只要我可以通过 JMX 端口直接使用 JMX。

服务器和JVisualvm客户端之间没有防火墙,iptables主机防火墙是打开的。使用jconsole 会导致同样的错误。

在本地 Ubuntu 10.04 机器上运行 JVisualVM(通过使用其 IP 地址和 JMX 端口)并添加 JMX 实例工作正常 - 我既没有运行 rmiregistry 也没有运行 jstatd - 尽管监视器显示 RMI 线程正在运行.

问题:我必须做什么(在服务器或客户端上)才能通过 JVisualVM 通过 JMX 监控 Tomcat(和其他 Java 程序)?

提前致谢。

【问题讨论】:

  • 如果 jconsole 失败,这就是我要领导的 - 它比 VVM 更基本 - jconsole 随 JDK 一起提供,对吧?所以你得到的答案更有可能是正确的。
  • 否:错误信息完全相同。我也了解 jconsole 也已报废。
  • @Ladlestein VisualVM 还附带 JDK。
  • 是的。但是,JDK 和 VisualVM 在 Ubuntu 存储库中是分开的。

标签: java tomcat ubuntu jmx jvisualvm


【解决方案1】:

记录一下:jstatd 不需要 X 库,它只依赖于它们通过一些其他推荐的包。您可以让aptitude 或apt-get 跳过安装推荐的软件包,并在没有任何X11 库的情况下安装jstatd。

对于aptitude,进入选项➞首选项➞自动安装推荐的软件包。对于apt-get,请参阅this question on askubuntu。

【讨论】:

    【解决方案2】:

    如果没有防火墙,请尝试为您的 Tomcat 设置 java.rmi.server.hostname 系统属性。将此添加到您的 Tomcat 的 JAVA_OPTS:

    -Djava.rmi.server.hostname=<IP address of Ubuntu Server>
    

    您无需启动rmiregistry,也无需运行jstatd 即可远程监控您的Tomcat。

    【讨论】:

    • 这就是我最终所做的:像魅力一样工作!但是,我确实必须启动 rmiregistry...我错过了什么吗?
    • 我不知道你为什么需要 rmiregistry。通常 JMX 连接工作正常,无需显式启动 rmiregistry。您使用哪个连接字符串连接到远程 Tomcat?
    • 我只是指定一个 JMX 连接:host:port - 仅此而已。我可能会在不运行 rmiregistry 的情况下再次尝试工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多