簡介
keepalived是一個類似於layer3, 4 & 5交換機制的軟體,也就是我們平時說的第3層、第4層和第5層交換。Keepalived的作用是檢測web伺服器的狀態,如果有一台web伺服器當機,或工作出現故障,Keepalived將檢測到,並將有故障的web伺服器從系統中剔除,當web伺服器工作正常後Keepalived自動將web伺服器加入到伺服器群中,這些工作全部自動完成,不需要人工干涉,需要人工做的只是修復故障的web伺服器。工作原理
Layer3,4&5工作在IP/TCP協定棧的IP層,TCP層,及套用層,原理分別如下:
Layer3:Keepalived使用Layer3的方式工作式時,Keepalived會定期向伺服器群中的伺服器
傳送一個ICMP的數據包(既我們平時用的Ping程式),如果發現某台服務的IP位址沒有激活,Keepalived便報告這台伺服器失效,並將它從伺服器群中剔除,這種情況的典型例子是某台伺服器被非法關機。Layer3的方式是以伺服器的IP位址是否有效作為伺服器工作正常與否的標準。在本文中將採用這種方式。
Layer4:如果您理解了Layer3的方式,Layer4就容易了。Layer4主要以TCP連線埠的狀態來決定伺服器工作正常與否。如web server的服務連線埠一般是80,如果Keepalived檢測到80連線埠沒有啟動,則Keepalived將把這台伺服器從伺服器群中剔除。
Layer5:Layer5就是工作在具體的套用層了,比Layer3,Layer4要複雜一點,在網路上占用的頻寬也要大一些。Keepalived將根據用戶的設定檢查伺服器程式的運行是否正常,如果與用戶的設定不相符,則Keepalived將把伺服器從伺服器群中剔除。
作用
主要用作RealServer的健康狀態檢查以及LoadBalance主機和BackUP主機之間failover的實現。
高可用web架構: LVS+keepalived+nginx+apache+php+eAccelerator(+nfs可選 可不選)