如何管理WildFly/JBoss的多个Standalone实例及相关配置
WildFly 24 多Standalone实例配置问题解答
1. 数据源配置相关
1.1 给指定Standalone实例创建数据源
操作步骤如下:
- 先确认目标实例的管理端口(默认9990,多实例场景下修改端口配置时应该已经给每个实例分配了不同的管理端口),且实例处于运行状态
- 运行jboss-cli连接到指定实例,命令格式:
./jboss-cli.sh --connect controller=<实例IP>:<实例管理端口>
示例:如果目标实例管理端口为9991,本地运行的话命令为./jboss-cli.sh --connect controller=127.0.0.1:9991 - 连接成功后执行数据源添加命令,以MySQL数据源为例参考命令:
data-source add --name=公共数据源 --jndi-name=java:/jdbc/CommonDS --driver-name=mysql --connection-url=jdbc:mysql://数据库地址:3306/库名 --user-name=数据库账号 --password=数据库密码 --use-ccm=true --valid-connection-checker-class-name=org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker --exception-sorter-class-name=org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter - 启用数据源:
data-source enable --name=公共数据源 - 执行
:reload让配置生效即可。
如果需要批量给所有实例配置相同数据源,可以把上述命令写成cli脚本,循环连接每个实例执行即可。
1.2 全局可用数据源说明
Standalone模式下每个实例是完全独立的进程,配置文件互相隔离,原生不支持跨所有Standalone实例的全局共享数据源。
如果需要统一管理所有实例的数据源,建议切换为WildFly的Domain运行模式,Domain模式下可在中心控制点配置全局数据源,自动下发到所有关联的服务实例生效。
2. jboss-cli连接指定实例并重启
操作方式分为两种:
2.1 交互式操作
- 运行连接命令:
./jboss-cli.sh --connect controller=<实例IP>:<实例管理端口> - 连接成功后直接执行重启命令:
shutdown --restart=true
2.2 非交互式操作(适合脚本批量处理)
直接执行单命令完成全部操作:./jboss-cli.sh --connect controller=<实例IP>:<实例管理端口> --command="shutdown --restart=true"
注意:执行操作的系统用户需要和启动对应WildFly实例的系统用户权限一致,避免出现权限不足操作失败的问题。
内容的提问来源于stack exchange,提问作者codyLine
相关产品推荐
相关产品推荐

