【 LVS 】DR 方式实现过程

LVS-DR方式实现负载均衡

一、环境介绍

lvs director配置:

[[email protected] ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.2.13  netmask 255.255.255.0  broadcast 192.168.2.255
        inet6 fe80::20c:29ff:feeb:7e7d  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:eb:7e:7d  txqueuelen 1000  (Ethernet)
        RX packets 534  bytes 47172 (46.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 422  bytes 44139 (43.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 23  bytes 2480 (2.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 23  bytes 2480 (2.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[[email protected] ~]# ifconfig eno16777736:0 192.168.2.14/32 broadcast 192.168.2.14  # 配置虚拟地址DIP
[[email protected] ~]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.2.13  netmask 255.255.255.0  broadcast 192.168.2.255
        inet6 fe80::20c:29ff:feeb:7e7d  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:eb:7e:7d  txqueuelen 1000  (Ethernet)
        RX packets 673  bytes 58778 (57.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 503  bytes 53741 (52.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eno16777736:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.2.14  netmask 0.0.0.0  broadcast 192.168.2.14
        ether 00:0c:29:eb:7e:7d  txqueuelen 1000  (Ethernet)

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 23  bytes 2480 (2.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 23  bytes 2480 (2.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[[email protected] ~]# route add -host 192.168.2.14 dev eno16777736:0

接下来对realserver进行配置:

  1、首先对arp_ignore和arp_announce进行修改

  2、再次将vip添加到网卡lo

[[email protected] ~]# vim /etc/sysctl.conf    # 在文件末尾处添加
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.eth0.arp_announce = 2

[[email protected] ~]# sysctl -p
[[email protected] ~]# ifconfig lo:0 192.168.2.14/32 broadcast 192.168.2.14 up    # 在本地回环地址上添加VIP[[email protected] ~]# route add -host 192.168.2.14 dev lo:0

两台realserver一样的配置,不在贴代码

配置IPVS规则:

[[email protected] ~]# vim /etc/hosts    # 配置好hosts是必须的

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
# director
192.168.2.13    rhel7
10.0.0.1        rhel7

# realserver
10.0.0.10       RS1
10.0.0.11       RS2

[[email protected] ~]# ipvsadm -A -t 192.168.2.14:80 -s rr
[[email protected] ~]# ipvsadm -a -t 192.168.2.14:80 -r 192.168.2.10 -g -w 1
[[email protected] ~]# ipvsadm -a -t 192.168.2.14:80 -r 192.168.2.11 -g -w 1
[[email protected] ~]# ipvsadm -L -n
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.2.14:80 rr
  -> 192.168.2.10:80              Route   1      0          0
  -> 192.168.2.11:80              Route   1      0          0

测试:

    

时间: 2024-10-19 23:39:24

【 LVS 】DR 方式实现过程的相关文章

使用LVS+DR搭建集群实现负载均衡

使用LVS+DR搭建集群实现负载均衡 DR模式的概述与工作原理 DR模式服务概述:        Direct Routing(直接路由) --在同一个地域,同一个网段 Director分配请求到不同的real server.real server处理请求后直接回应给用户,这样director负载均衡器仅处理客户机与服务器的一半连接.负载均衡器仅处理一半的连接,避免了新的性能瓶颈,同样增加了系统的可伸缩性.Direct Routing由与采用物理层(修改MAC地址)技术,因此所有服务器都必须在一

LVS DR NAT keepalived

LVS LVS 架构 LVS是一个实现负载均衡集群的开源软件项目,LVS架构从逻辑上可分为调度层(Director).server集群层(Real server)和共享存储层. LVS-DR DR(调度器将请求来的数据包的目标mac地址改为real server的mac地址,返回的时候也不经过调度器,直接返回给客户端),其实该过程就就是利用"以太网"通讯是通过mac地址的原理,从而让realserver将数据直接返回给目标地址,而不经过DR返回数据 案例lvs-dr 第一步:完成IP地

一个公网地址部署LVS/DR模式

http://blog.chinaunix.net/uid-7411781-id-3436142.html 网上看了很多关于LVS的文章,在选取2种模式LVS/DR和LVS/NAT,看到很多人的观点都认为DR模型中必须要使用多个公网地址,既DIP,VIP,RIP必须在同一网段内 刚开始我的想法也是如此,所知道的唯一的解决方案就是在LVS集群之前再加一台路由器,用路由器做静态NAT转换,后端的LVS集群则使用DR 模式.不过这样一来就比较耗成本,要有一台路由器专门负责NAT的转换工作,而且压力都转

LB集群之LVS/DR

[[email protected] ~]# ipvsadm -C  #清空掉之前的LVS/nat 的规则 [[email protected] ~]# ipvsadm -ln IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags -> RemoteAddress:Port           Forward Weight ActiveConn InActConn [[email pr

LVS DR集群

原理:LVS DR(director Routing)技术利用了Internet服务的非堆成特带你,调度器只负责调度Client发出的请求, 而服务器realserver直接将响应结果发挥给Client,因此相对LVS NAT方式而言可以提高整个集群数据包的吞吐量.关 于LVS DR的搭建架构应满足:电镀漆和服务器在物理上有一个网卡通过局域网链接,VIP地址被电镀漆和服务器组共享, 电镀漆配置的VIP地址对外部是可见的,用于接收虚拟服务的请求报文.把所有服务器的VIP地址配置在各自的NOn-AR

LVS DR 负载均衡集群

LVS DR 负载均衡集群 试验准备:五台主机ABCDE,主机ABCDE均为单网卡,IP地址分别为192.168.10.2,192.168.10.3,192.168.10.4,192.168.10.5,192.168.10.6.主机A作为内网客户端,主机B负载均衡调度器,主机C和主机D作为网站服务器,主机E作为共享存储,均清除防火墙和SELINUX.操作系统均为RHELx86_64,为最小化安装. 主机A操作 #vim /etc/sysconfig/network-scripts/ifcfg-e

LVS DR模式 负载均衡服务搭建

LVS 负载均衡 最近在研究服务器负载均衡,阅读了网上的一些资料,发现主要的软件负载均衡方案有nginx(针对HTTP服务的负载均衡),LVS(针对IP层,MAC层的负载均衡).LVS模式工作在网络层,且由内核实现负载转发,效率要比nginx高.     LVS负载均衡包含三种模式: 1. NAT模式(类似路由器,实现外网内网地址映射,负载均衡服务器修改请求包的源以及目的MAC地址和IP地址,发送给实际服务器:负载均衡服务器,修改响应包的源以及目的MAC地址和IP地址,发送给客户端.请求和响应报

CentOS下LVS DR模式负载均衡配置详解

一安装LVS准备: 1.准备4台Centos 6.2 x86_64 注:本实验关闭 SELinux和IPtables防火墙. 管理IP地址 角色 备注 192.168.1.101 LVS主调度器(Master Director) 对外提供服务的VIP为192.168.1.180 192.168.1.114 LVS从调度器(Backup Director) 平时可以作为RS(真实服务器使用) 192.168.1.104 RS1(真实服务器)   192.168.1.103 RS2(真实服务器)  

lvs(DR)+keepalived+mysqld主从

三台机器:director(eth0192.168.0.8, vip eth0:0: 192.168.0.101)real server1(eth0 rip: 192.168.0.140 vip lo:0:192.168.0.101)real server2(eth0 rip: 192.168.0.141, vip lo:0:192.168.0.101) 1.自己编写的一键源码安装的lnmp脚本 2.安装LVS(DR) yum install ipvsadm Director 上 vim /us