dr模型的均衡機接收到資料報後直接把目標mac位址改為負載機的mac位址(rip的mac),資料報直接**給伺服器,伺服器配置了虛擬網絡卡,虛擬網絡卡的ip位址(vip)與均衡機公開的vip相同,但對外不暴露,所以收到**過來的資料報會收下,處理完後以虛擬網絡卡的ip通過其他可達網路發回給client,不再經過負載機;但由於均衡機是修改mac位址進行資料報**的,所以負載機(server)和均衡機**髮機)必須處於同一區域網中。
沒有明顯缺點,直接再包一層ip包頭**給server,可以不處於同一區域網中,但**資料報也可能產生延遲,所以服務響應可能會稍慢。
實驗虛擬機器
系統centos
node01:ip/192.168.150.11、網絡卡名:eth0
node02:ip/192.168.150.12、網絡卡名:eth0
node03:ip/192.168.150.13、網絡卡名:eth0
1、
node01物理網絡卡建立子ip
ifconfig eth0:8 192.168.150.100/24
2、設定node02和03的arp報文響應、通告級別
隱藏vip方法:對外隱藏,對內可見 :
kernel parameter:
目標mac位址為全f時,交換機會觸發arp廣播,當網絡卡上電時,不修改響應級別的話會發起arp廣播,導致閘道器接收到伺服器的mac和ip,從而新增記錄到路由表中,閘道器收到發往vip的資料報時會直接發給server,進一步導致**機收不到資料報,做負載均衡失敗,因此需要修改server的arp響應和通告級別
arp_ignore: 定義接收到arp請求時的響應級別:
到達的介面上的時候,才給予響應;
node02/03 分別做如下操作:
設定響應通告級別
echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
設定隱藏的vip,僅自己可見
ifconfig lo:3 192.168.150.100 netmask 255.255.255.255
3、lvs服務配置
echo 02/03 > /var/www/html/index.html #02/03區別操作
netstat -natp #結果看不到socket連線
node02~node03:
netstat -natp #結果看到很多的socket連線
node01:
ipvsadm -lnc #檢視請求**記錄本
tcp 00:57 fin_wait 192.168.150.1:51587 192.168.150.100:80 192.168.150.12:80
fin_wait: 連線過,**了所有的包
syn_recv: 基本上lvs都記錄了,證明lvs沒事,一定是後邊網路層出問題
ipvs核心模組:
yum install ipvsadm -y
管理集群服務:
#新增:-a -t|u|f service-address [-s scheduler]
#-t: tcp協議的集群
#-u: udp協議的集群
#service-address: ip:port
#-f: fwm: 防火牆標記
#service-address: mark number
#修改:-e
#刪除:-d -t|u|f service-address
ipvsadm -a -t 192.168.9.100:80 -s rr
實驗虛擬機器:node01/node04
node01:
ipvsadm -c #清除負載策略
ifconfig eth0:8 down #關閉虛擬機器物理網絡卡子ip
node01,node04:
yum install keepalived ipvsadm -y
cd /etc/keepalived/
cp keepalived.conf keepalived.conf.bak
vi keepalived.conf
配置keepalived:
vrrp_instance vi_1
virtual_ipaddress
}virtual_server 192.168.150.100 80
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}
}
real_server 192.168.150.13 80
connect_timeout 3
nb_get_retry 3
delay_before_retry 3
}}
scp ./keepalived.conf root@node04:`
pwd`
#node01需要進到keepalived的配置目錄下
不要忘記修改node04的keepalived配置檔案
可以隨機關掉node01/04的網絡卡或關掉node02/03的http服務測試服務是否正常。
負載均衡lvs配置
1,準備3臺虛擬機器 2,先配置3臺虛擬機器的網路 eth0,配置在乙個網段 dip,rip在乙個網段3,配置lvs的vip ifconfig eth0 0 192.168.9.100 24 echo 1 proc sys net ipv4 ip forward ip forward 0,如果不是發...
LVS配置 (負載均衡)
搭建real server中的服務 在lvs服務裝置上安裝和核心互動的客戶端 ipvsadm lnc 顯示的連線狀態 解釋 lvs 高可用 ha ifconfig eth0 2 192.168.220.88 24 或者 ifconfig eth0 2 192.168.220.88 netmask 2...
負載均衡 lvs
常用的負載均衡開源軟體有nginx lvs haproxy,商業的硬體負載均衡裝置f5 netscale。負載均衡的架構和原理很簡單,就是當使用者的請求過來時,會直接分發到director server上,然後它把使用者的請求根據設定好的排程演算法,智慧型均衡地分發到後端真正伺服器上。為了避免不同機...