lvs概述

LVS概述

lvs(linux virtual server)为解决高并发场景下服务器负载瓶颈的一种负载均衡手段。基于四层的负载均衡,可以达到400多万的并发量,远高于haproxy及nginx。

1.nat模式

nat模式特点:
1.调度器必须有两块网卡,DIP和RIP必须在同一网段中,RS的网关地址必须指向DR的内网卡IP地址
2.调度器在接收客户端的请求的时候,修改的是目标IP,在给客户端返回数据的时候,修改的是源IP
3.支持端口映射
4.请求和响应报文都经由调度器转发:高负载场景中,dircetor可能成为瓶颈
在这里插入图片描述
实验步骤:

前提:real server 安装httpd 服务并配置index.html区分node1和node2

1.安装ipvsadm

	yum install -y ipvsadm

2.分别为调度器和Rserver配置vip dip rip 并将rip的网关设置为dip

3.开启路由转发,将vip的数据包经由内核转发到dip上(从input直接丢到output链):

	echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf 
	sysctl -p             # 加载,使得配置文件立即生效

4.配置ipvsadm 规则

添加集群:
		ipvsadm -A -t 192.168.220.128:80 -s rr     # 使用80端口,调度模式为轮询
添加后端服务器
		ipvsadm -a -t 192.168.220.128:80 -r 172.16.2.101 -m # 添加101real server 模式为nat
		ipvsadm -a -t 192.168.220.128:80 -r 172.16.2.101 -m # 添加102real server

5.保存配置

	ipvsadm -S -n> /etc/sysconfig/ipvsadm

6.测试

访问:http://192.168.220.128

2.dr模式

dr模式特点:
1.real server和调度器都需要配置vip节点,其中 real server 中的vip不能宣告arp请求,确保vip报文通过调度器发往realserver,其中调度器将报文直接发送到挑选的real server 上并不更改tcp/ip 头部。
2.real server 接收到请求后 报文的源地址为cip 目的地址为vip ,因为服务器在lo接口上配置了vip,因此可以对报文进行 处理,经过内核转发到lo接口上进行处理,处理完毕后必须从lo接口出去,做IP转发到本地网卡,后进行路由到客户端。

arp_ignore参数的作用是控制系统在收到外部的arp请求时,是否要返回arp响应。
  arp_ignore参数的作用是控制系统在收到外部的arp请求时,是否要返回arp响应。
  arp_ignore参数常用的取值主要有0,1,2,3~8较少用到:
0:响应任意网卡上接收到的对本机IP地址的arp请求(包括环回网卡上的地址),而不管该目的IP是否在接收网卡上。
1:只响应目的IP地址为接收网卡上的本地地址的arp请求。
2:只响应目的IP地址为接收网卡上的本地地址的arp请求,并且arp请求的源IP必须和接收网卡同网段。
3:如果ARP请求数据包所请求的IP地址对应的本地地址其作用域(scope)为主机(host),则不回应ARP响应数据包,如果作用域为全局(global)或链路(link),则回应ARP响应数据包。
4~7:保留未使用
8:不回应所有的arp请求
  sysctl.conf中包含all和eth/lo(具体网卡)的arp_ignore参数,取其中较大的值生效。
    arp_announce的作用是控制系统在对外发送arp请求时,如何选择arp请求数据包的源IP地址。(比如系统准备通过网卡发送一个数据包a,这时数据包a的源IP和目的IP一般都是知道的,而根据目的IP查询路由表,发送网卡也是确定的,故源MAC地址也是知道的,这时就差确定目的MAC地址了。而想要获取目的IP对应的目的MAC地址,就需要发送arp请求。arp请求的目的IP自然就是想要获取其MAC地址的IP,而arp请求的源IP是什么呢? 可能第一反应会以为肯定是数据包a的源IP地址,但是这个也不是一定的,arp请求的源IP是可以选择的,控制这个地址如何选择就是arp_announce的作用)
    arp_announce参数常用的取值有0,1,2。
0:允许使用任意网卡上的IP地址作为arp请求的源IP,通常就是使用数据包a的源IP。
1:尽量避免使用不属于该发送网卡子网的本地地址作为发送arp请求的源IP地址。
2:忽略IP数据包的源IP地址,选择该发送网卡上最合适的本地地址作为arp请求的源IP地址。
  sysctl.conf中包含all和eth/lo(具体网卡)的arp_ignore参数,取其中较大的值生效。

在这里插入图片描述实验步骤:

前提:real server 安装httpd 服务并配置index.html区分node1和node2

1.安装ipvsadm

	yum install -y ipvsadm

2.在配置vip及rip之前,需要将real server中的arp_ignore和arp_announce配置进行修改,以防争抢vip

	#arp_ignore=1 只响应目的地址为本机网卡的arp请求
	#arp_announce=2 响应从lo接口接收,从lo接口发送出 进行路由
	echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
	echo 1 > /proc/sys/net/ipv4/conf/ens33/arp_ignore
	echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
	echo 2 > /proc/sys/net/ipv4/conf/ens33/arp_announce

3.分别为调度器和Rserver配置vip dip rip 并将rip的网关设置为dip

4.开启路由转发,将vip的数据包经由内核转发到dip上(从input直接丢到output链):

	echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf 
	sysctl -p             # 加载,使得配置文件立即生效

5.配置ipvsadm 规则

添加集群:
		ipvsadm -A -t 192.168.220.127:80 -s rr     # 使用80端口,调度模式为轮询
添加后端服务器
		ipvsadm -a -t 192.168.220.127:80 -r 192.168.220.129 -g # 添加101real server 模式为dr
		ipvsadm -a -t 192.168.220.127:80 -r 192.168.220.130 -g # 添加102real server

6.保存配置

	ipvsadm -S -n> /etc/sysconfig/ipvsadm

7.测试

访问:http://192.168.220.127

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Virtuoso LVS(物理验证系统)是一种用于验证集成电路版图的工具。它是由美国Cadence公司开发的一款功能强大的布线级验证工具。 Virtuoso LVS在集成电路设计中起着至关重要的作用。通过分析和比较设计原理图和版图之间的连接和连线规则,Virtuoso LVS可以确保电路设计的准确性和正确性。它确保电子器件的版图布局与原理图设计一致,通过验证电路的连通性和连接规则,可以发现并纠正可能存在的错误和问题。 Virtuoso LVS提供了丰富的功能和灵活的选项,以满足不同设计需求。它支持多种版图格式,包括布局图和电路图,可以针对不同层次的设计进行验证。同时,Virtuoso LVS还提供了强大的错误检测和报告功能,可以帮助设计师快速定位和解决问题。 Virtuoso LVS的高性能和准确性是其优势所在。它使用了先进的算法和技术来实现快速和精确的验证,大大提高了设计的效率和质量。通过有效地检测和修复错误,Virtuoso LVS可以减少设计周期和成本,提高产品的可靠性和市场竞争力。 总之,Virtuoso LVS是一款目前广泛应用于集成电路设计的物理验证工具。它通过分析和比较设计原理图和版图之间的连接和连线规则,确保电路设计的准确性和正确性。凭借其高性能和准确性,Virtuoso LVS为设计师提供了一个有效的验证解决方案,提高了设计的效率和质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值