LVS ipvsadm命令的使用(二)
目录
上篇:负载均衡集群(一)-CSDN博客
命令参数概述
调度算法
基本命令
1. 添加虚拟服务器
2. 添加真实服务器
3. 删除虚拟服务器
4. 删除真实服务器
5. 列出当前配置
6. 修改服务器权重
7.保存规则
8. 清除所有配置
进行增加虚拟和真实服务器操作示例
ipvsadm
是 Linux 系统中用于配置和管理 IP Virtual Server(IPVS)的命令行工具。IPVS 是 Linux 内核中的一个模块,用于实现网络负载均衡,它可以在四层(传输层)进行负载均衡,支持 TCP、UDP 等协议。以下是 ipvsadm
常用的命令选项和功能总结:
LVS-server安装lvs管理软件
yum -y install ipvsadm
程序包:ipvsadm(LVS管理工具)
主程序:/usr/sbin/ipvsadm
规则保存工具:/usr/sbin/ipvsadm-save > /path/to/file
配置文件:/etc/sysconfig/ipvsadm-config
命令参数概述
-
基本命令
-A
,--add-service
: 添加一个新的虚拟服务器或者一个新的服务组。-D
,--delete-service
: 删除一个虚拟服务器或者服务组。-E
,--edit-service
: 编辑一个现有的虚拟服务器或者服务组。-L
,--list
: 列出所有的虚拟服务器和服务组。-C
,--clear
: 清除所有 IPVS 配置。-R
,--replace-service
: 替换现有的虚拟服务器或者服务组。
-
虚拟服务器相关
-t
,--virtual-server
: 指定虚拟服务器的 IP 地址和端口。-s
,--scheduler
: 指定调度算法(Scheduler),如rr
(Round Robin)、wrr
(Weighted Round Robin)、lc
(Least Connection)等。-p
,--protocol
: 指定虚拟服务器使用的协议,如 TCP 或 UDP。
-
后端服务器相关
-r
,--real-server
: 指定后端服务器的 IP 地址和端口。-m
,--method
: 指定后端服务器的调度算法,通常与-a
或-A
一起使用。-w
,--weight
: 设置后端服务器的权重,通常与-a
或-A
一起使用。
-
其他参数
-Z
,--zero
: 将统计信息归零(清空连接计数器)。-G
,--get
: 获取指定服务的详细信息。-U
,--update
: 更新指定服务的详细信息。
调度算法
ipvsadm
支持多种调度算法,以下是一些主要算法:
- rr (轮询调度):
-s rr
- wrr (加权轮询调度):
-s wrr
- lc (最小连接调度):
-s lc
- wlc (加权最小连接调度):
-s wlc
- sh (源地址散列调度):
-s sh
- dh (目的地址散列调度):
-s dh
基本命令
1. 添加虚拟服务器
添加一个新的虚拟服务器:
ipvsadm -A -t [虚拟IP]:[端口] -s [调度算法]
例:
ipvsadm -A -t 192.168.226.10:80 -s wrr
2. 添加真实服务器
向虚拟服务器添加一个真实服务器:
ipvsadm -a -t [虚拟IP]:[端口] -r [真实IP]:[端口] -m
例:
ipvsadm -a -t 192.168.226.10:80 -r 192.168.226.2:80 -m
3. 删除虚拟服务器
删除一个虚拟服务器:
ipvsadm -D -t [虚拟IP]:[端口]
例:
ipvsadm -D -t 192.168.226.10:80
4. 删除真实服务器
从虚拟服务器删除一个真实服务器:
ipvsadm -d -t [虚拟IP]:[端口] -r [真实IP]:[端口]
例:
ipvsadm -d -t 192.168.226.10:80 -r 192.168.226.2:80
5. 列出当前配置
显示当前 IPVS 配置:
ipvsadm -L -n
输出示例:
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port Forward Weight ActiveConn InActConn
TCP 192.168.226.10:80 wrr-> 192.168.226.2:80 Masq 1 0 0-> 192.168.226.3:80 Masq 1 0 0
6. 修改服务器权重
修改虚拟服务器算法:
ipvsadm -E -t 192.168.226.10:80 -s lc
修改真实服务器的权重:
ipvsadm -e -t [虚拟IP]:[端口] -r [真实IP]:[端口] -w [权重]
例:
ipvsadm -e -t 192.168.226.10:80 -r 192.168.226.2:80 -w 3
7.保存规则
1.保存到文件
ipvsadm-save > /etc/sysconfig/ipvsadm
#当然该命令也可以自定义保存规则的位置2.有指定的配置文件后再保存可以直接用即可
ipvsadm -S
8. 清除所有配置
清除当前所有的 IPVS 配置:
ipvsadm -C
进行增加虚拟和真实服务器操作示例
添加并配置一个虚拟服务器与真实服务器练习:
是通过在ipvsadm中添加一个虚拟服务器IP,然后再这个虚拟服务器IP名下 管理多个真实的后端服务器。
1.添加虚拟服务器(使用加权轮询调度算法):
ipvsadm -A -t 10.36.178.100:80 -s wrr
2.添加两个真实服务器到虚拟服务器:
ipvsadm -a -t 10.36.178.100:80 -r 192.168.226.2:80 -mipvsadm -a -t 10.36.178.100:80 -r 192.168.226.3:80 -m
3.查看配置:
ipvsadm -L -n
4.修改真实服务器的权重:
ipvsadm -e -t 10.36.178.100:80 -r 192.168.226.2:80 -w 3
5.删除一个真实服务器:
ipvsadm -d -t 10.36.178.100:80 -r 192.168.226.3:80
6.删除虚拟服务器:
ipvsadm -D -t 10.36.178.100:80
7.清除所有配置:
ipvsadm -C
相关文章:
LVS ipvsadm命令的使用(二)
目录 上篇:负载均衡集群(一)-CSDN博客 命令参数概述 调度算法 基本命令 1. 添加虚拟服务器 2. 添加真实服务器 3. 删除虚拟服务器 4. 删除真实服务器 5. 列出当前配置 6. 修改服务器权重 7.保存规则 8. 清除所有配置 进行增加虚拟…...

Java面向对象-接口
Java面向对象-接口 一、JDK1.8之前二、接口的作用三、JDK1.8之后,新增非抽象方法四、静态方法 一、JDK1.8之前 1、类是类,接口是接口,它们是同一层次的概念 2、接口中没有构造器 3、接口如何声明:interface 4、在jdk1.8之前&…...
怎么不使用springboot Helper或Spring Initializr来创建spring项目
1. 创建项目目录结构 首先,创建项目的基本目录结构。一个典型的 Maven 项目结构如下: my-spring-project ├── src │ ├── main │ │ ├── java │ │ │ └── com │ │ │ └── example │ │ │ └…...

STM32CubeMX配置-RTC周期唤醒
一、简介 MCU为STM32G070,采用内部时钟32KHZ,配置为周期6s唤醒,调用回调函数,进行喂狗操作。 二、配置 初始时间、日期、周期唤醒时间配置。 开启周期唤醒中断 三、生成代码 调用回调函数,进行喂狗操作。 //RTC唤醒回…...
js如何添加新元素到数组中
1.push方法 push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。这是向数组添加元素的最常用方法。 let arr [1, 2, 3]; arr.push(4); // 向数组末尾添加元素4 console.log(arr); // 输出: [1, 2, 3, 4] 2.unshift方法 unshift() 方法可向数组的…...
Python变量和基本数据类型
变量和基本数据类型 变量是什么? 变量是存储在内存中的值,这就意味着在创建变量时会在内存中开辟一个空间。 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。 因此,变量可以指定不同…...
嵌入式数据库_1.嵌入式数据库的定义及特点和分类
1.嵌入式数据库的定义及特点 1.1定义 嵌入式数据库的名称来自其独特的运行模式。这种数据库嵌入到了应用程序进程中,消除了与客户机服务器配置相关的开销。嵌入式数据库实际上是轻量级的,在运行时,它们需要较少的内存。它们是使用精…...
新人学习笔记之(变量)
一、什么是变量 1.变量是存储数据的小盒子,不是里面的数据 2.经常发生改变的数据 二、变量的定义格式 1.数据类型 变量名; 数据类型:为盒子中存储的数据,加入类型【限制】 变量名:为盒子起的名字 分号:语句的结束 三…...

Windows修改CMD窗口编码为UTF-8
windows下的cmd的默认编码是GBK编码,有时可能造成乱码问题,下面是我找到的两种更换编码方式为UTF-8的方法。 1、临时修改 (1)先进入cmd命令窗口(快捷键win键R) (2)直接输入“chcp…...
os实训课程模拟考试(1~7)
操作系统的基本功能和设计目标 1、 操作系统是一组 ____(单选) A、 文件管理程序 B、 资源管理程序 C、 中断处理程序 D、 设备管理程序 2、 以下哪项不是操作系统关心的主要问题?(单选) A、 管理计算机裸机 B、 设计…...
yolov10 学习笔记
目录 推理代码,source可以是文件名,路径, 预测可视化: 预测可视化加nms 训练自己的数据集, 训练一段时间报错:dill库 解决方法: 推理代码,source可以是文件名,路径…...
NAT概述
NAT概念 NAT(Network Address Translation,网络地址转换)是一种用于修改网络地址信息的技术,主要用于在路由器或防火墙上进行地址转换,以解决 IPv4 地址短缺问题、提高网络安全性以及实现私有网络与公有网络之间的通信…...

Ansys Mechanical|学习方法
Ansys Mechanical是Ansys的旗舰产品之一,涉及的学科体系全面丰富,包括的力学分支主要有理论力学,振动理论,连续介质力学,固态力学,物理力学,爆炸力学及应用力学等。 在自媒体及数字经济飞速发展…...

热门开源项目ChatTTS: 国内语音技术突破,实现弯道超车
✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…...

环形链表2证明
解法 快慢指针相遇后,其中一个指回头部,然后同步前进 代码 /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(NULL) {}* };*/ class Solution { public:ListNod…...

fetch_lfw_people()报错urllib.error.HTTPError: HTTP Error 403: Forbidden的解决方案
零、实验报告地址 计算机视觉实验二:基于支持向量机和随机森林的分类(Part one: 编程实现基于支持向量机的人脸识别分类 )-CSDN博客 一、代码报错 fetch_lfw_people()报错urllib.error.HTTPError: HTTP Error 403: Forbidden 二、报错原因 通常是由于访问权限不足导致的…...
Verilog-Behavior Level 和 RTL Level 和 GATE Level的区别
硬件设计中对硬件的描述可以具有不同的抽象级别,以Verilog为例: Behavior Level。描述的是硬件的行为,当我们在看到如下关键字时就是行为级别的代码:#,wait,while,force,release等&…...
华为OD机考题HJ1 字符串最后一个单词的长度
前言 描述 计算字符串最后一个单词的长度,单词以空格隔开,字符串长度小于5000。(注:字符串末尾不以空格为结尾) 输入描述: 输入一行,代表要计算的字符串,非空,长度小…...

C语言---------深入理解指针
目录 一、字符指针 二、指针数组: 三、数组指针: 1、定义: 2、&数组名和数组名区别: 3、数组指针的使用: 四、数组参数,指针参数: 1、一维数组传参: 2、二维数组传参&am…...

C++ 算法教程
归并排序 #include<iostream> using namespace std; template <class T> void Merge(T data[],int start,int mid,int end) {int len1 mid - start 1, len2 end - mid;int i, j, k;T* left new int[len1];T* right new int[len2];for (i 0; i < len1; i)…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...

【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...

STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...

C++ 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文全面剖析RNN核心原理,深入讲解梯度消失/爆炸问题,并通过LSTM/GRU结构实现解决方案,提供时间序列预测和文本生成…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...

HashMap中的put方法执行流程(流程图)
1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中,其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下: 初始判断与哈希计算: 首先,putVal 方法会检查当前的 table(也就…...

算法:模拟
1.替换所有的问号 1576. 替换所有的问号 - 力扣(LeetCode) 遍历字符串:通过外层循环逐一检查每个字符。遇到 ? 时处理: 内层循环遍历小写字母(a 到 z)。对每个字母检查是否满足: 与…...
Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成
一个面向 Java 开发者的 Sring-Ai 示例工程项目,该项目是一个 Spring AI 快速入门的样例工程项目,旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计,每个模块都专注于特定的功能领域,便于学习和…...