<samp id="tdkee"></samp>

    <mark id="tdkee"><acronym id="tdkee"></acronym></mark>

  1. 免费看又黄又无码的网站_久久久高清国产免费观看_亚洲一区二区三区在线免费观看_免费欧洲美女a视频一级毛片_日本最新免费二区三区

    ×

    疫情期間讓我們學習下什么是LVS虛擬服務器

    • 作者:sdfcsd
    • 來源:互聯(lián)網(wǎng)
    • 瀏覽:100
    • 2020-02-05 17:21:22

    LVS即Linux Virtual Server,虛擬服務器是一個可高擴展且高可用的服務器,構(gòu)建在真實服務器集群上。服務器群集的體系結(jié)構(gòu)對最終用戶完全透明,用戶與群集系統(tǒng)進行交互,就好像它只

    LVS即Linux Virtual Server,虛擬服務器是一個可高擴展且高可用的服務器,構(gòu)建在真實服務器集群上。服務器群集的體系結(jié)構(gòu)對最終用戶完全透明,用戶與群集系統(tǒng)進行交互,就好像它只是一個高性能的虛擬服務器一樣。請參考下圖:

    真實服務器和負載均衡器可以通過高速LAN(局域網(wǎng))或地理上分散的WAN(廣域網(wǎng))互連。負載均衡器可以將請求分配給后端不同的服務器,而對外則只顯示為單個IP的虛擬服務。分配的工作方式可以使用IP負載均衡技術(shù)或應用級負載均衡技術(shù)。通過透明地添加或刪除集群中的節(jié)點來實現(xiàn)系統(tǒng)的可伸縮性。通過檢測節(jié)點或守護程序故障并適當?shù)刂匦屡渲孟到y(tǒng)來提供高可用性。

    Linux Virtual Server Project的基本目標是:使用集群技術(shù)為Linux構(gòu)建高性能,高可用性的服務器,提供良好的可擴展性,可靠性和可維護性。

    為什么需要LVS?
    隨著互聯(lián)網(wǎng)的爆炸性增長及其在我們生活中日益重要的作用,互聯(lián)網(wǎng)上的流量急劇增加。服務器上的工作負載也隨之迅速增加,因此服務器很容易在短時間內(nèi)過載,尤其是對于一些受歡迎的網(wǎng)站。為了克服服務器的過載問題,有兩種解決方案:一種是單服務器解決方案,即將服務器升級到性能更高的服務器,但是當請求增加時它很快就會過載,因此我們必須再次升級,升級過程復雜且成本高;另一種是多服務器解決方案,即在服務器集群上構(gòu)建可擴展的網(wǎng)絡服務系統(tǒng)。當負載增加時,我們可以簡單地將新服務器或更多服務器添加到集群中以滿足不斷增長的請求。因此,為網(wǎng)絡服務構(gòu)建服務器集群系統(tǒng)更具可擴展性和成本效益。

    有幾種方法可以構(gòu)建服務器集群:

    A. 基于DNS的負載均衡集群
    DNS負載平衡可能是構(gòu)建網(wǎng)絡服務集群的最簡單方法。它使用域名系統(tǒng)通過將域名解析為服務器的不同IP地址來將請求分發(fā)到不同的服務器。當DNS請求到達DNS服務器以解析域名時,DNS服務器根據(jù)調(diào)度策略(例如以循環(huán)方式)發(fā)出一個服務器IP地址,然后使用相同的本地緩存名稱服務器從客戶端發(fā)出后續(xù)請求在指定的名稱解析生存時間(TTL)中發(fā)送到同一服務器。

    但是,由于客戶端和分層DNS系統(tǒng),很容易導致服務器之間的動態(tài)負載不平衡,因此服務器不容易處理其峰值負載。在DNS服務器上無法很好地選擇名稱映射的TTL值,TTL值很小的話,會導致DNS流量很高,DNS服務器將成為瓶頸。而如果TTL值過高,則動態(tài)負載不平衡將變得更糟。即使TTL值設(shè)置為零,調(diào)度粒度是每個主機,不同用戶的訪問模式可能會導致動態(tài)負載不平衡,因為有些人可能從網(wǎng)站上拉大量頁面,而其他人可能只是瀏覽幾頁而已。

    B. 基于調(diào)度程序的負載均衡集群
    Dispatcher,也稱為負載均衡器,可用于在群集中的服務器之間分配負載,以便服務器的并行服務可以在單個IP地址上顯示為虛擬服務,并且最終用戶可以像單個服務器一樣進行交互而不知道集群中的所有服務器。與基于DNS的負載平衡相比,調(diào)度程序可以以精細的粒度(例如每個連接)調(diào)度請求,以便在服務器之間實現(xiàn)更好的負載平衡。當一臺或多臺服務器發(fā)生故障時,可以屏蔽故障。服務器管理變得越來越容易,管理員可以隨時使用服務器或更多服務器,而且不會中斷最終用戶的服務。

    負載均衡可以在兩個級別完成,即應用級和IP級。例如,Reverse-proxy和pWEB是用于構(gòu)建可伸縮Web服務器的應用程序級負載平衡方法。他們將HTTP請求轉(zhuǎn)發(fā)到群集中的不同Web服務器,獲取結(jié)果,然后將其返回給客戶端。由于在應用程序級別處理HTTP請求和回復的開銷很高,當服務器節(jié)點數(shù)量增加到5或更多時,應用程序級負載均衡器將成為新的瓶頸。

    LVS工作方式
    現(xiàn)在虛擬服務器以三種方式實現(xiàn)。Linux Director中共有三種IP負載均衡技術(shù)(數(shù)據(jù)包轉(zhuǎn)發(fā)方法)。它們是通過NAT的虛擬服務器,通過IP隧道的虛擬服務器和通過直接路由的虛擬服務器。即NAT/DR/IP Tunneling。

    以下小節(jié)將解釋它們的優(yōu)缺點。VS/NAT,VS/TUN 和 VS/DR的比較總結(jié)在下表中:

    A. NAT
    通過NAT的虛擬服務器的優(yōu)點是真實服務器可以運行任何支持TCP / IP協(xié)議的操作系統(tǒng),真實服務器可以使用私有Internet地址,并且負載均衡器只需要1個IP地址。

    缺點是通過NAT的虛擬服務器的可擴展性是有限的。當服務器節(jié)點的數(shù)量增加到大約20或更多時,負載平衡器可能是整個系統(tǒng)的瓶頸,因為請求包和響應包都需要由負載平衡器重寫。假設(shè)TCP數(shù)據(jù)包的平均長度為536字節(jié),重寫數(shù)據(jù)包的平均延遲約為60us(在奔騰處理器上,使用更高的處理器可以減少一點),負載均衡器的最大吞吐量為8.93 MB /秒。假設(shè)真實服務器的平均吞吐量為400Kbytes / s,負載均衡器可以調(diào)度22個真實服務器。

    B. IP Tunneling
    在通過NAT的虛擬服務器中,請求和響應數(shù)據(jù)包都需要通過負載均衡器,當服務器節(jié)點數(shù)量增加到20個或更多時,負載均衡器可能成為新的瓶頸,因為網(wǎng)絡接口的吞吐量最終有限。從許多Internet服務(例如Web服務)可以看出,請求數(shù)據(jù)包通常很短,而響應數(shù)據(jù)包通常包含大量數(shù)據(jù)。

    在通過IP隧道的虛擬服務器中,負載均衡器僅調(diào)度對不同真實服務器的請求,而真實服務器直接向用戶返回回復。因此,負載均衡器可以處理大量請求,它可以調(diào)度超過100個真實服務器,并且它不會成為系統(tǒng)的瓶頸。因此,使用IP隧道將大大增加負載均衡器的最大服務器節(jié)點數(shù)。即使負載均衡器只有100Mbps全雙工網(wǎng)絡適配器,虛擬服務器的最大吞吐量也可以達到1Gbps以上。

    IP隧道功能可用于構(gòu)建高性能的虛擬服務器。構(gòu)建虛擬代理服務器非常好,因為當代理服務器獲得請求時,它可以直接訪問Internet以獲取對象并將它們直接返回給用戶。

    C. Direct Routing
    與通過隧道方法在虛擬服務器中一樣,DR模式僅通過直接路由處理虛擬服務器中的客戶端到服務器的流量,而由后端的真實服務器直接相應數(shù)據(jù)包并發(fā)送到客戶端。這可以大大提高虛擬服務器的可擴展性。

    與通過IP隧道方法的虛擬服務器相比,這種方法沒有隧道開銷,但要求負載均衡器的接口和真實服務器的接口必須在同一網(wǎng)段。

    LVS的架構(gòu)
    對于整個系統(tǒng)的可擴展性,可用性和可管理性,我們通常采用下圖所示的LVS集群中的三層架構(gòu)。

    三層結(jié)構(gòu)包括:
    Load Balancer
    它是整個集群系統(tǒng)的前端機器,并在一組服務器之間平衡來自客戶端的請求,以便客戶端認為所有服務都來自單個IP地址。

    服務器群集
    它是一組運行實際網(wǎng)絡服務的服務器,例如Web,郵件,F(xiàn)TP,DNS和媒體服務。

    共享存儲
    為服務器提供共享存儲空間,以便服務器可以輕松擁有相同的內(nèi)容并提供相同的服務。

    負載均衡器是服務器集群系統(tǒng)的單一入口點,它可以運行在Linux內(nèi)核中實現(xiàn)IP負載平衡技術(shù)的IPVS,或在Linux內(nèi)核中實現(xiàn)應用程序級負載平衡的KTCPVS。當使用IPVS時,所有服務器都需要提供相同的服務和內(nèi)容,負載均衡器根據(jù)指定的調(diào)度算法和每個服務器的負載將新的客戶端請求轉(zhuǎn)發(fā)給服務器。無論選擇哪個服務器,客戶端都應該得到相同的結(jié)果。當使用KTCPVS時,服務器可以具有不同的內(nèi)容,負載均衡器可以根據(jù)請求的內(nèi)容將請求轉(zhuǎn)發(fā)到不同的服務器。由于KTCPVS是在Linux內(nèi)核中實現(xiàn)的,因此中繼數(shù)據(jù)的開銷很小,因此它可以具有高吞吐量。

    可以根據(jù)系統(tǒng)接收的負載更改服務器集群的節(jié)點數(shù)目。當集群中所有服務器都過載時,可以添加更多新服務器來處理不斷增加的工作負載。對于大多數(shù)Internet服務(如Web),請求可以在不同的服務器上并行運行。因此,隨著服務器集群的節(jié)點數(shù)量的增加,整體的性能幾乎可以線性擴展。

    共享存儲可以是數(shù)據(jù)庫系統(tǒng),網(wǎng)絡文件系統(tǒng)或分布式文件系統(tǒng)。服務器節(jié)點需要動態(tài)更新的數(shù)據(jù)應該存儲在基于數(shù)據(jù)的系統(tǒng)中,當服務器節(jié)點并行地讀取或?qū)懭霐?shù)據(jù)庫系統(tǒng)中的數(shù)據(jù)時,數(shù)據(jù)庫系統(tǒng)可以保證并發(fā)數(shù)據(jù)訪問的一致性。靜態(tài)數(shù)據(jù)通常保存在網(wǎng)絡文件系統(tǒng)(如NFS和CIFS)中,以便所有服務器節(jié)點可以共享數(shù)據(jù)。但是,單個網(wǎng)絡文件系統(tǒng)的可擴展性是有限的,例如,單個NFS / CIFS只能支持從4到8個服務器的數(shù)據(jù)訪問。對于大規(guī)模集群系統(tǒng),分布式/集群文件系統(tǒng)可以用于共享存儲,例如GPFS,Coda和GFS,然后共享存儲也可以根據(jù)系統(tǒng)要求進行擴展。

    負載均衡器,服務器集群和共享存儲通常由高速網(wǎng)絡連接,如100Mbps以太網(wǎng)和千兆以太網(wǎng),這樣網(wǎng)絡在系統(tǒng)成長時不會成為系統(tǒng)的瓶頸。

    LVS高可用
    隨著越來越多的任務關(guān)鍵型應用程序在Internet上運行,提供高可用性服務變得越來越重要。集群系統(tǒng)的一個優(yōu)點是它具有硬件和軟件冗余,因為集群系統(tǒng)由許多獨立節(jié)點組成,每個節(jié)點運行一個操作系統(tǒng)和應用軟件的副本。通過檢測節(jié)點或守護程序故障并適當?shù)刂匦屡渲孟到y(tǒng),可以實現(xiàn)高可用性,從而可以由集群中的其余節(jié)點接管工作負載。

    事實上,高可用性是一個很大的領(lǐng)域。高級的高可用系統(tǒng)可以具有可靠的通信子系統(tǒng),成員管理子系統(tǒng),并發(fā)控制子系統(tǒng)等,需要比較多的學習成本。但是,我們現(xiàn)在可以使用一些現(xiàn)有的軟件包來構(gòu)建高度可用的LVS集群系統(tǒng)。

    通常,在負載均衡器上運行服務監(jiān)視器守護程序以定期檢查服務器運行狀況,如下圖所示。如果在指定時間內(nèi)服務器訪問請求或ICMP ECHO_REQUEST沒有響應,服務監(jiān)視器將認為服務器已經(jīng)掛掉,并將其從負載均衡器的可用服務器列表中刪除,因此不會向這個掛掉的服務器再轉(zhuǎn)發(fā)請求。當服務監(jiān)視器檢測掛掉的服務器恢復工作時,服務監(jiān)視器將服務器添加回可用服務器列表。因此,負載均衡器可以自動掩蓋服務守護進程或服務器的故障。此外,管理員還可以使用系統(tǒng)工具添加新服務器以提高系統(tǒng)吞吐量或刪除服務器以進行系統(tǒng)維護,而無需關(guān)閉整個系統(tǒng)服務。

    現(xiàn)在負載均衡器可能成為整個系統(tǒng)的單一故障點。為了防止整個系統(tǒng)因負載均衡器故障而停止運行,我們需要設(shè)置負載均衡器的備份(或多個備份)。兩個心跳守護程序分別在主服務器和備份服務器上運行,它們通過定期檢測到“我還活著”這樣的消息。當備份的心跳守護進程在指定時間內(nèi)無法聽到來自主服務器的心跳消息時,它將接管虛擬IP地址以提供負載均衡服務。當失敗的負載均衡器恢復工作時,有兩種解決方案,一種是自動成為備份負載均衡器,另一種是主動負載均衡器釋放VIP地址,并且恢復一次接管VIP地址并成為主要負載均衡器。

    主負載均衡器具有連接狀態(tài),即連接轉(zhuǎn)發(fā)到哪個服務器。如果備份負載均衡器在沒有這些連接信息的情況下接管,則客戶端必須再次將其請求發(fā)送到訪問服務。為了使負載均衡器故障轉(zhuǎn)移對客戶端應用程序透明,我們在IPVS中實現(xiàn)連接同步,主IPVS負載均衡器通過UDP多播將連接信息同步到備份負載均衡器。當備份負載均衡器在主要負載均衡器發(fā)生故障后接管時,備份負載均衡器將具有大多數(shù)連接狀態(tài),因此幾乎所有連接都可以通過備份負載均衡器繼續(xù)訪問服務。

    免責聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認相關(guān)法律責任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)送郵件至:operations@xinnet.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

    免費咨詢獲取折扣

    Loading
    国产精品视频白浆免费视频_久久久高清国产免费观看_亚洲一区二区三区在线免费观看_免费欧洲美女a视频一级毛片

    <samp id="tdkee"></samp>

      <mark id="tdkee"><acronym id="tdkee"></acronym></mark>