高可用性HA(High Availability)指的是通過(guò)盡量縮短因日常維護(hù)操作(計(jì)劃)和突發(fā)的系統(tǒng)崩潰(非計(jì)劃)所導(dǎo)致的停機(jī)時(shí)間,以提高系統(tǒng)和應(yīng)用的可用性。HA系統(tǒng)是目前企業(yè)防止核心計(jì)算機(jī)系統(tǒng)因故障停機(jī)的最有效手段。
實(shí)現(xiàn)HA的方式,一般采用兩臺(tái)機(jī)器同時(shí)完成一項(xiàng)功能,比如數(shù)據(jù)庫(kù)服務(wù)器,平常只有一臺(tái)機(jī)器對(duì)外提供服務(wù),另一臺(tái)機(jī)器作為熱備,當(dāng)這臺(tái)機(jī)器出現(xiàn)故障時(shí),自動(dòng)動(dòng)態(tài)切換到另一臺(tái)熱備的機(jī)器。
怎么實(shí)現(xiàn)故障檢測(cè)的那?
心跳,采用定時(shí)發(fā)送一個(gè)數(shù)據(jù)包,如果機(jī)器多長(zhǎng)時(shí)間沒(méi)響應(yīng),就認(rèn)為是發(fā)生故障,自動(dòng)切換到熱備的機(jī)器上去。
怎么實(shí)現(xiàn)自動(dòng)切換那?
虛IP。何為虛IP那,就是一個(gè)未分配給真實(shí)主機(jī)的IP,也就是說(shuō)對(duì)外提供數(shù)據(jù)庫(kù)服務(wù)器的主機(jī)除了有一個(gè)真實(shí)IP外還有一個(gè)虛IP,使用這兩個(gè)IP中的任意一個(gè)都可以連接到這臺(tái)主機(jī),所有項(xiàng)目中數(shù)據(jù)庫(kù)鏈接一項(xiàng)配置的都是這個(gè)虛IP,當(dāng)服務(wù)器發(fā)生故障無(wú)法對(duì)外提供服務(wù)時(shí),動(dòng)態(tài)將這個(gè)虛IP切換到備用主機(jī)。
開(kāi)始我也不明白這是怎么實(shí)現(xiàn)的,以為是軟件動(dòng)態(tài)改IP地址,其實(shí)不是這樣,其實(shí)現(xiàn)原理主要是靠TCP/IP的ARP協(xié)議。因?yàn)閕p地址只是一個(gè)邏輯地址,在以太網(wǎng)中MAC地址才是真正用來(lái)進(jìn)行數(shù)據(jù)傳輸?shù)奈锢淼刂?,每臺(tái)主機(jī)中都有一個(gè)ARP高速緩存,存儲(chǔ)同一個(gè)網(wǎng)絡(luò)內(nèi)的IP地址與MAC地址的對(duì)應(yīng)關(guān)系,以太網(wǎng)中的主機(jī)發(fā)送數(shù)據(jù)時(shí)會(huì)先從這個(gè)緩存中查詢(xún)目標(biāo)IP對(duì)應(yīng)的MAC地址,會(huì)向這個(gè)MAC地址發(fā)送數(shù)據(jù)。操作系統(tǒng)會(huì)自動(dòng)維護(hù)這個(gè)緩存。這就是整個(gè)實(shí)現(xiàn)的關(guān)鍵。
下邊就是我電腦上的arp緩存的內(nèi)容。
192.168.1.217、192.168.1.218是兩臺(tái)真實(shí)的電腦,
192.168.1.217為對(duì)外提供數(shù)據(jù)庫(kù)服務(wù)的主機(jī)。
192.168.1.218為熱備的機(jī)器。
192.168.1.217為虛IP。
大家注意紅字部分,219、217的MAC地址是相同的。
再看看那217宕機(jī)后的arp緩存
聯(lián)系客服