我有一堆关于 ssl、本地会话和负载平衡的问题,它们似乎是相互关联的,所以我提前为这个问题的长度道歉。
我有一个使用基于文件的会话的网站。该站点的性质是大部分是http,但有些部分是ssl。目前,由于基于文件的会话,任何 ssl 请求都需要与以前的任何 http 请求访问相同的服务器。
由于时间限制,我想做最简单的事情来负载平衡增加的 http 和 ssl 流量。
粘性负载平衡算法似乎有两种选择:
基于 ip 的解决方案可能会起作用,但散列算法可能会在服务器关闭或添加时更改用户访问的服务器,这对于当前基于文件的会话设置是不合需要的。我还假设用户在浏览网站时合法地更改 ip 在技术上是可能的。
基于 cookie 的算法似乎更好,但是在通过 ssl 加密时无法检查 cookie 似乎存在其自身的问题。
我一直在搜索有关如何对 ssl 进行负载平衡的示例,但似乎找不到任何明确的设置示例,这些示例可以执行基于 cookie 的负载平衡,并且可以通过添加另一个 ssl 解码器来处理增加的 ssl 负载。
我见过的大多数显式示例都有位于浏览器客户端和负载均衡器之间的 ssl 解码器(通常是硬件、apache_mod_ssl 或 nginx)。这些示例通常看起来像这样(从http://haproxy.1wt.eu/download/1.3/doc/architecture.txt修改):
192.168.1.1 192.168.1.11-192.168.1.14 -------+-----------+-----+-----+-----+ | | | | | +--+--+ +-+-+ +-+-+ +-+-+ +-+-+ | LB1 | | 一个 | | 乙 | | C | | D | +-----+ +---+ +---+ +---+ +---+ apache 4 便宜的网络服务器 mod_ssl …