1、LVS负载均衡概念剖解:
1)LVS技术全称:Linux virtual Server ,Linux虚拟机服务器集群,1998由章文嵩博士设计、并且开源的,是中国最早的开源软件项目之一。
 
2)LVS被称为负载均衡软件(软件级别),用户通过互联网访问LVS VIP地址,LVS根据转发方式和算法将用户,对于用户来讲,是无法看到或者感知后端集群的状态的。
  • 转发方式:
  • 算法:
 
3)在目前互联网IT企业中,主流的可伸缩网络架构,都有一个共同的特点:前端调度器,拥有前端调度器就可以实现网络架构的横向、纵向伸缩功能,无限扩容集群的量级。
 
4)在IP负载均衡技术中,主要是通过三种转发方式来实现请求的转发,三种方式:
  • NAT:
  • DR:
  • TUN:
 
2、LVS负载均衡NAT方式实战:
1)LVS负载均衡NAT转发方式原理:
用户请求LVS VIP到达director(LVS服务器:LB),director(LVS)将请求的报文的目标IP地址改成后端的realserverIP地址,同时将报文的目标端口也改成后端选定的realserver相应端口,最后将报文发送到realserver,realserver将数据返给director,director再把数据发送给用户。(再次请求都经过director,所以访问大的话,director会成为瓶颈)。

2)LVS NAT模式注意事项:
  • LVS服务器至少2块物理网卡,一块连接公网(VIP),一块连接内网;
  • 后端Realserver机器的默认网关设置为LVS的内网IP地址;
  • 保证LVS内网网卡通常跟Realserver在同一网段;
  • LVS NAT模式后端Realserver机器数量不超过30台;
  • 用户的请求进入和返回均会经过LVS,LVS会成为瓶颈。
 
3、LVS NAT模式架构部署:
ipvsadm装方式如下:(源码部署需要和内核整合)
wget  -c 
http://www.linuxvirtualserver.org/software/kernel-2.6/ipvsadm-1.24.tar.gz
ln -s /usr/src/kernels/2.6.*  /usr/src/linux
tar xzvf ipvsadm-1.24.tar.gz
cd ipvsadm-1.24 
make
make install
yum方式安装:(安装完即可,无需启服务)
yum install ipvsadm* -y
1)LVS NAT模式,要求至少两台服务器,一台作为LVS,另一台为Real server后端服务器,而且LVS至少2块网卡(一块为模拟公网,一块为内网网卡。)

2)192.168.1.21Real server后端服务器的网关设置为LVS服务器的内网网卡IP地址:192.168.1.20,如下图所示:

3) LVS外网网卡的IP地址为10.10.10.188,可以作为对外接收用户的访问请求,也可以自行添加其他的外网IP绑定在外网网卡上。

nodprode ip_vs
lsmod |grep -i ip_vs

#添加VIP 10.10.10.188虚拟集群:

ipvsadm -A -t 10.10.10.188:80 -s rr
-A 添加虚拟服务器VIP
-t       TCP协议
-s 指定算法为RR轮询模式

#在虚拟集群10.10.10.188中,加入后端Real server服务器:

ipvsadm -a -t 10.10.10.188:80 -r 192.168.1.21:80 -m -w 100
-a 往虚拟服务器集群中添加真实后端服务器
-t TCP协议
-r       指定后端realserver服务器的IP和端口
-m       指定NAT转发模式
-w       weight权重设置

4)LVS NAT模式能够实现数据转发,还要依靠Linux内核开启转发功能,所以需要如下设置:

echo 1 > /proc/sys/net/ipv4/ip_forward

5)查看LVS NAT模式集群配置信息。如图所示:

ipvsadm -L -n

6)查看LVS 参数使用帮助:

ipvsadm --help|more

7)访问效果:(需要关闭防火墙)

 
4、LVS负载均衡DR方式实战:
1)LVS DR原理:用户请求LVS VIP到达director(LB均衡器),director将请求的报文的目标MAC地址改成后端的realserverMAC地址,目标IP为VIP(不变),源IP为用户IP地址(保持不变),如果Director将报文发送到realserver,realserver检测到目标为自己本地VIP,如果在同一个网段,然后将请求直接返给用户。如果用户跟realserver不在一个网段,则通过网关返回用户,如下图所示:

2)LVS DR模式注意事项:
  • LVS服务器和后端服务器realserver必须在同网段(内网、公网);
  • LVS修改请亲报文的目标MAC,目标(VIP)不修改的;
  • 目标IP(VIP)保持不变。在RS后端配置VIP,lo网卡上面配置(不冲突);
  • RS后端服务器的网关指向路由器的下一跳,保证数据能够出去(访问外网);
  • 在所有RS后端服务器,抑制ARP广播,禁止VIP响应解析,而且要保证真实网卡不能抑制ARP广播。
 
5、LVS DR模式架构部署:
1)Real server后端服务器的网关设路由器出口IP地址(正常设置,保持能够上网),另外配置拷贝lo网卡为lo:1,配置一个VIP地址(需要在同网段),掩码设置为4个255,否则网卡起不来(所有流量都会走ens33真实网卡的)配置在lo网卡是为了VIP地址不冲突:
#拷贝网卡:
cp /etc/sysconfig/network-scripts/ifcfg-lo /etc/sysconfig/network-srcipts/ifcfg-lo:1
#编辑 添加如下内容 vim /etc/sysconfig/network-srcipts/ifcfg-lo:1
DEVICE=lo
IPADDR=192.168.1.188
NETMASK=255.255.255.255
ONBOOT=yes
NAME=loopback #需要重启网卡:
ifup lo:1
systemctl restart network

2)在客户端验证pingVIP地址能够通信,发现其MAC地址就是Real server后端服务器的MAC:

3) LVS服务器配置负载均衡,配置网卡IP 可以配置真实网卡的子接口上:(VIP地址需要同网段)添加realserver后端服务器的IP:

#添加VIP 192.168.1.188虚拟集群,加人后端服务器IP:

ipvsadm -A -t 192.168.1.188:80 -s rr

ipvsadm -a -t 192.168.1.188:80 -r 192.168.1.20 -g -w 100
ipvsadm -a -t 192.168.1.188:80 -r 192.168.1.21 -g -w 100
#参数解释:
-A 大A 添加虚拟集群
-t tcp协议
-s 指定算法rr模式
-a 在虚拟集群中添加后端真实IP
-g 指定DR模式
-w 权重 #查看虚拟集群状态:
ipvsadm -L -n #删除集群IP:
ipvsadm -d -t 192.168.1.188:80 -r 192.168.1.20
ipvsadm -D -t 192.168.1.188:80

4)为了实现均衡,需要在后端服务器上配置抑制arp广播,禁止arp响应解析,而且要保证真实网卡能接受arp广播:

cat /proc/sys/net/ipv4/conf/lo/arp_ignore  默认是0需要运行如下命令:

echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
#解释:
arp ignore参数(1)含义:只响应目标IP配置在真实网卡;
arp announce参数(2)含义:忽略报文得源IP地址,使用主机上能够跟用户通信的真实网卡发送数据。

6、LVS负载均衡TUN方式实战(基于DR,是DR的升级版):
LVS TUN原理:用户请求LVS到达director,director通过IP-TUN加密技术请求的报文的目标MAC地址改成后端的Real serverMAC地址,目标IP为VIP(不变),源IP为用户IP地址(保持不变),然后director将报文发送到realserver,realserver基于IP-TUN解密,然后检测到目标为自己本地VIP,如果在同一个网段,然后将请求直接返回给用户。如果用户跟realserver不在一个网段,则通过网关返回用户。如下图所示:

realserver配置DR脚本:

#!/bin/sh
#LVS Client Server
VIP=192.168.1.188
case  $1  in                                                                                                                                                                                                                                                   
start)                                                                                                                                                                                                                                           
    ifconfig lo:0 $VIP netmask 255.255.255.255 broadcast $VIP
    /sbin/route add -host $VIP dev lo:0
    echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore
    echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce
    sysctl -p >/dev/null 2>&1
    echo "RealServer Start OK"
    exit 0
;;                                                                                                                                                                                                                                        
stop)
    ifconfig lo:0 down
    route del $VIP >/dev/null 2>&1
    echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore
    echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce
    echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore
    echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce
    echo "RealServer Stoped OK"
    exit 1
;;
*)
    echo "Usage: $0 {start|stop}"
;;
esac

LVS负载均衡概念+三种模式的更多相关文章

  1. LVS负载均衡的三种模式和八种算法总结

    三种LVS负载均衡模式 调度器的实现技术中,IP负载均衡技术是效率最高的,IP虚拟服务器软件(IPVS)是在linux内核中实现的。 LVS负载均衡模式---1.NAT模式 NAT用法本来是因为网络I ...

  2. LVS负载均衡常用的工作模式有NAT、DR、和TUN三种,其中DR模式性能最为优越,使用最为广泛。

    一.安装LVS LVS的编译安装参考本站文章:http://www.linuxe.cn/post-192.html,对于LVS这种功能性软件,在生产中用yum安装也是没有问题的. 1 yum inst ...

  3. LVS负载均衡群集部署——NAT模式

    LVS负载均衡群集部署--NAT模式 1.群集应用概述 2.NAT模式LVS负载均衡群集部署 1.群集应用概述: 存在的问题: 互联网应用中,随着站点对硬件性能.响应速度.服务稳定性.数据可靠性等要求 ...

  4. LVS负载均衡群集部署——DR模式

    LVS负载均衡群集部署--DR模式 1.LVS-DR概述 2.部署实验 1.LVS-DR概述: LVS-DR(Linux Virtual Server Director Server)工作模式,是生产 ...

  5. LVS负载均衡机制之LVS-DR模式工作原理以及简单配置

    本博文主要简单介绍一下LVS负载均衡集群的一个基本负载均衡机制:LVS-DR:如有汇总不当之处,请各位在评论中多多指出. LVS-DR原理: LVS的英文全称是Linux Virtual Server ...

  6. Lvs 负载均衡 (VS/NAT模式)

    一.LVS简介 LVS是 Linux Virtual Server 的简称,也就是Linux虚拟服务器.这是一个由章文嵩博士发起的一个开源项目,它的官方网站是 http://www.linuxvirt ...

  7. LVS负载均衡集群--NAT模式部署

    目录: 一.企业群集应用概述 二.负载均衡群集架构 三.负载均衡群集工作模式分析 四.关于LVS虚拟服务器 五.NAT模式 LVS负载均衡群集部署 一.企业群集应用概述 1.群集的含义 Cluster ...

  8. 构建LVS负载均衡集群——NAT模式(最简单方式)

    一.装备一台lvs调度器主机要求两个网卡一个为内部局域网ip,一个为公网ip #IP地址设置过程不再重复 [root@localhost ~]# ip a | grep eth0 #内网ip : et ...

  9. LVS负载均衡集群--DR模式部署

    目录: 一.LVS-DR数据包流向分析 二.DR 模式的特点 三.LVS-DR中的ARP问题 四.DR模式 LVS负载均衡群集部署 一.LVS-DR数据包流向分析 1.为方便进行原理分析,将clien ...

  10. 集群,lvs负载均衡的四种工作模式

    集群 集群的三种分类以及用途 负载均衡: 分配流量(调度器),提升速度 高可用: 关键性业务 高性能: 开发算法,天气预报,国家安全 负载均衡的集群 lvs(适用于大规模) haproxy(适用于中型 ...

随机推荐

  1. Java扩展Nginx之二:编译nginx-clojure源码

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 为什么要编译nginx-clojure源码 作为< ...

  2. 【websocket】小白快速上手flask-socketio

    大家好,我是一个初级的Python开发工程师.本文是结合官方教程和代码案例,简单说下我对flask-socketio的使用理解. 一.websocket简介 websocket 说白一点就是,建立客户 ...

  3. Flutter 屏幕采集如何实现(提供示例demo)

    在视频会议.线上课堂.游戏直播等场景,屏幕共享是一个最常见的功能.屏幕共享就是对屏幕画面的实时共享,端到端主要有几个步骤:录屏采集.视频编码及封装.实时传输.视频解封装及解码.视频渲染.一般来说,实时 ...

  4. OSS的使用(谷粒商城58-64)

    OSS的使用(谷粒商城58-64) 购买之类的就不在这里详述了,阿里云文档几乎都写了 创建bucket 学习阶段,相对独特的点在于我们需要选择公共读 项目开发阶段,不能选择公共读了,要尽量选择私有(代 ...

  5. Elementary OS old version download 旧版本下载

    Elementary OS 号称是最漂亮的Linux发行版,没有之一.确实,他的整体风格看起来就是特别舒服,说不出哪里特别好,但也挑不出什么毛病.相比之下,其他Linux的界面总感觉不太和谐.比如特别 ...

  6. wireshark 怎么过滤字符串 和 复制data中的可读文本

    设置 首先点击,[捕获]下面的小放大镜 选择 分组字节流 - 窄(UTF-8/ASCII)- 字符串 (注意,要向选择字符串) 效果 复制报文中的可读数据 右键报文,复制,...as Printabl ...

  7. WEB前端资源网站推荐

    https://www.bootcss.com/ https://www.bootcdn.cn/ http://www.jeasyui.net/plugins/756.html

  8. .NET技术:懒惰与沉淀的平衡之道

    在过去的很多年里,我一直默默搬砖,而我们聚在博客园,目的只有一个:沉淀并为更多的.NET开发者提供更好的帮助. 疫情3年,个人经历了太多事情,感觉懒惰是最大的敌人.然而,在这里,我收获了许多宝贵的经验 ...

  9. Web攻防--xxe实体注入

    web攻防--xxe实体注入 漏洞简介 XML 外部实体注入(也称为 XXE)是一种 Web 安全漏洞,允许攻击者干扰应用程序对 XML 数据的处理.它通常允许攻击者查看应用程序服务器文件系统上的文件 ...

  10. Stable Diffusion基础:ControlNet之图片风格迁移

    今天继续给大家分享AI绘画中 ControlNet 的强大功能,本次的主角是 Reference,它可以将参照图片的风格迁移到新生成的图片中,这句话理解起来很困难,我们将通过几个实例来加深体会,比如照 ...