目錄
一、lVS-DR集群概述
?二、LVS-DR數(shù)據(jù)包流向分析
四、LVS-DR特性
五、DR模式 LVS負(fù)載均衡群集部
5.0配置虛擬 IP 地址(VIP?192.168.14.180)
5.1.配置負(fù)載調(diào)度器(192.168.14.101)
5.2部署共享存儲(chǔ)(NFS服務(wù)器:192.168.14.104)
5.3配置節(jié)點(diǎn)服務(wù)器(192.168.14.102、192.168.14.103)
5.4.測(cè)試 LVS 群集
一、lVS-DR集群概述
LVS-DR(Linux Virtual Server Director Server)工作模式,是生產(chǎn)環(huán)境中最常用的一 種工作模式。 1、LVS-DR 工作原理 LVS-DR 模式,Director Server 作為群集的訪問(wèn)入口,不作為網(wǎng)關(guān)使用,節(jié)點(diǎn) Director Server 與 Real Server 需要在同一個(gè)網(wǎng)絡(luò)中,返回給客戶端的數(shù)據(jù)不需要經(jīng)過(guò) Director Server。
?二、LVS-DR數(shù)據(jù)包流向分析
?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-555944.html
LVS-DR(Linux Virtual Server - Direct Routing)是一種負(fù)載均衡的技術(shù),它主要用于在 Linux 服務(wù)器集群中分發(fā)網(wǎng)絡(luò)流量,以提高系統(tǒng)性能和可用性。
在LVS-DR中,數(shù)據(jù)流向如下:
1. 客戶端發(fā)送請(qǐng)求:客戶端發(fā)送請(qǐng)求到負(fù)載均衡器的虛擬 IP 地址。
2. LVS-DR接收請(qǐng)求:負(fù)載均衡器接收到請(qǐng)求后,會(huì)根據(jù)預(yù)先設(shè)定的負(fù)載均衡算法(例如輪詢、源地址哈希等)選擇一個(gè)后端服務(wù)器來(lái)處理該請(qǐng)求。
3. LVS-DR將請(qǐng)求重定向:負(fù)載均衡器將收到的請(qǐng)求包重寫為目標(biāo)服務(wù)器的 IP 地址,并將該請(qǐng)求包發(fā)送給目標(biāo)服務(wù)器,而不是自己來(lái)處理該請(qǐng)求。
4. 目標(biāo)服務(wù)器接收請(qǐng)求:目標(biāo)服務(wù)器接收到請(qǐng)求后,處理該請(qǐng)求并生成響應(yīng)。
5. 目標(biāo)服務(wù)器發(fā)送響應(yīng):目標(biāo)服務(wù)器生成響應(yīng)后,將響應(yīng)包直接發(fā)送給客戶端,繞過(guò)負(fù)載均衡器。
6. 客戶端接收響應(yīng):客戶端接收到目標(biāo)服務(wù)器發(fā)送的響應(yīng),完成整個(gè)請(qǐng)求-響應(yīng)過(guò)程。總結(jié)起來(lái),LVS-DR的數(shù)據(jù)流向是從客戶端發(fā)送請(qǐng)求到負(fù)載均衡器,負(fù)載均衡器通過(guò)重寫請(qǐng)求包并將其發(fā)送給目標(biāo)服務(wù)器,目標(biāo)服務(wù)器處理請(qǐng)求并直接向客戶端發(fā)送響應(yīng),繞過(guò)負(fù)載均衡器。這種方式可以提高系統(tǒng)的性能和可擴(kuò)展性。
四、LVS-DR特性
(1)Director Server 和 Real Server 必須在同一個(gè)物理網(wǎng)絡(luò)中。
(2)Real Server 可以使用私有地址,也可以使用公網(wǎng)地址。如果使用公網(wǎng)地址,可以通過(guò)互聯(lián)網(wǎng)對(duì) RIP 進(jìn)行直接訪問(wèn)。
(3)Director Server作為群集的訪問(wèn)入口,但不作為網(wǎng)關(guān)使用。
(4)所有的請(qǐng)求報(bào)文經(jīng)由 Director Server,但回復(fù)響應(yīng)報(bào)文不能經(jīng)過(guò) Director Server。
(5)Real Server 的網(wǎng)關(guān)不允許指向 Director Server IP,即Real Server發(fā)送的數(shù)據(jù)包不允許經(jīng)過(guò) Director Server。
(6)Real Server 上的 lo 接口配置 VIP 的 IP 地址。
五、DR模式 LVS負(fù)載均衡群集部
DR 服務(wù)器:192.168.14.101
Web 服務(wù)器1:192.168.14.102
Web 服務(wù)器2:192.168.14.103
vip:192.168.14.180
NFS服務(wù)器:192.168.14.104
5.0配置虛擬 IP 地址(VIP?192.168.14.180)
?文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-555944.html
5.1.配置負(fù)載調(diào)度器(192.168.14.101)
systemctl stop firewalld.service
setenforce 0
modprobe ip_vs
cat /proc/net/ip_vs
yum -y install ipvsadm
(1)配置虛擬 IP 地址(VIP:192.168.14.180)
cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-ens33:0 #若隧道模式,復(fù)制為ifcfg-tunl0
vim ifcfg-ens33:0
DEVICE=ens33:0
ONBOOT=yes
IPADDR=192.168.14.180
NETMASK=255.255.255.255
ifup ens33:0
ifconfig ens33:0
(2)調(diào)整 proc 響應(yīng)參數(shù)
#由于 LVS 負(fù)載調(diào)度器和各節(jié)點(diǎn)需要共用 VIP 地址,需要關(guān)閉 icmp 的重定向,不充當(dāng)路由器。
vim /etc/sysctl.conf
net.ipv4.ip_forward = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0
sysctl -p
(3)配置負(fù)載分配策略
ipvsadm-save > /etc/sysconfig/ipvsadm
systemctl start ipvsadm
ipvsadm -C
ipvsadm -A -t 192.168.14.180:80 -s rr
ipvsadm -a -t 192.168.14.180:80 -r 192.168.14.102:80 -g #若隧道模式,-g替換為-i
ipvsadm -a -t 192.168.14.180:80 -r 192.168.14.103:80 -g
ipvsadm
ipvsadm -ln #查看節(jié)點(diǎn)狀態(tài),Route代表 DR模式
5.2部署共享存儲(chǔ)(NFS服務(wù)器:192.168.14.104)
systemctl stop firewalld.service
setenforce 0
yum -y install nfs-utils rpcbind
mkdir /opt/kgc /opt/benet
chmod 777 /opt/kgc /opt/benet
vim /etc/exports
/usr/share *(ro,sync)
/opt/kgc 192.168.10.0/24(rw,sync)
/opt/benet 192.168.10.0/24(rw,sync)
systemctl start nfs.service
systemctl start rpcbind.service
5.3配置節(jié)點(diǎn)服務(wù)器(192.168.14.102、192.168.14.103)
3.配置節(jié)點(diǎn)服務(wù)器(192.168.14.102、192.168.14.103)
systemctl stop firewalld.service
setenforce 0
(1)配置虛擬 IP 地址(VIP:192.168.14.180)
#此地址僅用作發(fā)送 Web響應(yīng)數(shù)據(jù)包的源地址,并不需要監(jiān)聽客戶機(jī)的訪問(wèn)請(qǐng)求(改由調(diào)度器監(jiān)聽并分發(fā))。因此使用虛接口 lo∶0 來(lái)承載 VIP 地址,并為本機(jī)添加一條路由記錄,將訪問(wèn) VIP 的數(shù)據(jù)限制在本地,以避免通信紊亂。
cd /etc/sysconfig/network-scripts/
cp ifcfg-lo ifcfg-lo:0
vim ifcfg-lo:0
DEVICE=lo:0
ONBOOT=yes
IPADDR=192.168.14.180
NETMASK=255.255.255.255 #注意:子網(wǎng)掩碼必須全為 1
ifup lo:0
ifconfig lo:0
route add -host 192.168.14.180 dev lo:0
vim /etc/rc.local
/sbin/route add -host 192.168.14.180 dev lo:0
chmod +x /etc/rc.d/rc.local
(2)調(diào)整內(nèi)核的 ARP 響應(yīng)參數(shù)以阻止更新 VIP 的 MAC 地址,避免發(fā)生沖突
vim /etc/sysctl.conf
......
net.ipv4.conf.lo.arp_ignore = 1 #系統(tǒng)只響應(yīng)目的IP為本地IP的ARP請(qǐng)求
net.ipv4.conf.lo.arp_announce = 2 #系統(tǒng)不使用IP包的源地址來(lái)設(shè)置ARP請(qǐng)求的源地址,而選擇發(fā)送接口的IP地址
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
sysctl -p
或者
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
sysctl -p
yum -y install nfs-utils rpcbind httpd
systemctl start rpcbind
systemctl start httpd
--192.168.14.102---
mount.nfs 192.168.14.102:/opt/zkr /var/www/html
echo 'this is zkr web!' > /var/www/html/index.html
--192.168.14.103---
mount.nfs 192.168.14.103:/opt/benet /var/www/html
echo 'this is benet web!' > /var/www/html/index.html
5.4.測(cè)試 LVS 群集
在客戶端使用瀏覽器訪問(wèn) :http://192.168.14.180
可以通過(guò)刷新實(shí)現(xiàn)負(fù)載均衡
?
?
到了這里,關(guān)于LVS負(fù)載均衡集群之LVS-DR部署的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!