为 Tomcat 8 配置 Munin 的 Tomcat 插件

为 Tomcat 8 配置 Munin 的 Tomcat 插件

你好,我遵循了几个关于在 munin 节点上配置 tomcat 插件的指南,但它们都是针对 tomcat 6 的,虽然我在 tomcat-users.xml 和其他内容中做了必要的更正,但我无法从插件中获取任何数据。

有没有人为 Tomcat 8 做过这个?

编辑:我遵循的步骤:

创建符号链接:

sudo ln -s /usr/share/munin/plugins/tomcat_access /etc/munin/plugins/tomcat_access
 sudo ln -s /usr/share/munin/plugins/tomcat_jvm /etc/munin/plugins/tomcat_jvm
 sudo ln -s /usr/share/munin/plugins/tomcat_threads /etc/munin/plugins/tomcat_threads
 sudo ln -s /usr/share/munin/plugins/tomcat_volume /etc/munin/plugins/tomcat_volume

编辑 tomcat-users.xml:

<role rolename="manager-gui"/> <user username="munin" password="secret" roles="manager-gui"/>

创建 manager.xml :

<Context privileged="true" antiResourceLocking="false"
         docBase="${catalina.home}/webapps/manager">
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.0\.0\.1" />
</Context>

在 plugin-conf.d 中编辑 munin-node 配置:

[tomcat_*]
env.ports 8080
env.user munin
env.password secret

运行插件:

munin-run tomcat_access

重新启动 munin 节点:

sudo service munin-node restart

我错过了什么?

答案1

最终找到了一个解决方案:

我所做的是创建一个 manager.xml$CATALINA_BASE/conf/Catalina/localhost并在里面添加这些内容:

<Context privileged="true" antiResourceLocking="false"
         docBase="${catalina.home}/webapps/manager">
    <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>

当然,您需要随意更改“允许”部分,如果您需要从远程主机访问,您应该在那里写入 IP。

此后$CATALINA_BASE/conf/context.xml我注释掉了这一行:

<!-- <Valve className="org.apache.catalina.authenticator.SSLAuthenticator" securePagesWithPragma="false" />-->

我完全不知道这会导致什么,但它让我登录到管理员页面。

最后将这些添加到 munin-node 配置中:

env.host 127.0.0.1
env.request /manager/status?XML=true
env.ports 8080
env.connector "http-nio-8080"

您可以在管理器网页中找到正确的连接器。希望这也能帮助其他人。

相关内容