部署 LVS-DR 群集

本章内容:
  • -了解LVS-DR群集的工作原理
  • -会构建LVS-DR负载均衡群集
2.1 LVS-DR 集群
LVS-DR Linux Virtual Server Director Server )工作模式,是生产环境中最常用的一
种工作模式。
2.1.1 LVS-DR 工作原理
LVS-DR 模式, Director Server 作为群集的访问入口,不作为网关使用,节点 Director
Server Real Server 需要在同一个网络中,返回给客户端的数据不需要经过 Director
Server 。为了响应对整个群集的访问, Director Server Real Server 都需要配置 VIP 地址,
工作原理如图 2.1 所示。
2.1 DR 模式工作原理
2.1.2 .数据包流向分析
以下为数据包流向分析步骤。
1. 客户端发送请求到 Director Server, 请求的数据报文(源 IP CIP, 目标 IP VIP
到达内核空间。
2. Director Server Real Server 在同一个网络中,数据通过二层数据链路层来传输。
3. 内核空间判断数据包的目标 IP 是本机 VIP ,此时 IPVS 比对数据包请求的服务是否
是集群服务,是集群服务就重新封装数据包。修改源 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 直接将响应报文传送到客户端。
2.1.3 LVS-DR 模式特点
下面是 LVS-DR 模式的特点:
Director Server Real Server 必须在同一个物理网络中。
Real Server 可以使用私有地址,也可以使用公网地址。如果使用公网地址,可以通过
互联网对 RIP 进行直接访问。
所有的请求报文经由 Director Server ,但回复响应报文不能经过 Director Server
Real Server 的网关不允许指向 Director Server IP ,即 不允许数据包经过 Director S
erver
Real Server 上的 lo 接口配置 VIP IP 地址。
2.2 案例:直接路由模式( LVS-DR
2.2.1 .准备案例环境
DR 模式的群集中, LVS 负载调度器作为群集的访问入口,但不作为网关使用;服
务器池中的所有节点都各自接入 Internet ,发送给客户机的 Web 响应数据包不需要经过
LVS 负载调度器,如图 2.2 所示。
这种方式入站、出站访问数据被分别处理,因此 LVS 负载调度器和所有的节点服务器
都需要配置 VIP 地址,以便响应对整个群集的访问。考虑到数据存储的安全性,共享存储
设备会放在内部的专用网络中。
2.2.2 .配置负载调度器
下面是 配置负载调度器的具体步骤。
1. 配置虚拟 IP 地址( VIP
采用虚接口的方式( ens33 0 ),为网卡 ens33 绑定 VIP 地址,以便响应群集访问。
[root@zw ~]# cd /etc/sysconfig/network-scripts/
[root@zw network-scripts]# cp ifcfg-ens33 ifcfg-ens33:0
[root@zw network-scripts]# vim ifcfg-ens33:0
NAME=ens33:0
DEVICE=ens33:0
ONBOOT=yes
IPADDR=192.168.248.100
NETMASK=255.255.255.255
[root@zw network-scripts]# ifup ifcfg-ens33:0
[root@zw network-scripts]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.248.78  netmask 255.255.255.0  broadcast 192.168.248.255inet6 fe80::3a56:a61b:f0f3:fd09  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:d9:07:16  txqueuelen 1000  (Ethernet)RX packets 1342  bytes 143729 (140.3 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 1055  bytes 126013 (123.0 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0ens33:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.248.100  netmask 255.255.255.255  broadcast 192.168.248.100ether 00:0c:29:d9:07:16  txqueuelen 1000  (Ethernet)lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Local Loopback)RX packets 0  bytes 0 (0.0 B)RX errors 0  dropped 0  overruns 0  frame 0TX packets 0  bytes 0 (0.0 B)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255ether 52:54:00:24:31:78  txqueuelen 1000  (Ethernet)RX packets 0  bytes 0 (0.0 B)RX errors 0  dropped 0  overruns 0  frame 0TX packets 0  bytes 0 (0.0 B)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0[root@zw network-scripts]# 
2. 调整/proc响应参数
  • 对于 DR 群集模式来说,由于 LVS 负载调度器和各节点需要共用 VIP 地址,应该关闭 Linux 内核重定向参数响应
  • 服务器不是一台路由器,那么它不会发送重定向,所以可以关闭该功能
[root@zw network-scripts]# vim /etc/sysctl.conf net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0[root@zw network-scripts]# sysctl -p
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
[root@zw network-scripts]#
3. 配置负载分配策略
[root@zw ~]# modprobe ip_vs
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port Forward Weight ActiveConn InActConn
[root@zw ~]# yum -y install ipvsadm
[root@zw ~]# ipvsadm -v
ipvsadm v1.27 2008/5/15 (compiled with popt and IPVS v1.2.1)
[root@zw ~]# [root@zw ~]# ipvsadm -C
[root@zw ~]# ipvsadm -a -t 192.168.248.78:80 -r 192.168.248.88:80 -g -w 1
[root@zw ~]# ipvsadm-save > /etc/sysconfig/ipvsadm
[root@zw ~]# cat /etc/sysconfig/ipvsadm
-A -t www.test.com:http -s rr
-a -t www.test.com:http -r 192.168.248.88:http -g -w 1
[root@zw ~]# systemctl start ipvsadm.service
[root@zw ~]# systemctl enable ipvsadm.service
4. 配置存储服务器192.168.248.215
[root@uuu ~]# yum -y install nfs-utils rpcbind
[root@uuu ~]# mkdir -p /opt/wwwroot
[root@uuu ~]# vim /etc/exports
/opt/wwwroot 192.168.248.0/24(rw,sync,no_root_squash)
[root@uuu ~]# systemctl restart rpcbind
[root@uuu ~]# systemctl restart nfs
5. 配置节点服务器192.168.8.88
[root@uuu ~]# yum -y install httpd
[root@uuu ~]# cd /etc/sysconfig/network-scripts/
[root@uuu network-scripts]# cp ifcfg-lo ifcfg-lo:0
[root@uuu network-scripts]# vim ifcfg-lo:0
DEVICE=lo:0
IPADDR=192.168.248.78
NETMASK=255.255.255.255
ONBOOT=yes
[root@uuu ~]# yum install -y httpd
[root@uuu ~]# cd /etc/sysconfig/network-scripts/
[root@uuu network-scripts]# cp ifcfg-lo ifcfg-lo:0
[root@uuu network-scripts]# vim ifcfg-lo:0
[root@uuu network-scripts]# ifup lo:0
[root@uuu network-scripts]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.248.88  netmask 255.255.255.0  broadcast 192.168.248.255inet6 fe80::fa3a:33a0:cd48:1429  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:89:c9:b0  txqueuelen 1000  (Ethernet)RX packets 2581  bytes 1205845 (1.1 MiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 1446  bytes 184056 (179.7 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Local Loopback)RX packets 0  bytes 0 (0.0 B)RX errors 0  dropped 0  overruns 0  frame 0TX packets 0  bytes 0 (0.0 B)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo:0: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 192.168.248.78  netmask 255.255.255.255loop  txqueuelen 1000  (Local Loopback)virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255ether 52:54:00:30:60:00  txqueuelen 1000  (Ethernet)RX packets 0  bytes 0 (0.0 B)RX errors 0  dropped 0  overruns 0  frame 0TX packets 0  bytes 0 (0.0 B)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0[root@uuu network-scripts]# 
[root@uuu network-scripts]# vim /etc/sysctl.conf
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2[root@uuu network-scripts]# sysctl -p
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.arp_ignore = 1
net.ipv4.conf.default.arp_announce = 2
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
[root@uuu network-scripts]# 
[root@uuu ~]# showmount -e 192.168.248.215
Export list for 192.168.248.215:
/opt/wwwroot 192.168.248.0/24
[root@uuu ~]# mount 192.168.248.215:/opt/wwwroot /var/www/html
[root@uuu ~]# vim /etc/fstab 
192.168.248.215:/opt/wwwroot           /var/www/html/     nfs   defaults,_netdev 0 0
[root@uuu ~]# systemctl start httpd.service 
[root@uuu ~]# systemctl enable httpd.service

然后就可以测试了

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Idea Community社区版,新建module不使用maven archetype

最近使用 idea 社区版&#xff0c;新建module时始终要选择maven archetype&#xff0c;如下图&#xff1a; 后来发现需要手动切换左侧的菜单栏&#xff0c;在"New Module"上点击一下&#xff0c;就可以了&#xff1a; 记录一下&#xff0c;方便以后查阅

模板设计模式-实例

在软件开发中&#xff0c;有时也会遇到类似的情况&#xff0c;某个方法的实现需要多个步骤&#xff08;类似“请客”&#xff09;&#xff0c;其 中有些步骤是固定的&#xff08;类似“点单”和“买单”&#xff09;&#xff0c;而有些步骤并不固定&#xff0c;存在可变性&…

性能测试分析案例-使用动态追踪定位性能瓶颈

所谓动态追踪&#xff0c;就是在系统或者应用程序正常运行的时候&#xff0c;通过内核中提供的探针&#xff0c;来动态追踪它们的行为&#xff0c;从而辅助排查出性能问题的瓶颈。 使用动态追踪&#xff0c;可以在不修改代码、不重启服务的情况下&#xff0c;动态了解应用程序或…

点的旋转变换

情形一&#xff08;active or alibi transformation主动变换&#xff09; 在坐标系 x − y x-y x−y中&#xff0c;点 p 1 p_1 p1​逆时针旋转 α \alpha α后到达点 p 2 p_2 p2​。 p 1 p_1 p1​在 x − y x-y x−y中的表示与 p 2 p_2 p2​在 x ′ − y ′ x-y x′−y′中的表…

数据结构初探:揭开数据结构奥秘

&#x1f308;个人主页&#xff1a;聆风吟 &#x1f525;系列专栏&#xff1a;数据结构、算法模板、汇编语言 &#x1f516;少年有梦不应止于心动&#xff0c;更要付诸行动。 文章目录 &#x1f4cb;前言一. 数组结构起源二. 基本概念和术语2.1 数据2.2 数据元素2.3 数据项2.4 …

Linux第27步_在虚拟机中安装“设备树编译工具”

设备树英文名字叫做Device tree&#xff0c;用来描述板子硬件信息的&#xff0c;比如开发板上的 CPU有几个核 、每个CPU核主频是多少&#xff0c;IIC、SPI这些外设的寄存器范围是多少&#xff0c;IIC接口下都挂了哪些设备等等。 设备树文件是一种文本格式的文件&#xff0c;方…

小程序中滚动字幕

需求&#xff1a;在录像时需要在屏幕上提示字幕&#xff0c;整体匀速向上滚动 html部分&#xff1a; <view class"subtitles_main"><view style"font-size:34rpx;color: #fff;line-height: 60rpx;" animation"{{animation}}">人生的…

React16源码: React中的schedule调度整体流程

schedule调度的整体流程 React Fiber Scheduler 是 react16 最核心的一部分&#xff0c;这块在 react-reconciler 这个包中这个包的核心是 fiber reconciler&#xff0c;也即是 fiber 结构fiber的结构帮助我们把react整个树的应用&#xff0c;更新的流程&#xff0c;能够拆成每…

对git中tag, branch的重新理解

1. 问题背景 项目中之前一个tag&#xff08;v1.0&#xff09;打错了&#xff0c;想删除它&#xff0c;但我们从此tag v1.0中迁出新建分支Branch_v1.0,在此分支下修复了bug&#xff0c;想重新打一个tag v1.0&#xff0c;原来的tag v1.0可以删除掉吗&#xff1f; 错误的理解&am…

Mysql如何优化慢查询

如何优化慢查询 慢 SQL 的优化&#xff0c;主要从两个方面考虑&#xff0c;SQL 语句本身的优化&#xff0c;以及数据库设计的优化。 1、避免不必要的列 覆盖索引会导致回表&#xff0c;且增大了IO 2、分页优化 深分页解决方案 使用子查询in 使用连接表 left join 使用游标&a…

计算机毕业设计-----SSH计算机等级考试报名系统

项目介绍 该项目分为前后台&#xff0c;分为管理员与普通用户两种角色&#xff0c;前台为普通用户登录&#xff0c;后台为管理员登录&#xff1b; 管理员角色包含以下功能&#xff1a; 管理员登录,修改个人密码&#xff0c;院系信息管理&#xff0c;注册用户管理&#xff0c;留…

JAVA数组以及小练习

目录 数组的概述和静态初始化 数组的地址值和元素访问 数组的遍历 数组的动态初始化 数组练习 数组的概述和静态初始化 package 数组;public class array1 {public static void main(String[] args){//格式//静态初始化//数据类型 [] 数组名 new 数组类型[]{元素1&#xf…

java期末复习题

1.任何一个Java程序都默认引入一个包&#xff0c;这个包的名字是________________。 正确答案&#xff1a;java.lang Java程序默认引入的包是java.lang包。这个包是Java语言的核心&#xff0c;它提供了Java中的基础类&#xff0c;包括基本Object类、Class类、String类、基本类…

【模块系列】STM32BMP280

前言 最进想练习下I2C的应用&#xff0c;手上好有BMP280也没用过&#xff0c;就看着机翻手册和原版手册&#xff0c;开始嘎嘎写库函数了。库的命名应该还1是比较规范了吧&#xff0c;就是手册对于最终值的计算方式很迷糊&#xff0c;所以现在也不能保证有可靠性啊&#xff0c;大…

磁盘直通卡/阵列卡讲解

服务器SAS卡 ① 华为SR120 (LSI 2308 6Gb SAS直通卡),适合数据安全等级不高或 更换简单 硬盘即插即用 ② 华为SR320 (LSI 2208 6Gb SAS阵列卡 带512M缓存),适合对数据安全等级要求高或追求磁盘性能的客户 推荐上阵列卡 ③ 华为SR130 (LSI 3008 12Gb SAS直通卡),适合数据安全等…

【Spring 篇】深入探索:Spring集成Web环境的奇妙世界

嗨&#xff0c;亲爱的小白们&#xff01;欢迎来到这篇有关Spring集成Web环境的博客。如果你曾对如何在Spring中构建强大的Web应用程序感到好奇&#xff0c;那么这里将为你揭示Web开发的神秘面纱。我们将用情感丰富、语句通顺的文字&#xff0c;以小白友好的方式&#xff0c;一探…

Mac M2芯片pycharm配置conda python环境

Mac M2芯片pycharm配置conda python环境 详细步骤如下 1、pycharm界面右上方的小齿轮⚙️&#xff0c;进入Setting…状态 2、进入setting界面后&#xff0c;选择左边栏的Project-->python Interpreter,然后选择右边的Add Interpreter 3、进入Add Interpreter后&#xff0c…

竞赛保研 基于深度学的图像修复 图像补全

1 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于深度学的图像修复 图像补全 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff01; &#x1f9ff; 更多资料, 项目分享&#xff1a; https://gitee.com/dancheng-se…

内网穿透远程访问

内网穿透远程访问 参考文章&#xff1a;https://blog.csdn.net/qyj19920704/article/details/135528078#comments_30865140 cpolar概述 使用了 cpolar 生成的隧道&#xff0c;其公网地址是随机生成的。 优势在于建立速度快&#xff0c;可以立即使用。然而&#xff0c;它的缺…

selenium模拟浏览器查询导出参考文献

通过使用Selenium和BeautifulSoup&#xff0c;在CNKI网站上&#xff0c;以"知识图谱"为关键词&#xff0c;通过自动化工具在搜索页面提取相关文章信息。点击清楚并全选进行文献导出&#xff0c;随后从导出页面和管理导出的页面提取参考文献。 浏览器及WebDriver下载…