1.LVS四层负载均衡

2021-05-27 分类:LVS 阅读(364) 评论(0)

孙富阳, 江湖人称没人称。多年互联网运维工作经验,曾负责过孙布斯大规模集群架构自动化运维管理工作。擅长Web集群架构与自动化运维,曾负责国内某大型博客网站运维工作。

1.lvs工作模式

dr direct routing 直接路由模式 nat tun 隧道 full nat 完全nat模式
CIPclient ip客户端ip地址
VIP 虚拟ip
DIPdirector负载均衡ip
RS服务器real server真实服务器,处理用户请求
RIPreal server ip 

2.lvs-dr 模式介绍

特点
lvs dr模式中lvs只负责转发 并修改用户请求的目标mac地址 dmact
lvs dr模式中响应和处理 是后端rs服务器处理 处理直接响应给用户.
lvs vip公网ip rs服务器也要有公网ip 
lvs dr 支持更高并发(几万 几十万) nginx(1w)
lvs 和后端rs服务器 必须要在同1个局域网 涉及到arp解析
用户请求过来的端口 无法修改的. 用户的请求是什么端口 后端rs服务器就要开端口

3.lvs-nat模式介绍

lvs与rs服务器可以不在同一局域网
nat模式 流量初入都要经过 lvs 效率 性能不高
端口也可以不同

4.lvs-dr模式部署实操

1.环境准备

主机服务ip
lb01lvs10.0.0.5
lb02lvs10.0.0.6
vip 10.0.0.3
web01nginx10.0.0.7
web02nginx10.0.0.8
lb01#
[root@lb01 ~]# yum -y install ipvsadm.x86_64
#web02,web01配置相同  
[root@web01 ~]# cat /etc/nginx/conf.d/lvs.com.conf 
server {
   listen 80;
   server_name   lvs.com;
   root /code/lvs;
   location / {
   index index.html ;
   }
}
[root@web01 ~]# curl -H Host:lvs.com   172.16.1.7
lvs web01 10.0.0.7 172.16.1.7
[root@web01 ~]# curl -H Host:lvs.com   172.16.1.8
lvs web02 10.0.0.8 172.16.1.8

2.lvs-dr模式配置流程

1.lvs服务端配置

#01.手动添加vip,后面是由keepalived生成
ip addr add 10.0.0.3/24 dev eth0 label eth0:0
#02. 查看lvs规则
[root@lb01 ~]# ipvsadm 
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
#03. 清空规则,要备份
ipvsadm -C     #clear清除 #iptables -F flush 
#04. 设置 tcp超时时间
ipvsadm --set 30 5 60   #设置tcp 超时时间
#05. 添加规则
[root@lb01 ~]# ipvsadm -ln #查看规则
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Schedu -> RemoteAddress:Port    Forward Weight ActiveConn InActConn
#添加规则 upstream 
ipvsadm -A -t 10.0.0.3:80 -s wrr -p 20   
#-A --add-service 创建池塘  
#-t --tcp-service tcp协议
#10.0.0.3:80 组名称
#-s scheduler 轮询算法   wrr weight 加权轮询   rr lc wlc 
#-p persistent 会话保持时间  
#添加规则 向upsteam中添加server  
ipvsadm -a -t 10.0.0.3:80 -r 10.0.0.7:80 -g -w 1
ipvsadm -a -t 10.0.0.3:80 -r 10.0.0.8:80 -g -w 1
#-a 添加 rs服务器  
#-t tcp协议
#-r 指定rs服务器ip
#-g --gatewaying dr模式 默认的
#-w 权重
[root@lb01 ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  10.0.0.3:80 wrr persistent 20
  -> 10.0.0.7:80                 Route   1      0          0         
  -> 10.0.0.8:80                 Route   1      0          0

2.web服务器端配置

#lo网卡绑定 vip 
ip addr add 10.0.0.3/32 dev lo label lo:1 
[root@web01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-lo:1
DEVICE=lo:1
IPADDR=10.0.0.3
NETMASK=255.255.255.255
ONBOOT=yes
NAME=loopback
[root@web01 ~]# systemctl restart network 
[root@web02 ~]# ip a s lo
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
   link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
   inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
   inet 10.0.0.3/32 brd 10.0.0.3 scope global lo:1
       valid_lft forever preferred_lft forever
   inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
#抑制arp解析
cat >>/etc/sysctl.conf<<EOF
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
EOF
sysctl -p

评论已关闭

登录

忘记密码 ?

切换登录

注册

鲁ICP备2021019243号-1