LVS在企业应用中抗负载能力强
- 不支持正则处理,不能实现动静分离
- 对于大型网格,LVS的实施配置复杂,维护成本较高
Haproxy是一款可提供高可用性、负载均衡、及基于TCP和HTTP应用的代理的软件
- 适用于负载大的Web站点
- 运行在硬件上可支持数以万计的并发连接的连接请求
- 支持TCP(四层代理)和HTTP(七层代理)
- 负载均衡常用调度算法
- RR(Round Robin):轮询,依次将请求分配给每个服务器
- LC(Least Connections):最少连接,将请求发送到当前连接数最少的服务器
- WRR(Weighted Round Robin):加权轮询,根据服务器权重分配请求
- SH(Source Hashing):基于来源哈希,同一客户端请求(Session会话记录)始终分配给同一台服务器
- DH(Destination Hashing):基于目的哈希,根据请求的目标地址进行哈希分布
案例环境
主机 |
操作系统 |
IP地址 |
主要软件 |
Haproxy 服务器 |
CentOS 7.3 x86_64 |
192.168.1.60 |
haproxy-1.5.19.tar.gz |
Nginx 服务器 1 |
CentOS 7.3 x86_64 |
192.168.1.61 |
nginx-1.12.0.tar.gz |
Nginx 服务器 2 |
CentOS 7.3 x86_64 |
192.168.1.62 |
nginx-1.12.0.tar.gz |
客户端 |
Windows 10 |
192.168.1.66 |
Edge 浏览器 |
1:编译安装nginx服务器(两个nginx网站的步骤完全一样,只有测试页面不同)
[root@localhost ~]# yum -y install pcre-devel zlib-devel gcc*
[root@localhost ~]# useradd -M -s /sbin/nologin nginx
[root@localhost ~]# tar zxvf nginx-1.12.0.tar.gz
[root@localhost ~]# cd nginx-1.12.0/
[root@localhost nginx-1.12.0]# ./configure --p