目錄
一. LVS簡介:
1.簡介
2. LVS工作模式:
3. LVS調(diào)度算法:
4. LVS-DR集群介紹:
二.LVS-DR搭建
?1.RS配置
1)兩臺RS,需要下載好httpd軟件并準(zhǔn)備好配置文件
?2)添加虛擬IP(vip)、添加訪問本地vip的靜態(tài)路由并抑制ARP
?2.DS
1)安裝ipvsadm
2)?添加虛擬IP(vip):
3)添加服務(wù)
一. LVS簡介:
1.簡介
? ???LVS(Linux Virtual Server)是一個(gè)開源的負(fù)載均衡軟件,可以在Linux操作系統(tǒng)上實(shí)現(xiàn)高可用性和可擴(kuò)展性。它使用IP負(fù)載均衡技術(shù)來分發(fā)網(wǎng)絡(luò)流量到多個(gè)后端服務(wù)器,從而提高系統(tǒng)的性能和可靠性。LVS通過在負(fù)載均衡器與后端服務(wù)器之間建立虛擬IP地址和端口的映射關(guān)系,來實(shí)現(xiàn)負(fù)載均衡。
2. LVS工作模式:
名稱 | 縮寫 | 說明 |
虛擬IP地址(Virtual IP Address) | ? ?VIP? | Director用于向客戶端計(jì)算機(jī)提供服務(wù)的IP地址 |
真實(shí)IP地址(Real Server IP Address | ?RIP? | 在集群下面節(jié)點(diǎn)上使用的IP地址 |
Director的IP地址(Director IP Address) | ?DIP | Director用于連接內(nèi)外網(wǎng)網(wǎng)絡(luò)的IP地址 |
客戶端主機(jī)IP地址(Client IP Address) | CIP | 客戶端用戶計(jì)算機(jī)請求集群服務(wù)器的IP地址,該地址用作 發(fā)送給集群的請求的源IP地址 |
LVS有三種主要的工作模式:
- LVS-DR模式:在LVS-DR模式下,LVS負(fù)載均衡器使用一個(gè)虛擬IP地址(VIP)作為前端地址,通過集群技術(shù)將VIP綁定到負(fù)載均衡器上。當(dāng)客戶端發(fā)送請求時(shí),請求會到達(dá)負(fù)載均衡器。負(fù)載均衡器通過修改目標(biāo)MAC地址將請求直接轉(zhuǎn)發(fā)給后端服務(wù)器,同時(shí)保持源IP地址不變。服務(wù)器處理請求后,將響應(yīng)直接返回給客戶端,繞過負(fù)載均衡器。
- LVS-NAT模式:LVS-NAT(Network Address Translation)模式中,負(fù)載均衡器將客戶端請求的目標(biāo)IP地址和端口修改為后端服務(wù)器的IP地址和端口,并將修改后的請求轉(zhuǎn)發(fā)給相應(yīng)的服務(wù)器。后端服務(wù)器處理請求后,將響應(yīng)返回給負(fù)載均衡器,再由負(fù)載均衡器將響應(yīng)返回給客戶端。
- LVS-TUN模式:LVS-TUN(IP Tunneling)模式中,負(fù)載均衡器將客戶端請求封裝在一個(gè)新的IP包中,并通過IP隧道(IP Tunnel)轉(zhuǎn)發(fā)到后端服務(wù)器。服務(wù)器收到請求后,處理并將響應(yīng)返回給負(fù)載均衡器,再由負(fù)載均衡器將響應(yīng)返回給客戶端。
圖解如下:
????????特別提示:(VS/DR)模式是互聯(lián)網(wǎng)使用的最多多的一種模式,在LVS-DR配置中,Director將所有入站請求轉(zhuǎn)發(fā)給集群內(nèi)部節(jié)點(diǎn),但集群內(nèi)部的節(jié)點(diǎn)直接將他們的回復(fù)發(fā)送給客戶端計(jì)算機(jī)(沒有通過Director回來)。
3. LVS調(diào)度算法:
- LVS負(fù)載均衡器使用調(diào)度算法來決定將請求轉(zhuǎn)發(fā)到哪個(gè)后端服務(wù)器。
- 調(diào)度方法決定了如何在這些集群節(jié)點(diǎn)之間分布工作負(fù)荷。
????????當(dāng)Director收到來自客戶端計(jì)算機(jī)訪問她的VIP上的集群服務(wù)的入站請求時(shí),Director必須決定那個(gè)集群節(jié)點(diǎn)應(yīng)該獲得請求。Director可用于做出該決定的調(diào)度方法分成兩個(gè)基本類別:
固定調(diào)度算法:rr,wrr,dh,sh
動(dòng)態(tài)調(diào)度算法:wlc,lblc,lblcr,SED,NQ(后兩種官方站點(diǎn)沒提到)
最常用的四種調(diào)度算法:
- 輪詢(Round Robin):“輪詢”調(diào)度也叫1:1調(diào)度,調(diào)度器通過“輪詢”調(diào)度算法將外部用戶請求按順序1:1的分配到集群中的每個(gè) Real Server上,這種算法平等地對待每一臺Real Server,而不管服務(wù)器上實(shí)際的負(fù)載狀況和連接狀態(tài)。即:按照服務(wù)器列表的順序依次分配請求。
- 加權(quán)輪詢(Weighted Round Robin):“加權(quán)輪詢”調(diào)度算法是根據(jù)Real Server的不同處理能力來調(diào)度訪問請求??梢詫γ颗_Real Server設(shè)置 不同的調(diào)度權(quán)值,對于性能相對較好的Real Server可以設(shè)置較高的權(quán)值,而對于處理能力較弱的Real Server,可以設(shè)置較低的權(quán)值,這樣保證了處理能力強(qiáng)的服務(wù)器處理更多的訪問流量。充分合理的利用 了服務(wù)器資源。同時(shí),調(diào)度器還可以自動(dòng)查詢Real Server的負(fù)載情況,并動(dòng)態(tài)地調(diào)整其權(quán)值。即:根據(jù)服務(wù)器的權(quán)重給予不同的請求分配比例。
- 最少連接數(shù)(Least Connections):“最少連接”調(diào)度算法動(dòng)態(tài)地將網(wǎng)絡(luò)請求調(diào)度到已建立的鏈接數(shù) 最少的服務(wù)器上。如果集群系統(tǒng)的真實(shí)服務(wù)器具有相近的系統(tǒng)性能,采用“最小連接”調(diào)度算法可以較好 地均衡負(fù)載。根據(jù)客戶端的IP地址進(jìn)行哈希計(jì)算,并將請求發(fā)送給與哈希結(jié)果匹配的服務(wù)器。即:將請求發(fā)送給當(dāng)前連接數(shù)最少的服務(wù)器。
- 加權(quán)最少鏈接調(diào)度(Weighted Least Connections) “加權(quán)最少鏈接調(diào)度”是“最少連接調(diào)度”的超集, 每個(gè)服務(wù)節(jié)點(diǎn)可以用相應(yīng)的權(quán)值表示其處理能力,而系統(tǒng)管理員可以動(dòng)態(tài)的設(shè)置相應(yīng)的權(quán)值,缺省權(quán)值 為1,加權(quán)最小連接調(diào)度在分配新連接請求時(shí)盡可能使服務(wù)節(jié)點(diǎn)的已建立連接數(shù)和其權(quán)值成正比。即:通過權(quán)值和已建立連接數(shù)來確定負(fù)載均衡器分配連接請求的優(yōu)先級。
4. LVS-DR集群介紹:
LVS-DR(Direct Routing)模式是LVS中最常用的一種模式。在LVS-DR模式下,負(fù)載均衡器通過ARP協(xié)議將客戶端請求的目標(biāo)MAC地址修改為后端服務(wù)器的MAC地址,并直接將請求轉(zhuǎn)發(fā)給目標(biāo)服務(wù)器。后端服務(wù)器處理請求后,將響應(yīng)發(fā)送回客戶端,繞過負(fù)載均衡器。
工作原理:
-
外部客戶端發(fā)送請求到LVS集群的虛擬IP地址(VIP)。
-
請求到達(dá)LVS負(fù)載均衡器,并根據(jù)選定的調(diào)度算法選擇一個(gè)后端服務(wù)器。
-
負(fù)載均衡器通過ARP協(xié)議將請求的目標(biāo)MAC地址修改為目標(biāo)服務(wù)器的MAC地址。
-
負(fù)載均衡器將修改后的請求直接轉(zhuǎn)發(fā)給目標(biāo)服務(wù)器。
-
目標(biāo)服務(wù)器處理請求并生成響應(yīng)。
-
服務(wù)器將響應(yīng)直接發(fā)送給客戶端,繞過負(fù)載均衡器。
二.LVS-DR搭建
?1.RS配置
1)兩臺RS,需要下載好httpd軟件并準(zhǔn)備好配置文件
#RS1
#下載httpd
yum install -y httpd
#定義配置文件
echo this is RS2 > /var/www/html/index.html
#查看配置文件
cat /var/www/html/index.html
#結(jié)果顯示
this is RS2
#重啟服務(wù)
systemctl start httpd
#查看是否成功
curl 192.168.136.135
#結(jié)果顯示
this is RS1
#RS2
#下載httpd
yum install -y httpd
#定義配置文件
echo this is RS2 > /var/www/html/index.html
#查看配置文件
cat /var/www/html/index.html
#結(jié)果顯示
this is RS2
#重啟服務(wù)
systemctl start httpd
#查看是否成功
curl 192.168.136.136
#結(jié)果顯示
this is RS2
?2)添加虛擬IP(vip)、添加訪問本地vip的靜態(tài)路由并抑制ARP
#RS1
#在本地環(huán)回接口創(chuàng)建子接口并添加虛擬IP。ifconfig開機(jī)失效
ifconfig lo:11 192.168.136.11 netmask 255.255.255.255 up
#添加靜態(tài)路由。route同樣開機(jī)失效
route add -host 192.168.136.11 dev lo
#抑制ARP
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
#RS2
#在本地環(huán)回接口創(chuàng)建子接口并添加虛擬IP。ifconfig開機(jī)失效
ifconfig lo:22 192.168.136.22 netmask 255.255.255.255 up
#添加靜態(tài)路由。route同樣開機(jī)失效
route add -host 192.168.136.22 dev lo
#抑制ARP
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
?2.DS
1)安裝ipvsadm
#下載ipvsadm
yum install ipvsadm -y
#開啟ipvsadm服務(wù)
systemctl start ipvsadm
2)?添加虛擬IP(vip):
ifconfig ens33:11 192.168.136.11 netmask 255.255.255.0 up
3)添加服務(wù)
ipvsadm -C ?
##清空ipvsadm配置
ipvsadm -At 192.168.136.11:80 -s rr
##配置LVS虛擬IP(VIP)
?
ipvsadm -at 192.168.136.11:80 -r 192.168.136.135:80 -g
##配置后端真實(shí)服務(wù)器
?
ipvsadm -at 192.168.136.11:80 -r 192.168.136.136:80 -g
##配置后端真實(shí)服務(wù)器
ipvsadm -Ln
##查看ipvsadm配置
?刪除命令如下:
ipvsadm -D -t 192.168.136.11:80 -s wrr ?文章來源:http://www.zghlxwxcb.cn/news/detail-647304.html
##刪除LVS虛擬IP配置
?
ipvsadm -d -t 192.168.136.11:80 -r 192.168.136.135:80
ipvsadm -d -t 192.168.136.11:80 -r 192.168.136.136:80
##刪除后端真實(shí)服務(wù)器配置文章來源地址http://www.zghlxwxcb.cn/news/detail-647304.html
到了這里,關(guān)于LVS簡介及LVS-DR搭建的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!