LVS最终奥义之DR直接路由模式

1 LVS-DR(直接路由模式)

1.1 LVS-DR模式工作过程

1.客户端通过VIP将访问请求报文(源IP为客户端IP,目标IP为VIP)发送到调度器 2.调度器通过调度算法选择最适合的节点服务器并重新封装数据报文(将源mac地址改为调度器的mac地址,目的mac地址改为节点服务器的mac地址,再通过交换机转发请求给节点服务器) 3.节点服务器收到请求报文后,确认目的mac和目的IP无误后,解封装后并送到应用层进行处理。 4.节点服务器在返回响应报文前,会先重新封装报文(源IP为VIP,目的IP为客户端IP),再讲响应报文通过lO接口传送到物理网卡,再通过物理网卡发送给客户端。 LVS-DR模式的部署: 1.布置NFS共享服务器 2.部署web节点服务器,再lo:0接口配置VIP,修改内核参数arp_ignore=1、arp_announce=2,提那家路由route add -host <VIP> dev lo:0 3.部署调度器,在ensXX:0(在物理网卡上设置)接口配置VIP,修改内核参数关闭IP路由转发和UCMP重定向功能 ip_forward=0、send_redirects=0,安装ipvsadm工具,添加虚拟服务器和真实服务器的相关配置,使用-g选项选择DR模式 4.客户端访问VIP做测试 注:如果需要跨网段通信,调度器和节点服务器的默认网关要指向网关路由器的网关接口地址

net.ipv4.conf.lo.arp_ignore = 1 节点服务器只相应目的的IP为物理网卡IP的APR请求
net.ipv4.conf.lo.arp_announce = 2 节点服务器不适用IP包的源IP(VIP)来作为ARP请求报文的源IP地址,二采用发送接口的IP来作为ARP请求报文的源IP地址

1.2 数据包流向分析

(1)客户端发送请求到 Director Server(负载均衡器),请求的数据报文(源 IP 是 CIP,目标 IP 是 VIP)到达内核空间。
(2)Director Server 和 Real Server 在同一个网络中,数据通过二层数据链路层来传输。
(3)内核空间判断数据包的目标IP是本机VIP,此时IPVS(IP虚拟服务器)比对数据包请求的服务是否是集群服务,是集群服务就重新封装数据包。修改源 MAC 地址为 Director Server 的 MAC地址,修改目标 MAC 地址为 Real Server 的 MAC 地址,源 IP 地址与目标 IP 地址没有改变,然后将数据包发送给 Real Server。
(4)到达 Real Server 的请求报文的 MAC 地址是自身的 MAC 地址,就接收此报文。数据包重新封装报文(源 IP 地址为 VIP,目标 IP 为 CIP),将响应报文通过 lo 接口传送给物理网卡然后向外发出。
(5)Real Server 直接将响应报文传送到客户端。

1.3 DR模式的特点

(1)Director Server 和 Real Server 必须在同一个物理网络中。
(2)Real Server 可以使用私有地址,也可以使用公网地址。如果使用公网地址,可以通过互联网对 RIP 进行直接访问。
(3)Director Server作为群集的访问入口,但不作为网关使用。
(4)所有的请求报文经由 Director Server,但回复响应报文不能经过 Director Server。
(5)Real Server 的网关不允许指向 Director Server IP,即Real Server发送的数据包不允许经过 Director Server。
(6)Real Server 上的 lo 接口配置 VIP 的 IP 地址。

2 LVS-DR模式部署实操

2.1 实验设定

DR服务器:
负载调度器地址:192.168.111.6
VIP地址:192.168.111.188
web1服务器:192.168.111.7
web2服务器:192.168.111.8
客户端主机:192.168.111.5

2.2 实验步骤

配置DR服务器的负载调度器并安装ipvsadm工具

调整proc的相应参数,由于 LVS 负载调度器和各节点需要共用 VIP 地址,需要关闭 icmp 的重定向,不充当路由器。

配置虚拟IP地址(VIP地址)

配置负载分配策略,先清除策略

配置共享服务器,安装rpcbind和nfs并启动,新建共享目录并设劝

配置共享服务配置

重启服务并发布

配置web1服务器

此地址仅用作发送 Web响应数据包的源地址,并不需要监听客户机的访问请求(改由调度器监听并分发)。因此使用虚接口 lo∶0 来承载 VIP 地址,并为本机添加一条路由记录,将访问 VIP 的数据限制在本地,以避免通信紊乱。

调整内核的 ARP 响应参数以阻止更新 VIP 的 MAC 地址,避免发生冲突

安装rpcbind进行,进行nfs共享目录挂载

同样操作配置web2
测试lvs群集是否成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/258165.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

第80讲:GTID全局事务标识符的基本概念以及在Binlog中应用GTID

文章目录 1.GTID的基本概念1.1.为什么要引入GTID1.2.什么是GTID 2.开启GTID全局事务标识符的功能3.模拟产生Binlog日志观察开启GTID功能的区别3.1.模拟产生Binlog日志3.2.观察Binlog日志中的事件信息3.2.观察节点状态有什么变化3.3.观察Binlog日志会有什么变化 4.使用GTID来截取…

计算机基础,以及实施运维工程师介绍

目录 一.实施&#xff0c;运维工程师介绍 1.什么是实施工程师&#xff1f; 实施工程师职责 2.什么是运维工程师&#xff1f; 运维工程师职责 3.实施运维需要的技术 数据库 操作系统 网络 服务器 软件 硬件 网络 二.计算机介绍 CPU 存储器 io 总线 主板 三.操…

韧性生长 共话未来|艾诗、罗曼诺在第二届广州国际品牌节喜获两项殊荣

韧性生长 共话未来&#xff5c;维布络集团旗下品牌艾诗、罗曼诺在第二届广州国际品牌节喜获两项殊荣 12月15日&#xff0c;在广东省市场监督管理局、广州市市场监督管理局、广州市商务局、中国广告协会、中国出版集团东方出版中心的指导下&#xff0c;由广州国际品牌节组委会主…

Tomcat为什么要重写类加载器?

文章目录 一、双亲委派机制二、分析1、Tomcat需要隔离性2、Tomcat需要热替换3、打破双亲委派机制 三、Tomcat类加载器1、拓展类加载器2、工作原理 四、总结 一、双亲委派机制 首先了解下双亲委派机制&#xff0c;大致过程如下&#xff1a; 简单来说&#xff0c;就是加载class…

Vue的脚手架

脚手架配置 脚手架文档&#xff1a;Vue CLI npm config set registry https://registry.npm.taobao.org vue.config.js配置选项&#xff1a; 配置参考 | Vue CLI ref选项 ref和id类似&#xff0c;给标签打标识。 document.getElementById(btn); this.$ref.btn; 父子组…

深度学习或机器学习的模型部署相关的初步了解及分析

机器学习-深度学习 部署相关资料文档 这是上班之后的第一个文档&#xff0c;由于项目原因需要去了解一些和模型部署相关的知识&#xff0c;所以就简单了解了一下相应的部署引擎和框架&#xff0c;也是刚刚开始学习&#xff0c;如果有什么写的不对的欢迎大家交流&#xff0c;看…

Git 储藏(stash)用法

储藏的基本用法 保存当前的更改 1、查看储藏 git stash list2、更改保存到一个储藏中&#xff1a; git stash save "info"其中&#xff0c;“info” 是可选的注释信息&#xff0c;可以简要描述这个储藏的内容。 3、恢复之前保存的更改 可以使用下面的命令将之前…

微信小程序动态导航栏(uniapp + vant)

本文使用到vant的van-tabbar组件来实现 一、uniapp整合vant ui vant小程序版本&#xff1a;https://vant-contrib.gitee.io/vant-weapp/#/home 注&#xff1a;vant并没有uniapp的版本&#xff0c;所以此处是引入小程序版本的ui 1. 下载vant编译后代码 https://github.com/you…

新手上路:自动驾驶行业快速上手指南

文章目录 1.自动驾驶技术的发展1.1 工业革命驱动自动驾驶技术发展1.2 想象中的未来&#xff1a;科幻作品中的自动驾驶汽车1.3 自动驾驶技术萌芽与尝试1.4 百花争鸣&#xff1a;自动驾驶科技巨头与创业公司并进 2.个人开发者&#xff0c;如何玩转自动驾驶&#xff1f;2.1 灵活易…

开源 AI 研发提效方案 Unit Mesh 总结

回顾 2023 年&#xff0c;可以明显地看到生成式 AI 带给软件工程带来的新思考&#xff0c;每个组织也在探索结合生成式 AI 的可能性。Unit Mesh (https://github.com/unit-mesh) GitHub 组织正是基于我与我的同事的研究&#xff0c;所构建的一系列围绕于生成式 AI 应用于软件研…

基于ssm国外摇滚乐队交流和周边售卖系统论文

摘 要 互联网发展至今&#xff0c;无论是其理论还是技术都已经成熟&#xff0c;而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播&#xff0c;搭配信息管理工具可以很好地为人们提供服务。针对国外摇滚乐队交流和周边售卖信息管理混乱&#xff0c;出错率高&…

CUMT-Java复习--抽象类和接口

目录 一、抽象类 1、定义抽象类 2、实现一个抽象类 二、接口 1、定义接口 2、实现接口 3、接口继承 4、接口和抽象类的相似之处 5、接口和抽象类的区别 三、instanceof关键字 一、抽象类 1、定义抽象类 抽象类是对于一类相同的具体概念的抽象。 抽象类和抽象方法都…

密码强度的提升与网络安全意识

随着互联网的快速发展&#xff0c;网络安全问题日益突出&#xff0c;其中密码安全作为网络世界的第一道防线&#xff0c;其重要性不言而喻。本文将从密码强度的提升和网络安全意识普及两个方面&#xff0c;探讨如何在日益复杂的网络环境中保障个人信息安全。 随机密码生成器 |…

【2023 英特尔On技术创新大会直播 |我与英特尔的初次相遇】—— AIPC探索下一代的物联网时代

&#x1f308;个人主页: Aileen_0v0 &#x1f525;系列专栏:英特尔技术学习专栏 &#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 目录 硅谷经济的发展与挑战 Intel开发者云与AI技术的应用 AI压缩技术的发展与应用 英特尔与阿里巴巴在AI领域的合作 AIPC时代的…

RocketMQ系统性学习-RocketMQ原理分析之消息的可靠性以及有序性如何保证

文章目录 消息的可靠性如何保证&#xff1f;消息的有序性如何保证&#xff1f; 消息的可靠性如何保证&#xff1f; 要保证消息的可靠性&#xff0c;先来思考一下从哪些方面保证呢&#xff1f; 这要看消息的生命周期&#xff0c;既然保证可靠性&#xff0c;那么就是要保证 A 发…

理解并在虚拟化策略中实施 QEMU

● QEMU 是一种流行的开源机器模拟器。 ● QEMU 支持硬件虚拟化扩展&#xff08;Intel VT-x 和 AMD-V&#xff09;。 ● QEMUCare 为基于 QEMU 的虚拟化系统提供实时修补解决方案。 虚拟化现已成为现代 IT 基础设施的支柱&#xff0c;使组织能够实现前所未有的灵活性、可扩展…

pycharm运行正常,但命令行执行提示module不存在的多种解决方式

问题描述 在执行某个测试模块时出现提示&#xff0c;显示自定义模块data不存在&#xff0c;但是在PyCharm下运行正常。错误信息如下&#xff1a; Traceback (most recent call last):File "/run/channelnterface-autocase/testcases/test_chanel_detail.py", line 2…

直播种类之VR全景直播

VR全景直播是一种结合虚拟现实技术和直播的全新体验。通过全景相机拍摄&#xff0c;观众可以身临其境地感受直播现场的氛围和真实感&#xff0c;提供逼真的观看体验。 VR全景直播的优势在于: 1.身临其境的观看体验:观众可以像真的在现场一样&#xff0c;通过虚拟现实设备探索…

基于python的leetcode算法介绍之递归

文章目录 零 算法介绍一 简单示例 辗转相除法Leetcode例题与思路[509. 斐波那契数](https://leetcode.cn/problems/fibonacci-number/)解题思路&#xff1a;题解&#xff1a; [206. 反转链表](https://leetcode.cn/problems/reverse-linked-list/)解题思路&#xff1a;题解&…

OpenHarmony开发环境快速搭建(无需命令行)

一. 搭建Windows环境 在嵌入式开发中&#xff0c;很多开发者习惯于使用Windows进行代码的编辑&#xff0c;比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段&#xff0c;大部分的开发板源码还不支持在Windows环境下进行编译&#xff0c;如Hi3861、H…