openfire集群+nginx负载均衡

openfire有通过tcp端口通讯,因此nginx需要额外安装nginx_tcp_proxy_module.

nginx tcp代理功能由nginx_tcp_proxy_module模块提供,同时监测后端主机状态。该模块包括的模块有: ngx_tcp_module, ngx_tcp_core_module, ngx_tcp_upstream_module, ngx_tcp_proxy_module, ngx_tcp_upstream_ip_hash_module。

安装:

使用nginx最新版nginx-1-10.1.tar.gz

下载nginx_tcp_proxy_module 地址:

https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master.zip

tar -xzvf nginx-1.10.1.tar.gz

cd nginx-1.10.1

patch -p1 < /root/nginx_tcp_proxy_module-master/tcp.patch  打补丁

./configure --prefix=/usr/local/nginx --add-module=/root/nginx_tcp_proxy_module-master 编译

make&make install

nginx 配置文件:

# vim /etc/nginx/nginx.conf    
  
tcp  {   //添加  
    timeout 1d;  
    proxy_read_timeout 10d;  
    proxy_send_timeout 10d;  
    proxy_connect_timeout 30;  
    upstream openfire5222{  
        server 192.168.253.150:5222;  
        server 192.168.253.151:5222;  
         check interval=3000 rise=2 fall=5 timeout=1000;  
    }  
    server{  
        listen 6222;  nginx安装在192.168.253.151上面 所以这里的端口不能跟151上面的端口重复
        proxy_pass openfire5222;  
        so_keepalive on;  
        tcp_nodelay on;  
    }  
    upstream openfire5223{  
        server 192.168.253.150:5222;  
        server 192.168.253.151:5222;  
        check interval=3000 rise=2 fall=5 timeout=1000;  
    }  
    server{  
        listen 6223;  
        proxy_pass openfire5223;  
        so_keepalive on;  
        tcp_nodelay on;  
    }  
}  
  
http{  //添加以下内容  
。。。。。。。。。。。。省略。。。。。。。。。。。。。。  
    upstream openfire7070{  
        server 192.168.253.151:7070;  
        server 192.168.253.150:7070;  
         
    }  
    server{  
        listen 17070;  
        server_name 192.168.253.151;  
        location / {  
            proxy_pass http://openfire7070;  
        }  
    }  
    upstream openfire9090{  
        server 192.168.253.150:9090;  
        server 192.168.253.151:9090;  
         ip_hash;  
    }  
    server {  
        listen 19090;  
        server_name 192.168.253.151;  
        location / {  
            proxy_pass http://openfire9090;  
        }  
    }

启动nginx。

登录192.168.253.151:19090查看,

或者用客户端spark登录均可。

时间: 2024-09-29 03:09:23

openfire集群+nginx负载均衡的相关文章

FastDFS集群 + Nginx负载均衡 文件服务器

远程复制文件其他服务器 安装fastDFS集群所需要的安装包 安装环境包 以上操作是所有fastDFS节点的公共部分, ******************************************************* 配置storage服务器 强制停止服务 调试并查看strogelog 验证主从切换 ,实现高可用 配置nginx服务 修改nginx  配置 nginx  反向代理 fastdfs  高可用 安装keepalived   虚拟vip 实现高可用 关闭集群

Nginx实现集群的负载均衡配置过程详解

Nginx实现集群的负载均衡配置过程详解 Nginx 的负载均衡功能,其实实际上和 nginx 的代理是同一个功能,只是把代理一台机器改为多台机器而已. Nginx 的负载均衡和 lvs 相比,nginx属于更高级的应用层,不牵扯到 ip 和内核的修改,它只是单纯地把用户的请求转发到后面的机器上.这就意味着,后端的 RS 不需要配置公网. 一.实验环境 Nginx 调度器 (public 172.16.254.200 privite 192.168.0.48)RS1只有内网IP (192.168

Nginx实现tomcat集群进行负载均衡

一.背景 随着业务量和用户数量的激增,单一的tomcat部署应用已经无法满足性能需求,而且对于每次发布项目期间服务不可用的问题也凸显,既然出现了这个问题,那么我们本文就借助nginx来完美的解决这个问题. 二.基本概念 1.说明:关于Nginx的概念和介绍以及Centos7下安装步骤,请移步:Centos7安装Nginx实战 2.正向代理和反向代理 假设我们给定客户端A.代理服务器B.以及最终服务器C 正向代理:代理服务器B来代替客户端A来访问最终服务器C并将最终结果转发给客户端A,站在客户端A

在Linux上使用Nginx为Solr集群做负载均衡

在Linux上使用Nginx为Solr集群做负载均衡 在Linux上搭建solr集群时需要用到负载均衡,但测试环境下没有F5 Big-IP负载均衡交换机可以用,于是先后试了weblogic的proxyserver,和Apache,效果均很差,两台服务器做了负载均衡之后并发响应速度还没单台不做负载均衡的速度快.最后使用nginx,效果很不错,下面将在Linux上安装步骤记述一下. 1        安装准备 nginx软件版本:nginx 1.2.5 安装包:rhel_nginx-1.2.5-1.

nginx反向代理tomcat集群达到负载均衡,同时使用proxy_cache做web缓存

Nginx最早是作为一款优秀的反向代理软件,以高并发下的卓越性能被越来越多的用户所用户,国内最早研究nginx的是张宴,该大牛的博客地址:http://zyan.cc/ .但是随着需求的发展,nginx的功能已经不再单单是反向代理,现在已经更倾向作为web容器. Nginx从0.7.48版本开始,支持了类似Squid的缓存功能.Nginx的Web缓存服务主要由proxy_cache相关指令集和fastcgi_cache相关指令集构成,前者用于反向代理时,对后端内容源服务器进行缓存,后者主要用于对

架构之路:nginx与IIS服务器搭建集群实现负载均衡(三)

参考网址:https://blog.csdn.net/zhanghan18333611647/article/details/50811980 [前言] 在<架构之路:nginx与IIS服务器搭建集群实现负载均衡(二)>中提到有好多有趣的地方,接下来就为大家一块儿讲讲在深入研究过程中遇到那些有趣的事情. ·实战之行--发现问题 ·探索之旅--寻出问题原因 ·解决之道--解决问题 [实战之行] 在<架构之路:nginx与IIS服务器搭建集群实现负载均衡(二)>中做了小Demo,当时做

架构之路:nginx与IIS服务器搭建集群实现负载均衡(二)

[前言] 在<架构之路:nginx与IIS服务器搭建集群实现负载均衡(一)>中小编简单的讲解了Nginx的原理!俗话说:光说不练假把式.接下来,小编就和大家一起来做个小Demo来体会一下Nginx的神奇之处. [准备工作] ·安装一款文本编辑器(这里以Notepad++为例) ·下载Nginx(这里以Nginx-1.4.7为例,其他版本操作相同) ·建两个简单网页:在文件夹test1新建一个html页内容为--我是Test1,在文件夹test2新建一个html页内容为--我是Test2) ·将

signalR的集群与负载均衡

signalR是相当不错的websocket应用,最近要做集群和负载均衡 主要用到了redis进行集群,signalR的backplane集成redis. 细节,订阅redis之后注意database号 再使用nginx进行负载均衡. 细节,设置websocket(我是用websocket的传输)的配置参数,Upgrade 头的处理 http { map $http_upgrade $connection_upgrade { default upgrade; '' close; } upstre

使用LVS+NAT搭建集群实现负载均衡

使用LVS+NAT搭建集群实现负载均衡 LVS集群简介    计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系统中的单个计算机通常称为节点,通常通过局域网连接,但也有其它的可能连接方式.集群计算机通常用来改进单个计算机的计算速度和/或可靠性.一般情况下集群计算机比单个计算机,比如工作站或超级计算机性能价格比要高得多        LVS集群分布图   集群有三种类型: