DR模式介绍

embedded/2024/10/18 16:55:23/

DR模式

lvs的三种模式

nat:地址转换

DR模式:直接路由模式

tun:隧道模式

DR模式的特点

调度器在整个lvs集群当中是最重要的,在nat模式下,即负责接受请求,同时根据负载均衡的算法转发流量,响应发送给客户端

DR模式:调度器依然负责接收请求,同时也根据负载均衡算法转发到流量到RS,响应直接由RS响应给客户端

直接路由 Direct Routing 是一种二层转发模式,二层转发的是数据帧。根据原mac地址和目的mac地址进行转发

不会修改数据包源ip和目的ip,根据数据包mac地址进行转发

DR模式下,lvs也是维护一个虚拟的IP地址,所有请求都是发送到这个vip,既然是走二层转发,当客户端请求到达调度之后,根据负载均衡的算法选择一个RS,修改vip服务器的目的mac地址,RS处理完请求之后,根据报文当中客户端的源mac地址直接把响应发送到客户端即可,不需要走调度器了

1、调度器配置了vip,RS上也配置了vip地址

vip地址冲突,调度器和RS都在同一网段,ARP通信紊乱,因为整个局域网广播,所有设备都收到了

怎么把lo这个回环的响应把它屏蔽掉,只有本机的物理ip地址响应

修改内核参数

arp_ignore=1

系统的物理IP地址才会响应ARP请求,咯不会响应ARP请求

2、返回报文时,VIP地址还在,怎么样让客户端来接收到响应

arp_announce=2

系统不适用IP数据包的源地址来响应ARP请求,直接发送物理接口的IP地址。

节点服务器的配置:

DR模式的实现:

需要两台服务器

一个vip

一个调度器地址

一个客户端

在这里插入图片描述

安装ipvsadm

修改网卡

在这里插入图片描述

在这里插入图片描述

关闭转发功能

修改配置文件

etc/sysctl.cof

在这里插入图片描述
在这里插入图片描述

编辑的内容
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0

设置策略

先保存再重启

在这里插入图片描述

修改配置文件重新导出

在这里插入图片描述

在原有的基础上修改

修改vip的轮询算法和权重

在这里插入图片描述

修改两台服务器的显示内容

修改回环地址

在这里插入图片描述

在这里插入图片描述

route add-host 20.0.0.100 dev lo:0

设置ip地址为20.0.0.100添加到回环接口,作为lvs的vip。通过路由的模式转发到RS.能让vip识别到真实的服务器

在这里插入图片描述

-p让它生效

在这里插入图片描述

简述lvs的三种模式和他们的区别

lvs的三种工作模式:

NAT*DR*TUN
优点地址转换,配置简单性能最好WAN,可以实现较远距离数据包转送
缺点性能瓶颈不支持跨网段专用通道需要开通VPN(花钱)
RS要求无限制必须要禁止非物理接口的ARP响应要支持隧道模式
RS数量10-20台100台100台

在原有的基础上修改

修改vip的轮询算法和权重

lvs和nginx做负载均衡的区别

lvs是四层转发 内核态 ip+端口 四层代理

nginx 四层转发 也可以七层代理

lvs(DR模式)+nginx+tomcat

lvs实现四层转发+nginx实现四层转发(动态)

访问lvs的vip地址可以实现动静分离

在这里插入图片描述

实验

在这里插入图片描述

实现一主一备

两台机器

systemctl stop firewalld
[root@test2 ~]# setenforce 0
[root@test2 ~]# vim /etc/sysctl.conf 
[root@test2 ~]# sysctl -p
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
安装两个服务
yum -y install ipvsadm keepalived

添加策略更改权重

vim /etc/sysconfig/ipvsadm
[root@test2 ~]# systemctl restart ipvsadm
ipvsadm -e -t 20.0.0.100:80 -r 20.0.0.80:80 -w 3
[root@test2 ~]# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  20.0.0.100:80 rr-> 20.0.0.80:80                 Route   3      0          0         -> 20.0.0.85:80                 Route   1      0          0         

修改配置文件

 pwd
/etc/keepalived
[root@test2 keepalived]# ls
keepalived.conf
[root@test2 keepalived]# 

可将58行以下全部删除

 8    }9    notification_email_from Alexandre.Cassen@firewall.loc10    smtp_server 192.168.200.111    smtp_connect_timeout 3012    router_id lvs_01   修改名字可任意13    vrrp_skip_check_adv_addr14    vrrp_strict15    vrrp_garp_interval 016    vrrp_gna_interval 019 vrrp_instance VI_1 {20     state MASTER21     interface ens33   修改网卡22     virtual_router_id 10   主备保持一致23     priority 120    设置优先级24     advert_int 125     authentication {26         auth_type PASS27         auth_pass 111128     }   29     virtual_ipaddress {30         20.0.0.100   修改vip地址31     }   32 }   
34 virtual_server 20.0.0.100 80 {   修改到服务器端口35     delay_loop 636     lb_algo rr 37     lb_kind DR   将模式修改为DR38     persistence_timeout 5039     protocol TCP    

http://www.ppmy.cn/embedded/58738.html

相关文章

平安银行秋招攻略,考试内容详解

平安银行秋招简介 在众多的银行招聘中,平安银行的招聘难度相对较低,根据考生的反馈情况来看,仔细的进行准备,平安银行上岸并不是难题,那么平安银行的秋招何时开始? 平安银行的秋招开始时间相对较晚&#…

PHP智慧门店微信小程序系统源码

🔍【引领未来零售新风尚】🔍 🚀升级启航,智慧零售新篇章🚀 告别传统门店的束缚,智慧门店v3微信小程序携带着前沿科技与人性化设计,正式启航!这个版本不仅是对过往功能的全面优化&a…

分布式锁理解

介绍分布式锁,我觉得从项目的背景入手把 在伙伴匹配系统中,我创建了一个定时任务,做为缓存预热的手段 这个具体原因在Redis-CSDN博客 接下来切入正题: 想象每个服务器都有一个定时任务,都要对数据库或者缓存进行操…

【android 9】【input】【10.发送按键事件4——View的分发流程】

系列文章目录 可跳转到下面链接查看下表所有内容https://blog.csdn.net/handsomethefirst/article/details/138226266?spm1001.2014.3001.5501文章浏览阅读2次。系列文章大全https://blog.csdn.net/handsomethefirst/article/details/138226266?spm1001.2014.3001.5501 目录…

Linux环境下Oracle 11g的离线安装与配置历程

在成功体验了 Windows 版本的Oracle 11g 后,这几天心血来潮,决定再挑战一下Linux 环境下的安装,特别是在考虑到部门内部虚拟机无法联网的情况下,我选择了在CentOS 7上进行离线安装。这次安装之旅,主要参考了下面大佬的…

仕考网:公务员考试面试时间一般多长?

公务员考试主要分为笔试与面试两个阶段,其中面试是笔试通过的下一关,面试的具体安排通常由相关考试机构或招录单位负责发布并通知考生。 公务员面试的持续时间一般在30分钟至1小时之间,具体时长可能因地区和招录单位的不同而有所变化。常见的…

深入理解 Cowboy WebSocket:使用 Erlang/OTP 构建高效的即时通讯(IM)应用

深入理解 Cowboy WebSocket:使用 Erlang/OTP 构建高效的即时通讯(IM)应用 引言 实时通信技术在现代 Web 应用中扮演着核心角色,而 WebSocket 作为其中的关键技术,已成为即时通讯(IM)系统不可或缺的一部分。Cowboy,这个基于 Erla…

图数据库 - Neo4j详解

深入理解 Neo4j 与 Cypher 语法 什么是 Neo4j Neo4j 是一个基于图的数据库管理系统,它使用图形理论来表示数据关系。这种数据库与传统的关系型数据库不同,它更适合处理高度互联的数据结构。 基本概念 图:在 Neo4j 中,数据以图的…