XMPP协议之Openfire 集群配置

Openfire集群我们采用Hazelcast插件进行集群部署,采用Haproxy进行负载均衡。架构图:

XMPP协议之Openfire 集群配置_第1张图片

一、安装并配置MySQL
  步骤略
二、编辑xmpp主机的hosts文件
[root@web01 ~]# cat /etc/hosts
10.168.18.67    xmpp01
10.168.110.71    xmpp02
三、安装openfire 
过程略过
四、为openfire配置Cluster 
1.添加hazelcat clustering Plugin 插件

XMPP协议之Openfire 集群配置_第2张图片

2. 编辑Hazelcast 配置文件 /usr/local/openfire/plugins/hazelcast/classes/hazelcast-cache-config.xml

<join>
            <multicast enabled="flase"> //禁用多播,默认为true
                <multicast-group>224.2.2.3</multicast-group>
                <multicast-port>54327</multicast-port>
            </multicast>
            <tcp-ip enabled="true">        //启用TCP/IP
                <hostname>xmpp01:5701</hostname>
                <hostname>xmpp02:5701</hostname>
                <interface>192.168.18.67</interface>
                <interface>192.168.110.71</interface>
            </tcp-ip>
            <aws enabled="false"/>
        </join>
        <interfaces enabled="true">
                <interface>192.168.18.67</interface>    //本机服务器IP接口,也就是用此接口IP去通过5701端口去通信
        </interfaces>
2台机器都需要修改

3.配置完hazelcast配置后,重新启动openfire服务,再进入到openfire的管理平台启用Hazelcast 

XMPP协议之Openfire 集群配置_第3张图片
4.成功状态如下【集群服务能相互看到集群中的服务器运行状态】

XMPP协议之Openfire 集群配置_第4张图片
五、测试   
分别建立几个账号,登陆服务器分别使用不同地址,进行发送消息。理论上是成功的,并且在管理后台中,也能看到登陆进来的账号状态:

XMPP协议之Openfire 集群配置_第5张图片

Node为Local说明客户端登陆的服务器是本机
Node为Remote说明客户端登陆的服务器是其它机器

六、部署Haproxy提供负责均衡

可以参考:http://blog.csdn.net/zhu_tianwei/article/details/41117323,配置TCP负载均衡。

转至:http://blog.163.com/qiushuhui1989@126/blog/static/270110892015211112953895/

参考:
1.openfire集群部署及负载均衡方案

2.openfire3.9.1集群配置

3.Hazelcast ConfigTcpIp

你可能感兴趣的:(openfire,XMPP)