随笔-95  评论-31  文章-10  trackbacks-0
测试机4台
1.四台机器都安装openfire,随即一台安装mysql,执行openfire_mysql.sql脚本。
2.四台机器都配置到同一个mysql机器上(不能使用openfire内嵌的数据库),使用同一个域名。
3.四台机器都安装插件,Hazelcas就是openfire_3.8版本以后自己的集群插件(也是个开源集群插件,摒弃了oracle的商业收费集群插件),broadcast插件是为了集群广播通知5701端口使用(如果使用udp广播方式,也不可以不安装该插件使用tcp-ip方式),并使四台机器开放5701端口。
   具体开放端口命令见http://www.blogjava.net/liuguly/archive/2013/07/18/401701.html
4.四台机器都编辑openfire/plugins/hazelcast/classes/hazelcast-cache-config.xml 文件
<join>
    
<multicast enabled="false"/>
    
<tcp-ip enabled="true">
      
<hostname>ip:5701</hostname>
      
<hostname>ip:5701</hostname>
      <hostname>ip:5701</hostname>
      <hostname>ip:5701</hostname>
   
</tcp-ip>
    
<aws enabled="false"/>
</join>

5.四台机器重启openfire,然后使clustering  Enabled,即可看到集群部署成功

posted on 2013-07-25 15:40 朔望魔刃 阅读(9839) 评论(17)  编辑  收藏 所属分类: 即时通信

评论:
# re: openfire_3.8.2集群配置 2013-07-26 17:27 |
这3.8.2版的openfire的源码中hazelcast包下报错,怎么解决?  回复  更多评论
  
# re: openfire_3.8.2集群配置 2013-10-31 15:11 | 绿野暝
请问下集群中各个节点上登录的用户session不是共享的么?我现在也是配置了三个节点,共用一个mysql数据库,不同节点上的用户也可以通信,但是如果一个节点挂掉后,这个节点上面的用户连接就全断了,需要重连正常服务的节点,这个问题怎么解决呢?  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-01-04 09:11 | QQ:1468155080
@绿野暝


同问,这个问题后来解决了么?  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-01-08 12:56 | nodexy
@绿野暝

这个问题在Openfire的这种集群模式下是解决不了的,不只是session共享解决的问题。

如果想达到单个节点挂掉而客户端不感知的话,需要额外再加一层接入层,专门处理客户端的连接,然后后端跟openfire集群保持连接,session共享。

其实用户接入层也还是有挂掉的可能。  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-03-03 15:32 | Lou
客户端是怎么登录的呀, 2个客户端指定各自指定服务器ip吗? 那如果是外网的话。对外只有一个ip的怎么办呀? 楼主,求解  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-03-24 22:52 | getingbin
centos5.8X64位服务器3台jdk-7u51-linux-x64.tar.gzopenfire_3_9_1.tar.gz
broadcast.jar
hazelcast.jar
mysql已经安装的服务器一台(本文重点是openfire的集群配置,所以设定mysql已经安装完毕)
用这2个插件做集群,总是最后一步,点Enable之后,浏览器就转啊转,log也不报错!邪门了!  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-03-24 22:52 | getingbin
我的QQ:4798807829@getingbin
  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-04-10 12:48 | hsthink
@绿野暝
这个问题还是用系统集群来解决吧!  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-04-10 12:50 | hsthink
@Lou
用cm吧!  回复  更多评论
  
# re: openfire_3.8.2集群配置[未登录] 2014-04-15 16:50 | fly
使clustering Enabled 的时候报错啊!

16:48:26,520 ERROR Log:276 - Unable to start clustering - continuing in local mode
(Wrapped: Failed to load the factory)
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

Caused by: java.lang.NullPointerException
at com.jivesoftware.util.cache.ClusterClassLoader.getResource(ClusterClassLoader.java:79)
at com.tangosol.util.Resources.findResource(Resources.java:130)
at com.tangosol.net.DefaultConfigurableCacheFactory.loadConfigAsResource(DefaultConfigurableCacheFactory.java:367)
at com.tangosol.net.DefaultConfigurableCacheFactory.loadConfig(DefaultConfigurableCacheFactory.java:337)
at com.tangosol.net.DefaultConfigurableCacheFactory.loadConfig(DefaultConfigurableCacheFactory.java:309)
at com.tangosol.net.DefaultConfigurableCacheFactory.<init>(DefaultConfigurableCacheFactory.java:137)
... 55 more

求助!!  回复  更多评论
  
# re: openfire_3.8.2集群配置[未登录] 2014-06-04 09:35 | hujh
我用3.9.3 集群做不起来,请问你是怎么配置的?  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-06-05 17:46 | suber
我的openfire集群后,不同节点的用户不能正常通信,这是什么原因啊?求大神解答一下啊。@绿野暝
  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-06-11 13:42 | 朔望魔刃

@Lou
openfire走的是TCP/IP下的xmpp协议,需要前端加支持TCP/IP协议的负载均衡,用haproxy就可以了,客户端全部连接haproxy  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-06-11 13:50 | 朔望魔刃
@suber
既然都集群了,我就默认你集群配好了,不同节点的用户不能正常通信
1:查找集群的openfire配置的是不是同一个数据库,集群的各个openfire的用户是不是一致,简单来说就是在不在同一张表。
2:不同节点间的用户不能通信,你得确认openfire之间是否可以通信,ping的通,自己写测试方法就能测出来,openfire默认通信端口是5222,还有集群之间的通信响应端口,你得确认是否开放了,不同linux下需设置开放端口  回复  更多评论
  
# re: openfire_3.8.2集群配置 2014-06-11 14:00 | 朔望魔刃
@绿野暝
集群的目的:就是增大服务的计算能力以及处理能力,加集群一般都会在前端加负载均衡,负载均衡对客户端来说是不变的,所以其中一个集群节点挂了,不会影响其他服务,仍然可以给客户端提供服务,但是挂的这一台的用户就要重新连接了,因为openfire基本上都是长连接,最多能替你保存缓存内容,但是长连接已经挂了,就好比这条路已经被堵死了,所以必须得客户端控制、管理重连以及心跳,还有一些异常处理的机制。心跳和重连这一块对手机通信至关重要,处理不好,消息可能就会收不到,导致很多问题  回复  更多评论
  
# re: openfire_3.8.2集群配置[未登录] 2014-12-15 17:00 | wp
hazelcast-cache-config.xml 文件每一台都要配4行ip吗  回复  更多评论
  
# re: openfire_3.9.3集群配置 2015-04-08 14:06 | openfre
我这根本就不显示hazelcast 这个插件包。请教下各位大神。  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: