nginx中转SSR实现负载均衡,自动切换“零”宕机

admin

发表文章数:3329

首页 » 网络资源 » 正文

nginx中转SSR实现负载均衡,自动切换“零”宕机

本站之前介绍了多种方法中转ssr或者其他流量来实现自定义路由,对于nginx来说,可以实现负载均衡,从而实现宕机秒切换,提升一下体验

1、准备工作

首先你手里需要2个或以上小鸡装了ss/ssr,取名为小鸡A和小鸡B;再准备一个服务器搭建nginx做负载均衡用,此服务器最好是国内的,到时候你就知道这么做的用意,取名为小鸡C。

2、安装nginx

在小鸡C上安装nginx,推荐使用Ubuntu/Debian系统,Centos当然也可以,但是centos默认yum源里面没有nginx。这里的centos使用的是7。

Ubuntu/Debian

apt-get updateapt-get install nginx -yservice nginx start

Centos7

yum update
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

yum install nginx -y
service nginx start

安装完毕后,在浏览器中输入小鸡C的ip地址,能打开网站即为成功。否则检查nginx是否启动,阿里腾讯等服务商需要额外检查防火墙是否开放80端口。

3、配置负载均衡

创建并打开一个自定义的配置文件

mkdir -p /etc/nginx/tcpconf.dvi /etc/nginx/tcpconf.d/ssrproxy.conf

写入如下配置:

stream {
    upstream group1 {
        server 1.1.1.1:10000;
        server 2.2.2.2:10000;
    }
    server {
        listen 10000;
        listen 10000 udp;
        proxy_pass group1;
    }
    upstream group2 {
        server 3.3.3.3:10000;
        server 4.4.4.4:10000;
    }
    server {
        listen 20000;
        listen 20000 udp;
        proxy_pass group2;
    }
}

解释:这里一共有两组,分别名为group1和group2,使用小鸡C的10000端口来转发流量到1.1.1.1或2.2.2.2,使用小鸡C的20000端口转发流量到3.3.3.3或4.4.4.4。这里的形如1.1.1.1:10000这样的,就是你的小鸡A、B、C、D们上的ss/ssr的ip地址和端口了。每个组都有一个或多个流量转发的对象,比如group1里有1.1.1.1和2.2.2.2,不是说流量同时转发到这两个服务器,而是选择其中一个转发,通过nginx的负载均衡,等转发的服务器不可用nginx就会自动轮询到下一个服务器。

之后我们找到nginx的主配置文件,将上面自定义配置加载进nginx里。主配置文件一般在/etc/nginx/nginx.conf或者/etc/nginx/conf/nginx.conf里。

echo "include /etc/nginx/tcpconf.d/*.conf;" >> /etc/nginx/nginx.conf

重启一下nginx使配置生效

service nginx restart

设置开启启动
systemctl enable nginx.service

4、如何使用

在ss/ssr客户端填写配置中,ip地址就是小鸡C的ip地址,端口就是小鸡C用来转发流量的端口,其他配置不变。借助负载均衡,你无需手动切换客户端的服务器,就能实现自动切换到可用的服务器了。

一些说明

  • 小鸡C选用国内服务器,一个好处是ss/ssr服务器如果被wall,国内服务器可以感知到。如果是在国外就做不到这点。
  • 小鸡C选用国内服务器另一个好处是:中转。如果你出国网速慢,很可能是因为你的出口线路不好;vps服务商的机房一般处于骨干网络,将小鸡C作为中转节点可以利用骨干网络的优势;完全不用担心中转就多出了一个路由节点,因为你不走中转,网络也会走其他节点,使用中转相当于你自定义了路由。很多人觉得负载均衡后速度快了的原因就在这里。
  • 中转的方法有很多,开源软件haproxy可以中转,iptables可以中转,ss/ssr同样也可以中转,使用redirect字段就可以。但是nginx相对来说是完美的,nginx除了中转还能负载均衡,haproxy也可以负载均衡但是无法中转udp。

如果单纯用来中转,可以看看本站这篇文章:

未经允许不得转载:作者:admin, 转载或复制请以 超链接形式 并注明出处 夜河资源网
原文地址:《nginx中转SSR实现负载均衡,自动切换“零”宕机》 发布于2019-08-19

分享到:
赞(0) 打赏

评论 抢沙发

2 + 7 =


撰写不易~如果您觉得文章对您有帮助的话可以打赏我哦~谢谢亲亲~

支付宝扫一扫打赏

微信扫一扫打赏

外服网游加速器破解版
包含腾讯网游加速器、海豚网游加速器等八款知名加速器,可加速外服游戏,永久包售后包更新,不定时添加新款破解版加速器!
切换注册

登录

忘记密码 ?

切换登录

注册