LVS負(fù)載均衡群集概念的一些詳細(xì)解答-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)負(fù)載均衡(Cloud Load Balancer)是對(duì)多臺(tái)云服務(wù)器進(jìn)行流量分發(fā)的服務(wù)。創(chuàng)新互聯(lián)負(fù)載均衡可以通過(guò)流量分發(fā)擴(kuò)展應(yīng)用系統(tǒng)對(duì)外的服務(wù)能力,通過(guò)消除單點(diǎn)故障提升應(yīng)用系統(tǒng)的可用性。創(chuàng)新互聯(lián)負(fù)載均衡服務(wù)通過(guò)設(shè)置虛擬服務(wù)地址(VIP),將位于同一地域的多臺(tái)云服務(wù)器資源虛擬成一個(gè)高性能、高可用的應(yīng)用服務(wù)池。根據(jù)應(yīng)用指定的方式,將來(lái)自客戶端的網(wǎng)絡(luò)請(qǐng)求分發(fā)到云服務(wù)器池中。創(chuàng)新互聯(lián)負(fù)載均衡服務(wù)會(huì)檢查云服務(wù)器池中云服務(wù)器實(shí)例的健康狀態(tài),自動(dòng)隔離異常狀態(tài)的實(shí)例,從而解決了云服務(wù)器的單點(diǎn)問(wèn)題,同時(shí)提高了應(yīng)用的整體服務(wù)能力。今天創(chuàng)新互聯(lián)給大家介紹下LVS負(fù)載均衡群集概念的一些詳細(xì)解答

創(chuàng)新互聯(lián)建站從2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元敖漢做網(wǎng)站,已為上家服務(wù),為敖漢各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:028-86922220

LVS負(fù)載均衡群集概念的一些詳細(xì)解答

在各種互聯(lián)網(wǎng)應(yīng)用中,隨著站點(diǎn)對(duì)硬件性能、響應(yīng)速度、服務(wù)穩(wěn)定性、數(shù)據(jù)可靠性等要求越來(lái)越高,單臺(tái)云服務(wù)器將難以承擔(dān)所有的訪問(wèn)。除了使用價(jià)格昂貴的大型機(jī)、專用負(fù)載分流設(shè)備以外,企業(yè)中還有另外一種選擇來(lái)解決難題,就是構(gòu)建群集服務(wù)器——通過(guò)整個(gè)多臺(tái)相對(duì)廉價(jià)的普通服務(wù)器,以同一個(gè)地址提供相同的服務(wù)。

在Linux系統(tǒng)中,有一種非常常用的群集技術(shù)——LVS(Linux Virtual Server,Linux虛擬服務(wù)器)。

博文大綱:
一、群集技術(shù)概述;
二、LVS虛擬服務(wù)器詳解;
三、NFS共享存儲(chǔ)服務(wù)詳解;

LVS群集應(yīng)用基礎(chǔ)

群集:表示一群、一串的意思,用在服務(wù)器領(lǐng)域則表示大量服務(wù)器的集合體,以區(qū)分于單個(gè)服務(wù)器。

一、群集技術(shù)概述

根據(jù)實(shí)際企業(yè)環(huán)境的不同,群集所提供的功能也各不相同,采用的技術(shù)細(xì)節(jié)也可能各有千秋。然而從整體上來(lái)看,需要先了解一些關(guān)于群集的共性特征,這樣才能在構(gòu)建和維護(hù)群集的工作中做到心中有數(shù),避免操作上的盲目性。

1.群集的類型

無(wú)論是哪種群集,都至少包括兩臺(tái)節(jié)點(diǎn)服務(wù)器,而對(duì)外表現(xiàn)為一個(gè)整體,只提供一個(gè)訪問(wèn)入口(域名或IP地址),相當(dāng)于一臺(tái)大型計(jì)算機(jī)。

根據(jù)群集所針對(duì)的目標(biāo)差異,可分為以下三種類型:

  • 負(fù)載均衡群集(Load Balance Cluster):,簡(jiǎn)稱LB,以提高應(yīng)用系統(tǒng)的響應(yīng)能力、盡可能處理更多的訪問(wèn)請(qǐng)求,減少延遲為目標(biāo),獲得高并發(fā)、高負(fù)載的整體性能。例如:“DNS輪詢”、“應(yīng)用層交換”、“反向代理”等都可用作負(fù)載均衡群集。LB的負(fù)載分配依懶于主節(jié)點(diǎn)的分流算法,將來(lái)自客戶機(jī)的訪問(wèn)請(qǐng)求分擔(dān)給多個(gè)服務(wù)器節(jié)點(diǎn),從而緩解整個(gè)系統(tǒng)的負(fù)載壓力;
  • 高可用群集(High Availability Cluster):簡(jiǎn)稱HA,以提高應(yīng)用系統(tǒng)的可靠性,盡可能地減少中斷時(shí)間為目標(biāo),確保服務(wù)的連續(xù)性,達(dá)到高可用(HA)的容錯(cuò)效果。例如:“故障切換”、“雙機(jī)熱備”、“多機(jī)熱備”等屬于高可用群集技術(shù)。HA的工作方式包括雙工和主從兩種模式。雙工即所有節(jié)點(diǎn)同時(shí)在線;主從則只有主節(jié)點(diǎn)在線,但當(dāng)出現(xiàn)故障時(shí)從節(jié)點(diǎn)能自動(dòng)切換為主節(jié)點(diǎn);
  • 高性能運(yùn)算群集(High Performance Computer  Cluster):簡(jiǎn)稱HPC,以提高應(yīng)用系統(tǒng)的CPU運(yùn)算速度,擴(kuò)展硬件資源和分析能力為目標(biāo),獲得相當(dāng)于大型、超級(jí)計(jì)算機(jī)的高性能運(yùn)算(HPC)能力。例如:“云計(jì)算”、“網(wǎng)格計(jì)算”也可視為高性能運(yùn)算的一種。高性能運(yùn)算群集的高性能依賴于“分布式運(yùn)算”、“并行計(jì)算”,通過(guò)專用硬件和軟件將多個(gè)服務(wù)器的CPU、內(nèi)存等資源整合在一起,實(shí)現(xiàn)只有大型、超級(jí)計(jì)算機(jī)才具備的計(jì)算能力。

不同類型的群集在必要的時(shí)候可以合并,如高可用的負(fù)載均衡群集。

2.負(fù)載均衡的分層結(jié)構(gòu)

在典型負(fù)載均衡群集中,包括三個(gè)層次的組件,前端至少有一個(gè)負(fù)載調(diào)度器負(fù)責(zé)相應(yīng)并分發(fā)來(lái)自客戶機(jī)的訪問(wèn)請(qǐng)求;后端由大量真實(shí)服務(wù)器構(gòu)成服務(wù)器池,提供實(shí)際的應(yīng)用服務(wù),整個(gè)群集的伸縮性通過(guò)增加、刪除服務(wù)器節(jié)點(diǎn)來(lái)完成,而這些過(guò)程對(duì)客戶機(jī)是透明的,為了保持服務(wù)的一致性,所有節(jié)點(diǎn)使用共享存儲(chǔ)設(shè)備。如圖:
LVS負(fù)載均衡群集概念的一些詳細(xì)解答

圖中各層的詳細(xì)介紹:

  • 第一層,負(fù)載調(diào)度器: 這是訪問(wèn)整個(gè)群集系統(tǒng)的唯一入口,對(duì)外使用服務(wù)器公有的VIP(虛擬IP)地址,也稱為群集IP地址。通常會(huì)配置主、備兩臺(tái)調(diào)度器實(shí)現(xiàn)熱備份、當(dāng)主調(diào)度器失效后平滑替換至備用調(diào)度器,確保高可用性;
  • 第二層,服務(wù)器池:群集所提供的應(yīng)用服務(wù)(如HTTP、FTP)由服務(wù)器池承擔(dān),其中每個(gè)節(jié)點(diǎn)具有獨(dú)立的RIP(真實(shí)IP)地址,只處理調(diào)度器分發(fā)過(guò)來(lái)的客戶機(jī)請(qǐng)求。當(dāng)某個(gè)節(jié)點(diǎn)暫時(shí)失效時(shí),負(fù)載調(diào)度器的容錯(cuò)機(jī)制會(huì)將其隔離,等待錯(cuò)誤排除以后再重新納入服務(wù)器池;
  • 第三層,共享存儲(chǔ):為服務(wù)器池中的所有節(jié)點(diǎn)提供穩(wěn)定、一致的文件存取服務(wù),確保整個(gè)群集的統(tǒng)一性。在Linux/UNIX環(huán)境中,共享存儲(chǔ)可以使用NAS設(shè)備,或者提供NFS(網(wǎng)絡(luò)文件系統(tǒng))共享服務(wù)的專用服務(wù)器;
3.負(fù)載均衡的工作模式

關(guān)于群集的負(fù)載調(diào)度技術(shù),可以基于IP、端口、內(nèi)容等進(jìn)行分發(fā),其中基于IP的負(fù)載調(diào)度是效率高的。

基于IP的負(fù)載均衡模式中,常見(jiàn)的有:

地址轉(zhuǎn)換:簡(jiǎn)稱NAT模式,類似于防火墻的私有網(wǎng)絡(luò)結(jié)構(gòu),負(fù)載調(diào)度器作為所有服務(wù)器節(jié)點(diǎn)的網(wǎng)關(guān),及作為客戶機(jī)的訪問(wèn)入口。服務(wù)器節(jié)點(diǎn)使用私有IP地址,與負(fù)載調(diào)度器位于同一個(gè)物理網(wǎng)絡(luò),安全性要優(yōu)于其他兩種方式。如圖:
LVS負(fù)載均衡群集概念的一些詳細(xì)解答
NAT模式的實(shí)現(xiàn)步驟可以參考博文:LVS負(fù)載均衡群集之構(gòu)建NAT模式,可跟做?。?!
IP隧道:簡(jiǎn)稱TUN模式,采用開(kāi)放式的網(wǎng)絡(luò)結(jié)構(gòu),負(fù)載調(diào)度器僅作為客戶機(jī)的訪問(wèn)入口,各節(jié)點(diǎn)通過(guò)各自的Internet連接直接回應(yīng)客戶機(jī),而不再經(jīng)過(guò)負(fù)載調(diào)度器。服務(wù)器節(jié)點(diǎn)分散在互聯(lián)網(wǎng)中的不同位置,具有獨(dú)立的公網(wǎng)IP地址,通過(guò)專用IP隧道與負(fù)載調(diào)度器相互通信。如圖:
LVS負(fù)載均衡群集概念的一些詳細(xì)解答
直接路由:簡(jiǎn)稱DR模式,采用半開(kāi)放式的網(wǎng)絡(luò)結(jié)構(gòu),與TUN模式的結(jié)構(gòu)相似,但各節(jié)點(diǎn)并不是分散在各地,而是與調(diào)度器位于同一個(gè)物理網(wǎng)絡(luò)。負(fù)責(zé)調(diào)度器與各節(jié)點(diǎn)服務(wù)器通過(guò)本地網(wǎng)絡(luò)連接,不需要建立專用的IP隧道。如圖:
LVS負(fù)載均衡群集概念的一些詳細(xì)解答
DR模式的實(shí)現(xiàn)步驟可參考博文:LVS負(fù)載均衡群集之構(gòu)建DR模式,可跟做?。?!
以上三種工作模式中,NAT方式只需要一個(gè)公網(wǎng)IP地址,從而成為最易用的一種負(fù)載均衡模式,安全性也比較好,許多硬件負(fù)載均衡設(shè)備就采用這種方式,相比較而言,DR模式和TUN模式的負(fù)載能力更加強(qiáng)大,使用范圍更廣,但節(jié)點(diǎn)的安全性要稍差一些。

二、LVS虛擬服務(wù)器詳解

Linux Virtual Server是針對(duì)Linux內(nèi)核開(kāi)發(fā)的一個(gè)負(fù)載均衡的項(xiàng)目,其官方網(wǎng)站是http://www.linuxvirtualserver.org/ 。LVS實(shí)際上相當(dāng)于基于IP地址的虛擬化應(yīng)用,為基于IP地址和內(nèi)容請(qǐng)求分發(fā)的負(fù)載均衡提出了一種高效的解決方法。

LVS現(xiàn)在已成為L(zhǎng)inux內(nèi)核的一部分,默認(rèn)編譯為ip_vs模塊,必要時(shí)能夠自動(dòng)調(diào)用。在Centos 7系統(tǒng)中,手動(dòng)加載ip_vs模塊,可以執(zhí)行以下命令:

 [root@localhost ~]# modprobe ip_vs                   //加載IP_vs模塊
[root@localhost ~]# cat /proc/net/ip_vs                 //查看IP_vs版本信息
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port Forward Weight ActiveConn InActConn
1.LVS的負(fù)載調(diào)度算法

針對(duì)不同的網(wǎng)絡(luò)服務(wù)和配置需要,LVS調(diào)度器提供了多種不同的負(fù)載調(diào)度算法,其中最常用的幾種算法:

  • 輪詢(Round Robin):將收到的訪問(wèn)請(qǐng)求按照順序輪流分配給群集中的各節(jié)點(diǎn)(真實(shí)服務(wù)器)均等地對(duì)待每臺(tái)服務(wù)器,而不管服務(wù)器實(shí)際的連接數(shù)和系統(tǒng)負(fù)載;
  • 加權(quán)輪詢(Weighted Round Robin):根據(jù)真實(shí)服務(wù)器的處理能力輪流分配收到的訪問(wèn)請(qǐng)求,調(diào)度器可以自動(dòng)查詢各節(jié)點(diǎn)的負(fù)載情況,并動(dòng)態(tài)調(diào)整其權(quán)重。這樣可以保證處理能力強(qiáng)的服務(wù)器承擔(dān)更多的訪問(wèn)流量;
  • 最少連接(Least Connections):根據(jù)真實(shí)服務(wù)器已建立的連接數(shù)進(jìn)行分配,將收到的訪問(wèn)請(qǐng)求優(yōu)先分配給連接數(shù)最少的節(jié)點(diǎn)。如果所有的服務(wù)器節(jié)點(diǎn)性能相近,采用這種方式可以更好地負(fù)載均衡;
  • 加權(quán)最少連接(Weighted  Least Connections):在服務(wù)器節(jié)點(diǎn)的性能差異較大的情況下,可以為真實(shí)的服務(wù)器自動(dòng)調(diào)整權(quán)重,權(quán)重較高的節(jié)點(diǎn)講承擔(dān)更大比例的活動(dòng)連接負(fù)載。
2.使用ipvsadm管理工具

ipvsadm是在負(fù)載調(diào)度器上使用的LVS群集管理工具,通過(guò)調(diào)用ip_vs模塊來(lái)添加、刪除服務(wù)器節(jié)點(diǎn),以及查看群集的運(yùn)行狀態(tài)。

在CentOS 7系統(tǒng)默認(rèn)沒(méi)有安裝,需要自行安裝!

[root@localhost ~]# yum -y install ipvsadm
[root@localhost ~]# ipvsadm -v
ipvsadm v1.27 2008/5/15 (compiled with popt and IPVS v1.2.1)

ipvsadm命令的操作方法:

[root@localhost ~]# ipvsadm -A -t 192.168.1.254:80 -s rr
//群集的VIP地址是192.168.1.254,針對(duì)TCP的80端口提供負(fù)載分流服務(wù),使用的調(diào)度算法是輪詢。

命令中各選項(xiàng)的含義:

  • “-A”表示添加虛擬服務(wù)器;
  • “-t”用來(lái)制定VIP地址及TCP端口;
  • “-s”用來(lái)制定負(fù)載調(diào)度算法;
    輪詢(rr)、加權(quán)輪詢(wrr)、最少連接(lc)、加權(quán)最少連接(wlc)。
[root@localhost ~]# ipvsadm -a -t 192.168.1.254:80 -r 192.168.1.100 -m -w 1
//為虛擬服務(wù)器添加一個(gè)IP為192.168.1.254的真實(shí)服務(wù)器

命令中各選項(xiàng)(及相關(guān)選項(xiàng))的含義:

  • -a:添加真實(shí)服務(wù)器;
  • -t:指定VIP地址及TCP端口;
  • -r:指定RIP地址及TCP端口(端口可以省略);
  • -m:使用NAT群集模式;
  • -g:使用DR群集模式;
  • -i:使用TUN群集模式;
  • -w:設(shè)置權(quán)重(權(quán)重為0時(shí)表示暫停節(jié)點(diǎn),默認(rèn)是1);
[root@localhost ~]# ipvsadm -ln
//查看群集節(jié)點(diǎn)狀態(tài)
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port      Forward Weight ActiveConn InActConn
TCP  192.168.1.254:80 rr
  -> 192.168.1.100:80       Masq   1    0      0  
   //Forward列對(duì)應(yīng)的是Masq(地址偽裝),表示采用的群集模式為NAT;
   ActiveConn列:當(dāng)前連接數(shù);
   InActConn列:正在活動(dòng)的連接數(shù);
[root@localhost ~]# ipvsadm -d -r 192.168.1.100:80 -t 192.168.1.254:80
//從群集中刪除192.168.1.100的節(jié)點(diǎn)(-d表示刪除)
[root@localhost ~]# ipvsadm -D -t 192.168.1.254:80
//刪除192.168.1.254這個(gè)VIP(也就意味這個(gè)群集就沒(méi)了)
[root@localhost ~]# ipvsadm-save
//查看設(shè)置的策略
[root@localhost ~]# ipvsadm-save > 123.txt
//保存策略到指定文件
[root@localhost ~]# cat 123.txt
-A -t 192.168.1.254:http -s rr
-a -t 192.168.1.254:http -r 192.168.1.100:http -m -w 1
//確認(rèn)保存文件內(nèi)容
[root@localhost ~]# ipvsadm -C
//清空所有策略
[root@localhost ~]# ipvsadm-restore < 123.txt
//從指定文件導(dǎo)入策略
三、NFS共享存儲(chǔ)服務(wù)詳解

NFS是一種基于TCP/IP傳輸?shù)木W(wǎng)絡(luò)文件系統(tǒng)協(xié)議。通過(guò)使用NFS協(xié)議,客戶機(jī)可以像訪問(wèn)本地目錄一樣訪問(wèn)遠(yuǎn)程服務(wù)器中的共享資源,對(duì)于絕大多數(shù)的負(fù)載均衡群集來(lái)說(shuō),使用NFS協(xié)議來(lái)共享數(shù)據(jù)存儲(chǔ)是非常常見(jiàn)的做法。

1.使用NFS發(fā)布共享資源

NFS服務(wù)的實(shí)現(xiàn)依賴與RPC機(jī)制,已完成遠(yuǎn)程到本地的映射過(guò)程。需要安裝一下兩個(gè)軟件包才能提供NFS共享服務(wù)。

[root@localhost ~]# yum -y install nfs-utils
//用于NFS共享發(fā)布和訪問(wèn)
[root@localhost ~]# yum -y install rpcbind
//用于RPC支持
2.設(shè)置共享目錄
[root@localhost ~]# mkdir /a
[root@localhost ~]# touch /a/123.txt
//創(chuàng)建目錄、文件用于測(cè)試
[root@localhost ~]# vim /etc/exports
//填寫(xiě)以下內(nèi)容(NFS服務(wù)的配置文件為/etc/exports)
/a    192.168.1.0(rw,sync,no_root_squash)
或者
[root@localhost ~]# vim /etc/exports
//填寫(xiě)以下內(nèi)容(NFS服務(wù)的配置文件為/etc/exports)
/a    192.168.1.1(rw,sync,no_root_squash) 192.168.1.10(ro,sync)

配置文件中

  • (/a)是本地用于共享的目錄;
  • IP地址、網(wǎng)段地址,允許使用*、?通配符;
  • rw(讀寫(xiě))、ro(只讀)、sync(同步)、no_root_squash(表示當(dāng)客戶機(jī)以root身份訪問(wèn)時(shí)賦予本地root權(quán)限,默認(rèn)是root_squash,將作為nfsnobody用戶降權(quán)對(duì)待)
[root@localhost ~]# systemctl start nfs
[root@localhost ~]# systemctl start rpcbind
//啟動(dòng)nfs服務(wù)、rpcbind服務(wù)
[root@localhost ~]# showmount -e
//查看本機(jī)發(fā)布的共享目錄
Export list for localhost.localdomain:
/a 192.168.1.10,192.168.1.1
3.客戶機(jī)訪問(wèn)測(cè)試
[root@localhost ~]# showmount -e 192.168.1.2
//查詢NFS服務(wù)的發(fā)布情況
Export list for 192.168.1.2:
/a 192.168.1.10,192.168.1.1
[root@localhost ~]# mount 192.168.1.2:/a /b
[root@localhost ~]# ls /b
123.txt
//掛載到本地,并查看內(nèi)容
//如果開(kāi)啟同步權(quán)限,有任何變化,NFS服務(wù)器和客戶端會(huì)立馬更新內(nèi)容
4.客戶機(jī)實(shí)現(xiàn)自動(dòng)掛載
[root@localhost ~]# vim /etc/fstab
        ………………           //省略部分內(nèi)容,填寫(xiě)以下內(nèi)容
192.168.1.2:/a      /b            nfs   defaults,_netdev     0 0
//_netdev  建議添加次參數(shù),表示需要網(wǎng)絡(luò)支持;如果想在網(wǎng)絡(luò)終端的情況下放棄掛載,添加一下參數(shù)(soft、intr)實(shí)現(xiàn)軟掛載

如果大家還有什么地方需要了解的可以在創(chuàng)新互聯(lián)官網(wǎng)找我們的專業(yè)技術(shù)工程師的,創(chuàng)新互聯(lián)技術(shù)工程師在行業(yè)內(nèi)擁有十幾年的經(jīng)驗(yàn)了,所以會(huì)比小編回答的更加詳細(xì)專業(yè)。創(chuàng)新互聯(lián)官網(wǎng)鏈接www.yisu.com

另外有需要云服務(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)景需求。

文章標(biāo)題:LVS負(fù)載均衡群集概念的一些詳細(xì)解答-創(chuàng)新互聯(lián)
分享路徑:http://bm7419.com/article28/cdeocp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供動(dòng)態(tài)網(wǎng)站、網(wǎng)站設(shè)計(jì)公司、建站公司、做網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、標(biāo)簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

營(yíng)銷型網(wǎng)站建設(shè)