我尝试使用管理 cli 更改 JBoss/Wildfly 托管服务器中的域控制器 IP 地址,但配置要么保持不变,要么以错误的方式更改。
我可以在 /opt/wildfly/domain/configuration/host-slave.xml 中找到域控制器设置:
<host xmlns="urn:jboss:domain:4.0">
<domain-controller>
<remote security-realm="ManagementRealm">
<discovery-options>
<static-discovery name="primary" protocol="${jboss.domain.master.protocol:remote}" host="${jboss.domain.master.address}" port="${jboss.domain.master.port:9999}"/>
</discovery-options>
</remote>
</domain-controller>
</host>
到目前为止,这些是我失败的尝试:
/opt/wildfly/bin/jboss-cli.sh -Djboss.domain.master.address=192.168.57.13
embed-host-controller --host-config=host-slave.xml
set host=`:read-children-names(child-type=host)`
/host=$host/core-service=discovery-options/static-discovery=primary:write-attribute(name=host,value="${jboss.domain.master.address:192.168.57.13}")
/host=$host:write-remote-domain-controller(host=192.168.57.13,port=9999,security-realm=ManagementRealm)
/host=$host:write-remote-domain-controller(host=192.168.57.13, security-realm=ManagementRealm)
/host=$host:write-remote-domain-controller(host=remote,security-realm=ManagementRealm)
重新启动 Wildfly 后,我收到如下错误,这表明托管服务器仍然不知道托管域 IP:
WFLYCTL0013: Operation ("add") failed - address: ([
("host" => "gerenciado-centos-7"),
("core-service" => "discovery-options"),
("static-discovery" => "primary")
]) - failure description: "WFLYCTL0211: Cannot resolve expression '${jboss.domain.master.address}'"
我希望更改的设置是host="${jboss.domain.master.address}"
,但事实并非如此。
这是我的托管服务器信息之一:
cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)
JAVA_HOME=/usr /opt/wildfly/bin/standalone.sh -v
...
WildFly Full 10.0.0.Final (WildFly Core 2.0.10.Final)
将我的托管服务器指向正确的域控制器的正确语法是什么?
为什么我不直接编辑该文件?因为我需要自动化这件事,而且我知道管理 CLI 是安全完成这件事的方法。
第一个 CentOS 7 即将停产,这对于企业系统来说并不明智。最好切换到其他 RH 克隆(例如 Rocky Linux 9,请参阅 OP 评论)。您还可以考虑订阅 RedHat Linux 并获得支持和长期使用的所有好处。
但更重要的是WildFly的版本有问题。这是相当旧的版本,没有任何支持。因此,即使您发现错误(可能是这种情况),您也不会获得软件更新。更好地将软件迁移到新版本(OP 这样做了,切换到 Wildfly 30)。
简而言之:CentOS 7 + Wildfly 10 有集成问题,报告(在评论中)Wildfly 30 + Rocky Linux 9 工作正常。