通过Nginx实现Openfire集群的负载均衡 - Duttor

专注人工智能在金融领域的应用

通过Nginx实现Openfire集群的负载均衡

在上一篇文章中,我们实现了Openfire的集群部署,如果要在应用中实现应用我们还需要一个至关重要的工作:负载分发,我们使用的负载工具是Nginx。

安装nginx 

到nginx官网下载最新版本文件,目前最新版本是nginx-1.9.6.tar.gz

之所以选择最新版本是因为在nginx-1.9.0版本开始,增加了stream模块用于一般的 TCP 代理和负载均衡,不需要再引入其他项目;

安装步骤:

1、使用tar 命令解压项目文件:tar -zxvf  nginx-1.9.3.tar.gz

2、进入解压后的项目跟路径下,重新编译项目: ./configure –prefix=/usr/local/nginx  –with -stream

注意:

如果需要使用tcp协议的负载,在编译的时候已经要传入参数 –with -stream

系统报错,提示缺少zlib或者pcre的库,这两个库存在于系统的镜像文件中,我们根据提示将这两个库安装即可,步骤如下:

1、将镜像文件添加到虚拟机中

2、 将镜像文件挂载到路径下:

mount –bind /media/RHEL_6.5 x86_64 Disc 1  /root/redhat6.5iso

3、 使用yum命令安装缺少的类库:

yum install pcre*

yum install zlib*

3、使用make、make install 命令进行安装

先执行make命令,然后执行make install命令

4、修改配置

使用vi 编辑  /usr/local/nginx/conf/nginx.conf配置文件,将一下配置信息添加进去

stream {
upstream backend {
hash $remote_addr consistent;
server 10.68.13.27:5222 weight=5;
server 10.68.13.30:5222 weight=5;
}
server {
listen 5222;
proxy_connect_timeout 10s; #设置连接超时时长  必须
proxy_timeout 30s;  #设置代理超时时长          必须
proxy_pass backend;
}
}

5、启动

最新版本的nginx启动命令为: /usr/local/nginx/sbin/nginx, 关闭命令为:/usr/local/nginx/sbin/nginx -s stop

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>