无法启用 jboss jmx

cannot enable jboss jmx

我有一个 infinispan 8.2 服务器 运行,我需要为其启用 jmx。

我遵循了服务器指南,最终的 domain.xml 文件是:

   <subsystem xmlns="urn:jboss:domain:jmx:1.3">
        <remoting-connector use-management-endpoint="false"/>
        <expose-resolved-model/>
        <expose-expression-model/>
    </subsystem>
    <subsystem xmlns="urn:jboss:domain:naming:2.0">
        <remote-naming/>
    </subsystem>
    <subsystem xmlns="urn:jboss:domain:remoting:3.0">
        <!--<endpoint/>-->
        <!--<http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm"/>-->
        <connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"/>
    </subsystem>
    <subsystem xmlns="urn:jboss:domain:security:1.2">
        <security-domains>
            <security-domain name="other" cache-type="default">
                <authentication>
                    <login-module code="Remoting" flag="optional">
                        <module-option name="password-stacking" value="useFirstPass"/>
                    </login-module>
                    <login-module code="RealmDirect" flag="required">
                        <module-option name="password-stacking" value="useFirstPass"/>
                    </login-module>
                </authentication>
            </security-domain>
            <security-domain name="jboss-web-policy" cache-type="default">
                <authorization>
                    <policy-module code="Delegating" flag="required"/>
                </authorization>
            </security-domain>
            <security-domain name="jboss-ejb-policy" cache-type="default">
                <authorization>
                    <policy-module code="Delegating" flag="required"/>
                </authorization>
            </security-domain>
            <security-domain name="jaspitest" cache-type="default">
                <authentication-jaspi>
                    <login-module-stack name="dummy">
                        <login-module code="Dummy" flag="optional"/>
                    </login-module-stack>
                    <auth-module code="Dummy"/>
                </authentication-jaspi>
            </security-domain>
        </security-domains>
    </subsystem>
    <subsystem xmlns="urn:jboss:domain:security-manager:1.0">
        <deployment-permissions>
            <maximum-set>
                <permission class="java.security.AllPermission"/>
            </maximum-set>
        </deployment-permissions>
    </subsystem>
    <subsystem xmlns="urn:jboss:domain:transactions:3.0">
        <core-environment>
            <process-id>
                <uuid/>
            </process-id>
        </core-environment>
        <recovery-environment socket-binding="txn-recovery-environment" status-socket-binding="txn-status-manager"/>
    </subsystem>
</profile> </profiles>

我仍然无法连接到 jmx 端口。

请记住,服务器正在通过远程处理(也称为 JSR 160)包装 JMX,以便它使用管理器安全凭证。因此,您要么通过 jvmstat 在本地连接(VisualVM 可以执行此操作),要么将 bin/client/jboss-client.jar 添加到客户端的类路径并使用以下服务 URL 进行连接:service:jmx:http-remoting-jmx ://host:9990(如果您在管理界面上启用了TLS,请将http替换为https)

因为你有这个条目:

 <remoting-connector use-management-endpoint="false"/>

端口从management-http端口(默认9990)切换到http端口(默认8080),所以你的连接字符串需要切换到:

服务:jmx:http-remoting-jmx://host:8080