LVS簡介
LVS是什麼?
LVS的英文全稱是Linux Virtual Server,即Linux虛擬服務器。它是我們國家的章文嵩博士的一個開源項目。在linux內核2.6中,它已經成爲內核的一部分,在此之前的內核版本則需要重新編譯內核。
LVS能幹什麼?
LVS主要用於多服務器的負載均衡。它工作在網絡四層,可以實現高性能,高可用的服務器集羣技術。它廉價,可把許多低性能的服務器組合在一起形成一個超級服務器。它易用,配置非常簡單,且有多種負載均衡的方法。它穩定可靠,即使在集羣的服務器中某臺服務器無法正常工作,也不影響整體效果。另外可擴展性也非常好。
Linux Virtual Server項目
網絡分層
IP虛擬服務器軟件IPVS
用戶的請求通過網絡,網絡的話就是一跳一跳的路由器,用戶的請求經過這路由器一跳一跳的最終到達我們機房,機房會有一個nat把外網轉化爲內網,到了內網以後,我們會有一個IP,IP是我們服務器的IP地址,這時候我們會通過一個協議arg協議,把IP地址轉爲MAC地址,MAC地址是我們的網卡地址,我們的IP相當於一個軟地址。MAC地址是一個硬件地址,網卡地址,通過網卡地址我們才能標識一臺機器具體的網卡,然後我們的web服務最終都是通過這個網卡對外輸出我們的數據,或者對內接收請求的,進而找到我們的端口。
區別:
- DR改寫的是MAC地址,NAT則是IP地址。
- DR響應報文直接給客戶端,NAT是發給負載均衡服務器,重寫響應報文的原地址,再發給客戶端。
請求報文到達我們的負載均衡器時,負載均衡器通過IP隧道技術(報文封裝,在原報文當作報文體再加上一個報文頭封裝爲新的報文,新加的報文體中有我們RS服務器的IP,所以發出去後能直接到達真實服務器),把請求報文進行包裝,真實服務器收到後,去掉報文頭得到用戶的IP,把響應報文直接發還給客戶端。
IPVS調度算法
內核Layer-7交換機KTCPVS
LVS集羣特點