虛擬IP(VIP)

   高可用性HA(High Availability)指的是經過儘可能縮短因平常維護操做(計劃)和突發的系統崩潰(非計劃)所致使的停機時間,以提升系統和應用的可用性。HA系統是目前企業防止核心計算機系統因故障停機的最有效手段。數據庫

實現HA的方式,通常採用兩臺機器同時完成一項功能,好比數據庫服務器,日常只有一臺機器對外提供服務,另外一臺機器做爲熱備,當這臺機器出現故障時,自動動態切換到另外一臺熱備的機器。緩存

怎麼實現故障檢測的那?服務器

      心跳。採用定時發送一個數據包,若是機器多長時間沒響應,就認爲是發生故障,自動切換到熱備的機器上去。網絡

怎麼實現自動切換那?操作系統

      虛IP。何爲虛IP那,就是一個未分配給真實主機的IP,也就是說對外提供數據庫服務器的主機除了有一個真實IP外還有一個虛IP,使用這兩個IP中的 任意一個均可以鏈接到這臺主機,全部項目中數據庫連接一項配置的都是這個虛IP,當服務器發生故障沒法對外提供服務時,動態將這個虛IP切換到備用主機。ip

 

      其實現原理主要是靠TCP/IP的ARP協議。由於ip地址只是一個邏輯 地址,在以太網中MAC地址纔是真正用來進行數據傳輸的物理地址,每臺主機中都有一個ARP高速緩存,存儲同一個網絡內的IP地址與MAC地址的對應關 系,以太網中的主機發送數據時會先從這個緩存中查詢目標IP對應的MAC地址,會向這個MAC地址發送數據。操做系統會自動維護這個緩存。這就是整個實現 的關鍵。it

下邊就是我電腦上的arp緩存的內容。原理

(192.168.1.219) at 00:21:5A:DB:68:E8 [ether] on bond0
(192.168.1.217) at 00:21:5A:DB:68:E8 [ether] on bond0
(192.168.1.218) at 00:21:5A:DB:7F:C2 [ether] on bond0配置

 

192.168.1.21七、192.168.1.218是兩臺真實的電腦,高可用

192.168.1.217爲對外提供數據庫服務的主機。

192.168.1.218爲熱備的機器。

192.168.1.219爲虛IP。

你們注意紅字部分,21九、217的MAC地址是相同的。

再看看那217宕機後的arp緩存

(192.168.1.219) at 00:21:5A:DB:7F:C2 [ether] on bond0
(192.168.1.217) at 00:21:5A:DB:68:E8 [ether] on bond0
(192.168.1.218) at 00:21:5A:DB:7F:C2 [ether] on bond0 

這就是奧妙所在。當218 發現217宕機後會向網絡發送一個ARP數據包,告訴全部主機192.168.1.219這個IP對應的MAC地址是00:21:5A:DB:7F:C2,這樣全部發送到219的數據包都會發送到mac地址爲00:21:5A:DB:7F:C2的機器,也就是218的機器。

相關文章
相關標籤/搜索