注意:Slave Server是在另一台机器的JBOSS上配置,master server上添加了一个为teng的用户,同时为slave Server分配了teng的用户,即slave server的机器代号为teng.
进入jboss_home\domain\configuration,将原来的host.xml改名备份,然后再将host-slave.xml复制一份,并改名为host.xml
1)
<span style="font-size:14px;"><domain-controller> <remote host="${jboss.domain.master.address:192.168.24.17}" port="${jboss.domain.master.port:9999}" security-realm="ManagementRealm"/> </domain-controller></span>
注意本处的IP改为master Server上面的IP,这样slave server才知道连哪个主机
2)
<span style="font-size:14px;"><interfaces> <interface name="management"> <inet-address value="${jboss.bind.address.management:0.0.0.0}"/> </interface> <interface name="public"> <inet-address value="${jboss.bind.address:0.0.0.0}"/> </interface> <interface name="unsecure"> <!-- Used for IIOP sockets in the standard configuration. To secure JacORB you need to setup SSL --> <inet-address value="${jboss.bind.address.unsecure:0.0.0.0}"/> </interface> </interfaces></span>
注意本处的IP全改为0.0.0.0或者是改为真实的slave server的IP。否则slave上的应用之恩能够在slave本机上访问。
3)
<span style="font-size:14px;"><servers> <server name="master-server-8082" group="my-group-1"> <socket-bindings port-offset="2"/> </server> <server name="master-server-8083" group="my-group-1"> <socket-bindings port-offset="3"/> </server> </servers></span>
4)
<span style="font-size:14px;"><host name="teng" xmlns="urn:jboss:domain:1.6" ></span>
在最开头的host节点上,加一个name=””,这个name最终会显示在master server的jboss控制台中。
注意:这个名字一定要与JBOSS中创建的用户名一致,否则会找不到。
还是修改host.xml文件
<span style="font-size:14px;"><server-identities> <!-- Replace this with either a base64 password of your own, or use a vault with a vault expression --> <!--<secret value="c2xhdmVfdXNlcl9wYXNzd29yZA=="/>--> <secret value="IXRlbmcxMjM="/> </server-identities></span>
注意:这个value值的编码一定要与上面用户名的编码一致,否则会出认证不了。
总之就是需要在master server的jboss上创建一个teng的用户名,创建出来如下:
用户名和2.4的name一致,编码与上面的value一致。
运行结果如下:
teng的这个slave server显示出来了,并且server是在my-group-1里的,和上面的修改host.xml里面的内容匹配。证明这步成功。
Slave Server:
Group情况:
Master server在17的机器上,SlaveServer(teng)在42的机器上
Group的关系:
以我做的例子为例,我把app放到了my-group-1和my-group-2,那么他对应6个URL均可以访问,如下:
http://192.*.*17:8080/itoo-base-cgform-all/cgFormHeadController.do?cgFormHeadList# (Master Server的地址)
http://192.*.*.17:8081/itoo-base-cgform-all/cgFormHeadController.do?cgFormHeadList#
http://192.*.*.17:8082/itoo-base-cgform-all/cgFormHeadController.do?cgFormHeadList#
http://192.*.*.17:8083/itoo-base-cgform-all/cgFormHeadController.do?cgFormHeadList#
http://192.*.*.42:8082/itoo-base-cgform-all/cgFormHeadController.do?cgFormHeadList#(Slave Server 的访问地址)
http://192.*.*.42:8083/itoo-base-cgform-all/cgFormHeadController.do?cgFormHeadList#
JBOSS版本的提升还是为我们带来很大的方便,通过域实现了多服务器统一管理,统一配置,资源统一部署。通过集中管理,在此基础上进行集群的划分与部署,实现集群内多台服务器的单点配置与管理,减轻服务器压力,达成了完美结合。下面继续介绍JBOSS负载均衡。