基于搭建LAMP環境,并實踐基于DNS做基于域名的虛拟主機中的環境,重新搭建一個同樣的環境要求:
a)實作web服務檔案更新的自動同步到另一台機器上
b)資料庫實作主從複制
c)通過shell腳本實作網站源代碼備份和mysql備份,備份政策包括全量備份、增量備份、差異備份
通過lvs實作負載均衡,要求使用DR模式,并能把其中的原理部分通過自己的了解彙總出來。
lvs:Linux Virtual Server, Linux虛拟四層交換的伺服器,是一個虛拟的伺服器叢集系統。LVS有LVS-NAT,LVS-DR,LVS-TUN三種模式,其中DR模式意為Direct Routing(直接路由),是排程器與實際伺服器都有一塊網卡連在同一實體網段上的情況。以下是DR模式配置實驗。
1,實驗環境如下:

首先需在DR上安裝IPVSADM程式包。并利用前面實驗搭建好的兩台LAMP環境的伺服器做真實伺服器。并啟動HTTPD服務,驗證如下:
2:在DR上配置VIP和DIP,并配置DR.
3,分别配置兩台RS。先抑制ARP響應,然後設定lo:0上IP位址。
4,LVS負載均衡測試:
arp響應限制說明:
1)arp_ignore:
定義對目标位址為本地IP的ARP詢問不同的應答模式0
0 - (預設值): 回應任何網絡接口上對任何本地IP位址的arp查詢請求
1 - 隻回答目标IP位址是來訪網絡接口本地位址的ARP查詢請求
2 -隻回答目标IP位址是來訪網絡接口本地位址的ARP查詢請求,且來訪IP必須在該網絡接口的子網段内
3 - 不回應該網絡界面的arp請求,而隻對設定的唯一和連接配接位址做出回應
4-7 - 保留未使用
8 -不回應所有(本地位址)的arp查詢
2)arp_announce:
對網絡接口上,本地IP位址的發出的,ARP回應,作出相應級别的限制: 确定不同程度的限制,宣布對來自本地源IP位址發出Arp請求的接口
0 - (預設) 在任意網絡接口(eth0,eth1,lo)上的任何本地位址
1 -盡量避免不在該網絡接口子網段的本地位址做出arp回應. 當發起ARP請求的源IP位址是被設定應該經由路由達到此網絡接口的時候很有用.此時會檢查來訪IP是否為所有接口上的子網段内ip之一.如果改來訪IP不屬于各個網絡接口上的子網段内,那麼将采用級别2的方式來進行處理.
2 - 對查詢目标使用最适當的本地位址.在此模式下将忽略這個IP資料包的源位址并嘗試選擇與能與該位址通信的本地位址.首要是選擇所有的網絡接口的子網中外出通路子網中包含該目标IP位址的本地位址. 如果沒有合适的位址被發現,将選擇目前的發送網絡接口或其他的有可能接受到該ARP回應的網絡接口來進行發送.
LVS原理總結:
ipvsadm:使用者空間的指令行工具,用于管理叢集服務;
ipvs: 工作核心中netfilter INPUT鈎子上;
1、LVS的LVS-DR,LVS-NAT,LVS-TUN三種模式:
lvs-nat:多目标的DNAT(iptables);它通過修改請求封包的目标IP位址(同時可能會修改目标端口)至挑選出某RS的RIP位址實作轉發;
(1)RS應該和DIP應該使用私網位址,且RS的網關要指向DIP;
(2)請求和響應封包都要經由director轉發;極高負載的場景中,director可能會成為系統瓶頸;
(3)支援端口映射;
(4)RS可以使用任意OS;
(5)RS的RIP和Director的DIP必須在同一IP網絡;
lvs-dr:direct routing它通過修改請求封包的目标MAC位址進行轉發;
(1) 保證前端路由器将目标IP為VIP的請求封包發送給director;通過靜态綁定或者arptables或者修改RS主機核心的參數實作。
(2)RS的RIP可以使用私有位址;但也可以使用公網位址;
(3)RS跟Director必須在同一實體網絡中;
(4)請求封包經由Director排程,但響應封包一定不能經由Director;
(5)不支援端口映射;
(6)RS的網關不能指向DIP;
(7) RS可以大多數OS;
lvs-tun:不修改請求封包的ip首部,而是通過在原有的ip首部之外,再封裝一個ip首部,類似于網絡隧道機制實作。
(1)RIP, DIP, VIP均為公網位址;
(2)RS的網關的不能指向DIP;
(3)請求封包必須經由director排程,但響應封包必須不能經由director;
(4)不支援端口映射;
(5)RS的OS必須支援隧道功能;
2、DR模式工作原理:
1,接收client的請求,根據設定的負載均衡算法選取一台realserver的ip;
2,以選取的這個ip對應的mac位址作為目标mac,然後重新将IP包封裝成幀轉發給這台RS;DR将請求轉發給RS是在資料鍊路層來實作的,是以DR必須和RS在同一網段裡面。
3,RealServer要在lo接口上配置VIP,因為要讓RS能夠處理目标位址為vip的IP包,首先必須要讓RS能接收到這個包,是以在lo上配置vip能夠完成接收包并将結果傳回client。
RealServer在區域網路中收到包,拆開後發現目标IP(VIP)與本地比對,于是處理這個封包。随後重新封裝封包,發送到區域網路。client與VS同一網段,那麼client将收到這個回複封包。如果跨了網段,那麼封包通過經由網關路由器從Internet傳回給client。