在一个网络内部署JBOSS 的不同集群需要了解两个基本的概念:HAPartition 和JGroups Channel
HAPartition 是一个基础服务用于逻辑上的通信,负责处理各个node见再同一个集群中的通信,即使处于同一个HAPartition(以及处于同一个JGroups Channel 的)下的node才可以通信
JGroups Channel 则是物理层的基础服务,负责各个node的物理层的通信,也就是说HAPartition是再JGroups Channel之上的一层,这是我的理解。
再了解了两个基础只是后,可以开始配置不同的集群了,现在有两个方案可以选择,一是再逻辑上分开,即是两个集群物理上可以通信,在逻辑上处于不同的HAPartition;二是处理不同的物理层(并不是网络分开,而是处于不同JGroups Channel,广播地址上分开)
方案一:
其实配置方式很简单 和JBOSS-5.0.0GA的集群搭建(一)的配置一样就是启动方式改变
Java代码
./run.sh -c all -b 10.147.128.116 -g MyPartition
./run.sh -c all -b 10.147.128.68 -g MyPartitionTwo
采用这种方式启动JBOSS 就可以,这样会发现再再HAPartition启动时不会发现对方的存在,但物理上会发现对方。
这里我们可以测试一下还是采用JBOSS-5.0.0GA的集群搭建(一)的测试包 进行测试发现 session已经无法共享,说明两个JBOSS已经处于不同cluster中
方案一:
其实配置方式很简单 和JBOSS-5.0.0GA的集群搭建(一)的配置一样就是启动方式改变
Java代码
./run.sh -c all -b 10.147.128.116 -g MyPartition -u 233.3.4.6
./run.sh -c all -b 10.147.128.68 -g MyPartitionTwo -u 233.3.4.7
采用这种方式启动JBOSS 就可以,-u 改变JBOSS集群的广播地址这里如果分区一样也没有关系
这里我们可以测试一下还是采用JBOSS-5.0.0GA的集群搭建(一)的测试包 进行测试发现 session已经无法共享,说明两个JBOSS已经处于不同cluster中
注意,这里如果跑多个集群再同一个网络要注意客户端HA-JNDI的配置需要指定下面几个参数:
jnp.partitionName : 集群的partition的名字
jnp.discoveryGroup :集群的广播地址
jnp.discoveryPort :集群的端口
这几个参数需要在 Properteis 中指定否则会无法连接到 HA-JNDI
有理解有问题的地方还请各位指正
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29018063/viewspace-2059498/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29018063/viewspace-2059498/