Openfire 集群部署和负载均衡方案

一.  概述

Openfire是在即时通讯中广泛使用的XMPP协议通讯服务器,本方案采用Openfire的Hazelcast插件进行集群部署,采用Haproxy进行负载均衡,在示例环境中测试通过。

二.  示例环境

服务器配置如下:

服务器名

 

用途

 

操作系统

 

IP

 

PC647

 

Openfire节点1

 

Windows7

 

10.200.10.11

 

seasky

 

Openfire节点2

 

Windows xp

 

10.200.10.18

 

Lub1

 

Mysql数据库

 

LUbuntu 12

 

10.200.10.12

 

Lub3

 

负载均衡器

 

LUbuntu 12

 

10.200.10.19

 

所用软件版本如下:

软件名称

 

版本号

 

用途

 

提供商

 

Openfire

 

3.10beta

 

Xmpp服务器

 

Jive Software

 

Hazelcast

 

1.3.3

 

Openfire集群插件

 

Tom Evans

 

Mysql server

 

5.5.0

 

配套数据库

 

Oracle

 

Haproxy

 

1.4.18

 

TCP负载均衡器

 

HAProxy

 

RooyeeMessager

 

3.6.1

 

Xmpp客户端

 

深圳如意通

 

三.  软件安装

在PC647和seasky上安装openfire,软件下载地址:

在lub1上安装mysql

安装命令:sudo apt-get install mysql-server

在lub3上安装haproxy.

安装命令:sudo apt-get install haproxy

四.  集群部署

1.安装openfire后启动管理控制台进行配置,

Openfire 集群部署和负载均衡方案

2.设置安装语言后进入服务器设置,设置域名信息。注意集群中每个openfire节点应该使用相同的域名。

Openfire 集群部署和负载均衡方案

3.在mysql数据库中创建openfire数据库,执行openfire_mysql.sql创建数据表,该文件位于openfire的安装目录的\resources\database文件夹里,也可以使用其它类型的数据库。

Openfire 集群部署和负载均衡方案

4.在openfire管理控制台配置数据库连接信息。

Openfire 集群部署和负载均衡方案

5.在特性中使用初始设置,在随后的界面中输入管理员密码。

Openfire 集群部署和负载均衡方案

6.设置完毕后登录管理控制台

Openfire 集群部署和负载均衡方案

7.切换到插件选项卡,进入有效的插件页面。

Openfire 集群部署和负载均衡方案

8.安装 Broadcast,Clustering Plugin  和Hazelcast Clustering Plugin 三个插件,注意集群中的每个节点都要安装。

Openfire 集群部署和负载均衡方案

9.在openfire安装目录下的plugins\hazelcast\classes文件夹里找到hazelcast-cache-config.xml配置文件,然后找到其中的join和interfaces配置节。

Openfire 集群部署和负载均衡方案

将其修改为以下形式:

Openfire 集群部署和负载均衡方案

其中member中是集群中各节点的IP地址和端口号,interface中是当前机器的IP地址。注意集群中的每个节点都要进行如此配置。

10.进入openfire管理控制台,切换到服务器选项卡,进入到集群页面。

Openfire 集群部署和负载均衡方案

11.在集群设置中选择“启用”并保存设置。集群中的每个节点都要做这个设置。

Openfire 集群部署和负载均衡方案

12.启用成功后集群概述中将出现各节点的信息,如下图所示。注意启动可能较慢,耗时可能在30秒到两分钟之间。

Openfire 集群部署和负载均衡方案

五.  负载均衡

1.进入haproxy所在的lub3服务器, 将当前用户加入到haproxy用户组中,本例中当前用户为lunacy

Openfire 集群部署和负载均衡方案

 

2.修改haproxy配置文件 haproxy.cfg,将global配置节中的user改为当前用户。

Openfire 集群部署和负载均衡方案

3.将defaults节下的mode改为tcp, option改为tcplog,并移除其它与http有关的选项。

Openfire 集群部署和负载均衡方案

4.加入listen配置节,转发openfire端口5222,7070和9090,其它端口若有需要,也可以加入。

Openfire 集群部署和负载均衡方案

 

5.使用修改后的配置文件启动haproxy,本例中使用如下命令:

Sudo /usr/sbin/haproxy –f /etc/haproxy/haproxy.cfg

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/9ed62a295360913a5f181ac349af4039.html