树莓派论坛

 找回密码
 立即注册
搜索
查看: 12948|回复: 8

树莓派安装Haproxy实现shadowsocks负载均衡

[复制链接]

1

主题

1

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2016-5-14 16:03:46 | 显示全部楼层 |阅读模式
平时工作离不开谷歌,搜索英文文献比百度强多了。为了科学上网,买了个shadowsocks帐号,有好几个节点,每个节点都不错,很快。但是人心都是贪婪的,稳稳一个节点用几天总想换一个节点再感受感受,感觉这么多个节点没有都给用用好像浪费了。。。其实就是折腾。好在,遇到了Haproxy。

Haproxy是什么?虽然不喜欢百度,但还是引用百度百科吧,维基百科这个词条没中文的。

“HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。”

如果专门用一台电脑来做shadowsocks负载均衡的话,就太浪费了,刚好手上有个闲置的树莓派,以它的性能,应付个Haproxy绰绰有余了,关键还低功耗,可以24小时开机。
这次,我们就将它用来作为shadowsocks的负载均衡。把我们科学上网的需求分配到各个Shadowsocks节点上,以满足自己不浪费任何一个节点的强迫症想法。OK,Let's go.

1)作为Haproxy专用树莓,我选择用RASPBIAN JESSIE LITE系统,作为服务器专用,没必要有图形界面。
官方链接:https://www.raspberrypi.org/downloads/raspbian/

2)烧录安装略过不表。。。

3)基础设置及更换软件源。
sudo rasps-config

我偏爱mstc.edu.cn的源。
sudo nano /etc/apt/sources.list
将其他行用#注释掉,
加入:
deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ jessie main contrib non-free rpi
deb-src http://mirrors.ustc.edu.cn/raspbian/raspbian/ jessie main contrib non-free rpi
然后按Ctrl+X 退出保存。

4)更新源
sudo apt-get update

5)安装Haproxy
sudo apt-get install haproxy

6) 设置Haproxy
Haproxy的配置文件在/etc/haproxy/haproxy.cfg.
先备份一下:
sudo cp haproxy.cfg haproxy.cfg.default

编辑haproxy.cfg
sudo nano haproxy.cfg

将defaults下的
mode http 改为 mode tcp
有几行errorfile开头的是跟http相关的,对于我们用于shadowsocks负载均衡没有用,删除,或者注释掉吧。

加入:
fronted shadowsocks-in
        bind *:9001(这是你树莓派要开放给其他设备访问的shadowsocks服务的端口号)
        default_backend shadowsocks-out

backend shadowsocks-out
        server server1 ss1.acrossgw.com:9001 maxconn 20480
        server server2 ss2.acrossgw.com:9001 maxconn 20480
        server server3 ss3.acrossgw.com:9001 maxconn 20480
        server server4 ss4.acrossgw.com:9001 maxconn 20480

以上的地址是我从www.acrossgw.com购买的shadowsocks服务的节点地址和端口,换成你自己的节点地址和端口。
OK,ctrl+x 保存退出。

7)重启服务:
sudo service haproxy restart
把原来直接连接到shadowsocks的地址,改为树莓派的地址,开始享受Haproxy带来的负载均衡吧。怎么验证是否成功?两个标志:第一,能上谷歌,说明shadowsocks生效了;第二,全局代理的情况下多访问几次能显示ip的网站,比如www.ip138.com,可以看到你的访问ip不只是一个,说明负载均衡生效了。


8)几点说明:
8-1)我没有安装防火墙,所以,就不需要配置,如果你安装了防火墙,记得将相应的节点打开。
8-2)个人以为,用于负载均衡的shadowsocks节点最好是在相近区域的服务器,比如都是日本节点。因为考虑到,负载均衡后,如果这次的请求是日本youtube,而下次请求因为负载均衡,变成用美国节点来访问日本youtube,可能会导致速度变慢。个人想法,不一定正确。
8-3)作为负载均衡的几个服务器,必须加密方式和密码是一样的,但是通常购买的shadowsocks服务,同一账号的加密方式和密码都相同,所以,问题不大。但是如果你的shadowsocks是东拼西凑找来的,就不行了。

回复

使用道具 举报

0

主题

16

帖子

68

积分

注册会员

Rank: 2

积分
68
发表于 2016-5-14 21:55:38 | 显示全部楼层
赞一个
回复

使用道具 举报

0

主题

1

帖子

4

积分

新手上路

Rank: 1

积分
4
发表于 2018-3-29 16:02:29 | 显示全部楼层
好贴点赞,加入图片指明路灯精点贴.
回复 支持 反对

使用道具 举报

0

主题

26

帖子

63

积分

注册会员

Rank: 2

积分
63
发表于 2018-10-20 16:06:32 | 显示全部楼层
回复

使用道具 举报

0

主题

21

帖子

50

积分

注册会员

Rank: 2

积分
50
发表于 2019-8-26 19:07:34 | 显示全部楼层
发挥过的地方
回复 支持 反对

使用道具 举报

0

主题

21

帖子

50

积分

注册会员

Rank: 2

积分
50
发表于 2019-8-26 19:08:56 | 显示全部楼层
多少分各个地方花费多少
回复 支持 反对

使用道具 举报

0

主题

21

帖子

50

积分

注册会员

Rank: 2

积分
50
发表于 2019-8-26 19:09:40 | 显示全部楼层
个电话撒个都是废话的事发后
回复 支持 反对

使用道具 举报

0

主题

21

帖子

50

积分

注册会员

Rank: 2

积分
50
发表于 2019-8-26 19:10:10 | 显示全部楼层
过得好否合计得分京东方就
回复 支持 反对

使用道具 举报

0

主题

21

帖子

50

积分

注册会员

Rank: 2

积分
50
发表于 2019-8-26 19:10:35 | 显示全部楼层
热图给我一个回去玩儿会WRTY
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

返回顶部快速回复上一主题下一主题返回列表找客服关注微信

QQ|Archiver|手机版|小黑屋|树莓派论坛 ( 豫ICP备13020861号-6

GMT+8, 2021-1-22 01:54 , Processed in 0.086975 second(s), 22 queries .

Powered by Discuz! X3.2 Designed by BBs.ShuMeiPaiBa.Com

© 2015- Comsenz Inc. www.shumeipaiba.com

快速回复 返回顶部 返回列表