24.2.2. 将默认 JGroups 频道切换为使用 TCP
默认情况下,集群节点使用为 ee
JGroups 频道配置的 udp
协议堆栈进行通信。
<channels default="ee"> <channel name="ee" stack="udp"/> </channels> <stacks> <stack name="udp"> <transport type="UDP" socket-binding="jgroups-udp"/> <protocol type="PING"/> ... </stack> <stack name="tcp"> <transport type="TCP" socket-binding="jgroups-tcp"/> <protocol type="MPING" socket-binding="jgroups-mping"/> ... </stack> </stacks>
使用多播配置 TCP
某些网络仅允许使用 TCP。使用以下管理 CLI 命令,切换 ee
频道以使用预配置的 tcp
堆栈:
/subsystem=jgroups/channel=ee:write-attribute(name=stack,value=tcp)
此默认 tcp
堆栈使用 MPING
协议,它使用 IP 多播来发现初始群集成员资格。
在没有多播的情况下配置 TCP
当安全策略不首选或允许多播时,您可以将默认协议堆栈更改为使用 TCP。要在没有多播的情况下配置基于 TCP 的集群,请执行以下步骤:
运行以下命令,将
ee
频道切换为使用 JGroups 子系统中预先配置的tcp
堆栈:<channel name="ee" stack="tcp" cluster="ejb"/>
设置集群节点的名称:
在独立配置模式中,执行以下步骤之一:
运行以下命令:
<server xmlns="urn:jboss:domain:8.0" name="node_1">
-
在启动实例时,为系统属性
jboss.node.name
指定唯一名称。
在域模式中,集群服务器在 server 标签的
host-*.xml
文件中列出。默认配置指定以下服务器名称,您可以根据需要进行编辑。<servers> <server name="server-one" group="main-server-group"/> <server name="server-two" group="other-server-group"> <socket-bindings port-offset="150"/> </server> </servers>
选择以下协议之一来发现其他群集成员: