1. 程式人生 > >lvs實戰ipvsadm命令

lvs實戰ipvsadm命令

lvs實戰ipvsadm命令

ipvsadm命令參數:
1,virtual-service-address:是指虛擬服務器的ip 地址
2,real-service-address:是指真實服務器的ip 地址
3,scheduler:調度方法
ipvsadm 的用法和格式如下:
ipvsadm -A|E -t|u|f virutal-service-address:port [-s scheduler] [-p
[timeout]] [-M netmask]
ipvsadm -D -t|u|f virtual-service-address
ipvsadm -C
ipvsadm -R
ipvsadm -S [-n]
ipvsadm -a|e -t|u|f service-address:port -r real-server-address:port

[-g|i|m] [-w weight]
ipvsadm -d -t|u|f service-address -r server-address
ipvsadm -L|l [options]
ipvsadm -Z [-t|u|f service-address]
ipvsadm --set tcp tcpfin udp
ipvsadm --start-daemon state [--mcast-interface interface]
ipvsadm --stop-daemon
ipvsadm -h
命令選項解釋:
有兩種命令選項格式,長的和短的,具有相同的意思。在實際使用時,兩種都可
以。
-A --add-service 在內核的虛擬服務器表中添加一條新的虛擬服務器記錄。也
就是增加一臺新的虛擬服務器。
-E --edit-service 編輯內核虛擬服務器表中的一條虛擬服務器記錄。
-D --delete-service 刪除內核虛擬服務器表中的一條虛擬服務器記錄。
-C --clear 清除內核虛擬服務器表中的所有記錄。
-R --restore 恢復虛擬服務器規則
-S --save 保存虛擬服務器規則,輸出為-R 選項可讀的格式
-a --add-server 在內核虛擬服務器表的一條記錄裏添加一條新的真實服務器
記錄。也就是在一個虛擬服務器中增加一臺新的真實服務器
-e --edit-server 編輯一條虛擬服務器記錄中的某條真實服務器記錄
-d --delete-server 刪除一條虛擬服務器記錄中的某條真實服務器記錄
-L|-l --list 顯示內核虛擬服務器表
-Z --zero 虛擬服務表計數器清零(清空當前的連接數量等)
--set tcp tcpfin udp 設置連接超時值
--start-daemon 啟動同步守護進程。他後面可以是master 或backup,用來說
明LVS Router 是master 或是backup。在這個功能上也可以采用keepalived 的
VRRP 功能。
--stop-daemon 停止同步守護進程
-h --help 顯示幫助信息
其他的選項:
-t --tcp-service service-address 說明虛擬服務器提供的是tcp 的服務
[vip:port] or [real-server-ip:port]
-u --udp-service service-address 說明虛擬服務器提供的是udp 的服務
[vip:port] or [real-server-ip:port]
-f --fwmark-service fwmark 說明是經過iptables 標記過的服務類型。
-s --scheduler scheduler 使用的調度算法,有這樣幾個選項
rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq,
默認的調度算法是: wlc.
-p --persistent [timeout] 持久穩固的服務。這個選項的意思是來自同一個客
戶的多次請求,將被同一臺真實的服務器處理。timeout 的默認值為300 秒。
-M --netmask netmask persistent granularity mask
-r --real-server server-address 真實的服務器[Real-Server:port]
-g --gatewaying 指定LVS 的工作模式為直接路由模式(也是LVS 默認的模式)
-i --ipip 指定LVS 的工作模式為隧道模式
-m --masquerading 指定LVS 的工作模式為NAT 模式
-w --weight weight 真實服務器的權值
--mcast-interface interface 指定組播的同步接口
-c --connection 顯示LVS 目前的連接 如:ipvsadm -L -c
--timeout 顯示tcp tcpfin udp 的timeout 值 如:ipvsadm -L --timeout
--daemon 顯示同步守護進程狀態
--stats 顯示統計信息
--rate 顯示速率信息
--sort 對虛擬服務器和真實服務器排序輸出
--numeric -n 輸出IP 地址和端口的數字形式
========================= 具體命令實戰如下:
清空LVS
ipvsadm -C

設置超時參數(tcp tcpfin udp)
ipvsadm --set 30 5 60

添加vip
ifconfig eth0:0 192.168.11.123 netmask 255.255.255.0 up
route add -host 192.168.11.123 dev eth0

lvs中添加vip
ipvsadm -At 192.168.11.123:80 -s rr -p 20
ipvsadm -At 192.168.11.123:8080 -s rr
ipvsadm -Au 192.168.11.123:8080 -s rr
lvs中刪除VIP
ipvsadm -Dt 192.168.11.123:8080
lvs中修改VIP
ipvsadm -Et 192.168.11.123:80 -s wrr
註:
-A 給ipvs添加一組VIP
-D 刪除ipvs中的一組VIP
-E 刪除ipvs中的一組VIP
-t 提供tcp服務
-u 提供udp服務
-p 20 表示會話保持20秒
-s rr 調度算法是rr輪詢

調度算法:4種靜態+6種動態
rr(輪詢)|wrr(加權輪詢)|lc(最少連接)|wlc(加權最少連接)|lblc(基於局部性最小連接)|lblcr|dh|sh|sed|nq

加rs
ipvsadm -at 192.168.11.123:80 -r 192.168.11.12:80 -g -w 2
ipvsadm -at 192.168.11.123:80 -r 192.168.11.18:80 -g -w 2
註:
-a 給vip添加rs
-t 指定服務為tcp
-r 真實服務器
-g 直接路由模式(lvs的默認模式:dr)
-i 隧道模式
-m nat模式
-w 真實服務器的權重

踢掉rs
ipvsadm -dt 192.168.11.123:80 -r 192.168.11.18:80
ipvsadm -dt 192.168.11.123:80 -r 192.168.11.12:80
註:
-d 從vip中刪除rs

修改rs
ipvsadm -et 192.168.11.123:80 -r 192.168.11.12:80 -g
註:
-e 修改vip中的rs

查看lvs配置
ipvsadm -Ln

查看lvs的連接狀態
ipvsadm -l --stats
說明:
1. Conns (connections scheduled) 已經轉發過的連接數
2. InPkts (incoming packets) 入包個數
3. OutPkts (outgoing packets) 出包個數
4. InBytes (incoming bytes) 入流量(字節)
5. OutBytes (outgoing bytes) 出流量(字節)

查看lvs的速率
ipvsadm -l --rate
說明:
1. CPS (current connection rate) 每秒連接數
2. InPPS (current in packet rate) 每秒的入包個數
3. OutPPS (current out packet rate) 每秒的出包個數
4. InBPS (current in byte rate) 每秒入流量(字節)
5. OutBPS (current out byte rate) 每秒入流量(字節)

本文出自 “開發與運維” 博客,轉載請與作者聯系!

lvs實戰ipvsadm命令