HQ默认没有开启jmx端口,所以需要手动打开jmx端口。
为了增强HQ的安全性,需要为hqserver的jmx连接增加口令。步骤如下:
1. 修改catalina.sh文件:
#在cygwin=false的前面添加: JAVA_OPTS="$JAVA_OPTS -server -Xms800m -Xmx800m -XX:PermSize=190m" [ $1 != "stop" ] && JAVA_OPTS="-Dcom.sun.management.jmxremote \ -Dcom.sun.management.jmxremote.port=6868 \ -Dcom.sun.management.jmxremote.ssl=false \ -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.password.file=../conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=../conf/jmxremote.access $JAVA_OPTS" export JAVA_OPTS
注意端口冲突,这里示例设置的为6868.
2. 在tomcat的conf目录下增加两个配置文件jmxremote.access和jmxremote.password:
#jmxremote.access的文件内容 前面是用户名 后面是权限 monitorRole readonly controlRole readwrite #jmxremote.password的文件内容 前面是用户名 后面是密码 monitorRole tomcat controlRole tomcat
注意:jmxremote.password文件的权限必须是只有启动hqserver用户才有的权限,其他用户、组都没有任何权限,包括只读。
3. 重新启动HQ
4. 登录hq监控页面,在hqserver所在平台下面找到tomcat的服务器的资源配置页面,配置相应的jmx连接url(注意端口),设置正确的用户名密码。
上面只是对于直接将HQ应用放置于Web容器,通过Tomcat容器的启动脚本启动方式有用),对于安装版,HQ使用的是Java的方式来启动容器的,需要修改代码(hq-bootstrap模块)。