LVS負載均衡配置與keepalive服務配置

2021-10-12 10:31:22 字數 3746 閱讀 8452

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上,然後它把使用者的請求根據設定好的排程演算法,智慧型均衡地分發到後端真正伺服器上。為了避免不同機...