好的,下面给你整理一份关于 ipvsadm 的全面介绍,包括它是什么、基本功能、常用命令示例和配置方法,方便你快速掌握 IPVS(IP Virtual Server)负载均衡管理工具的使用。
ipvsadm 使用详解
1. 什么是 ipvsadm?
ipvsadm
是 Linux 下用于管理 IPVS(IP Virtual Server)的命令行工具。- IPVS 是 Linux 内核中实现的四层(传输层)负载均衡技术,常用于构建高性能的负载均衡集群。
- 通过
ipvsadm
可以添加、删除、查看虚拟服务(VIP)及其真实服务器(RIP)的配置。
2. IPVS工作原理简述
- IPVS 实现 L4 负载均衡,基于 TCP/UDP 协议。
- 通过虚拟IP地址(VIP)接收客户端请求,转发到后端真实服务器(RIP)。
- 支持多种调度算法,如轮询(RR)、加权轮询(WRR)、最少连接(LC)等。
3. 安装 ipvsadm
3.1 Ubuntu/Debian
sudo apt update
sudo apt install ipvsadm
3.2 CentOS/RHEL
sudo yum install ipvsadm
4. 常用 ipvsadm 命令
4.1 查看当前 IPVS 配置
sudo ipvsadm -L -n
-L
列出配置-n
以数字显示 IP 和端口,避免解析成域名
4.2 添加虚拟服务(VIP)
sudo ipvsadm -A -t <VIP>:<端口> -s <调度算法>
示例:
sudo ipvsadm -A -t 192.168.0.100:80 -s rr
-A
添加虚拟服务-t
指定TCP服务(-u
为UDP)-s
调度算法,常见有:rr
(轮询)wrr
(加权轮询)lc
(最少连接)wlc
(加权最少连接)lblc
(局部最少连接)dh
(目的哈希)
4.3 添加真实服务器(RIP)
sudo ipvsadm -a -t <VIP>:<端口> -r <RIP>:<端口> -m
示例:
sudo ipvsadm -a -t 192.168.0.100:80 -r 192.168.0.101:80 -m
sudo ipvsadm -a -t 192.168.0.100:80 -r 192.168.0.102:80 -m
-a
添加真实服务器-r
真实服务器IP和端口-m
表示使用NAT模式(还可用-g
直接路由模式)
4.4 删除虚拟服务或真实服务器
- 删除真实服务器:
sudo ipvsadm -d -t <VIP>:<端口> -r <RIP>:<端口>
- 删除虚拟服务:
sudo ipvsadm -D -t <VIP>:<端口>
4.5 清空所有配置
sudo ipvsadm -C
5. 示例:搭建简单HTTP负载均衡
假设:
- 虚拟IP:192.168.0.100,端口80
- 真实服务器:192.168.0.101 和 192.168.0.102
执行:
sudo ipvsadm -C
sudo ipvsadm -A -t 192.168.0.100:80 -s rr
sudo ipvsadm -a -t 192.168.0.100:80 -r 192.168.0.101:80 -m
sudo ipvsadm -a -t 192.168.0.100:80 -r 192.168.0.102:80 -m
sudo ipvsadm -L -n
6. 调度算法简述
算法 | 说明 |
---|---|
rr | 轮询,依次分发请求 |
wrr | 加权轮询,考虑服务器权重 |
lc | 最少连接,优先发给连接数最少的 |
wlc | 加权最少连接 |
lblc | 局部最少连接 |
dh | 目的地址哈希 |
7. 常见应用场景
- Web服务器集群负载均衡
- 数据库读写分离
- 高性能代理服务
发表回复