LVS之ipvsadm命令

 

 

目录:

  • 安装
  • 基本描述
  • 用法
  • 命令选项
  • 示例

 

【安装】

可使用yum安装或者从官网下载安装包源码安装,两种方式皆可

先检查是否已经安装ipvsadm
[root@v_machine1 ~]# yum list installed | grep ipvsadm

若没有安装,则使用以下命令安装ipvsadm

[root@v_machine1 ~]# yum -y install ipvsadm

 

【基本描述】

ipvsadm是linux下的LVS虚拟服务器的管理工具,LVS工作于内核空间,而ipvsadm则提供了用户空间的接口;

 

【用法】

基本用法如下,分别用于设置虚拟服务算法和后端真实服务器

ipvsadm    选项    服务器地址    -s    算法
ipvsadm    选项    服务器地址    -r    真实服务器地址    [工作模式][权重]...

 

【命令选项】

 

复制代码
-A        添加一个虚拟服务,使用ip地址、端口号、协议来唯一定义一个虚拟服务
-E        编辑一个虚拟服务
-D        删除一个虚拟服务
-C        清空虚拟服务列表
-R        从标准输入中还原虚拟服务列表
-S        保存虚拟服务规则至标准输出,输出规则可使用-R选项还原
-L        显示虚拟服务列表
-Z        虚拟服务器列表计数器清零(清空当前连接数)
-a        添加一台真实服务器
-e        编辑一台真实服务器
-d        减少一台真实服务器
-t        使用TCP服务,该参数后需加主机与端口信息
-u        使用UDP服务,该参数后需加主机与端口信息
-s        指定lvs的调度算法
-r        设置真实服务器IP与端口
-g        设置lvs工作模式为DR直连路由
-i        设置lvs工作模式为TUN隧道
-m        设置lvs工作模式为NAT地址转换模式
-w        指定真实服务器权重
-c        连接状态,配和-L使用
-n        数字格式显示
--stats   显示统计信息
--rate    显示速率信息
--sort    对虚拟服务器和真实服务器排序输出
--set tcp tcpfin udp
          设置ipvs连接超时值,三个参数分别代表tcp会话超时时间、收到FIN包后tcp会话超时时间、udp超时时间
--timeout
          显示tcp tcpfin udp的timeout值
--start-daemon
          启动同步守护进程
--stop-daemon
          停止同步守护进程
复制代码

 

【示例】

添加虚拟服务,设置调度算法为轮询:

复制代码
[root@v_machine1 ~]# ipvsadm -A -t 192.168.237.131:80 -s rr
[root@v_machine1 ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.237.131:80 rr
复制代码

让80端口请求通过NAT模式转发给两个后端真实服务器:

复制代码
[root@v_machine1 ~]# ipvsadm -a -t 192.168.237.131:80 -r 192.168.237.171:80 -m
[root@v_machine1 ~]# ipvsadm -a -t 192.168.237.131:80 -r 192.168.237.172:80 -m
[root@v_machine1 ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.237.131:80 rr
  -> 192.168.237.171:80           Masq    1      0          0
  -> 192.168.237.172:80           Masq    1      0          0
复制代码

修改调度算法为加权轮询:

[root@v_machine1 ~]# ipvsadm -E -t 192.168.237.131:80 -s wrr

规则表备份与还原:

复制代码
[root@v_machine1 ~]# ipvsadm -S > /tmp/ip_vs.bak
[root@v_machine1 ~]# cat /tmp/ip_vs.bak
-A -t v_machine1:http -s rr
-a -t v_machine1:http -r 192.168.237.171:http -m -w 1
-a -t v_machine1:http -r 192.168.237.172:http -m -w 1
[root@v_machine1 ~]# ipvsadm -C
[root@v_machine1 ~]# ipvsadm -L
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
[root@v_machine1 ~]# ipvsadm -R < /tmp/ip_vs.bak
[root@v_machine1 ~]# ipvsadm -Ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.237.131:80 rr
  -> 192.168.237.171:80           Masq    1      0          0
  -> 192.168.237.172:80           Masq    1      0          0
复制代码
 
分类: Linux
posted @ 2020-06-30 15:00  kelelipeng  阅读(484)  评论(0编辑  收藏  举报