NAT模式工作原理
通过网络地址转换,客户端访问调度器时,调度器重写请求报文的目标地址,根据预设的调度算法,将请求分派给后端真实服务器;真实服务器的响应报文通过调度器时,报文源地址被重写再返回给客户,完成整个负载调度过程。但通常在流量比较大的情况下会造成调度器的瓶颈。因为服务数据的返回必须通过调度器出去。
客户端访问VIP1的网站

CIP客户端的IP
VIP是域名解析的IP,是集群对外的公网IP
DIP用来和后端服务器进行数据交互的IP,请求报文转发给后端服务器从此口出去
RIP真实服务器的IP
调度器使用NAT进行地址转换
客户端访问调度器时,调度器通过网络地址转换,调度器重写请求报文的目标地址,根据预设的调度算法,将请求分派给后端的真实服务器
NAT模式配置
加载lvs内核模块
modprobe ip_vs
lsmod | grep ip_vs
cat /proc/net/ip_vs
负载均衡服务器需要添加一张外网网卡
开启路由转发
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
sysctl -p
sysctl -a | grep net.ipv4.ip_forward
net.ipv4.ip_forward = 1
安装LVS管理工具:ipvsadm
yum install -y ipvsadm
systemctl enable ipvsadm
使用ipvsadm命令设置规则
[root@cong11 ~]# ipvsadm -C #清除内核虚拟服务器表中的所有记录
[root@cong11 ~]# ipvsadm -A -t 192.168.43.10:80 -s rr #创建虚拟服务器
-A 添加虚拟服务器
-t 用来指定VIP地址及TCP端口
-s 指定调度算法,rr(轮询)、wrr(加权轮询)、lc(最少连接)、wlc(加权最少连接)。
[root@cong11 ~]# ipvsadm -a -t 192.168.43.10:80 -r 192.168.1.22:80 -m
[root@cong11 ~]# ipvsadm -a -t 192.168.43.10:80 -r 192.168.1.23:80 -m
-a 表示添加real server的地址
-r 指定real server的IP地址和端口
-m 表示masquerade 也就是NAT方式的LVS,(-g: DR模式、-i:TUN模式)
-w用来设置权重(权重为0时表示暂停节点)。
查看配置
ipvsadm -Ln永久生效配置
ipvsadm --save -n >/etc/sysconfig/ipvsadm
cat /etc/sysconfig/ipvsadm
-n以数字的形式保存、否则将以主机名的形式保存配置文件
删除代理节点
ipvsadm -d -t 192.168.2.21:80 -r 192.168.1.22:80