ipvs工作在内核空间,而ipvsadm工作在用户空间,是负责管理集群服务编写规则的命令行工具

ipvsadm需要手动安装。

$ yum -y install ipvsadm

ipvsadm管理命令

一、管理集群服务

1)添加集群
ipvsadm -A -t|u|f service-address [-s scheduler]

2)修改集群
ipvsadm -E -t|u|f service-address [-s scheduler]

3)删除集群
ipvsadm -D -t|u|f service-address

参数解释:
-t TCP协议集群,如[IP:PORT];
-u UDP协议集群,如[IP:PORT];
-f FWM防火墙标记,如[MARK NUMBER];
-s 调度算法,如[rr|wrr|sh|dh|lc|wlc|lblc|lblcr];

使用示例:

添加一个VIP为172.29.32.205:80的集群,调度算法为wrr加权轮询;
$ ipvsadm -A -t 172.29.32.205:80 -s wrr

修改VIP的端口为8080;
$ ipvsadm -E -t 172.29.32.205:8080 -s wrr

删除集群;
$ ipvsadm -D -t 172.29.32.205:80

添加一个VIP为172.29.32.205:80的集群,调度算法为wrr加权轮询;
$ ipvsadm -A -t 172.29.32.205:80 -s wrr

修改VIP的端口为8080;
$ ipvsadm -E -t 172.29.32.205:8080 -s wrr

删除集群;
$ ipvsadm -D -t 172.29.32.205:80

二、管理集群中的RealServer

1)添加RealServer
ipvsadm -a -t|u|f service-address -r service-address [-g|-i|-m] [-w weight]

2)修改RealServer
ipvsadm -e -t|u|f service-address -r service-address [-g|-i|-m] [-w weight]

3)删除RealServer
ipvsadm -d -t|u|f service-address -r service-address

参数解释:
-t|u|f service-address #这个地址是前面创建好的集群服务;
-r service-address 定义RealServer地址,在NAT模式中可使用端口映射;
-g 表示使用DR模型;
-i 表示使用TUN模型;
-m 表示使用NAT模型;
-w 定义权重值,如果使用加权轮询,LVS会根据权限比例分配客户端连接请 求;
-p 定义tcp超时时间,默认为120秒;
--set 900 120 300 定义tcp/tcpfin/udp的超时时间,默认为900/120/300秒;

使用示例:
添加一条RealServer,地址为172.29.32.201:80,调度模式为DR,权重为5;
$ ipvsadm -a -t 172.29.32.205:80 -r 172.29.32.201:80 -g -w 5

修改RealServer条目的端口为8080;
$ ipvsadm -e -t 172.29.32.205:80 -r 172.29.32.201:8080 -g -w 5

删除RealServer条目;
$ ipvsadm -d -t 172.29.32.205:80 -r 172.29.32.201:80

添加一条RealServer,地址为172.29.32.201:80,调度模式为DR,权重为5;
$ ipvsadm -a -t 172.29.32.205:80 -r 172.29.32.201:80 -g -w 5

修改RealServer条目的端口为8080;
$ ipvsadm -e -t 172.29.32.205:80 -r 172.29.32.201:8080 -g -w 5

删除RealServer条目;
$ ipvsadm -d -t 172.29.32.205:80 -r 172.29.32.201:80

三、查看集群状态

查看集群状态,包含RealServer条目;
$ ipvsadm -L

显示为数字格式,但必须配合-L一块使用且-L必须在-n前面,也可以合并使用,如-Ln;
$ ipvsadm -Ln

显示当前连接数;
$ ipvsadm -Lnc

显示统计数据
$ ipvsadm -Ln --stats

显示速率;
$ ipvsadm -Ln --rate

显示tcp/tcpfin/udp的会话超时时长,默认是900、120/300;
$ ipvsadm -Ln --timeout

显示进程状态;
$ ipvsadm -Ln --daemon

对集群服务做排序默认升序;
$ ipvsadm -Ln --sort

四、清空所有集群服务

$ ipvsadm -C

五、导入导出ipvsadm规则

导出ipvs规则;
$ ipvsadm -S > /PATH

导入ipvs规则;
$ ipvsadm -R < /PATH

六、查看ipvsadm版本号

$ ipvsadm --version

lvs用户空间命令ipvsadm的更多相关文章

  1. 用户空间与内核驱动的交互过程 — ioctl

    在Linux内核模块的开发过程中,经常涉及到运行在用户空间上的应用程序与内核模块进行交互,ioctl系统调用是常用的一种方式.本文并不涉及vlan的具体原理,仅通过vconfig与vlan内核模块进行 ...

  2. strace 命令是一种强大的工具,它能够显示所有由用户空间程序发出的系统调用。

    strace 命令是一种强大的工具,它能够显示所有由用户空间程序发出的系统调用. http://bbs.51cto.com/thread-1106891-1.html

  3. 用户空间&内核空间学习 & top命令 & time命令

    参考了这篇文章 http://www.ruanyifeng.com/blog/2016/12/user_space_vs_kernel_space.html 简单说,Kernel space 是 Li ...

  4. LVS集群的ipvsadm命令用法

    准备一台Linux服务器,安装ipvsadm软件包,练习使用ipvsadm命令,实现如下功能: - 使用命令添加基于TCP一些的集群服务 - 在集群中添加若干台后端真实服务器 - 实现同一客户端访问, ...

  5. linux中级之lvs配置(命令)

    一.nat模式配置 环境说明: DS:nat网卡(自动获取也可以,充当vip): 192.168.254.13 255.255.255.0 vmnet3网卡(仅主机): 172.16.100.1 25 ...

  6. Ubuntu查看磁盘空间命令(转载)

    linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息. 1.命令格式: df [选项] [文件] 2.命 ...

  7. 深入理解linux网络技术内幕读书笔记(三)--用户空间与内核的接口

    Table of Contents 1 概论 1.1 procfs (/proc 文件系统) 1.1.1 编程接口 1.2 sysctl (/proc/sys目录) 1.2.1 编程接口 1.3 sy ...

  8. CMA连续物理内存用户空间映射---(一)

    背景: 在多媒体和图像处理等应用中,经经常使用到大块内存,尤其是硬件编解码.须要内核分配大块的物理连续内存. 这里希望通过把从内核分配的连续物理内存映射到用户空间.在用户空间经过处理,又能够入队到驱动 ...

  9. 【转】用户空间使用i2c_dev--不错

    原文网址:http://blog.csdn.net/yuanlulu/article/details/6161706 ========================================= ...

随机推荐

  1. String 、Stringbuilder和StringBuffer的区别

    JAVA平台提供了三个类:String.StringBuilder和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据.这个String类提供了数值不可改变的字符串.而这个S ...

  2. 在action中进行文件下载,下载时运行不报错,可是也不下载

    在写前端下载页面时,使用ajax方式调用action中的方法,然后就将下载内容返回js中了,所以没有下载,之后改为使用Windows.location进行下载,就没有问题了. action中代码: i ...

  3. Asp.net core Identity + identity server + angular 学习笔记 (第二篇)

    先纠正一下第一篇的的错误. 在 Login.cshtml 和 Login.cshtml.cs 里, 本来应该是 Register 我却写成 Login . cshtml 修改部分 <form a ...

  4. 漂亮数组 Beautiful Array

    2019-04-06 16:09:56 问题描述: 问题求解: 本题还是挺有难度的,主要是要考虑好如何去进行构造. 首先考虑到2 * A[i] = A[j] + A[k],那么j,k就必须是同奇同偶, ...

  5. springboot缓存注解——@Cacheable和@CacheConfig

    @Caching :制定多个缓存规则 @Cacheable 和 @CachePut 同时标注时 ,@CachePut导致还是会走方法跟数据库交互 //根据lastName查,并将结果缓存,并且可以用于 ...

  6. Java并发编程的艺术· 笔记(1)

    目录 1.volatile的原理 2.Synchonized 3.无锁-偏向锁-轻量级锁-重量级锁 4.Java实现原子操作 1.volatile的原理 如何保持可见性: 1)将当前处理器缓存行的数据 ...

  7. java,sort的数组降序

    1.Array.sort(数组,起始位置,结束位置).这个是升序排序. 2.关于数组的降序实现如下: 利用Collections.reverseOrder()方法: import java.util. ...

  8. Petrozavodsk Winter Camp, Day 8, 2014, Ship

    $dp(i,j)$表示i-j这段还没运走时的状态,包括 运输了多少次,还剩多少空间 每次枚举运输左边还是右边转移 #include <bits/stdc++.h> #define rep( ...

  9. 理解Object.defineProperty函数中的get与set

    defineProperty是什么: 该函数可以直接在一个对象上定义一个新属性,或者修改一个对象的现有属性, 并返回这个对象.通俗理解就是: 给对象添加一个新的属性,或者针对对象里的某些属性,可以给这 ...

  10. ELK原理与介绍

    为什么用到ELK: 一般我们需要进行日志分析场景:直接在日志文件中 grep.awk 就可以获得自己想要的信息.但在规模较大的场景中,此方法效率低下,面临问题包括日志量太大如何归档.文本搜索太慢怎么办 ...