Liunx-Lvs配置項目練習

1.實驗環境配置

Lvs調度器有兩塊網卡 一塊僅主機和一塊nat網卡,客戶端nat模式,兩臺服務器為僅主機模式

2.集群和分布式簡介

集群與分布式系統簡介

集群 (Cluster)

集群是指將多臺計算機(通常為同構的)通過高速網絡連接起來,作為一個整體對外提供服務。

主要特點:

  • 高可用性:當某個節點故障時,服務可以快速轉移到其他節點
  • 負載均衡:工作負載可以分配到多個節點上
  • 可擴展性:可以通過增加節點來提升整體性能
  • 共享存儲:通常使用共享存儲系統

常見集群類型:

  1. 高可用集群:確保服務持續可用(如數據庫集群)
  2. 負載均衡集群:分散請求到多個節點(如Web服務器集群)
  3. 高性能計算集群:用于科學計算等需要大量計算資源的場景

分布式系統 (Distributed System)

分布式系統是由多臺計算機通過網絡連接,協同完成任務的系統,這些計算機可以位于不同地理位置。

主要特點:

  • 資源共享:可以共享硬件、軟件和數據
  • 并發性:多個節點可以同時處理不同請求
  • 透明性:用戶無需知道具體由哪個節點提供服務
  • 容錯性:部分節點故障不影響整體系統運行
  • 可擴展性:可以方便地增加節點

關鍵技術:

  • 分布式計算:如MapReduce
  • 分布式存儲:如HDFS、分布式數據庫
  • 分布式通信:如RPC、消息隊列
  • 一致性協議:如Paxos、Raft

集群與分布式的區別

特性集群分布式系統
節點位置通常在同一數據中心可以跨地域分布
節點類型通常同構可以異構
通信延遲低(局域網)可能較高(廣域網)
管理復雜度相對簡單更復雜
典型應用場景Web服務器、數據庫集群云計算平臺、大型互聯網服務

兩者在實際應用中常常結合使用,例如分布式系統可能由多個集群組成。

3.lvs-nat模式數據邏輯

1.客戶端發送訪問請求,請求數據包中含有請求來源(cip),訪問目標地址(VIP)訪問目標端口(9000port)
2.VS服務器接收到訪問請求做DNAT把請求數據包中的目的地由VIP換成RS的RIP和相應端
3.RS1相應請求,發送響應數據包,包中的相應保溫為數據來源(RIP1)響應目標(CIP)相應端口(9000port)
4.VS服務器接收到響應數據包,改變包中的數據來源(RIP1-->VIP),響應目標端口(9000-->80)5.VS服務器把修改過報文的響應數據包回傳給客戶端
6.Ivs的NAT模式接收和返回客戶端數據包時都要經過lvs的調度機,所以vs的調度機容易阻塞

4.lvs-nat實驗配置

首先利用事先編寫的peizhi.sh 的shell腳本給四臺主機配好ip

確保兩臺的http服務為開啟狀態

給兩臺http服務器的index編寫內容,實際情況下兩臺服務器發布配置內容應該為一模一樣,為方便后續實驗驗證,將兩臺服務區分開

將兩臺服務器的網關設置為調度服務器的vip 192.168.182.123

在lvs調度服務器上安裝ipvsadm

首先將lvs調度服務器上開啟ip轉發功能

編寫lvs調度策略

最后在客戶機上訪問http服務

修改策略再次驗證一下

可以看見訪問一次122 訪問兩次121

5.lvs的dr模式和nat模式的區別

LVS(Linux Virtual Server)的 NAT 模式DR 模式 是兩種最常用的負載均衡實現方式,它們在架構、性能、配置復雜度等方面有顯著區別。以下是兩者的核心對比:

1. 數據包轉發原理

特性NAT 模式DR 模式(Direct Routing)
修改內容修改請求和響應的?IP 地址/端口僅修改請求的?MAC 地址
請求路徑客戶端 → LVS → 真實服務器 → LVS → 客戶端客戶端 → LVS → 真實服務器 → 客戶端(直接返回)
響應路徑必須經過 LVS 調度器(SNAT)真實服務器直接返回客戶端(不經過 LVS)

2. 性能對比

特性NAT 模式DR 模式
吞吐量較低(LVS 是瓶頸)極高(僅處理入站請求)
延遲較高(兩次經過 LVS)低(響應不經過 LVS)
適用場景小規模集群、需要端口轉換高性能場景(如大型網站)

3. 網絡配置要求

特性NAT 模式DR 模式
真實服務器(RS)網關必須指向 LVS 調度器可指向其他路由器
IP 轉發需啟用?net.ipv4.ip_forward=1不需要
IP 地址RS 使用私有 IP,LVS 需要公網 IPRS 和 LVS 需在同一局域網,且 RS 可隱藏

4. 配置復雜度

特性NAT 模式DR 模式
LVS 配置簡單(只需 DNAT/SNAT)需配置 ARP 抑制和 MAC 重寫
真實服務器配置簡單(改網關即可)需綁定 VIP 到 lo 接口,并配置 ARP 規則
典型命令ipvsadm -A -t VIP:80 -s rripvsadm -a -t VIP:80 -r RIP:80 -mipvsadm -A -t VIP:80 -s rripvsadm -a -t VIP:80 -r RIP:80 -g

5. 優缺點對比

NAT 模式
  • 優點
    • 支持端口映射(VIP 和 RIP 端口可不同)。
    • 真實服務器可隱藏在內網。
  • 缺點
    • LVS 容易成為性能瓶頸。
    • 需要維護連接狀態(消耗內存)。
DR 模式
  • 優點
    • 性能接近物理極限(響應直接由 RS 返回)。
    • LVS 僅處理入站請求,吞吐量高。
  • 缺點
    • 要求 RS 和 LVS 在同一局域網。
    • 需配置 ARP 抑制,防止 IP 沖突。

6.lvs的dr實驗配置

1.客戶端發送數據幀給vs調度主機幀中內容為客戶端IP+客戶端的MAC+VIP+VIP的MAC
2.VS調度主機接收到數據幀后把幀中的VIP的MAC該為RS1的MAC,此時幀中的數據為客戶端IP+客戶端的MAC+VIP+RS1的MAC
3.RS1得到2中的數據包做出響應回傳數據包,數據包中的內容為VIP+RS1的MAC+客戶端IP+客戶端IP的MAC

我們將server服務器的vip配置在回環接口上,lvs的vip添加在僅主機網卡上。在添加一臺主機模擬路由器裝置。

兩臺服務器以及lvs調度器的網關都為路由器相應的網段;兩臺服務器上配置回環接口vip將lvs調度器的vip添加到網卡上;

編寫回環接口配置vip為192.168.182.200

利用scp命令將配置文件直接傳輸給server2

然后將兩臺服務器和lvs的arp回應關閉

其他主機依次操作,在路由器上開啟火墻的ip偽裝服務,實現五臺主機互相連通

在lvs調度服務器上配置調度策略

在客戶端驗證策略是否生效。

客戶端成功訪問服務器的http服務,且根據策略調度。

7.利用wireshark抓包軟件驗證dr模式的特性

可以觀察到數據包里的ip只在CIP和VIP之間轉換

數據包的mac地址一直在變化

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/89512.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/89512.shtml
英文地址,請注明出處:http://en.pswp.cn/web/89512.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

T5(Text-to-Text Transfer Transformer) 模型

下面是對 T5(Text-to-Text Transfer Transformer) 模型的詳細介紹,包括其原理、架構、訓練方式、優勢與局限,以及與其他模型(如 BERT、GPT)的對比。一、T5 是什么?T5(Text-to-Text T…

PostgreSQL技術大講堂 - 第97講:PG數據庫編碼和區域(locale)答疑解惑

PostgreSQL從入門到精通系列課程,近100節PG技術講解,讓你從小白一步步成長為獨當一面的PG專業人員,點擊這里查看章節內容。 PostgreSQL從入門到精通課程,持續更新,歡迎加入。第97講:PostgreSQL 數據庫編碼…

【IEEE獨立出版 】第六屆機器學習與計算機應用國際學術會議(ICMLCA 2025)

第六屆機器學習與計算機應用國際學術會議(ICMLCA 2025) 大會簡介 第六屆機器學習與計算機應用國際學術會議(ICMLCA 2025)定于2025年10月17-19日在中國深圳隆重舉行。本屆會議將主要關注機器學習和計算機應用面臨的新的挑戰問題和研究方向,著力…

對于編碼電機-520直流減速電機

編碼電機的介紹 編碼器是一種將角位移或者直線位移轉換成一連串電數字脈沖的一種傳感器。我們可以通過編碼器測量電機轉動的位移或者速度信息。 編碼器按照工作原理,可以分為增量式編碼器和絕對式編碼器,絕對式編碼器的每一個位置對應一個確定的數字碼&a…

Rust入門之并發編程基礎(三)

Rust入門之并發編程基礎(三) 題記:6月底7月初,結束北京的工作生活回到二線省會城市發展了,鴿了較久了,要繼續堅持學習Rust,堅持寫博客。 背景 我們平時使用計算機完成某項工作的時候&#xf…

一文讀懂循環神經網絡—深度循環神經網絡(DRNN)

目錄 一、從 RNN 到 DRNN:為什么需要 “深度”? 二、DRNN 的核心結構 1. 時間維度:循環傳遞 2. 空間維度:多層隱藏層 3. 雙向 DRNN(Bidirectional DRNN) 三、DRNN 的關鍵挑戰與優化 1. 梯度消失 / 爆…

磁懸浮軸承系統中由不平衡力引發的惡性循環機制深度解析

磁懸浮軸承系統中由不平衡力引發的 “振動-激勵-更大振動”惡性循環 是一個典型的 正反饋失控過程,其核心在于 傳感器信號的污染 與 控制器對真實位移的誤判。以下是其逐步演進的原理詳解: 惡性循環的觸發與演進 1:不平衡力的產生(根源) 轉子存在質量偏心,質心(CM)偏離…

優迅股份IPO隱憂:毛利水平“兩連降”,研發費用率不及行業均值

撰稿|行星來源|貝多財經近日,廈門優迅芯片股份有限公司(下稱“優迅股份”)的科創板IPO審核狀態變更為“已問詢”,中信證券為其保薦機構。天眼查App信息顯示,優迅股份成立于2003年2月,是中國首批專業從事光通…

Linux探秘坊-------15.線程概念與控制

1.線程概念 1.什么是線程2.線程 vs 進程不同的操作系統有不同的實現方式: linux :直接使用pcb的功能來模擬線程,不創建新的數據結構windows: 使用新的數據結構TCB,來進行實現,一個PCB里有很多個TCB 3.資源劃…

Github庫鏡像到本地私有Gitlab服務器

上一節我們看了如何架設自己的Gitlab服務器,今天我們看怎么把Github庫轉移到自己的Gitlab上。 首先登錄github,進入自己的庫復制地址。 克隆鏡像庫 在本地新建一個文件夾 在文件夾執行CMD指令 git clone --mirror gitgithub.com:thinbug/A.git–mirror參…

【C++】——類和對象(中)——默認成員函數

一、類的默認成員函數默認成員函數就是用戶沒有顯示實現,不過編譯器會自動生成的成員函數,稱為默認成員函數。一個類默認成員函數一共有6個,在我們不寫的情況下,編譯器就會自動生成這6個成員函數,不過我們重點要學習的…

MATLAB知識點總結

1.將A圖與B圖相同范圍內歸一化顯示在同一個figure上: figure, plot(A(150:450,500)/max(A(150:450,500))) hold on plot(D(150:450,500)/max(D(150:450,500)),‘R’) 將兩幅圖像的一定范圍顯示在同一圖像上。 figure,plot(A(350,100:450)) hold on plot(G(350,100:4…

易天光通信10G SFP+ 1550nm 120KM 雙纖光模塊:遠距離傳輸的實力擔當

目錄 前言 一、10G SFP雙纖光模塊概述 二、易天10G SFP 120KM 雙纖光模塊核心優勢與應用 核心優勢: 主要關鍵應用如下: 三、易天10G SFP 120KM 雙纖光模塊客戶優勢 總結 關于易天 前言 在構建高效穩定的網絡架構時,10G SFP 光模塊 12…

【深度學習】神經網絡 批量標準化-part6

九、批量標準化是一種廣泛使用的神經網絡正則化技術,對每一層的輸入進行標準化,進行縮放和平移,目的是加速訓練,提高模型穩定性和泛化能力,通常在全連接層或是卷積層之和,激活函數之前使用核心思想對每一批…

【數據可視化-67】基于pyecharts的航空安全深度剖析:墜毀航班數據集可視化分析

🧑 博主簡介:曾任某智慧城市類企業算法總監,目前在美國市場的物流公司從事高級算法工程師一職,深耕人工智能領域,精通python數據挖掘、可視化、機器學習等,發表過AI相關的專利并多次在AI類比賽中獲獎。CSDN…

【科研繪圖系列】R語言繪制分組箱線圖

文章目錄 介紹 加載R包 數據下載 導入數據 畫圖1 畫圖2 合并圖 系統信息 參考 介紹 【科研繪圖系列】R語言繪制分組箱線圖 加載R包 library(ggplot2) library(patchwork)rm(list = ls()) options(stringsAsFactors = F)

基于Android的旅游計劃App

項目介紹系統打開進入登錄頁面,如果沒有注冊過賬號,點擊注冊按鈕輸入賬號、密碼、郵箱即可注冊,注冊后可登錄進入系統,系統分為首頁、預訂、我的三大模塊,下面具體詳細說說三大模塊功能說明。1.首頁顯示旅游備忘或旅游…

【LeetCode 2163. 刪除元素后和的最小差值】解析

目錄LeetCode中國站原文原始題目題目描述示例 1:示例 2:提示:講解分割線的藝術:前后綴分解與優先隊列的完美邂逅第一部分:算法思想 —— “分割線”與前后綴分解1. 想象一條看不見的“分割線”2. 前后綴分解&#xff1…

控制鼠標和鍵盤

控制鼠標和鍵盤的Python庫Python中有多個庫可以用于控制鼠標和鍵盤,常用的包括pyautogui、pynput、keyboard和mouse等。這些庫提供了模擬用戶輸入的功能,適用于自動化測試、GUI操作等場景。使用pyautogui控制鼠標pyautogui是一個跨平臺的庫,支…

基于按鍵開源MultiButton框架深入理解代碼框架(二)(指針的深入理解與應用)

文章目錄2、針對該開源框架理解3、分析代碼3.1 再談指針、數組、數組指針3.2 繼續分析源碼2、針對該開源框架理解 在編寫按鍵模塊的框架中,一定要先梳理按鍵相關的結構體、枚舉等變量。這些數據是判斷按鍵按下、狀態跳轉、以及綁定按鍵事件的核心。 這一部分定義是…