ipvsadm 是 LVS 核心管理工具,用於配置虛擬服務、真實伺服器、調度演算法、持久連結、同步守護進程等。本文提供完整指令語法、參數中文說明與常用操作範例。
# 虛擬服務管理
ipvsadm -A|E -t|u|f VIP:PORT [-s scheduler] [-p [timeout]] [-M netmask]
ipvsadm -D -t|u|f VIP:PORT
ipvsadm -C
# 真實伺服器管理
ipvsadm -a|e -t|u|f VIP:PORT -r RIP:PORT [-g|i|m] [-w weight]
ipvsadm -d -t|u|f VIP:PORT -r RIP:PORT
# 顯示與統計
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f VIP:PORT]
ipvsadm --set tcp tcpfin udp
# 同步守護進程 (高可用)
ipvsadm --start-daemon master|backup [--mcast-interface IFACE]
ipvsadm --stop-daemon
# 規則備份/還原
ipvsadm -S [-n] # 儲存規則至 stdout
ipvsadm -R # 從 stdin 還原規則
| 短選項 | 長選項 | 說明 |
|---|---|---|
| -A | --add-service | 新增虛擬服務記錄 |
| -E | --edit-service | 編輯虛擬服務記錄 |
| -D | --delete-service | 刪除虛擬服務記錄 |
| -C | --clear | 清空所有虛擬服務記錄 |
| -a | --add-server | 新增真實伺服器 |
| -e | --edit-server | 編輯真實伺服器 |
| -d | --delete-server | 刪除真實伺服器 |
| -L/-l | --list | 顯示虛擬服務表 |
| -Z | --zero | 計數器歸零 |
| -s | --scheduler | 指定調度演算法 (rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq),預設 wlc |
| -p | --persistent | 啟用持久連結,可指定 timeout(秒) |
| -M | --netmask | 持久網罩粒度 |
| -r | --real-server | 指定真實伺服器 IP:PORT |
| -g | --gatewaying | DR 模式(直接路由,預設) |
| -i | --ipip | TUN 模式(IP 隧道) |
| -m | --masquerading | NAT 模式 |
| -w | --weight | 真實伺服器權重 |
| -c | --connection | 顯示目前連結表 |
| --timeout | 顯示 tcp/tcpfin/udp 逾時值 | |
| --stats | 顯示統計資訊 | |
| --rate | 顯示速率資訊 | |
| --sort | 排序輸出 | |
| -n | --numeric | 數字格式顯示 IP:PORT |
ipvsadm -A -t 192.168.1.100:80 -s wlc -p 1800
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.10:80 -g -w 1
ipvsadm -a -t 192.168.1.100:80 -r 192.168.1.11:80 -g -w 1
ipvsadm -A -t 10.0.0.10:443 -s lc
ipvsadm -a -t 10.0.0.10:443 -r 10.0.0.20:443 -m -w 2
ipvsadm -a -t 10.0.0.10:443 -r 10.0.0.21:443 -m -w 1
ipvsadm -Ln --stats --rate --timeout --sort
# 備份
ipvsadm -S > /etc/ipvsadm.rules
# 還原(開機腳本中使用)
ipvsadm -R < /etc/ipvsadm.rules
# Master 節點
ipvsadm --start-daemon master --mcast-interface eth1
# Backup 節點
ipvsadm --start-daemon backup --mcast-interface eth1
生產環境建議改用 Keepalived VRRP 管理 VIP 與同步,功能更完整。
# 修改 TCP/TCPFIN/UDP 逾時(單位:秒)
ipvsadm --set 900 120 300