ipvsadm命令詳解
ipvsadm是一個工具,同時它也是一條命令,用於管理LVS的策略規則。
1.1 命令語法、子命令和選項
語法:
ipvsadm -A|E -t|u|f <集群服務地址> [-s <調度算法>] [-p <超時時間>] [-M <掩碼>] [-b <標誌>]
ipvsadm -D -t|u|f <集群服務地址>
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a|e -t|u|f <集群服務地址> -r <真實服務器地址> [選項]
ipvsadm -d -t|u|f <集群服務地址> -r <真實服務器地址>
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f <集群服務地址>]
ipvsadm --set <超時時間>
ipvsadm --start-daemon <主或備> [--mcast-interface <組播接口>] [--syncid <SID>]
ipvsadm --stop-daemon <主或備>
ipvsadm -h
子命令:
--add-service -A 添加一個集群服務,需要使用選項
--edit-service -E 編輯一個集群服務,需要使用選項
--delete-service -D 刪除指定集群服務,需要使用選項
--clear -C 刪除所有集群服務,包括真實服務器轉發策略規則
--restore -R 從標準輸入中恢復策略規則
--save -S 保存策略規則到標準輸出
--add-server -a 添加一個真實服務器,需要使用選項
--edit-server -e 編輯一個真實服務器,需要使用選項
--delete-server -d 刪除一個真實服務器,需要使用選項
--list -L|-l 查看集群服務列表,包括真實服務器轉發策略規則
--zero -Z 計數器清零。清除連接數、包轉發等數量統計信息
--set <超時時間> 設置TCP、TCPFIN(TCP關閉連接狀態)、UDP連接超時時間,用於
會話保持。一般情況下TCP和UDP超時時間保持默認就好,TCPFIN
可以根據情況設定,指定它則用戶請求連接關閉,該連接則會變
為非活躍(InActive)空閑等待狀態,在空閑等待時間內,如果
來自同一源IP的請求,則還會轉發給後端的同一臺真實服務器上
--start-daemon 開啟連接同步守護進程。在選項後面指定自己是Master(主)還
是backup(備),主負載調度器會同步所有策略及連接狀態到備
負載調度器,當主故障,備可以接替其工作
--stop-daemon 停止連接同步守護進程
--help -h 顯示幫助信息
選項:
--tcp-service -t <集群服務地址> 允許集群服務使用的傳輸協議為TCP。<IP:Port>
--udp-service -u <集群服務地址> 允許集群服務使用的傳輸協議為UDP。<IP:Port>
--fwmark-service -f <防火墻標識> 使用一個整數值來防火墻標識集群服務,而不是地址、
端口和協議使用它,我們可以通過結合IPtables將多
個以調度器為目標的端口定義成一個防火墻標識,由
ipvsdam通過此項關聯標識,則可以實現對一個IP多
端口調度,即實現後端服務器可以開放多個服務
--scheduler -s scheduler 指定集群服務使用的調度算法:rr|wrr|lc|wlc|lblc
|lblcr|dh|sh|sed|nq,默認為wlc
--persistent -p <超時時間> 開啟持久化服務,開啟它則表示在指定時間內,來自同
一IP的請求都會轉發到後端同一臺真實服務器上
--netmask -M <網絡掩碼> 使用網絡掩碼來屏蔽持久化來源IP的地址範圍,默認值
為255.255.255.255,即所有來源IP請求都會享受持久
化服務
--real-server -r <真實服務器地址> 指定真實服務器的主機IP與端口
--gatewaying -g 指定真實服務器轉發工作模式,使用DR模式,默認
--ipip -i 指定真實服務器轉發工作模式,使用TUN模式
--masquerading -m 指定真實服務器轉發工作模式,使用NAT模式
--weight -w <權重值> 指定真實服務器的權重值
--u-threshold -x <上閥值> 設置轉發請求的最大上連接閥值,範圍為0~65535,當
當連接數超過指定上限時,LVS則不會轉發請求
--l-threshold -y <下閥值> 設置轉發請求的下連接閥值,範圍為0~65535,當連接
數降低至指定值時,LVS則繼續提供服務,默認值為0
--mcast-interface interface 設置用於連接同步守護進程的組播接口
--syncid sid 設置連接同步守護進程的SID號,用於標識,範圍0~255
--connection -c 顯示連接信息,一般與"-l"連用
--timeout 顯示TCP、TCPFIN、UDP超時時間信息,一般與"-l"連用
--daemon 顯示連接同步守護信息,一般與"-l"連用
--stats 顯示統計信息,一般與"-l"連用
--rate 顯示轉發速率信息,一般與"-l"連用
--exact 顯示數據包和字節計數器的確切值,擴大字符長度
--thresholds 顯示閥值信息,一般與"-l"連用
--persistent-conn 顯示持久化連接信息,一般與"-l"連用
--numeric -n 地址和端口以數字格式顯示,一般與"-l"連用
--sched-flags -b <標識> 設置調度算法的範圍標識,用於SH算法,有兩個標識:
sh-fallback,如果真實服務器不可用,則將其轉發到
其他真實服務器上。
sh-port,將源地址的端口號也添加到散列鍵=值中
1.2 集群服務管理
對集群服務條目的增刪查改。
1.2.1 查看
# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
1.2.2 添加一個集群服務
# ipvsadm -A -t 192.168.1.100:80 -s rr
# 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.1.100:80 rr
1.2.3 修改一個集群服務
修改集群服務的調度算法。
# ipvsadm -E -t 192.168.1.100:80 -s wlc
# 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.1.100:80 wlc
1.2.4 刪除一個集群服務
# ipvsadm -D -t 192.168.1.100:80
# ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port Forward Weight ActiveConn InActConn
為空
1.2.5 刪除所有集群服務
# ipvsadm -C
1.3 真實服務器管理
對要轉發的真實服務器條目的增刪查改。綁定集群服務、指定LVS轉發的工作模式。
1.3.1 往集群服務中添加一個真實服務器
# ipvsadm -a -t 192.168.1.100:80 -r 172.16.16.2:80 -m -w 1
# ipvsadm -a -t 192.168.1.100:80 -r 172.16.16.3:80 -m -w 1
# 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.1.100:80 wlc
-> 172.16.16.2:80 Masq 1 0 0
-> 172.16.16.3:80 Masq 1 0 0
1.3.2 修改集群服務中的一個真實服務器
修改集群服務中的一個真實服務器的權重值。
# ipvsadm -e -t 192.168.1.100:80 -r 172.16.16.2:80 -m -w 2
# 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.1.100:80 wlc
-> 172.16.16.2:80 Masq 2 0 0
-> 172.16.16.3:80 Masq 1 0 0
1.3.3 刪除集群服務中的一個真實服務器
# ipvsadm -d -t 192.168.1.100:80 -r 172.16.16.2:80
# 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.1.100:80 wlc
-> 已被刪除
-> 172.16.16.3:80 Masq 1 0 0
1.3.4 清空轉發請求計數器
# ipvsadm -Z
ipvsadm命令詳解