磅+ HAProxy或Stunnel + HAProxy

我正在考虑将负载平衡器引入到我现有的站点基础架构中,以帮助增加stream量并提供一定程度的故障保护。

我正在运行的网站使用SSL证书作为login部分,我将需要继续使用此function。 后端服务器将需要知道始发IP地址,所以我不能使用TCP负载平衡function,将需要在负载均衡器上终止SSL,所以我可以插入一个

X – 转发,对于

头。 我见过一些使用stunnel实现SSL解密function的方法,另一种使用了Pound方法。 我一直在环顾四周,但是我不确定使用哪一个的优点/缺点。 有没有人有这方面的经验,并提供他们的build议?

谢谢

我不确定庞德,但我已经设法让Stunnel + HAProxy工作,包括设置始发IP地址为X-Forwarded-For头。 诀窍是使用Stunnel和X-Forwarded-For补丁。 这是一个可以在Ubuntu 10.04上运行的软件包: https : //launchpad.net/~szelcsanyi-gabor/+archive/stunnel4

这是一个老问题,但HaProxy现在对SSL有本地支持,这使得SSL / TLS的设置和使用变得更加容易。

见这里http://blog.exceliance.fr/2012/09/10/how-to-get-ssl-with-haproxy-getting-rid-of-stunnel-stud-nginx-or-pound/

我没有使用HAProxy的stunnel,但是我是Pound的一个长期用户,在几个不同的环境中。

庞德在SSL方面做得很好。 设置起来非常简单,使用标准的PEM证书,并将足够的SSL数据传递回Web服务器,以便您的应用程序知道他们正在处理的内容。 除了X-Forwarded-For ,你还可以得到X-Forwarded-Proto ,所以如果你同时运行一个站点的http和https版本,你可以给你的AJAX / XHRcallback一个不会导致安全警告的URL。 Pound还支持客户端证书,通配证书和SNI。 所以你不能用它做很多。

另外,我对使用需要第三方补丁来提供关键function的工具来提供生产服务有点怀疑。 当发现通道漏洞时会发生什么情况,并且更改会破坏您的修补程序? 你会运行一段时间的不安全,或运行没有X-Forwarded-IP头一段时间?

我从未有过英镑崩溃。 除了2005年修复的一个奇怪的与防火墙相关的bug之外,它对我来说总是performance得完美无瑕。 我喜欢的东西之一是它附带的外部控制程序,它可以让我禁用/启用服务和后端,或查看当前的粘性会话映射列表等等。据我所知,haproxy不'不会有像庞德那样的东西

除了在工作中使用磅来负载平衡五个Web服务器的集群,我使用它在我的个人服务器上。 在那里,我在使用私有IP地址的虚拟机上运行Web服务器( FreeBSD jails )。 在物理主机上运行的Pound之后,多个虚拟Web服务器负载平衡。 我想你可以用stunnel + HAProxy做同样的事情,但是我更喜欢安装完整的社区支持软件,没有非标准的补丁。

Nginx也非常适合HAProxy的SSL前端,特别是ender头部负载。 我使用4核心CPU的SSL。