3.2.7. 群集的修改
3.2.7.1. 修改应用程序以用于群集环境 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
过程 3.22.
启动启用了群集的 JBoss EAP 6
要在 JBoss EAP 5.x 里启用群集,你需要使用all配置集或其衍生配置集来启动服务器实例,如:$ EAP5_HOME/bin/run.sh -c all在 JBoss EAP 6 里,启用群集的方法取决于服务器是独立的还是运行在受管域里。为运行在受管域l里的服务器启用群集
要为使用域控制器启动的服务器的群集,请更新你的domain.xml并指定一个服务器组来使用ha配置集和ha-sockets套接字绑定组。例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为独立服务器启用群集
要为独立服务器启用群集,用下列配置文件启动服务器$ EAP_HOME/bin/standalone.sh --server-config=standalone-ha.xml -Djboss.node.name=UNIQUE_NODE_NAME:
指定绑定地址
在 JBoss EAP 5.x 里,你通常要用-b命令行参数来指定用于群集的绑定地址:$ EAP_HOME/bin/run.sh -c all -b 192.168.0.2在 JBoss EAP 6 里,绑定地址是在 EAP 6 配置文件里的相关套接字绑定部分显性定义的。对于用域控制器启动的服务器,绑定地址是在domain/configuration/host.xml文件里定义的;而对于独立服务器, 绑定地址是在standalone-ha.xml文件里定义的:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在上面的例子里,Copy to Clipboard Copied! Toggle word wrap Toggle overflow public接口被指定为ha-sockets套接字绑定组里的所有套接字的默认接口。配置
jvmRoute以支持 mod_jk 和 mod_proxy在 JBoss EAP 5 里,web 服务器jvmRoute是用server.xml文件里的一个属性进行配置的。在 JBoss EAP 6 里,jvmRoute属性使用instance-id属性在服务器配置文件的 web subsystem 部分进行配置。上面的 {JVM_ROUTE_SERVER} 应该用 jvmRoute 服务器 ID 替换。<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false" instance-id="{JVM_ROUTE_SERVER}"><subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="false" instance-id="{JVM_ROUTE_SERVER}">Copy to Clipboard Copied! Toggle word wrap Toggle overflow instance-id也可以用管理控制台来设置。指定多点传送地址和端口
在 JBoss EAP 5.x 里,你可以使用命令行参数-u和-m分别指定用于群集间通讯的多点传送地址和端口,如:$ EAP_HOME/bin/run.sh -c all -u 228.11.11.11 -m 45688在 JBoss EAP 6 里,用于群集间通讯的多点传送地址和端口是用相关的 JGroups 协议栈引用的 socket-binding 定义的。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果你想在命令行指定多点传送地址和端口,你可以将多点传送地址和端口定义为系统属性并在启动服务器时在命令行使用这些属性。在下面的例子里,Copy to Clipboard Copied! Toggle word wrap Toggle overflow jboss.mcast.addr是多点传送地址的变量名,而jboss.mcast.port是端口的变量名。你可以用下列命令行参数启动服务器:<socket-binding name="jgroups-udp" port="55200" multicast-address="${jboss.mcast.addr:230.0.0.4}" multicast-port="${jboss.mcast.port:45688}"/><socket-binding name="jgroups-udp" port="55200" multicast-address="${jboss.mcast.addr:230.0.0.4}" multicast-port="${jboss.mcast.port:45688}"/>Copy to Clipboard Copied! Toggle word wrap Toggle overflow $ EAP_HOME/bin/domain.sh -Djboss.mcast.addr=228.11.11.11 -Djboss.mcast.port=45688使用其他的协议栈
在 JBoss EAP 5.x 里,你可以使用jboss.default.jgroups.stack系统属性来操纵用于群集服务的默认协议栈。$ EAP_HOME/bin/run.sh -c all -Djboss.default.jgroups.stack=tcp在 JBoss EAP 6 里,默认的协议栈是由domain.xml或standalone-ha.xml里的 JGroups 子系统定义的:Copy to Clipboard Copied! Toggle word wrap Toggle overflow