1. 對比 LVS 負載均衡群集的 NAT 模式和 DR 模式,比較其各自的優勢 。2. 基于 openEuler 構建 LVS-DR 群集。

DR 模式

* 負載各節點服務器通過本地網絡連接,不需要建立專用的IP隧道

? ? ? 原理:首先負載均衡器接收到客戶的請求數據包時,根據調度算法決定將請求發送給哪個后端的真實服務器(RS)。然后負載均衡器就把客戶端發送的請求數據包的目標MAC地址改成后端真實服務器的MAC地址(R-MAC)。真實服務器響應完請求后,查看默認路由,把響應后的數據包直接發送給客戶端,不需要經過負載均衡器。

? ? ?優點:負載均衡器只負責將請求包分發給后端節點服務器,而RS將應答包直接發給用戶。所以,減少了負載均衡器的大量數據流動,負載均衡器不再是系統的瓶頸,也能處理很巨大的請求量。

? ? ?缺點:需要負載均衡器與真實服務器RS都有一塊網卡連接到同一物理網段上,必須在同一個局域網環境。

NAT模式:

? ? ? 原理:首先負載均衡器接收到客戶的請求數據包時,根據調度算法決定將請求發送給哪個后端的真實服務器(RS)。然后負載均衡器就把客戶端發送的請求數據包的目標IP地址及端口改成后端真實服務器的IP地址(RIP)。真實服務器響應完請求后,查看默認路由,把響應后的數據包發送給負載均衡器,負載均衡器在接收到響應包后,把包的源地址改成虛擬地址(VIP)然后發送回給客戶端。

? ? ?優點:集群中的服務器可以使用任何支持TCP/IP的操作系統,只要負載均衡器有一個合法的IP地址。

? ? ? 缺點:擴展性有限,當服務器節點增長過多時,由于所有的請求和應答都需要經過負載均衡器,因此負載均衡器將成為整個系統的瓶頸。

兩者的區別:

DR模式不使用調度器為公司網關,而是路由設備,調度器只是分配訪問的請求任務而回應的web頁面,不經過調度器,直接通過網絡設備回應,不容易造成阻塞而且所有節點都使用VIP地址。

在nat模式群集中,LSV負載均衡調度器是所有節點的訪問internet的網關服務器其外網口地址也最為整個群集的VIP地址,調度器是整個公司網關任何請求都要經過調度器,包括回應的。


?

實驗準備環境

1,保持實驗環境干凈

準備四臺機器

負載均衡服務器192.168.1.128
web1192.168.1.129
web2192.168.1.130
客戶端192.168.1.11

VIP為192.168.1.127/32


配置web服務器 web1 web2

首先下載nginx

 yum install nginx -y

設置連接界面

echo "web test page, ip is `hostname -I`" > /usr/share/nginx/html/index.html

測試

在兩臺web服務器中增加VIP的相關配置

綁定地址

Linux Dummy 接口基礎概念
Dummy 接口 是 Linux 操作系統中的一個虛擬網絡接口,它不與任何物理硬件設備關聯,主要用于測試和配置網絡環境。Dummy 接口可以模擬一個網絡接口,允許你在沒有實際網絡硬件的情況下進行網絡相關的操作和測試。

 nmcli con add type dummy ifname dummy1 ipv4.method manual  ipv4.addresses  192.168.1.127/32

ARP抑制

在兩臺web服務器中配置

編輯/etc/sysctl.conf在最后增加一下內容


net.ipv4.conf.all.arp_ignore=1
net.ipv4.conf.all.arp_announce=2
net.ipv4.conf.dummy1.arp_ignore=1
net.ipv4.conf.dummy1.arp_announce=2

然后使其生效?


配置負載均衡192.168.1.128

 nmcli con add type dummy ifname dummy1 ipv4.method manual  ipv4.addresses  192.168.1.127/32

?接著下載管理工具ipvsadm
? ? ? ? ? ? ? ? ? ? ?
[相關參數說明]
[root@Directory ~]# ipvsadm –help
-A ?添加虛擬服務器
-t ?設置群集地址(VIP,Virtual IP)
-s ?指定負載調度算法
-a ?添加真實服務器
-d ?刪除真實服務器
-r ?指定真實服務器(Real Server)的地址
-m ?使用NAT模式;-g、-i分別對應DR、TUN模式
-w ?為節點服務器設置權重,默認為1

yum install ipvsadm -y

查看配置

ipvsadm -Ln

?測試

使用客戶機192.168.1.11

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

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

相關文章

ollama server啟動服務后如何停止

要停止 Ollama 服務器服務,取決于如何啟動該服務的。以下是幾種常見的啟動方法和相應的停止服務的步驟: 1. 直接在命令行中啟動 如果是在命令行中直接啟動 Ollama 服務器的,例如使用以下命令: ollama serve 可以通過以下方式停…

【設計模式】03-理解常見設計模式-行為型模式(專欄完結)

前言 前面我們介紹完創建型模式和創建型模式,這篇介紹最后的行為型模式,也是【設計模式】專欄的最后一篇。 一、概述 行為型模式主要用于處理對象之間的交互和職責分配,以實現更靈活的行為和更好的協作。 二、常見的行為型模式 1、觀察者模…

mapbox基礎,使用geojson加載line線圖層,實現純色填充、圖片填充、虛線和漸變效果

????? 主頁: gis分享者 ????? 感謝各位大佬 點贊?? 收藏? 留言?? 加關注?! ????? 收錄于專欄:mapbox 從入門到精通 文章目錄 一、??前言1.1 ??mapboxgl.Map 地圖對象1.2 ??mapboxgl.Map style屬性1.3 ??line線圖層樣式二、??使用geojson加載…

深入淺出:CUDA是什么,如何利用它進行高效并行計算

在當今這個數據驅動的時代,計算能力的需求日益增加,特別是在深度學習、科學計算和圖像處理等領域。為了滿足這些需求,NVIDIA推出了CUDA(Compute Unified Device Architecture),這是一種并行計算平臺和編程模…

LNMP+Zabbix安裝部署(Zabbix6.0 Lnmp+Zabbix Installation and Deployment)

LNMPZabbix安裝部署(Zabbix6.0) 簡介 LNMP(Linux Nginx MySQL PHP)是一種流行的Web服務器架構,廣泛用于搭建高性能的網站和應用程序。Zabbix 是一個開源的監控軟件,可以用來監控網絡、服務器和應用程序…

Docker 部署 Dify:輕松集成 Ollama 和 DeepSeek

1 Ollama的安裝及使用 1.1 什么是Ollama? Ollama 是一個用于本地部署和運行大型語言模型的框架。 Ollama 的作用包括: 本地模型運行:Ollama 允許在本地機器上運行大型語言模型(如 LLaMA、DeepSeek 等),無…

C++筆記之標準庫中用于處理迭代器的`std::advance`和`std::distance`

C++筆記之標準庫中用于處理迭代器的std::advance和std::distance code review! 文章目錄 C++筆記之標準庫中用于處理迭代器的`std::advance`和`std::distance`一.`std::advance`函數原型參數說明使用場景示例代碼示例 1:移動 `std::vector` 的隨機訪問迭代器示例 2:移動 `st…

工業制造能耗管理新突破,漫途MTIC-ECM平臺助力企業綠色轉型!

在工業制造領域,能源消耗一直是企業運營成本的重要組成部分。隨著“雙碳”目標的推進,如何實現高效能耗管理,成為制造企業亟待解決的問題。漫途MTIC-ECM能源能耗在線監測平臺,結合其自研的硬件產品,為工業制造企業提供…

C語言——深入理解指針(2)(數組與指針)

文章目錄 數組名的理解使用指針訪問數組一維數組傳參的本質冒泡排序二級指針指針數組指針數組模擬二維數組 數組名的理解 之前我們在使用指針訪問數組內容時,有這樣的代碼: int arr[10]{1,2,3,4,5,6,7,8,9,10}; int* p&arr[0];這里我們使用&ar…

在Windows系統中安裝Open WebUI并連接Ollama

Open WebUI是一個開源的大語言模型(LLM)交互界面,支持本地部署與離線運行。通過它,用戶可以在類似ChatGPT的網頁界面中,直接操作本地運行的Ollama等大語言模型工具。 安裝前的核心要求: Python 3.11&#…

Day4:強化學習之Qlearning走迷宮

一、迷宮游戲 1.環境已知 迷宮環境是定義好的,障礙物位置和空位置是已知的; # 定義迷宮 grid [[0, 0, 0, 1, 0],[0, 1, 0, 1, 0],[0, 1, 0, 0, 0],[0, 0, 0, 1, 0],[0, 1, 1, 1, 0] ] 2.獎勵方式已知 如果碰到障礙物則得-1,如果到終點則…

家里WiFi信號穿墻后信號太差怎么處理?

一、首先在調制解調器(俗稱:貓)測試網速,網速達不到聯系運營商; 二、網線影響不大,5類網線跑500M完全沒問題; 三、可以在臥室增加輔助路由器(例如小米AX系列)90~200元區…

視點開場動畫實現(九)

這個相對比較簡單: void COSGObject::FlyTo(double lon, double lat, double hei) {theApp.bNeedModify TRUE;while(!theApp.bCanModify)Sleep(1);em->setViewpoint(osgEarth::Viewpoint("0",lon, lat, 0, 0, -45, hei), 2);theApp.bNeedModify FAL…

保姆級GitHub大文件(100mb-2gb)上傳教程

GLF(Git Large File Storage)安裝使用 使用GitHub desktop上傳大于100mb的文件時報錯 The following files are over 100MB. lf you commit these files, you will no longer beable to push this repository to GitHub.com.term.rarWe recommend you a…

HTML之JavaScript DOM(document)編程處理事件

HTML之JavaScript DOM&#xff08;document&#xff09;編程處理事件 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"…

Redis7——基礎篇(四)

前言&#xff1a;此篇文章系本人學習過程中記錄下來的筆記&#xff0c;里面難免會有不少欠缺的地方&#xff0c;誠心期待大家多多給予指教。 基礎篇&#xff1a; Redis&#xff08;一&#xff09;Redis&#xff08;二&#xff09;Redis&#xff08;三&#xff09; 接上期內容&…

Sprinig源碼解析

前言 Spring 框架是 Java 企業級開發的基石&#xff0c;其源碼設計體現了模塊化、擴展性和靈活性。以下從 IoC 容器、AOP 實現、核心模塊和關鍵設計模式四個角度對 Spring 源碼進行深度解析&#xff0c;幫助理解其底層機制。即使Spring會使用的人見得就能使用。 一、IoC 容器源…

如何簡單的去使用jconsloe 查看線程 (多線程編程篇1)

目錄 前言 1.進程和線程 進程 PCB 的作用 并發編程和并行編程 線程 為什么選擇多線程編程 2.在IDEA中如何簡單創建一個線程 1. 通過繼承Thread類 2. 通過實現 Runnable 接口 3. 使用 Lambda 表達式 3.如何簡單使用jconsloe去查看創建好的線程 前言 2025來了,這是第…

【ISO 14229-1:2023 UDS診斷(ECU復位0x11服務)測試用例CAPL代碼全解析④】

ISO 14229-1:2023 UDS診斷【ECU復位0x11服務】_TestCase04 作者&#xff1a;車端域控測試工程師 更新日期&#xff1a;2025年02月17日 關鍵詞&#xff1a;UDS診斷協議、ECU復位服務、0x11服務、ISO 14229-1:2023 TC11-004測試用例 用例ID測試場景驗證要點參考條款預期結果TC…

3.10 實戰Hugging Face Transformers:從文本分類到模型部署全流程

實戰Hugging Face Transformers:從文本分類到模型部署全流程 一、文本分類實戰:IMDB電影評論情感分析 1.1 數據準備與預處理 from datasets import load_dataset from transformers import AutoTokenizer # 加載IMDB數據集 dataset = load_dataset("imdb") …