【知識積累】大數據旅程-LVS 隱藏VIP和使用IPVSADM

一、隱藏VIP方法:對外隱藏,對內可見

1、Kernel parameter

  • 目標mac地址爲全F,交換機觸發廣播
  • /proc/sys/net/ipv4/conf/*IF*/
  • arp_ignore:定義接受到ARP請求時的響應級別

       0(默認):只要本地配置的有相應地址,就給予響應
       1:僅在請求的目標(mac)地址配置請求到達的接口上的時候,纔給予響應。

  • arp_announce:定義將自己地址向外通告時的通告級別

       0(默認):將本地任何接口上的任何地址向外通告
       1:試圖僅向目標網絡通告與其網絡匹配的地址
       2:僅向與本地接口上地址匹配的網絡進行通

2、名詞解析

LVS(Linux Virtual Server):Linux虛擬服務器,是一個虛擬的服務器集羣系統。
ipvs:嵌入到linux內核,是內核的一個模塊
ipvsadm:ipvs的管理應用程序

3、LVS類型

  • NAT:地址轉換
  • DR:直接路由
  • TUN:隧道

4、LVS調度方法

四種靜態:

  • rr(輪詢)
  • wrr(加權)
  • dh
  • sh

七種動態:

  • lc(最少連接)
  • wlc(加權最少連接 - 默認):偷看數據包傳輸控制層的Flag標誌,來計算服務器的連接數。
  • sed(最短期望延遲)
  • nq(never queue)
  • LBLC(基於本地的最少連接)
  • DH
  • LBLCR(基於本地的帶複製功能的最少連接)

二、監控多個端口號

1、安裝ipvs的管理應用程序:ipvsadm

yum install ipvsadm -y

2、LVS收到什麼包時觸發負載的設置

添加: -A -t|u|f service-address [-s scheduler]

  • -A:追加監控包的規則
  • -t:TCP協議的集羣
  • -u:UDP協議的集羣

       service-address IP:PORT

  • -f:FWM - 防火牆標記

       service-address:Mark Number

  • -s:調度算法

修改:-E

刪除:-D -t|u|f service-address

同一個LVS可以對多個端口進行負載:
ipvsadm -A -t 192.168.217.100:80 -s rr
ipvsadm -A -t 192.168.9.15:8080 -s rr

3、觸發負載後,給那些負載的設置

添加:-a -t|u|f service-address -r server-address [-g|i|m] [-w weight]

  • -t|u|f service-address:事先定義好的某集羣服務
  • -r server-address:某RS的地址,在NAT模型中,可使用IP:PORT實現端口映射
  • -g:DR(LVS類型)
  • -i:TUN(LVS類型)
  • -m:NAT(LVS類型)
  • -w weight:定義服務器權重

修改:-e

刪除:-d -t|u|f service-address -r server-address

ipvsadm -a -t 192.168.217.100:80 -r 192.168.217.12 -g
ipvsadm -a -t 192.168.217.100:80 -r 192.168.217.13 -g

查看

  • -L|l
  • --n:數字格式顯示主機地址和端口
  • --stats:統計數據
  • --rate:速率
  • --timeout:顯示tcp、tcpfin和udp的會話超時時長
  • --c:顯示當前ipvs的連接狀況(LVS負載的記錄)

刪除所有集羣服務

  • -C:清空ipvs規則

保存規則

  • -S

       ipvsadm -S > /path/to/somefile

載入此前的規則

  • -R

       ipvsadm -R < /path/form/somefile

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