lvs +nginx集群、nginx+keepalive集群、lvs+keepalive集群 三者之间有什么优缺点?
尤其nginx+keepalive自身可以实现集群,为什么还有人采用lvs +nginx集群呢,多加一个lvs呢?
本文中所述负载均衡使用LVS+Nginx实现,LVS完成四层流量转发,Nginx完成七层流量分发。LVS和Nginx分别在各自网络命名空间下运行,相互之间可以通过各自网络命名空间下macvlan虚拟网卡通信。为了提高负载均衡转发能力和可靠性,每个LVS配置两个Nginx后端,同时LVS自身采用主备方式工作。
业务流程图
LVS采用VS/DR(Virtual Server via Direct Routing),即用直接路由技术实现虚拟服务器。具体的报文转发方法为VS/DR通过改写请求报文的MAC地址,将请求发送到Real Server,而Real Server将响应直接返回给客户。这种方式是三种负载调度机制中性能最高的,但是必须要求Director Server与Real Server都有一块网卡连在同一物理网段上。
流量模型图