防火墙标签解决轮询错误

news2024/9/23 14:29:13

接上文(LVS实验——部署DR模式集群),以http和https为例,当在RS中同时开放80和443端口,那么默认控制是分开轮询的,这样就出现了一个轮询错乱的问题

当第一次访问80被轮询到RS2后下次访问443仍然可能会被轮询到RS2上

目录

一、实验环境

二、问题呈现

1、下载

2、LVS中设置调度

3、测试问题

三、防火墙标记解决轮询调度问题

四、测试


一、实验环境

二、问题呈现

1、下载

在RS1和RS2中安装mod_ssl并重启apache
[root@webserver1 ~]# yum install mod_ssl -y
[root@webserver1 ~]# systemctl restart httpd

[root@webserver2 ~]# yum install mod_ssl -y
[root@webserver2 ~]# systemctl restart httpd

2、LVS中设置调度

[root@lvs ~]# ipvsadm -A -t 192.168.0.50:80 -s wrr
[root@lvs ~]# ipvsadm -a -t 192.168.0.50:80 -r 192.168.0.10:80 -g -w 1
[root@lvs ~]# ipvsadm -a -t 192.168.0.50:80 -r 192.168.0.20:80 -g -w 2

[root@lvs ~]# ipvsadm -A -t 192.168.0.50:443 -s rr
[root@lvs ~]# ipvsadm -a -t 192.168.0.50:443 -r 192.168.0.10:443 -g 
[root@lvs ~]# ipvsadm -a -t 192.168.0.50:443 -r 192.168.0.20:443 -g 

3、测试问题

三、防火墙标记解决轮询调度问题

FWM:FireWall Mark

MARK target 可用于给特定的报文打标记, --set-mark value

其中:value 可为0xffff格式,表示十六进制数字借助于防火墙标记来分类报文,而后基于标记定义集群服 务:可将多个不同的应用使用同一个集群服务进行调度

在打标记做策略之前应将之前的策略清空 

[root@lvs ~]# iptables -t mangle -A PREROUTING -d 192.168.0.50 -p tcp -m multiport --dports 80,443 -j MARK --set-mark 66

[root@lvs ~]# ipvsadm -A -f 66 -s rr
[root@lvs ~]# ipvsadm -a -f 66 -r 192.168.0.10 -g
[root@lvs ~]# ipvsadm -a -f 66 -r 192.168.0.20 -g

四、测试

[root@client ~]# curl -k https://192.168.0.50
[root@client ~]# curl http://192.168.0.50; curl -k https://192.168.0.50

由此,此时的流量分布均衡,解决了轮询错乱的问题,当第一次访问443被轮询到RS2后下次访问80不会被轮询到RS2上,而是被轮询到RS1上。

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

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

相关文章

一键翻译 | 分享一个更高级、更AI的翻译插件

最近AutoGPT不是更新了嘛 我也打算搭建一个来玩玩。 不过呢,官方文档都是英文,阅读起来还是比较费劲的 之前用的翻译插件实在难用,即卡而且翻译不准 在网上找了一个新的AI翻译插件,发现贼好用,速度上很快&#xff…

鹏鼎控股:最新面试求职SHL逻辑测评笔试题库讲解及真题分享

鹏鼎控股(深圳)股份有限公司,成立于1999年4月29日,是一家专业从事印制电路板(PCB)设计、研发、制造与销售的企业。公司产品广泛应用于通讯、消费电子、汽车、服务器等多个领域,服务全球市场。鹏…

猫咪除浮毛攻略,口碑好的宠物空气净化器推荐

养猫咪的幸福与苦恼是同时存在的,一边喜爱它柔软的毛发,一边担心它乱飞的浮毛。无论是客厅、卧室还是书房,只要有猫咪活动的地方,都可能有毛发、皮屑等痕迹。铲屎官平日的清理主要是对家具、地板表面,去除可见的宠物毛…

Prometheus安装,带资源

文章目录 1.简述2.安装node_expoter3.安装redis_expoter(非必需)4.SpringBoot(非必需)5.安装prometheus6.查看prometheus的Targets7.安装grafana 资源下载-资源下载-资源下载 提取码: i97g 1.简述 样例会安装以下组件&#xff0…

C++之智能指针深入学习:从入门到精通!

简介 本文详细介绍了 C 中的 RAII 与智能指针等技术的基本概念与常用技巧。 资源管理技术:RAII 下面是对 RAII 的一个简单的介绍: 简而言之就是:RAII(Resource Acquisition Is Initialization)是一种由 C 之父 Bjar…

C#:为什么在多线程环境中操作委托是线程安全的? c的函数指针=>C#委托进化过程详解

文章目录 函数指针>委托使用委托组合委托为什么在多线程环境中操作委托是线程安全的调用带有返回值的委托调用带引用的委托 总结 函数指针>委托 typedef int (*Cal)(int, int); //定义函数指针 int Sum(int a, int b) {return a b; } int main() {int a 9, b 2, c …

【网络】网络的发展历程及其相关概念

1.什么是网络 计算机网络是指将一群具有独立功能的计算机通过通信设备以及传输媒体被互联起来的,在通信软件的支持下,实现计算机间资源共享、信息交换或协同工作的系统。计算机网络是计算机技术与通信技术紧密结合的产物,两者的迅速发展渗透形…

【数据结构】线性表(线性表的定义和基本操作)

计算机考研408-数据结构笔记本之——第二章 线性表 2.1 线性表的定义和基本操作 1 线性表的定义(数据结构三要素——逻辑结构) 线性表是具有相同数据类型的n(n≥0)个数据元素的有限序列. 其中n为表长,当n0 时线性表是一个空表。 若用L命名线性表&…

Java小白入门到实战应用教程-异常处理

Java小白入门到实战应用教程-异常处理 前言 我们这一章节进入到异常处理知识点的学习。异常是指程序在运行时遇到的一种特殊情况,它能打断了正常的程序执行流程。 而异常处理是一项至关重要的技术,它使得程序能够优雅地处理运行时错误,避免…

【Go】通过反射解析对象tag信息,实现简易ORM

反射是运行时,需要在运行时解析类型信息,编译期无法优化这些操作,因此比编译时已知类型信息的直接调用效率要低。 package mainimport ("fmt""reflect""strings" )type Person struct {Name string json:&quo…

T9打卡学习笔记

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 import tensorflow as tfgpus tf.config.list_physical_devices("GPU")if gpus:tf.config.experimental.set_memory_growth(gpus[0], True) #设置…

慢SQL优化的30个思路方案整理

文章目录 (1)索引优化(2)查询重构(3)减少数据扫描量(4)利用缓存(5)分区表(6)优化排序和分组(7)业务查询条件限…

力扣面试150 基本计算器 双栈模拟

Problem: 224. 基本计算器 &#x1f468;‍&#x1f3eb; 参考题解 Code class Solution {public int calculate(String s) {// 存放所有的数字&#xff0c;用于计算LinkedList<Integer> nums new LinkedList<>();// 为了防止第一个数为负数&#xff0c;先往 nu…

创建stm32f103c8t6基本工程

创建stm32f103c8t6基本工程 (1)桌面空白处,鼠标右键新建文件夹,重命名为工程名字 (2)打开keil5 (3)点击Project-> New uvision project (4)找到我们桌面的刚才新建的文件夹,文件名 , 起自己的工程名字的,不要用空格 , 然后点击保存 (5)选择如下芯片, 然后确定 (6)然后就会弹…

linux的ceph

ceph ceph是一个开源的&#xff0c;用c语言编写的分布式的存储系统。存储文件数据。 分布式由多台物理磁盘组成一个集群&#xff0c;在这个基础之上实现高可用&#xff0c;扩展。 ceph是一个统一的存储系统&#xff0c;同时提供块设备存储&#xff0c;文件系统存储和对象存储…

C++学习笔记05-补充知识点(问题-解答自查版)

前言 以下问题以Q&A形式记录&#xff0c;基本上都是笔者在初学一轮后&#xff0c;掌握不牢或者频繁忘记的点 Q&A的形式有助于学习过程中时刻关注自己的输入与输出关系&#xff0c;也适合做查漏补缺和复盘。 本文对读者可以用作自查&#xff0c;答案在后面&#xff0…

55 华三模拟器Server2 操作

华三模拟器Server2 操作 # /etc/config/dhcp uci set dhcp.eth2dhcp uci set dhcp.eth2.interfaceeth2 uci set dhcp.eth2.start100 uci set dhcp.eth2.limit150 uci set dhcp.eth2.leasetime12h # /etc/config/network uci set network.eth2interface uci set network.eth2.pr…

可爱萌《奥咕和秘密森林》,电脑单机游戏免费分享

《奥咕和秘密森林》是一款2D冒险游戏&#xff0c;游戏中玩家将与奥咕宝宝一起探索一个奇妙的世界。这款游戏的特点包括手绘角色和多种谜题&#xff0c;玩家可以在游戏中与激萌的小动物成为朋友&#xff0c;打败异界怪物&#xff0c;揭开未知世界的秘密。 游戏特色 探索世界&am…

宁德时代社招SHL入职测评:语言理解数字推理测评及综合测评真题、高分攻略、答题技巧

宁德时代的社招入职测评主要采用SHL的Verify系统&#xff0c;测评内容包括语言理解、数字推理、逻辑推理等部分。具体来说&#xff0c;语言理解部分包括阅读理解、逻辑填空和语句排序等题型&#xff0c;要求在限定时间内完成一定数量的题目 。数字推理部分则包括数字序列、数学…

JavaScript 数组排序

JavaScript 提供了多种对数组进行排序的方法&#xff0c;其中最常见和直接的是使用数组的 .sort() 方法。.sort() 方法可以对数组的元素进行排序&#xff0c;并返回排序后的数组。然而&#xff0c;.sort() 方法默认将数组元素转换为字符串&#xff0c;并按照字符串的 Unicode 编…