nat(network addresstranslation)即網路位址轉換,其作用是通過資料報頭的修改,使得位於企業內部的私有ip位址可以訪問外網,以及外部用使用者可以訪問位於公司內部的私有ip主機。lvs負載排程器可以使用兩塊網絡卡配置不同的ip位址,eth0設定為私有ip與內部網路通過交換裝置相互連線,eth1裝置為外網ip與外部網路聯通。第一步,使用者通過網際網路dns伺服器解析到公司負載均衡裝置上面的外網位址,相對於真實伺服器而言,lvs外網ip又稱vip(virtual ip address),使用者通過訪問vip,即可連線後端的真實伺服器(real server),而這一切對使用者而言都是透明的,使用者以為自己訪問的就是真實伺服器,但他並不知道自己訪問的vip僅僅是乙個排程器,也不清楚後端的真實伺服器到底在**、有多少真實伺服器。
第二步,使用者將請求傳送至172.25.254.100,此時lvs將根據預設的演算法選擇後端的一台真實服務(172.25.77.1~172.25.77.3),將資料請求包**給真實伺服器,並且在**之前lvs會修改資料報中的目標位址以及目標埠,目標位址與目標埠將被修改為選出的真實伺服器ip位址以及相應的埠。
第三步,真實的伺服器將響應資料報返回給lvs排程器,排程器在得到響應的資料報後會將源位址和源埠修改為vip及排程器相應的埠,修改完成後,由排程器將響應資料報傳送回終端使用者,另外,由於lvs排程器有乙個連線hash表,該表中會記錄連線請求及**資訊,當同乙個連線的下乙個資料報傳送給排程器時,從該hash表中可以直接找到之前的連線記錄,並根據記錄資訊選出相同的真實伺服器及埠資訊。
1.虛擬機器server1新增新的網絡卡eth1,在網絡卡eth1上配置外網ip:172.25.254.100,配置完成後啟用網絡卡。
2. 在server1中開啟核心的路由功能:vim /etc/sysctl.conf (出於安全考慮,linux系統預設是禁止資料報**的。)
3.在虛擬機器server1上安裝ipvsadm(排程器)
ipvsadm是管理集群服務的命令列工具,用於管理lvs的策略規則
4.在server1上新增排程策略
ipvsadm -c ##清空排程策略
ipvsadm -a -t 172.25.254.100:80 -s rr
ipvsadm -a -t 172.25.254.100:80 -r 172.25.77.2:80 -m
ipvsadm -a -t 172.25.254.100:80 -r 172.25.77.3:80 -m
ipvsadm -l ##列出排程策略
5.在server2和server3,新增閘道器,因為nat模式下資料報的走向是原路返回,要帶著返回的資料報經過排程器回到客戶端。
route add default gw 172.25.77.1 #給server2和servere3新增閘道器
/etc/init.d/httpd start #開啟server2和server3後端伺服器的httpd
7.測試:
當訪問外網ip(172.25.254.100)時,輪詢訪問後端伺服器server1,server2.
LVS負載均衡 NAT模式
二 負載均衡群集 三 案例 lvs nat部署 目前關於 架構一般比較合理流行的架構方案 web 前端採用 nginx haproxy keepalived 作負載均衡器 後端採用 mysq l資料庫一主多從和讀寫分離,採用 lvs keepalived 的架構。1 負載排程器 主機名位址 角色軟體...
lvs 負載均衡 NAT模式
1.原理 基於nat機制實現。當使用者請求到達director之後,director將請求報文的目標位址 即vip 改成選定的realserver位址,同時將報文的目標埠也改成選定的realserver的相應埠,最後將報文請求傳送到指定的realserver。在伺服器端得到資料後,realserve...
企業級負載均衡集群 lvs的NAT模式
lvs nat搭建總結 在構建高效能lvs nat伺服器集群時,共分為三層結構,分別為分發層,realserver和儲存池等三種。首先對於分發層的應用需要兩塊網絡卡其中一塊網絡卡位址為公網ip起名為vip 另一塊網絡卡位址為dip起到分發的作用。即排程器必須雙網絡卡,乙個ip對外,乙個ip對內,連線...