如何在主 DC 关闭时对 DC 进行故障转移

How to failover DC when primary DC is down

我正在使用 JBoss EAP 7 并根据本指南测试 DC 故障转移: https://access.redhat.com/solutions/1247783

一切运行良好,直到我停止 DomainController 并尝试将 JBoss CLI 连接到 Host1,但我无法与 host1 建立 cli 连接,出现以下错误:

/opt/jboss-eap-7.0/bin/jboss-cli.sh --connect --controller=192.168.56.127:39999
Failed to connect to the controller: The controller is not available at 192.168.56.127:39999: java.net.ConnectException: WFLYPRT0053: Could not connect to http-remoting://192.168.56.127:39999. The connection failed: WFLYPRT0053: Could not connect to http-remoting://192.168.56.127:39999. The connection failed: Connection refused.

netstat -tpln 显示端口 39999 处于活动状态。

我认为 host1 没有配置为 DC,这可能是 cli 连接得到错误响应的原因,我认为 host1 中的 host-slave.xml 可能有一些错误,这里是一些摘要:

<domain-controller>
    <remote security-realm="ManagementRealm">
        <discovery-options>
            <static-discovery name="primary" protocol="${jboss.domain.master.protocol:remote}" host="192.168.56.11" port="${jboss.domain.master.port:9999}"/>
        </discovery-options>
    </remote>
</domain-controller>

我使用以下 shell 启动 host1:

/opt/jboss-eap-7.0/bin/domain.sh --backup \
-Djboss.domain.base.dir=/opt/mytest/m3/domain/ \
--host-config=host-slave.xml  \
-Djboss.bind.address.management=192.168.56.127 \
-Djboss.domain.master.address=192.168.56.11 \
-Djboss.management.native.port=39999

谁能告诉我一些指南?

此致

局域网

  • 发生这种情况是因为,除非配置,否则 jboss-cli 客户端会尝试根据端口号猜测要使用的协议。由于 JBoss EAP 7 使用 http-remoting 而不是远程处理(由 JBoss EAP 6 使用),当您使用非默认本机端口时,客户端会猜测它可能是 JBoss EAP 7.

能否尝试在 jboss-cli.xml 文件中添加控制器:

<controllers> 
<controller name="example"> 
<protocol>remoting</protocol> 
<host>host.example.com</host> 
<port>39999</port> </controller> 
</controllers>

并将--controller参数中的命名控制器传递给jboss-cli.(sh|bat)脚本:

./jboss-cli.sh --connect --controller=example

或者,您也可以将协议与控制器位置一起传递,以避免编辑 jboss-cli.xml 文件:

./jboss-cli.sh --connect --controller=remoting://host.example.com:39999
  • JBoss EAP 7 正在为 8080 的 HTTP 请求提供服务。确保没有其他 version/instance 服务器启动并且 运行