LVS詳解

查看內核是否支持 ipvsadm

[test@LVS ~]$ /sbin/modprobe -l|grep ipvs
/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_dh.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_ftp.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_lblc.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_lblcr.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_lc.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_nq.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_rr.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_sed.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_sh.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_wlc.ko/lib/modules/2.6.18-308.el5/kernel/net/ipv4/ipvs/ip_vs_wrr.ko

如果不支持,就安裝 ipvsadm

sudo yum -y install ipvsadm

ipvsadm 參數詳解:

-C 清除表中所有的記錄-A --add-service在服務器列表中新添加一條新的虛擬服務器記錄-t 表示爲tcp服務-u 表示爲udp服務-s --scheduler 使用的調度算法, rr | wrr | lc | wlc | lblb | lblcr | dh | sh | sed | nq 默認調度算法是 wlcipvsadm -a -t 192.168.3.187:80 -r 192.168.200.10:80 -m -w 1
-a --add-server 在服務器表中添加一條新的真實主機記錄-t --tcp-service 說明虛擬服務器提供tcp服務-u --udp-service 說明虛擬服務器提供udp服務-r --real-server 真實服務器地址-m --masquerading 指定LVS工作模式爲NAT模式-w --weight 真實服務器的權值-g --gatewaying 指定LVS工作模式爲直接路由器模式(也是LVS默認的模式)-i --ipip 指定LVS的工作模式爲隧道模式-p 會話保持時間,定義流量唄轉到同一個realserver的會話存留時間
[test@LVS ~]$ sudo /sbin/ipvsadm -l 
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConnTCP  192.1.17.10:http wlc
  -> 10.2.4.35:http            Route   100    25095      18542       -> 10.2.4.31:http            Route   100    25097      17657       -> 10.2.4.30:http            Route   100    25123      18953       -> 10.2.4.29:http            Route   100    25091      18727       -> 10.2.4.24:http            Route   100    25075      17703       -> 10.2.4.23:http            Route   100    25086      17465       -> 10.2.4.22:http            Route   100    25124      17628

InActConn 指非活躍連接數,我們將處於 TCP ESTABLISH 狀態以外的連接都稱爲不活躍連接。例如處於 SYN_RECV 狀態的連接,處於 TIME_WAIT 狀態的連接等。

[test@LVS ~]$ sudo /sbin/ipvsadm -l --rate 
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port                 CPS    InPPS   OutPPS    InBPS   OutBPS
  -> RemoteAddress:Port
TCP  192.1.17.10:http               2438    16241        0  6385560        0
  -> 10.2.4.35:http                 146      965        0   372714        0
  -> 10.2.4.34:http                 164     1089        0   423347        0
  -> 10.2.4.28:http                 152     1035        0   406658        0
  -> 10.2.4.27:http                 157     1031        0   411744        0
  -> 10.2.4.22:http                 160     1078        0   425447        0
  -> 10.2.4.21:http                 159     1078        0   423759        0

--rate選項是顯示速率信息

  • CPS      (current connection rate)   每秒連接數

  • InPPS    (current in packet rate)  每秒的入包個數

  • OutPPS   (current out packet rate)   每秒的出包個數

  • InBPS    (current in byte rate)      每秒入流量(字節)

  • OutBPS   (current out byte rate)     每秒入流量(字節)

[test@LVS ~]$ sudo /sbin/ipvsadm -l --stats
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port               Conns   InPkts  OutPkts  InBytes OutBytes
  -> RemoteAddress:PortTCP 192.1.17.10:http            326629K    3588M        0   22517G        0
  -> 10.2.4.23:http             584349K    3896M        0    1469G        0  -> 10.2.4.34:http             597422K    3956M        0    1501G        0  -> 10.2.4.28:http             631106K    4198M        0    1592G        0  -> 10.2.4.27:http             578297K    3850M        0    1459G        0  -> 10.2.4.22:http             580208K    3859M        0    1463G        0  -> 10.2.4.21:http             685758K  283146K        0    1737G        0

--stats 選項是統計自該條轉發規則生效以來的

  • Conns    (connections scheduled)  已經轉發過的連接數

  • InPkts   (incoming packets)       入包個數

  • OutPkts  (outgoing packets)       出包個數

  • InBytes  (incoming bytes)         入流量(字節)

  • OutBytes (outgoing bytes)         出流量(字節)

修改 LVS 表中的 fin_timeout 使用指令如下

ipvsadm --set 900 60 300

中間的 60 就是 tcp 的 fin_timeout 時間

查看默認的值使用如下命令:

$ sudo /sbin/ipvsadm -Ln --timeout Timeout (tcp tcpfin udp): 900 60 300

               


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章