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)…...

无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...

【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
Pinocchio 库详解及其在足式机器人上的应用
Pinocchio 库详解及其在足式机器人上的应用 Pinocchio (Pinocchio is not only a nose) 是一个开源的 C 库,专门用于快速计算机器人模型的正向运动学、逆向运动学、雅可比矩阵、动力学和动力学导数。它主要关注效率和准确性,并提供了一个通用的框架&…...
C++.OpenGL (14/64)多光源(Multiple Lights)
多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...
scikit-learn机器学习
# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...
4. TypeScript 类型推断与类型组合
一、类型推断 (一) 什么是类型推断 TypeScript 的类型推断会根据变量、函数返回值、对象和数组的赋值和使用方式,自动确定它们的类型。 这一特性减少了显式类型注解的需要,在保持类型安全的同时简化了代码。通过分析上下文和初始值,TypeSc…...

实战三:开发网页端界面完成黑白视频转为彩色视频
一、需求描述 设计一个简单的视频上色应用,用户可以通过网页界面上传黑白视频,系统会自动将其转换为彩色视频。整个过程对用户来说非常简单直观,不需要了解技术细节。 效果图 二、实现思路 总体思路: 用户通过Gradio界面上…...