繁体   English   中英

"使用 Jolokia 监控同一 Tomcat 服务器上 webapp 的 JMX 端点"

[英]Use Jolokia to monitor JMX endpoint of webapp on same Tomcat server

Jolokia<\/a>对我来说是一个未知领域,在阅读了文档之后,我仍然不确定它是否适用于我想到的场景。

设置:<\/strong>

首先,Jolokia完全通过了JSR-160连接器,因此不需要任何JMX / RMI身份验证。 Jolokia的全部目的是通过HTTP / JSON提供到内部 JMX子系统的桥梁。 根据代理,您可以很轻松地保护Jolokia。 对于WAR代理,安全性与任何Java EE Web应用程序相同:为tomcat设置一些角色和用户(例如,在tomcat-users.xml ),并在jolokia.war/WEB-INF/web.xml内的安全性约束中引用该角色。 /WEB-INF/web.xml

对您的问题:

  1. 是的你可以。 如果您没有任何特定的身份验证需求,只需将jolokia.war放到tomcat的/webapps目录中。 我建议在增加安全性之前先尝试一下。 要卸载该代理,只需删除战争。

  2. 或者,您也可以使用JVM代理,该代理在额外的端口上打开自己的HTTP服务器(默认值:8778)。 参考手册中的更多内容

  3. 由于MBean是全局注册的,并且可以从JVM中的任何位置访问,因此不需要专用的Web应用程序连接。 Web应用程序当然应该仔细选择它公开的管理信息。 因此,不需要任何额外的步骤,您可以直接访问用于WEB应用程序的MBean(除非它在Java安全性方面做一些不寻常的事情,但我认为不是)。

要测试安装,只需使用浏览器和上下文/jolokia (例如“ http:// localhost:8080 / jolokia ”)连接到Tomcat。 您应该看到有关代理本身的版本信息。

下一步将使用浏览器(和类似http:// localhost:8080 / jolokia / list的操作“列表”,但这很乏味)或使用诸如j4pshhawt.io的客户端来探索JMX命名空间。 希望您会找到所需的Web应用程序的MBean。

我尝试仔细按照 Jolokia 网站上的教程进行操作。 我把 Jolokia Agent War 放到 Tomcat 的 webapps 文件夹下,然后启动。 当我最终验证安装时,将浏览器指向 http://localhost:8080/jolokia/version ==> 我的浏览器没有响应:网站无法访问。 当我在同一个 URL 上尝试 curl 时,我得到以下输出:

curl http://localhost:8080/jolokia/version <!doctype html>HTTP 状态 401 - UnauthorizedH1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size: 22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color :white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma, Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color :黑色;}A.name {颜色:黑色;}HR {颜色:#525D76;}

HTTP 状态 401 - 未经授权

类型状态报告

说明该请求未应用,因为它缺少目标资源的有效身份验证凭据。

Apache Tomcat/7.0.92

任何帮助将不胜感激,谢谢!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM