LVS集群搭建

集群是為了解決某個特定問題將多臺計算機組合起來形成的單個系統

知識點:

1.關鍵術語

  • VS:Virtual Server(調度器)

  • RS:Real Server(真實服務器)

  • CIP:Client IP(客戶端IP)

  • VIP:Virtual IP(VS對外IP)

  • DIP:Director IP(VS內網IP)

  • RIP:Real Server IP(真實服務器IP)

2.lvs集群的類型

lvs-nat: 修改請求報文的目標IP,多目標IP的DNAT

lvs-dr: 操縱封裝新的MAC地址

lvs-tun: 在原請求IP報文之外新加一個IP首部

lvs-fullnat: 修改請求報文的源和目標IP

nat模式實驗:

1.實驗環境

主機ip網關角色
CLIENT192.168.23.11192.168.23.2客戶端
LVS

192.168.23.110

172.25.250.100(僅主機)

192.168.23.2

172.25.250.2

調度器
RS-1172.25.250.10(僅主機)172.25.250.100真實服務器1
RS-2172.25.250.20(僅主機)172.25.250.100真實服務器2

2.環境配置

LVS 配置雙網卡,設定IP地址(一個NAT,一個僅主機)

設置內核路由功能,使同一個系統中的所有網卡都可以互相通信(記得編寫防火墻規則,也可以直接關閉)

RS-1(提前下好httpd)

ip配置

關閉防火墻和啟動httpd服務

RS-2

ip配置

關閉防火墻和啟動httpd服務

編寫內容(RS-1同樣)

ip改好之后要systemctl connection reload

systemctl connection up 網卡

測試

當LVS調度器能夠訪問RS-1和RS-1時環境配置就完成了

3.實驗配置

安裝ipvsadm

添加調度策略

[root@lvs ~]# ipvsadm -A -t 192.168.23.110:80 -s rr? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #添加
[root@lvs ~]# ipvsadm -a -t 192.168.23.110:80 -r 172.25.250.10 -m -w 1? #
添加RS
[root@lvs ~]# ipvsadm -a -t 192.168.23.110:80 -r 172.25.250.20 -m -w 1
[root@lvs ~]# ipvsadm -Ln? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#
顯示
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
-> RemoteAddress:Port ? ? ? ? ? Forward Weight ActiveConn InActConn
TCP ?192.168.23.110:80 rr? ? ? ? ??
-> 172.25.250.10:80 ? ? ? ? ? ? Masq ? ?1 ? ? ?0 ? ? ? ? ?0 ? ? ? ??
-> 172.25.250.20:80 ? ? ? ? ? ? Masq ? ?1 ? ? ?0 ? ? ? ? ?0 ? ? ?

?-A:添加策略

?-t:tcp協議

192.168.23.110:80 集群地址:端口? (地址是vip)

-s:調度算法 rr:輪詢算法

-a:新添一臺RS

-r:RS地址(端口)

-m:LVS模式為NAT模式

-w? ? 輪詢次數

測試結果

4.ipvs的備份及恢復?

先保存到一個文件下

再刪除

最后恢復

5.開機自啟

[root@lvs ~]# systemctl enable --now ipvsadm.service

DR模式實驗:

實驗環境

主機ipvip角色
CLIENT192.168.23.11null客戶端
route

192.168.23.110

172.25.250.100(僅主機)

null路由器
lvs172.25.250.100172.25.250.254/32調度器
RS-1172.25.250.10172.25.250.254/32真實服務器1
RS-2172.25.250.20172.25.250.254/32真實服務器2

環境配置

配置vip

配置vip

配置vip

路由器同nat模式的lvs(雙網卡)

實驗配置

真實路由器設定lo不對外響應

LVS配置策略

172.25.250.254:80? vip:端口? (vip為lo網卡里的)

-g? 直連路由模式

測試(記得關閉主機的防火墻)

防火墻標記解決輪詢調度問題

在RS1和RS2中安裝mod_ssl并重啟apache

當第一次訪問80被輪詢到RS1后下次訪問443仍然可能會被輪詢到RS1上

測試

解決:在主機上打防火墻標記,主機基于標記定義集群服務并設定調度規則(把IP地址變為防火墻標記)

測試

lvs持久鏈接

設置超時時間

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

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

相關文章

吳恩達《AI for everyone》第一周課程筆記

課程的核心目標:- AI是什么? - AI能做什么? - AI最擅長什么類型的任務? - AI怎么做決策? - 企業為什么需要AI戰略?導航Machine Learning 機器學習> 最常見的機器學習類型: > 人工智能中最…

iOS App 電池消耗管理與優化 提升用戶體驗的完整指南

在當今智能手機的使用中,電池壽命和續航能力是用戶選擇App時的重要考慮因素之一。iOS設備的電池管理功能較為封閉,這也讓開發者、產品經理以及普通用戶對于App的電池消耗有時無法全面了解。而如果你的App因電池消耗過快而遭到用戶卸載,無論功…

關于用git上傳遠程庫的一些常見命令使用和常見問題:

克隆遠程庫gitee到本地用命令git clone git clone https://gitee.com/automated-piggy-senior/20250717-test.gitLinux/macOS 終端: 執行 touch readme.txt(創建空文件),或 echo "這是說明文件" > readme.txt&#…

想刪除表中重復數據,只留下一條,sql怎么寫

PostgreSQL 方法: DELETE FROM tbl_case_model WHERE id NOT IN (SELECT MIN(id) -- 保留id最小的記錄FROM tbl_case_modelGROUP BYcolumn1, -- 替換為實際重復列名column2, -- 繼續添加重復列... -- [所有需要比較的列] );因為我這次遇到的情況比較特殊&#xff0…

微服務中token鑒權設計的4種方式

1. JWT鑒權 「概述」:JWT是一種用于雙方之間安全傳輸信息的簡潔的、URL安全的令牌標準。它基于JSON格式,包含三個部分:頭部(Header)、負載(Payload)和簽名(Signature)。J…

nodejs搭建

1.創建一個空文件夾,在vscode中打開 2.執行命令開啟package文件 npm init -y3.設置根目錄文件app.js 先執行 npm install express 命令安裝 express 模塊 執行 npm install cors 命令安裝 cors 模塊 // app.js const express require(express) const app express…

frp內網穿透(二)

frp內網穿透(二) 前言 前篇內網穿透 上面一文中已描述如何安裝frp進行內網穿透,并配置ssh穿透連接內網服務器,本篇主要介紹如何配置web服務 使用場景 A服務器為公網服務器,B服務器為家庭中內網服務器,且B…

Spring 應用中 Swagger 2.0 遷移 OpenAPI 3.0 詳解:配置、注解與實踐

從 Swagger 2.0 到 OpenAPI 3.0 的升級指南 為什么升級 OpenAPI 3.0提供了更強大的功能、更簡潔的配置和更好的性能,同時保持了與 Swagger 2.0 的基本兼容性。本文將詳細介紹升級的各個步驟,并提供代碼示例。 1. 依賴管理的變化 Swagger 2.0 依賴配置 &l…

用 Flink CEP 打造實時超時預警:從理論到實戰

目錄 1. Flink CEP 是什么?為什么它能讓你的數據“開口說話”? 2. 超時預警的業務場景:從電商到物聯網 3. Flink CEP 超時機制的核心原理 3.1 模式匹配與時間窗口 3.2 超時事件的處理 3.3 事件時間與水位線 3.4 核心組件一覽 4. 實戰案例:電商訂單超時預警 4.1 準備…

Rocky Linux 9 源碼包安裝php7

Rocky Linux 9 源碼包安裝php7大家好!我是星哥。盡管現在 PHP 版本已迭代至 8.x,但有時為了兼容遺留系統或特定應用需求,我們仍需部署特定版本的 PHP。最主要的是之前的項目采用的PHP7.3,未來兼容舊的項目, 今天&#…

uniapp+vue3+鴻蒙系統的開發

前言: uniappvue3鴻蒙系統的開發。 實現效果: 鴻蒙pad端真機測試效果-下面是正常的日志效果 實現步驟: 1、安裝鴻蒙的開發工具,點擊安裝,注意版本不能太舊了 deveco-studio 2、下載下來是個壓縮包,解壓后…

【C++類和對象解密】面向對象編程的核心概念(下)

之前我們了解到構造函數是在對象實例化之時對對象完成初始化工作的一個函數。在我們不寫時,編譯器會自動生成構造函數。構造函數有一些特點,比如,他對內置類型不做處理,對自定義類型的成員會去調用其自身的構造。我們上篇文章還提…

Flutter基礎(前端教程①②-序列幀動畫)

🧠 核心思路總結??徹底繞過 Image組件重建帶來的性能瓶頸??:不再讓 setState重建包含 Image的 Widget 樹(這是開銷大、可能導致閃爍的根源),改為使用底層畫布 (Canvas) 直接繪制預先處理好的圖像幀數據。好的&…

Qt添加dmp文件生成及pdb文件

1.Pdb文件生成 下圖先通過構建生成Pdb文件,然后運行程序,通過提前準備的崩潰按鈕使得程序崩潰,生成“dump文件”的演示。 # #添加dmp文件生成及pdb文件生成DEFINES QT_MESSAGELOGCONTEXT DEFINES QT_DEPRECATED_WARNINGS# # 添加DUMP文件…

opencv、torch、torchvision、tensorflow的區別

一、框架定位與核心差異PyTorch動態計算圖:實時構建計算圖支持Python原生控制流(如循環/條件),調試便捷。學術主導:2025年工業部署份額24%,適合快速原型開發(如無人機自動駕駛、情緒識別&#x…

離散與組合數學 雜記

生成函數 概念 又稱母函數把一個無窮數列 {an}\{a_n\}{an?}(默認從 000 項起)表示成 G(x)∑i≥0aixiG(x)\displaystyle\sum_{i\ge0} a_ix^iG(x)i≥0∑?ai?xi 的函數形式。例如: ai2ia_i2^iai?2i:G(x)∑i≥02ixiG(x)\display…

學習OpenCV---顯示圖片

學習OpenCV—顯示圖片 最近在學習OpenCV入門,于是記錄一下自己的學習過程。 一、配置環境 第一步 從官方網站中下載OpenCV開源庫。官方下載網站 打開官網后,能看到有很多的版本。我個人下載的是4.11.0版本。點擊圖中的下載 下載完成后,解…

第一次接觸自動化監測,需要付費廠家安裝服務嗎?比人工測量主要區別是啥?

人工檢測是依靠目測檢查或借助于便攜式儀器測量得到的信息,但是隨著整個行業的發展,傳統的人工檢測方法已經不能滿足檢測需求,從人工檢測到自動化監測已是必然趨勢。 a. 從檢測方式看 人工檢測需要耗費大量的精力,從擺放檢測工具到…

VMware Workstation Pro 17下載安裝

注冊賬號 進入下載地址:Free Downloads - Support Portal - Broadcom support portal - https://support.broadcom.com/ 會讓注冊賬號,注冊一個就行 在右上角 下載 地址:Free Downloads - Support Portal - Broadcom support portal - ht…

SpringBoot 3.x集成阿里云OSS:文件上傳 斷點續傳 權限控制

SpringBoot 3.x集成阿里云OSS:文件上傳/斷點續傳/權限控制Spring Boot 3.x 集成阿里云 OSS 終極指南一、環境準備與依賴配置1. 添加阿里云 OSS SDK 依賴2. 配置 OSS 連接參數二、基礎文件上傳服務1. OSS 客戶端配置2. 文件上傳服務三、斷點續…