Linux服務器集群系統之可伸縮Web服務
Linux集群系統是當代許多公司采用的解決方案,Linux集群通過多臺機器連接起來,處理復雜的問題。可以將同構或者異構的計算機連接起來,協同完成特定的任務。這樣就構成了集群。LVS是Linux virtual server的縮寫,他的意思是Linux虛擬機服務。本文主要介紹的是基于Linux下的集群系統。
基于LVS的Web集群的體系結構如圖2所示:第一層是負載調度器,一般采用IP負載均衡技術,可以使得整個系統有較高的吞吐率;第二層是Web服務器池,在每個結點上可以分別運行HTTP服務或HTTPS服務、或者兩者都運行;第三層是共享存儲,它可以是數據庫,可以是網絡文件系統或分布式文件系統,或者是三者的混合。集群中各結點是通過高速網絡相連接的。
圖2:基于LVS的Web集群
對于動態頁面(如PHP、JSP和ASP等),需要訪問的動態數據一般存儲在數據庫服務器中。數據庫服務運行在獨立的服務器上,為所有Web服務器共享。無論同一Web服務器上多個動態頁面訪問同一數據,還是不同Web服務器上多個動態頁面訪問同一數據,數據庫服務器有鎖機制使得這些訪問有序地進行,從而保證數據的一致性。
對于靜態的頁面和文件(如HTML文檔和圖片等),可以存儲在網絡文件系統或者分布式文件系統中。至于選擇哪一種,看系統的規模和需求而定。通過共享的網絡文件系統或者分布式文件系統,Webmaster可以看到統一的文檔存儲空間,維護和更新頁面比較方便,對共享存儲中頁面的修改對所有的服務器都有效。
在這種結構下,當所有服務器結點超載時,管理員可以很快地加入新的服務器結點來處理請求,而無需將Web文檔等復制到結點的本地硬盤上。
有些Web服務可能用到HTTP Cookie,它是將數據存儲在客戶的瀏覽器來追蹤和標識客戶的機制。使用HTTP Cookie后,來同一客戶的不同連接存在相關性,這些連接必須被發送到同一Web服務器。一些Web服務使用安全的HTTPS協議,它是HTTP協議加SSL(Secure Socket Layer)協議。另有些Web服務可能使用安全的HTTPS協議,它是HTTP協議加SSL協議。當客戶訪問HTTPS服務(HTTPS的缺省端口為443)時,會先建立一個SSL連接,來交換對稱公鑰加密的證書并協商一個SSL Key,來加密以后的會話。在SSL Key的生命周期內,后續的所有HTTPS連接都使用這個SSL Key,所以同一客戶的不同HTTPS連接也存在相關性。針對這些需要,IPVS調度器提供了持久服務的功能,它可以使得在設定的時間內,來自同一IP地址的不同連接會被發送到集群中同一個服務器結點,可以很好地解決客戶連接的相關性問題。
【編輯推薦】
- Linux集群原理與安裝配置匯總
- “懶惰”Linux集群管理員的11個秘訣
- 圖文詳解 文件柜內DIY自己的Linux集群機
- 大型Linux集群的安裝節點和管理
- 大型Linux集群簡介和硬件配置
- 高性能Linux集群基礎知識