nginx keepalived雙機熱備

2022-06-19 08:15:13 字數 1550 閱讀 3893

keepalived是乙個類似於layer3, 4 & 5交換機制的軟體,即可以使ip層、傳輸層、和應用層的服務冗餘集群化。常應用於ip的虛擬化,能夠實現mysql、nginx等服務的雙機熱備。

keepalived高可用服務對之間的故障切換轉移,是通過 vrrp (virtual router redundancy protocol ,虛擬路由器冗餘協議)來實現的。

在 keepalived服務正常工作時,主 master節點會不斷地向備節點傳送(多播的方式)心跳訊息,用以告訴備backup節點自己還活看,當主 master節點發生故障時,就無法傳送心跳訊息,備節點也就因此無法繼續檢測到來自主 master節點的心跳了,於是呼叫自身的接管程式,接管主master節點的 ip資源及服務。而當主 master節點恢復時,備backup節點又會釋放主節點故障時自身接管的ip資源及服務,恢復到原來的備用角色。

nginx:1.14.2

keepalived:2.0.12

兩個軟體的安裝都是使用的原始碼包編譯安裝。

192.168.50.80  nginx+keepalived

192.168.50.81  negin+keepalived

192.168.50.100  vip

80上的配置檔案

1 vim /opt/keepalived-2.0.12/etc/keepalived/keepalived.conf23

global_defs 67

vrrp_instance vi_1

17virtual_ipaddress

20 }

81上的配置檔案

1 vim /opt/keepalived-2.0.12/etc/keepalived/keepalived.conf23

global_defs 67

vrrp_instance vi_1

17virtual_ipaddress

20 }

啟動keepalived

1 cd /opt/keepalived-2.0.12/sbin

2 ./keepalived -f /opt/keepalived-2.0.12/etc/keepalived/keepalived.conf

關閉keepalived

1 pkill keepalived

keepalived日誌位置:/var/log/message

同時啟動80和81的nginx和keepalived,訪問vip192.168.50.100,訪問到的是主伺服器80上的nginx,此時vip是虛擬註冊在80的網絡卡上。

將80上的keepalived關閉,vip就被註冊到了81上,再次訪問vip,就訪問到了80的nginx。

上述過程,vip始終是可以訪問的,只是後台切換了不同的nginx伺服器。

主伺服器的keepalived關閉,虛擬ip就自動轉移到備用伺服器,由此我們可以寫乙個定時任務,不斷檢測應用(nginx、mysql等)是否正常,一旦檢測到應用異常,關閉相對主機上的keepalived,下次使用者的訪問就會自動轉移到備用伺服器上。

nginx keepalived學習目錄

keepalived權威指南 深入理解nginx nginx模組開發與架構解析第二版 nginx開發從入門到精通 keepalived工作原理和配置說明 1 nginx安裝和介紹 2 nginx的啟動和停止 3 nginx程序模型 4 nginx處理請求過程 5 nginx配置一 6 nginx配置...

Nginx Keepalived 負載均衡

喜歡搞nginx,這兩天研究了一下nginx的負載配置 nginx平台搭建 nginx mysql php fpm搭建高效能nginx平台 單nginx負載均衡 nginx 負載均衡 配置全過程 熟悉上面的配置之後,今天我再來搞nginx keepalived 的配置,具體拓撲如下 一 安裝keep...

nginx keepalived雙機熱備

採用nginx實現反向 配置集群,實現軟f5的功能。nginx.conf的配置如下 server 192.168.2.134 8082 upstream socologin server access log home soco share nginx logs access.log access ...