真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

LVS是如何實(shí)現(xiàn)web服務(wù)的負(fù)載均衡-創(chuàng)新互聯(lián)

下文給大家?guī)?lái)LVS是如何實(shí)現(xiàn)web服務(wù)的負(fù)載均衡,希望能夠給大家在實(shí)際運(yùn)用中帶來(lái)一定的幫助,負(fù)載均衡涉及的東西比較多,理論也不多,網(wǎng)上有很多書(shū)籍,今天我們就用創(chuàng)新互聯(lián)在行業(yè)內(nèi)累計(jì)的經(jīng)驗(yàn)來(lái)做一個(gè)解答。

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、小程序開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了臨清免費(fèi)建站歡迎大家使用!

我們知道LVS項(xiàng)目已提供了一個(gè)實(shí)現(xiàn)可伸縮網(wǎng)絡(luò)服務(wù)的Linux Virtual Server框架。在LVS框架中,提供了含有三種"IP負(fù)載均衡技術(shù)"的IP虛擬云服務(wù)器軟件"IPVS"、"基于內(nèi)容請(qǐng)求分發(fā)的內(nèi)核Layer-7交 換機(jī)KTCPVS"和"集群管理軟件"。這里主要說(shuō)說(shuō)”IP負(fù)載均衡技術(shù)”他的管理工具就是ipvsadm。

LVS是如何實(shí)現(xiàn)web服務(wù)的負(fù)載均衡

1)ipvsadm語(yǔ)法

ipvsadm -A|E -t|u|f service-address [-s scheduler] [-p [timeout]] [-M netmask] [-b sched-flags] ipvsadm -D -t|u|f service-address ipvsadm -C ipvsadm -R ipvsadm -S [-n] ipvsadm -a|e -t|u|f service-address -r server-address [-g|i|m] [-w weight] [-x upper] [-y lower] ipvsadm -d -t|u|f service-address -r server-address ipvsadm -L|l [options] ipvsadm -Z [-t|u|f service-address] ipvsadm --set tcp tcpfin udp ipvsadm --start-daemon state [--mcast-interface interface] [--syncid syncid] ipvsadm --stop-daemon state ipvsadm -h

2)Ipvsadm選項(xiàng)介紹

選項(xiàng)
說(shuō)明
-A (--add-service)在內(nèi)核的虛擬服務(wù)器列表中添加一條新的虛擬IP記錄。也就是增加一臺(tái)新的虛擬服務(wù)器。虛擬IP也就是虛擬服務(wù)器的IP地址。
-E (--edit-service)編輯內(nèi)核虛擬服務(wù)器列表中的一條虛擬服務(wù)器記錄
-D (--delete-service)刪除內(nèi)核虛擬服務(wù)器列表中的一條虛擬服務(wù)器記錄
-C (--clear)清除內(nèi)核虛擬服務(wù)器列表中的所有規(guī)則
-R (--restore)恢復(fù)虛擬服務(wù)器規(guī)則
-S (--save)保存虛擬服務(wù)器規(guī)則,輸出為-R 選項(xiàng)可讀的格式
-a (--add-server)在內(nèi)核虛擬服務(wù)器列表的一條記錄里添加一條新的Real Server記錄。也就是在一個(gè)虛擬服務(wù)器中增加一臺(tái)新的Real Server
-e (--edit-server)編輯一條虛擬服務(wù)器記錄中的某條Real Server記錄
-d (--delete-server)刪除一條虛擬服務(wù)器記錄中的某條Real Server記錄
-L|-l –list顯示內(nèi)核中虛擬服務(wù)器列
-t說(shuō)明虛擬服務(wù)器提供的是tcp服務(wù),此選項(xiàng)后面跟如下格式:[virtual-service-address:port] or [real-server-ip:port]
-u說(shuō)明虛擬服務(wù)器提供的是udp服務(wù),此選項(xiàng)后面跟如下格式:[virtual-service-address:port] or [real-server-ip:port]
-f fwmar說(shuō)明是經(jīng)過(guò)iptables標(biāo)記過(guò)的服務(wù)類型
-s此選項(xiàng)后面跟LVS使用的調(diào)度算法;有這樣幾個(gè)選項(xiàng):rr|wrr|lc|wlc|lblc|lblcr|dh|sh。默認(rèn)的調(diào)度算法是: wlc
-p [timeout]在某個(gè)Real Server上持續(xù)的服務(wù)時(shí)間。也就是說(shuō)來(lái)自同一個(gè)用戶的多次請(qǐng)求,將被同一個(gè)Real Server處理。此參數(shù)一般用于有動(dòng)態(tài)請(qǐng)求的操作中,timeout的默認(rèn)值為360s(幫助文檔寫(xiě)的是300s)。例如:-p 100,表示持續(xù)服務(wù)時(shí)間為00s。
-r指定Real Server的IP地址,此選項(xiàng)后面跟如下格式:[real-server-ip:port]
-g (--gatewaying)指定LVS 的工作模式為直接路由模式(此模式是LVS 默認(rèn)工作模式)
-i (-ipip)指定LVS 的工作模式為隧道模式
-m (--masquerading)指定LVS 的工作模式為NAT模式
-w (--weight) weight指定Real Server的權(quán)值
-c (--connection)顯示LVS目前的連接信息 例如:ipvsadm -L -c
-L --timeout顯示“tcp tcpfin udp”的timeout值,如:ipvsadm -L --timeout
-L --daemon顯示同步守護(hù)進(jìn)程狀態(tài),例如:ipvsadm -L –daemon
-L --stats顯示統(tǒng)計(jì)信息,例如:ipvsadm -L –stats
-L --rate顯示速率信息,例如:ipvsadm -L --rate

3)說(shuō)明: 保存添加的虛擬ip記錄和ipvsadm的規(guī)則可以使用service ipvsadm save,還可以用-S或--save。清除所有記錄和規(guī)則除了使用-C,還以使用--clear。

2 web服務(wù)的負(fù)載均衡


1)實(shí)驗(yàn)準(zhǔn)備:準(zhǔn)備4臺(tái)虛擬機(jī)

@@一臺(tái)作為VS服務(wù)器

@@一臺(tái)作為客戶端

@@兩臺(tái)主機(jī)作為web服務(wù)器,當(dāng)然了,不只是web服務(wù)器。這里只是為了實(shí)驗(yàn)方便,web服務(wù)最常見(jiàn),  

2)網(wǎng)絡(luò)拓?fù)浼暗刂芬?guī)劃

LVS是如何實(shí)現(xiàn)web服務(wù)的負(fù)載均衡

3)環(huán)境配置

為了實(shí)驗(yàn)?zāi)茼樌麑?shí)現(xiàn),關(guān)閉防火墻和selinux;注意這只是實(shí)驗(yàn)環(huán)境中。

[root@vin ~]# iptables -F         # 清空防火墻規(guī)則 [root@vin ~]# setenforce 0        # 臨時(shí)禁用selinux [root@vin ~]#

4)web服務(wù)器配置

為了讓我們看清楚LVS是如何調(diào)度的,我們特意將兩臺(tái)web服務(wù)器的index.html頁(yè)面設(shè)置的不一樣。

@@安裝服務(wù):

[root@vin ~]# yum install httpd -y  [root@vin ~]# echo "Linux web1" > /var/www/html/index.html   # 修改主頁(yè),web2的主頁(yè)內(nèi)容修改為L(zhǎng)inux web2

@@設(shè)置路由:只留一個(gè)網(wǎng)卡并且將網(wǎng)關(guān)指向Director

[root@vin ~]# route -n Kernel IP routing table Destination     Gateway         Genmask         Flags Metric Ref    Use Iface 192.168.14.0    0.0.0.0         255.255.255.0   U     0      0        0 ens33 0.0.0.0         192.168.14.77   0.0.0.0         UG    0      0        0 ens33

5)VS調(diào)度器設(shè)置

@@ 安裝ipvsadm工具

[root@vin ~]# yum install ipvsadm -y        # yum安裝,不過(guò)我已經(jīng)安裝了 Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile Package ipvsadm-1.27-7.el7.x86_64 already installed and latest version Nothing to do  [root@vin ~]# mount /dev/sr0 /mnt             # 掛載光盤(pán) mount: /dev/sr0 is write-protected, mounting read-only [root@vin ~]# rpm -ivh /mnt/Packages/ipvsadm-1.27-7.el7.x86_64.rpm       # rpm安裝 [root@vin ~]#

@@ 開(kāi)啟核心轉(zhuǎn)發(fā)功能

[root@vin ~]# echo 1 > /proc/sys/net/ipv4/ip_forword

@@ 定義集群服務(wù)

[root@vin ~]# ipvsadm -A -t 172.18.14.100:80 -s wrr [root@vin ~]# ipvsadm -a -t 172.18.14.100:80 -r 192.168.14.55 -m -w 3     # 定義web1的權(quán)重為3 [root@vin ~]# ipvsadm -a -t 172.18.14.100:80 -r 192.168.14.66 -m -w 1     # 定義web2的權(quán)重為1(默認(rèn)也是1;可省略) [root@vin ~]# ipvsadm -Ln                         # 查看幾區(qū)服務(wù)      IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags   -> RemoteAddress:Port           Forward Weight ActiveConn InActConn TCP  172.18.14.100:80 wrr   -> 192.168.14.55:80             Masq    3      0          0    -> 192.168.21.66:80             Masq    1      0          0

6)測(cè)試

在客戶端使用for循環(huán)向VIP發(fā)起http訪問(wèn)請(qǐng)求

[root@vint ~]# for i in {1..10};do curl Linux web1 Linux web1 Linux web2 Linux web2 Linux web2 Linux web1 Linux web2 Linux web2 Linux web2 Linux web1 Linux web2

7)結(jié)果分析

觀察訪問(wèn)結(jié)果,我們發(fā)現(xiàn),LVS根據(jù)我們的算法WRR(加權(quán)輪詢)及對(duì)應(yīng)的權(quán)重(3,1)進(jìn)行了調(diào)度。

3 實(shí)現(xiàn)http與https同時(shí)調(diào)度


方案一:同過(guò)添加兩個(gè)集群服務(wù),分別針對(duì)http和https的訪問(wèn)

1)原理剖析:

要實(shí)現(xiàn)http(上面我們已經(jīng)實(shí)現(xiàn)了)與https的調(diào)度,我們第一步要做的就是:為兩臺(tái)服務(wù)提供CA證書(shū),而且這兩個(gè)服務(wù)器上的CA證書(shū)必須完全相同(可以采取先給一個(gè)授權(quán),在復(fù)制到另外一臺(tái)服務(wù)器上),這里我們可以使用Director作為根CA的頒發(fā)機(jī)構(gòu)來(lái)頒發(fā)證書(shū),也可以使用web服務(wù)器的自簽名證書(shū)。然后我們?cè)赩S服務(wù)器上在添加一個(gè)用于https進(jìn)行調(diào)度的集群服務(wù),從而實(shí)現(xiàn)調(diào)度。

2)在web服務(wù)器上實(shí)現(xiàn)https服務(wù)

@@生成證書(shū):這里就不在說(shuō)怎么實(shí)現(xiàn)CA了,請(qǐng)參考博客:http://vinsent.blog.51cto.com/13116656/1964034

3)VS上添加集群服務(wù)

[root@vin ~]# ipvsadm -A -t 172.18.14.100:443 -s wrr [root@vin ~]# ipvsadm -a -t 172.18.14.100:443 -r 192.168.14.55 -m -w 3     # 定義web1的權(quán)重為3 [root@vin ~]# ipvsadm -a -t 172.18.14.100:443 -r 192.168.14.66 -m -w 1     # 定義web2的權(quán)重為1(默認(rèn)也是1;可省略) [root@vin ~]# ipvsadm -Ln                         # 查看幾個(gè)集群服務(wù)      IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags     -> RemoteAddress:Port           Forward Weight ActiveConn InActConn TCP  172.18.14.100:80 wrr     -> 192.168.14.55:80             Masq    3      0          0      -> 192.168.21.66:80             Masq    1      0          0 TCP  172.18.14.100:443 wrr     -> 192.168.14.55:443             Masq    3      0          0      -> 192.168.21.66:443             Masq    1      0          0

4)測(cè)試

[root@vint ~]# for i in {1..10};do curl http://172.18.14.100;curl

方案二:使用防火墻標(biāo)記,實(shí)現(xiàn)http與https的統(tǒng)一調(diào)度。

1)明晰思路

上面實(shí)現(xiàn)了http與https通過(guò)LVS的調(diào)度分別按相應(yīng)算法調(diào)度,但是他們的調(diào)度依然各是各的,我們?cè)趺茨茏孷S服務(wù)將http與https能夠看成一個(gè)服務(wù)進(jìn)行調(diào)度呢,此時(shí)我們想到了Netfilter中的MANGLE表,我們可以在防火墻上做策略,讓訪問(wèn)我的https和http服務(wù)的請(qǐng)求給他們打上標(biāo)記MARK,這樣,在調(diào)度的時(shí)候,我們只需要根據(jù)MARK實(shí)現(xiàn)調(diào)度即可,至于他是究竟是http還是https我們便不在關(guān)心。

2)在VS上配置iptables規(guī)則

[root@vint ~]# iptables -F [root@vint ~]# iptables -F -t nat    # 保證防墻上沒(méi)有其他規(guī)則干擾;注意:這只是實(shí)驗(yàn)環(huán)境 [root@vint ~]# iptables -A -t mangle PREROUTING -p tcp -m multiport --dport 80,443 \ >-d 172.18.14.100 -j MARK --set-mark 10

3)設(shè)置LVS集群服務(wù)

由于我們將二者集合起來(lái)調(diào)度,在Director看來(lái),http訪問(wèn)與https訪問(wèn)都是同一個(gè)服務(wù),所以我們想清空原有的集群服務(wù),在重新添加集群服務(wù)。

[root@vint ~]# ipvsadm -C [root@vint ~]# ipvsadm -Ln         # 確保規(guī)則清除 IP Virtual Server version 1.2.1 (size=4096) Prot LocalAddress:Port Scheduler Flags     -> RemoteAddress:Port           Forward Weight ActiveConn InActConn     [root@vint ~]# ipvsadm -Z         # 清空計(jì)數(shù)器 [root@vin ~]# ipvsadm -A -t -f 10 -s wrr [root@vin ~]# ipvsadm -a -t -f -r 192.168.14.55 -m -w 3     # 定義web1的權(quán)重為3 [root@vin ~]# ipvsadm -a -t -f -r 192.168.14.66 -m -w 1     # 定義web2的權(quán)重為1(默認(rèn)也是1;可省略)

4)測(cè)試

[root@vint ~]# for i in {1..10};do curl http://172.18.14.100;curl https://172.18.14.100;done

看了以上關(guān)于LVS是如何實(shí)現(xiàn)web服務(wù)的負(fù)載均衡,如果大家還有什么地方需要了解的可以在創(chuàng)新互聯(lián)行業(yè)資訊里查找自己感興趣的或者找我們的專業(yè)技術(shù)工程師解答的,創(chuàng)新互聯(lián)技術(shù)工程師在行業(yè)內(nèi)擁有十幾年的經(jīng)驗(yàn)了。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


網(wǎng)頁(yè)名稱:LVS是如何實(shí)現(xiàn)web服務(wù)的負(fù)載均衡-創(chuàng)新互聯(lián)
URL網(wǎng)址:http://weahome.cn/article/dehhhh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部