1. 程式人生 > >LINUX負載均衡LVS-NAT搭建

LINUX負載均衡LVS-NAT搭建

1.搭建前的規劃工作

這裡從lvs官方網站找了一個nat模型的圖,如下:

我這裡使用虛擬機器模擬出了4臺rhel6機器。一臺伺服器作為lvs排程器(40網段使用的都是僅主機模式,168網段使用橋接模式),3臺伺服器作為具體的web伺服器(使用僅主機模式),我本是的宿主機就是作為web測試機器。

具體配置如下

機器名稱ip配置ip配置附加備註資訊
lvs排程器192.168.40.200192.168.168.200有2個網絡卡地址,
RS1192.168.40.201和lvs的第一個ip地址,rs2,rs3屬於同一網段
RS2192.168.40.202和lvs的第一個ip地址,rs2,rs3屬於同一網段
RS3192.168.40.203和lvs的第一個ip地址,rs2,rs3屬於同一網段
宿主機192.168.168.10和lvs的第二個ip地址屬於同一網段

配置好上面的環境,確保同一個網段的主機可以相互ping的通。 這裡都先關閉防火牆和selinux設定。

2.檢查作業系統支援lvs情況

[[email protected] ~]# grep -i 'vs' /boot/config-2.6.32-279.el6.i686      #有輸出說明支援,我們使用的rhel6,預設的編譯就有lvs模組。

3.安裝ipvsadm工具

[[email protected] ~]# yum -y install ipvsadm

4.ipvsadm工具的簡單使用

複製程式碼
ipvsadm:
    管理叢集服務
        新增:-A -t|u|f service-address [-s scheduler]
            -t: TCP協議的叢集 
            -u: UDP協議的叢集
                service-address:     IP:PORT
            -f: FWM: 防火牆標記 
                service-address: Mark Number
        修改:-E
        刪除:-D -t|u|f service-address

        # ipvsadm 
-A -t 172.16.100.1:80 -s rr 管理叢集服務中的RS 新增:-a -t|u|f service-address -r server-address [-g|i|m] [-w weight] -t|u|f service-address:事先定義好的某叢集服務 -r server-address: 某RS的地址,在NAT模型中,可使用IP:PORT實現埠對映; [-g|i|m]: LVS型別 -g: DR模型 -i: TUN模型 -m: NAT模型 [-w weight]: 定義伺服器權重 修改:-e 刪除:-d -t|u|f service-address -r server-address # ipvsadm -a -t 172.16.100.1:80 -r 192.168.10.8 -m # ipvsadm -a -t 172.16.100.1:80 -r 192.168.10.9 -m 檢視 -L|l -n: 數字格式顯示主機地址和埠 --stats:統計資料 --rate: 速率 --timeout: 顯示tcp、tcpfin和udp的會話超時時長 -c: 顯示當前的ipvs連線狀況 刪除所有叢集服務 -C:清空ipvs規則 儲存規則 -S # ipvsadm -S > /path/to/somefile 載入此前的規則: -R # ipvsadm -R < /path/form/somefile
複製程式碼

 5.設定所有的RS伺服器的閘道器為排程器的ip地址

複製程式碼
[[email protected] ntpstats]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
#修改閘道器為排程器的ip地址
GATEWAY=192.168.40.200
#三個rs伺服器都需要設
確保在各個RS服務的路由資訊的正確性
[[email protected] ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.40.0    *               255.255.255.0   U     0      0        0 eth0
link-local      *               255.255.0.0     U     1002   0        0 eth0
default         192.168.40.200  0.0.0.0         UG    0      0        0 eth
複製程式碼

6.給那個RS伺服器安裝http服務並測試

複製程式碼
[[email protected] ntpstats]# yum install httpd              #每個rs伺服器都安裝httpd服務
[[email protected] ntpstats]# service httpd restart          #每個rs伺服器都重新啟動
[[email protected] ntpstats]# echo rs1> /var/www/html/index.html  #給rs1伺服器建立一個主頁,只在rs1上執行
[[email protected] ntpstats]# echo rs2> /var/www/html/index.html  #給rs2伺服器建立一個主頁,只在rs2上執行
[[email protected] ntpstats]# echo rs2> /var/www/html/index.html  #給rs3伺服器建立一個主頁,只在rs3上執行
#接下來使用在排程器lvs伺服器先測試下各個頁面是否可以正常訪問
[[email protected] ~]# elinks -source 192.168.40.201
rs1
[[email protected] ~]# elinks -source 192.168.40.202
rs2
[[email protected] ~]# elinks -source 192.168.40.203
rs3
複製程式碼

7.建立LVS

[[email protected] ~]# ipvsadm -A -t 192.168.168.200:80 -s rr              #建立一個叢集服務,排程演算法rr,
[[email protected] ~]# ipvsadm -a -t 192.168.168.200:80 -r 192.168.40.201 -m    #新增rs1 nat方式
[[email protected] ~]# ipvsadm -a -t 192.168.168.200:80 -r 192.168.40.202 -m    #新增rs2 nat方式
[[email protected] ~]# ipvsadm -a -t 192.168.168.200:80 -r 192.168.40.203 -m    #新增rs3 nat方式

8.開啟ip轉發機制

排程器要能訪問168,40兩個網段的,需要開啟ipforward功能。

[[email protected] ~]# echo 1 >/proc/sys/net/ipv4/ip_forward #開啟ipv的ip轉發機制,當前生效
[[email protected] ~]# vim /etc/sysctl.conf 
#開啟ipv的ip轉發機制,永久生效
net.ipv4.ip_forward = 1

9. 確保叢集的時間不能太大

這裡建議在排程器lvs上安裝ntp服務,其他RS伺服器來同步時間

10.我們使用宿主機進行測試

瀏覽器輸入http://192.168.168.200,不斷重新整理,就可以看到如下的三個圖片資訊。測試成功後,就可以把三個RS伺服器頁面做成一樣的啦。

宿主機測試量太小了。 我們直接在排程器上使用ab命令測試下

複製程式碼
[[email protected] ~]# ab -n 10000 -c 200 http://192.168.168.200/index.html
[[email protected] ~]# ipvsadm -L -n --rate
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port                 CPS    InPPS   OutPPS    InBPS   OutBPS
  -> RemoteAddress:Port
TCP  192.168.168.200:80                168      838      837    60477    90073
  -> 192.168.40.201:80                  56      279      279    20154    30036
  -> 192.168.40.202:80                  56      280      278    20162    29991
  -> 192.168.40.203:80                  56      279      279    20160    30045
複製程式碼

上面可以看到,3個RS的任務是基本一樣多的。

相關推薦

LINUX負載均衡LVS-NAT搭建

1.搭建前的規劃工作這裡從lvs官方網站找了一個nat模型的圖,如下:我這裡使用虛擬機器模擬出了4臺rhel6機器。一臺伺服器作為lvs排程器(40網段使用的都是僅主機模式,168網段使用橋接模式),3臺伺服器作為具體的web伺服器(使用僅主機模式),我本是的宿主機就是作為w

Linux叢集儲存——day2——叢集LB負載均衡 LVS/NATLVS/DR 模式

叢集:    叢集 目的: 提高效能、降低成本、提高可擴充套件性、增強可靠性 HPC 高效能運算叢集 反覆進行一個計算,一般用於科研等需要精算的領域 LB 負載均衡叢集 多臺機器提

一臺虛擬機器搞定負載均衡lvs-NAT模式和lvs-DR模式搭建

首先來說一下負載均衡,為了解決一個伺服器不能支撐大併發量使用者的訪問,所以通過負載均衡的方法來解決這個問題,負載均衡有兩種實現方案,一種是通過硬體來實現可以購買 f5裝置,一種是通過軟體來實現如lvs、nginx等,由於lvs直接是linux系統核心級別的,實現起來方便所以仙子主要講解lvs實現

Linux---負載均衡---lvs

一、lvs簡介     LVS是 Linux Virtual Server 的簡稱,意即Linux虛擬伺服器,是一個虛擬的伺服器集群系統。這是一個由章文嵩博士發起的,是中國國內最早出現的自由軟體開源專案之一,現在 LVS 已經是 Linux 核心標準的一部分。使用 LVS 可以達到的

LVS負載均衡之二:LVS-NAT搭建web群集

ice 其余 連接方式 rest show MF Oz service 高可用 實現LVS的NAT模式 其原理及特點詳細介紹請看LVS負載均衡之一:LVS-NAT、LVS-DR模式的原理詳細介紹 1.實驗環境 IP地址規劃 客戶端訪問服務的請求IP地址:VIP 12.0.0

LVS負載均衡NAT模式

LVS負載均衡之NATLVS負載均衡之NAT模式 重點理解NAT方式的實現原理和數據包的改變。 (a). 當用戶請求到達Director Server,此時請求的數據報文會先到內核空間的PREROUTING鏈。 此時報文的源IP為CIP,目標IP為VIP?(b). PREROUTING檢查發現數據包的目標IP

LVS負載均衡群集---NAT模式

分層結構 在一起 Oz ack 查看 一個 sad 高可用群集 AR 群集 群集表示大量服務器的集合體,以區分於單個服務器。通常只提供一個訪問入口(域名或者IP地址),對外表現為一個整體。 群集的三種類型: 負載均衡群集: 以提高應用系統的響應能力,盡可能處理更多的

LVS負載均衡群集-NAT

mark linu 負載均衡。 C4D CA 部署 客戶 nfs 輸入 LVS的全稱Linux vitual system, linux vitual server 是由目前阿裏巴巴的著名工程師章文嵩博士開發的一款開源軟件。LVS工作在一臺server上提供Director

LVS 負載均衡群集—— NAT (地址轉換)模式

lvs 負載均衡 adc for 存取 獨立 .rpm 模塊 模式 服務啟動 群集 群集(或集群)的稱呼來自於英語單詞“Cluster”,表示一群、一串的意思,用在服務器領域則表示大量服務器的集合體。 群集的類型 無論是哪種群集,都至少包括兩臺節點服務器,而對外表現為

LVS負載均衡群集--NAT模式

mar 負載均衡群集 加載 啟動 ports etc type root share LVS簡介1、 在互聯網應用中,隨著站點對硬件性能、響應速度、服務穩定性、數據可靠性等要求越來越高,單臺服務器難以承擔所有的訪問。除了使用價格昂貴的大型機、專用負載分流設備以外,企業多選擇

LVS負載均衡NAT模式部署

權重 超時時間 font lvs負載均衡 同時 密碼 work rtu ice 1、LVS的NAT模式介紹 參考自官網:http://www.linuxvirtualserver.org/zh/lvs3.html 由於IPv4中IP地址空間的日益緊張和安全方面的原因

超詳細LVS負載均衡群集-NAT模式

網格 mount snat 應用層 hello 意思 刪除 差異 共享目錄 簡介 群集(或集群)和稱呼來自於英文單詞cluster,表示一群、一串的意思,用在服務器領域則表示大量服務器的集合體,以區分於單個服務器。 企業群集分類 根據群集所針對的目標差異,可分為三種類型 負

linux負載均衡keepalived的搭建

百度百科:Keepalived的作用是檢測伺服器的狀態,如果有一臺web伺服器宕機,或工作出現故障,Keepalived將檢測到,並將有故障的伺服器從系統中剔除,同時使用其他伺服器代替該伺服器的工作,當伺服器工作正常後Keepalived自動將伺服器加入到伺服器群中,這些工作

Linux負載均衡軟體LVS-DR模式的簡單示例

本文一個簡單的示例演示LVS的配置(DR模式)和測試。使用的配置環境如下:Director server: 192.168.8.4Real server1: 192.168.8.5Real server2: 192.168.8.6VIP: 192.168.8.200網路top

高併發的解決方案—負載均衡LVS搭建

首先這是一個簡單的架構圖:一、如圖,高併發可能發生的地方有兩處1、使用者請求應用時的負載均衡處,本文僅針對此處進行分析2、應用請求資料庫時,分析待續二、負載均衡處可能出現的問題,session共享問題解決方案:1、session可放在cookie中,但將seesion放瀏覽器

Linux負載均衡環境搭建-1 Linux下安裝Nginx詳細圖解教程

什麼是Nginx? Nginx ("engine x") 是一個高效能的 HTTP 和 反向代理 伺服器,也是一個 IMAP/POP3/SMTP 代理伺服器,在高連線併發的情況下Nginx 是 Apache 伺服器不錯的替代品.其特點是佔有記憶體少,併發能力強,事實上n

linux-高並發與負載均衡-lvs-功能配置介紹

百度百科 info targe server 第一個 開源 分享圖片 郵件列表 負載 百度百科: LVS是Linux Virtual Server的簡寫,意即Linux虛擬服務器,是一個虛擬的服務器集群系統。本項目在1998年5月由章文嵩博士成立,是中國國內最早出現的自由

負載均衡NAT,ACL,VTP,DHCP,熱備份,路由OSPF

負載均衡 NAT ACL DHCP OSPF Vtp配置sw1(config)#vtp do abcsw1(config)#vtp mo sersw1(config)#vtp v 2sw1(config)#vtp prun·sw2(config)#vtp do aaasw2(config)

Nginx+Tomcat高性能負載均衡集群搭建

windows .org 過程 加載 部署 href .cn .com AI 轉載請註明出處:http://www.cnblogs.com/Joanna-Yan/p/8745794.html Nginx是一個高性能的HTTP服務器/反向代理服務器及電子郵件(IMAP/PO

負載均衡 LVS

穩定性 ip) 不同的 公網 模式 服務 修改 處理 對數 LVS介紹LVS 是由國人章文蒿開發流行程度不亞於apache的httpd,基於TCP/IP做的路由和轉發,穩定性和效率很高LVS最新版本基於Linux內核2.6,有好多年不更新了LVS架構中有一個核心角色叫做分發