从2.4版本开始,Linux内核默认支持LVS(Linux Virtual Server),要使用LVS的能力,只需安装一个LVS的管理工具:ipvsadm,LVS的结构主要分为两部分:工作在内核空间的IPVS模块和工作在用户空间的ipvsadm管理工具。
ipvsadm工具安装
ipvsadm工具支持rpm安装,也可以编译源码安装,下载地址为:http://www.linuxvirtualserver.org/software/ipvs.html。
ipvsadm工具使用
3.1 常用参数选项
| A addservice | 添加一条新的虚拟服务 |
| E editservice | 编辑虚拟服务 |
| D deleteservice | 删除虚拟服务 |
| C clear | 清除所有的虚拟服务规则 |
| R restore | 恢复虚拟服务规则 |
| a addserver | 在一个虚拟服务中添加一个新的真实服务器 |
| e editserver | 编辑某个真实服务器 |
| d deleteserver | 删除某个真实服务器 |
| L l list | 显示内核中的虚拟服务规则 |
| n numeric | 以数字形式显示IP端口 |
| c connection | 显示ipvs中目前存在的连接,也可以用于分析调度情况 |
| Z zero | 将转发消息的统计清零 |
| p persistent | 配置持久化时间 |
| set tcp tcpfin udp | 配置三个超时时间(tcp/tcpfin/udp) |
| t u | TCP/UDP协议的虚拟服务 |
| g m i | LVS模式为:DR NAT TUN |
| w | 配置真实服务器的权重 |
| s | 配置负载均衡算法,如:rr, wrr, lc等 |
| timeout | 显示配置的tcp/tcpfin/udp超时时间 |
| stats | 显示历史转发消息统计(累加值) |
| rate | 显示转发速率信息(瞬时值) |
3.2 示例
1、管理虚拟服务
添加一个虚拟服务192.168.1.100:80,使用轮询算法:ipvsadm A t 192.168.1.100:80 s rr
修改虚拟服务的算法为加权轮询:ipvsadm E t 192.168.1.100:80 s wrr
删除虚拟服务:ipvsadm D t 192.168.1.100:80
2、管理真实服务
添加一个真实服务器192.168.1.123,使用DR模式,权重2:ipvsadm a t 192.168.1.100:80 r 192.168.1.123 g w 2
修改真实服务器的权重:ipvsadm a t 192.168.1.100:80 r 192.168.1.123 g w 5
删除真实服务器:ipvsadm d t 192.168.1.100:80 r 192.168.1.123
3、查看统计
查看当前配置的虚拟服务和各个RS的权重:ipvsadm Ln
查看当前ipvs模块中记录的连接(可用于观察转发情况):ipvsadm lnc
查看ipvs模块的转发情况统计:ipvsadm Ln stats | rate
四、ipvsadm与Keepalived的区别
ipvsadm:是命令行工具,每次重启都需要重新配置(或者写入开机脚本中),但是配置参数十分灵活。
Keepalived:是一个服务(Daemon),通过编辑配置文件(/etc/keepalived/keepalived.conf),可以很方便地对LVS的参数做调整,且系统重启后不会丢失,Keepalived还有多机热备的功能(VRRP协议),可以将多台服务器组成MasterSlave集群,通过虚拟IP的方式对外提供服务,使得LVS不会成为单点故障,Keepalived还可以配置后端server检测,当发现服务不可用时,将该server从转发列表中剔除,具有健康检查机制。
FAQs
Q1: ipvsadm工具支持哪些安装方式?
A1: ipvsadm工具支持rpm安装,也可以编译源码安装,下载地址为:http://www.linuxvirtualserver.org/software/ipvs.html。
Q2: 如何使用ipvsadm工具添加一个虚拟服务?
A2: 使用以下命令添加一个虚拟服务:ipvsadm A t <虚拟服务地址>:<端口> s <调度算法>
,添加一个虚拟服务192.168.1.100:80,使用轮询算法:ipvsadm A t 192.168.1.100:80 s rr
。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1097113.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复