nginx高可用是什么意思

“高可用性”(high availability)通常來描述一個系統經過專門的設計,從而減少停工時間,而保持其服務的高度可用性。nginx于keepalived可以實現高可用,實現雙機熱備+自動切換,這種操作在現在的集群系統中,比較的常見,還有,通過keepalived和redis實現熱備份的,還有和mysql實現的,類似的案例挺多。

nginx高可用是什么意思

Keepalived是一個免費開源的,用C編寫的類似于layer3, 4 & 7交換機制軟件,具備我們平時說的第3層、第4層和第7層交換機的功能。主要提供loadbalancing(負載均衡)和 high-availability(高可用)功能,負載均衡實現需要依賴Linux的虛擬服務內核模塊(ipvs),而高可用是通過VRRP協議實現多臺機器之間的故障轉移服務。?

nginx高可用是什么意思

上圖是Keepalived的功能體系結構,大致分兩層:用戶空間(user space)和內核空間(kernel space)。?

內核空間:主要包括IPVS(IP虛擬服務器,用于實現網絡服務的負載均衡)和NETLINK(提供高級路由及其他相關的網絡功能)兩個部份。?

用戶空間:

WatchDog:負載監控checkers和VRRP進程的狀況

VRRP Stack:負載負載均衡器之間的失敗切換FailOver,如果只用一個負載均稀器,則VRRP不是必須的。

Checkers:負責真實服務器的健康檢查healthchecking,是keepalived最主要的功能。換言之,可以沒有VRRP Stack,但健康檢查healthchecking是一定要有的。

IPVS wrapper:用戶發送設定的規則到內核ipvs代碼

Netlink Reflector:用來設定vrrp的vip地址等。

Keepalived的所有功能是配置keepalived.conf文件來實現的。

更多nginx相關技術文章,請訪問Nginx使用教程欄目進行學習!

? 版權聲明
THE END
喜歡就支持一下吧
點贊13 分享