數(shù)據(jù)庫高可用方案選擇:DRBD與Pacemaker
本文來自DBAnotes,原文標(biāo)題:DRBD 與 Pacemaker
如果有人問你一臺(tái) PC 服務(wù)器是否可以達(dá)到 99.99% 的高可用,該如何回答呢? 或許沒有一臺(tái)機(jī)器能"確保"達(dá)到這樣的可用率,當(dāng)然在某個(gè)時(shí)間段或許不會(huì)出問題,但這個(gè)肯定是看運(yùn)氣,而高可用基本上是沒辦法通過一臺(tái)來達(dá)到目標(biāo)的,我們更多的時(shí)候是設(shè)計(jì)方案確保在出問題的時(shí)候盡快接管故障機(jī)器,當(dāng)然這要付出更大的成本。
對(duì)于 Oracle 的高可用方案可以參考 Maximum Availability Architecture (MAA) 白皮書,不過 Oracle 并不推崇操作系統(tǒng)級(jí)別的解決方案。MySQL 的指導(dǎo)策略倒是更為靈活一些,DRBD (Distributed Replicated Block Device) 就是個(gè)可以考慮的選擇。以前關(guān)注過這東西,但是據(jù)我了解,好像國內(nèi)實(shí)現(xiàn)的案例不多,不知道是不是處于對(duì)網(wǎng)卡同步速度的限制考慮。現(xiàn)在這個(gè)有了新的轉(zhuǎn)機(jī),在 8.3 版本上已經(jīng)能夠支持 InfiniBand 。而原來通過網(wǎng)卡同步數(shù)據(jù)塊的方式畢竟受網(wǎng)卡延時(shí)和帶寬的限制,InfiniBand 的支持的實(shí)現(xiàn)相信能贏得一部分企業(yè)用戶的信賴。
Linux Kernel Summit 2009 上這次有對(duì) DRBD 的介紹(注意對(duì)數(shù)據(jù)一致性的介紹),這意味著能正式進(jìn)入 Kernel 么?
相對(duì)專有的集群管理工具,也有開源的集群管理工具 Pacemaker (支持 Heartbeat 與 OpenAIS 標(biāo)準(zhǔn))可供配套使用。Pacemaker 能夠較為靈活的實(shí)現(xiàn)主備、N+1 、N-N 等多種模式。感人感覺會(huì)比較有生命力。
好的開源解決方案就是設(shè)計(jì)活動(dòng)木板房,廉價(jià)靈活環(huán)保,當(dāng)然,牢固肯定是***目標(biāo)。