1,先安裝ipvsadm
yum install ipvsadm
2,
1、在兩台dr伺服器上綁定vip位址,兩台dr使用vip對外提供服務
DR是啥意思呢? ifconfig ens33:0 192.168.158.3 broadcast 192.168.158.3 netmask 255.255.255.255 up
ens33是網卡資訊。可以通過ifconfig進行查詢! 這個是虛拟IP。
2、添加dr伺服器,添加指向vip的靜态路由
route add 192.168.158.3 dev ens33:0
3、使用ipvsadm指令配置ipvs服務
ipvsadm -A -t 192.168.158.3:80 -s rr
ipvsadm -a -t 192.168.158.3:80 -r 192.168.158.137:80 -g//第一個伺服器位址!
ipvsadm -a -t 192.168.158.3:80 -r 192.168.158.138:80 -g//第二個伺服器位址!
伺服器位址對就行!具體伺服器裡面的需要自己配置!Nginx會抓取網頁配置資訊!
3,Nginx伺服器配置
1、配置real server環回位址,綁定vip,real server使用vip作為源位址傳回資料
ifconfig lo:0 192.168.158.3 netmask 255.255.255.255 broadcast 192.168.158.3 up
2、配置real server添加指向vip的靜态路由
route add 192.168.158.3 dev lo:0
echo “1” > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo “2” > /proc/sys/net/ipv4/conf/lo/arp_announce
echo “1” > /proc/sys/net/ipv4/conf/all/arp_ignore
echo “2” > /proc/sys/net/ipv4/conf/all/arp_announce
下圖為正常的。

修改之後才可以實作LVS
解釋:
有關arp_ignore的相關介紹:
arp_ignore:定義對目标位址為本地IP的ARP詢問不同的應答模式0
0 - (預設值): 回應任何網絡接口上對任何本地IP位址的arp查詢請求
1 - 隻回答目标IP位址是來訪網絡接口本地位址的ARP查詢請求
2 -隻回答目标IP位址是來訪網絡接口本地位址的ARP查詢請求,且來訪IP必須在該網絡接口的子網段内
3 - 不回應該網絡界面的arp請求,而隻對設定的唯一和連接配接位址做出回應
4-7 - 保留未使用
8 -不回應所有(本地位址)的arp查詢
有關arp_announce的相關介紹:
arp_announce:對網絡接口上,本地IP位址的發出的,ARP回應。
作出相應級别的限制: 确定不同程度的限制,宣布對來自本地源IP位址發出Arp請求的接口
0 - (預設) 在任意網絡接口(eth0,eth1,lo)上的任何本地位址
1 -盡量避免不在該網絡接口子網段的本地位址做出arp回應.
當發起ARP請求的源IP位址是被設定應該經由路由達到此網絡接口的時候很有用.
此時會檢查來訪IP是否為所有接口上的子網段内ip之一.
如果改來訪IP不屬于各個網絡接口上的子網段内,那麼将采用級别2的方式來進行處理.
2 - 對查詢目标使用最适當的本地位址.
在此模式下将忽略這個IP資料包的源位址并嘗試選擇與能與該位址通信的本地位址.
首要是選擇所有的網絡接口的子網中外出通路子網中包含該目标IP位址的本地位址.
如果沒有合适的位址被發現,将選擇目前的發送網絡接口或其他的有可能接受到該ARP回應的網絡接口來進行發送.4,寫一下網頁參數,将來會顯示出來的
5,