LVS虛擬伺服器

2021-10-21 10:29:05 字數 2879 閱讀 7067

lvs-dr

lvs-tun

lvs是linux虛擬伺服器,lvs由使用者空間的ipvsadm和核心空間的ipvs組成。ipvsadm用來定義規則,ipvs利用ipvsadm定義的規則工作。lvs是乙個高效的負載均衡器

客戶端傳送的web請求直接傳送到lvs負載均衡器上,lvs通過自己預先設計的演算法將請求傳送給後端的某web伺服器

後端的web伺服器連線的資料是一樣的,所以不管訪問的是哪台伺服器最後訪問的資料都是一樣的

最後根據lvs工作模式的不同,伺服器會以不同的方式將資料傳送回客戶

lvs集群系統有三個部分組成

最前端的負載均衡層ds

——由負載均衡排程器組成,lvs就安裝在負載均衡排程器上

——也可以是乙個真實的server,主要作用類似於乙個路由器

——含有完成lvs功能所設定的路由表,通過路由表將請求傳送給伺服器集群層的應用伺服器上

——在負載均衡層也要安裝對負載均衡器健康檢測的監控模組來保證負載均衡層的安全

中間的伺服器群組層rs

——由一組實際執行的機器組成,真實伺服器可以是web伺服器、ftp伺服器等眾多伺服器中的乙個或者多個

——每個rs之間通過高速網路連線

——可以使用所有的系統平台,linux、windows等

最底層的資料共享儲存層

——是為所有rs提供共享儲存空間和內容一致的儲存區域

——物理實現:一般由磁碟陣列裝置組成

——為了提供內容的一致性,一般可以通過網路共享檔案系統實現

排程演算法型別:

排程演算法一般產生的環境選擇:

一般的網路服務,如http,mail,mysql等

rr:基本輪詢排程

wlc:加權最小連線排程

wrc:加權輪詢排程

基於區域性性的最小連線lblc和帶複製的給予區域性性最小連線lblcr主要適用於web cache和db cache

源位址雜湊排程sh和目標位址雜湊排程dh可以結合使用在防火牆集群中,可以保證整個系統的出入口唯一

當使用者向負載均衡排程器傳送請求,排程器會將請求發往核心空

prerouting鏈首先會接收到使用者請求,判斷目標ip確定是否為本機,是的話將資料報發往input鏈

ipvs是工作在input鏈上的,當請求到達input鏈時,ipvs會將使用者請求和自己定義好的集群服務進行比較,如果使用者請求的就是定義的集群服務,那麼ipvs會強行修改資料報裡的目標ip位址及埠,並將新的資料報發往postrouting鏈 名稱

說明ipvsadm

使用者空間的命令列工具,用於管理集群服務及rs等

ipvs

工作在核心上的input鏈中,可根據使用者定義的集群實現請求**

vs虛擬服務,lvs就是在linux上搭建虛擬伺服器

dsdirector server,前段負載均衡器

rsreal server,後端真實的工作伺服器

vip使用者請求的目標ip

dipdirector server ip,主要用於內部主機通訊的ip位址

ripreal server ip,後端伺服器的ip位址

cipclient ip,訪問客戶端的ip位址

客戶端傳送請求到ds,源位址是cip,目標位址是vip(虛擬ip)

ds將客戶端傳送的請求報文的目標位址修改為rip,然後**出去,讓其去訪問真實的後台伺服器rs

rs收到請求報文,此時的報文的源位址是cip,rs對請求進行處理

rs處理完請求後將報文返回給ds,此時返回的報文源位址為rip,目標位址為cip

ds收到請求後,會將源位址修改為vip返回給客戶端

客戶端傳送的請求會先到達核心空間的prerouting鏈,報文源位址為cip和cip-mac,目標位址為vip和vip-mac

prerrouting鏈檢查資料報的目標ip是否為自己,若是本機則將資料報傳送給input鏈

在input鏈上面工作的ipvs會判斷資料報的請求是否為集群服務,若是則將資料報中的源mac位址修改為dip的mac位址,將目標的mac位址修改為rip的mac位址

由於ds與rs在同乙個網路中,所以是通過資料鏈路層來傳輸的(需要用mac位址來識別)

postrouting鏈檢查目標的mac位址為rip的mac位址,將資料報傳送到rs上

rs發現請求報文的mac位址是自己的mac位址,接收報文進行處理

處理完後將響應報文通過lo介面傳送給ens33網絡卡然後發出,相應報文的源位址為vip和vip-mac,目標位址是cip和cip-mac

客戶端的請求報文先傳送到ds的prerouting鏈上,資料報的源位址為cip,目標位址為vip

prerouting鏈首先會接收到使用者請求,判斷目標ip確定是否為本機,是的話將資料報發往input鏈

工作在input鏈上的ipvs會判斷資料報的請求是否為集群伺服器,若是,則將報文的外部分裝一層ip報文,封裝的ip報文的源ip為dip,目標ip為rip

input鏈將封裝後的報文傳送給postrouting鏈,postrouting鏈根據封裝的報文目標ip將資料報**給對應的rs

rs收到報文後解開外面的封裝,發現裡面還有一層ip首部,目標是自己lo介面的ip位址vip

rs處理報文,將響應報文通過lo介面傳送給ens33網絡卡,然後發回給客戶端,此時的源位址為vip,目標位址為rip

LVS虛擬伺服器

lvs虛擬伺服器 lvs是linux virtual server的簡寫,意即linux虛擬伺服器,是乙個虛擬的伺服器集群系統。本專案在1998年5月由章文嵩博士成立,是中國國內最早出現的自由軟體專案之一。lvs集群採用ip負載均衡技術和基於內容請求分發技術。排程器具有很好的吞吐率,將請求均衡地轉移...

LVS伺服器實驗

一 lvs簡介 lvs linux virtual server 是乙個伺服器集群系統專案。隨著網際網路的飛速發展,人們對於伺服器的要求越來越高。很多網路服務因為訪問次數 式地增 長而不堪重負,不能及時處理使用者的請求,導致使用者進行長時間的等待,大大降低了服務質量。如何建立可伸縮的網路服務來滿足不...

linux虛擬伺服器lvs 負載均衡簡單實踐

原理參考集群的可擴充套件性及其分布式體系結構 4 機器環境 192.168.7.154 負載排程主機 192.168.7.209 虛擬ip 192.168.7.99 真實主機1 192.168.7.4 真實主機2 lvs的負載均衡模型共有三種 位址轉換 nat ip隧道 ip tunneling 和...