2022年1月15日,湯加火山突然劇烈噴發(fā),火山噴發(fā)不僅使得湯加全境面臨海嘯、暴雨、洪水和強風(fēng)的威脅,遮天蔽日的火山灰還嚴重阻礙了通信,使得湯加瞬間陷入了全境“失聯(lián)”的狀態(tài),與外部世界的聯(lián)系幾乎完全中斷。
在如此巨大的自然災(zāi)害的面前,傳統(tǒng)的數(shù)據(jù)庫高可用架構(gòu)顯得不堪一擊——部署在湯加本地的機房不可避免地遭遇了斷電,無法對外提供服務(wù);關(guān)鍵的業(yè)務(wù)數(shù)據(jù)丟失,產(chǎn)生了不可估量的損失。地球的雷霆怒火面前,人類總是顯得無比渺小,面對災(zāi)害無力回天。如何居安思危,通過有效的災(zāi)備方案,快速恢復(fù)生產(chǎn)、業(yè)務(wù)和服務(wù),降低區(qū)域性災(zāi)難對企業(yè)數(shù)據(jù)的破壞,減少負面沖擊,這是無數(shù)企業(yè)亟待解決的問題。
“兩地三中心”解決方案就是為應(yīng)對此類大范圍自然災(zāi)害而提出的。“兩地三中心”中的兩地是指同城、異地;三中心是指生產(chǎn)中心、同城災(zāi)備中心、異地災(zāi)備中心。當(dāng)單個地域的業(yè)務(wù)無法幸存時,可以采用同城雙中心加異地災(zāi)備的“兩地三中心”容災(zāi)備份解決方案,來應(yīng)對大范圍自然災(zāi)害導(dǎo)致的業(yè)務(wù)中斷和數(shù)據(jù)丟失。金倉KingbaseES兩地三中心高可用災(zāi)備解決方案可以完美解決各種場景下的災(zāi)備切換問題。下面,讓我們來看看金倉KingbaseES的“兩地三中心”實現(xiàn)方案。
金倉KES數(shù)據(jù)庫的兩地三中心架構(gòu)
金倉KingbaseES集群支持的兩地三中心容災(zāi)系統(tǒng)屬于數(shù)據(jù)級的容災(zāi),提供數(shù)據(jù)庫軟件的兩地三中心解決方案,易用、易維護、可靠性高;并且用戶可以在金倉KingbaseES的兩地三中心方案上對應(yīng)用和業(yè)務(wù)進行改造,構(gòu)造應(yīng)用級或業(yè)務(wù)級容災(zāi)系統(tǒng)。
定義:
兩地三中心:一種業(yè)務(wù)連續(xù)性容災(zāi)方案。三數(shù)據(jù)中心并存的特性,能在任意兩個數(shù)據(jù)中心受損的情況下保障核心業(yè)務(wù)的連續(xù),大大提高容災(zāi)方案的可用性。
生產(chǎn)中心:對外提供服務(wù)。
同城災(zāi)備中心:通常在離生產(chǎn)中心幾十公里的距離建立同城災(zāi)備中心,應(yīng)用可在不丟失數(shù)據(jù)的情況下切換到同城災(zāi)備中心運行,是兩地三中心容災(zāi)方案的第一級容災(zāi)保護。
異地災(zāi)備中心:通常在離生產(chǎn)中心幾百或者上千公里的地方建立異地災(zāi)備中心,應(yīng)對區(qū)域性重大災(zāi)難,實現(xiàn)異步復(fù)制災(zāi)備,是兩地三中心容災(zāi)方案的第二級容災(zāi)保護。
SYNC:節(jié)點間同/異步關(guān)系,SYNC表示同步模式,數(shù)據(jù)會實時地同步傳輸?shù)絊YNC指向的節(jié)點。
ASYNC:節(jié)點間同/異步關(guān)系,ASYNC表示異步模式,數(shù)據(jù)會非實時地同步傳輸?shù)紸SYNC指向的節(jié)點,數(shù)據(jù)可能有一定的滯后性。
RTO(Recovery Time Objective):從災(zāi)難發(fā)生到整個系統(tǒng)恢復(fù)正常所需要的最大時長。
RPO(Recovery Point Objective):最多可能丟失數(shù)據(jù)的時長。
●能力
當(dāng)前,人大金倉KingbaseES"兩地三中心"提供如下功能:
1.數(shù)據(jù)同步,在多個副本之間進行數(shù)據(jù)同步,并基于同城短距離和異地遠距離的不同場景提供最優(yōu)的數(shù)據(jù)同步方案;
2.熱備,備庫可讀,分擔(dān)業(yè)務(wù)壓力,識別讀寫事務(wù)并進行分發(fā),降低單個數(shù)據(jù)副本的業(yè)務(wù)壓力,提高整套系統(tǒng)的處理能力;
3.故障切換與故障恢復(fù)能力,保證7*24小時提供數(shù)據(jù)服務(wù),各種軟硬件故障下能夠提供安全可靠的數(shù)據(jù)服務(wù),最大程度提供數(shù)據(jù)可靠性和服務(wù)持續(xù)性;
4.獨立備份,生產(chǎn)數(shù)據(jù)最后的保障,即使整套業(yè)務(wù)、數(shù)據(jù)庫系統(tǒng)都無法恢復(fù),還有最后的獨立備份數(shù)據(jù)作為最終數(shù)據(jù)安全保障手段。
●方案優(yōu)勢
相比跨中心的同城容災(zāi)和跨地域的異地容災(zāi),兩地三中心容災(zāi)方案結(jié)合兩者的優(yōu)勢,可以同時應(yīng)對中心級別故障和地域級別災(zāi)難。
對于中心級別故障,容災(zāi)切換時保證數(shù)據(jù)庫數(shù)據(jù)一致性。
對于地域級別災(zāi)難,該方案可將業(yè)務(wù)恢復(fù)至異地災(zāi)備數(shù)據(jù),盡可能保全業(yè)務(wù)數(shù)據(jù)不丟失。
金倉KES兩地三中心集群災(zāi)難恢復(fù)演練
●演練目標
通過實戰(zhàn)演練,檢驗金倉KingbaseES兩地三中心集群應(yīng)對各種故障場景的能力:
A、是否支持自動故障切換和資源恢復(fù)
B、驗證業(yè)務(wù)恢復(fù)的時長
C、檢驗數(shù)據(jù)同步延遲情況
●演練環(huán)境
此次金倉KingbaseES兩地三中心集群災(zāi)難恢復(fù)演練采用5個數(shù)據(jù)庫節(jié)點的模式,將生產(chǎn)中心、同城災(zāi)備中心放置于成都相隔30km機房,異地災(zāi)備中心放置于北京機房(成都至北京的直線距離約為1500km,絕大多數(shù)用戶的災(zāi)備系統(tǒng)設(shè)計的災(zāi)備距離不會超過此值,最大限度地覆蓋了客戶的災(zāi)備場景)。服務(wù)器節(jié)點信息如下圖:
●演練內(nèi)容 | 生產(chǎn)中心整體故障
模擬生產(chǎn)中心主庫和備庫全部發(fā)生故障的場景:例如處于成都地域的生產(chǎn)中心機房遭到破壞,整體斷電或者異常病毒造成設(shè)備癱瘓。
檢驗金倉KingbaseES兩地三中心集群對上述故障的處理能力、故障處理能力邊界及故障對業(yè)務(wù)的影響時長。
●自動故障切換
應(yīng)用業(yè)務(wù)訪問的生產(chǎn)中心故障,同城災(zāi)備中心經(jīng)過集群多節(jié)點間心跳判斷生產(chǎn)中心已不可訪問。同城災(zāi)備中心迅速自動故障切換,提升本中心繼續(xù)為應(yīng)用提供服務(wù),僅需秒級的業(yè)務(wù)恢復(fù)時長!
該階段的容災(zāi)RPO等于0,RTO在幾秒-幾十秒內(nèi)(可配置)。
●自動恢復(fù)加入集群
當(dāng)生產(chǎn)中心整體發(fā)生故障時,切換后主庫轉(zhuǎn)移到同城災(zāi)備中心。之后,位于同城災(zāi)備中心的主庫,將自動對生產(chǎn)中心的故障數(shù)據(jù)庫進行恢復(fù)(例如此時生產(chǎn)中心已恢復(fù)供電或解決了設(shè)備癱瘓問題)。
先自動恢復(fù)node1,作為同步備庫恢復(fù)。再自動恢復(fù)node2,作為異步備庫恢復(fù)。在業(yè)務(wù)恢復(fù)期間,同城災(zāi)備中心始終對外提供服務(wù),恢復(fù)過程對用戶無感,RTO/RPO=0!
同時,當(dāng)生產(chǎn)中心整體恢復(fù)后,又可作為當(dāng)前同城災(zāi)備中心的同城容災(zāi)節(jié)點,提供與之相應(yīng)的故障處理能力,業(yè)務(wù)又回到開始的同城雙中心均可訪問的場景。
●演練內(nèi)容 | 生產(chǎn)中心和同城災(zāi)備中心全部故障
模擬生產(chǎn)中心和同城災(zāi)備中心全部故障的場景:例如處于成都的生產(chǎn)中心和同城災(zāi)備中心因不可抗力的因素整體遭到破壞。
該階段的容災(zāi)RPO取值為 0 ~ 數(shù)秒/數(shù)分鐘。取決于業(yè)務(wù)帶寬規(guī)劃值和業(yè)務(wù)高峰/低峰區(qū)。RTO一般建議用戶手動切換執(zhí)行,自動切換在數(shù)分鐘內(nèi)。
位于北京的異地災(zāi)備中心可手動/自動切換至對外提供服務(wù)的狀態(tài),作為數(shù)據(jù)系統(tǒng)最后的保障。此場景一般從應(yīng)用層面系統(tǒng)性地規(guī)劃應(yīng)用/業(yè)務(wù)系統(tǒng)和數(shù)據(jù)系統(tǒng)整體的計劃遷移。金倉為此類災(zāi)難級恢復(fù)也提供了基礎(chǔ)保障。
●演練內(nèi)容 | 實測生產(chǎn)中心、同城災(zāi)備中心、異地災(zāi)備中心數(shù)據(jù)差異
通過實戰(zhàn)演練,查看生產(chǎn)中心、同城災(zāi)備中心、異地災(zāi)備中心數(shù)據(jù)同步延遲情況,直觀了解實際地域距離、網(wǎng)絡(luò)帶寬、網(wǎng)絡(luò)延遲等對數(shù)據(jù)同步的影響??蛻艨梢愿鶕?jù)自己的業(yè)務(wù)場景來決定容災(zāi)環(huán)境的設(shè)置標準(網(wǎng)絡(luò)帶寬、容災(zāi)距離等)。
本次測試主要關(guān)注數(shù)據(jù)差異值的范圍。
測試1:kbbench灌1000萬數(shù)據(jù)
./kbbench -Usystem -p10001 -i test -s100-s 100比例因子,會在內(nèi)置的一個10w行數(shù)據(jù)表放大100倍,將在kbbench_accounts表中創(chuàng)建10,000,000行。共計數(shù)據(jù)量:Total data size: 1554 MB產(chǎn)生的數(shù)據(jù)庫日志量:
test=# selectsys_size_pretty(sys_wal_lsn_diff('0/80008A8','0/56888B20'));sys_size_pretty-----------------1257 MB
(1 行記錄)
比較運行過程中生產(chǎn)中心與同城災(zāi)備中心的同步備機日志差異:
●日志無差異;
●數(shù)據(jù)庫的同步機制在業(yè)務(wù)層面上是保證完全一致。
select application_name,sys_wal_lsn_diff(sys_current_wal_flush_lsn(),flush_lsn)/1024/1024 as MB from sys_stat_replication;application_name | mb------------------------------+------------------------node2 | 0.00000000000000000000node3 | 0.00000000000000000000
(2 行記錄)
比較運行過程中同城災(zāi)備中心與異地災(zāi)備中心的異步備庫日志差異:
●異步備庫處于同城,級聯(lián)(串聯(lián))的特性極大緩解了生產(chǎn)中心到同城災(zāi)備中心的網(wǎng)絡(luò)壓力,(在CPU、IO等未達到瓶頸時)即使是異步模式,也可以實時同步級聯(lián)節(jié)點完成數(shù)據(jù)同步。
●異地災(zāi)備中心的數(shù)據(jù)庫,日志差異較大,最高峰達984M左右的差異(差異值主要取決于距離和帶寬、網(wǎng)絡(luò)延遲。因此,需提前規(guī)劃好異地的帶寬配置情況,以滿足累積日志平均每天近飽和的傳輸完。金倉可利用日志壓縮功能,為用戶更多地節(jié)省昂貴的異地專用帶寬)。
test=# selectapplication_name,sys_wal_lsn_diff(sys_last_wal_receive_lsn(),flush_lsn)/1024/1024as MB from sys_stat_replication;application_name |mb------------------------------+------------------------node4 | 0.00000000000000000000node5 |984.2698364257812500test=# select application_name,sys_wal_lsn_diff(sys_last_wal_receive_lsn(),flush_lsn)/1024/1024as MB from sys_stat_replication;application_name | mb------------------------------+------------------------node4 | 0.00000000000000000000node5 |754.11923456456578460(2 rows)
ps:測試過程中,異地帶寬已占滿20MB/s,證明高峰期數(shù)據(jù)的差異帶寬占了很大的決定性作用。
測試2:模擬500客戶端并發(fā)測試,運行5min
./kbbench -Usystem -p10001 -r -j 64 -c 500 -T 300 test
運行結(jié)束后產(chǎn)生日志
:test=# select sys_size_pretty(sys_wal_lsn_diff('0/9C040C80','0/BC3CE7A0'));sys_size_pretty-----------------516 MB
(1 行記錄)
比較運行過程中生產(chǎn)中心與同城災(zāi)備中心的同步備機日志差異,日志無差異。
test=# select application_name,sys_wal_lsn_diff(sys_current_wal_flush_lsn(),flush_lsn)/1024/1024 as MB from sys_stat_replication;
application_name | mb
------------------------------+------------------------
node1 | 0.00000000000000000000
node3 | 0.00000000000000000000
(2 rows)
比較運行過程同城災(zāi)備中心異步備庫與異地災(zāi)備中心異步備庫日志差異,異地容災(zāi)節(jié)點趨近于0,可以看到在異地帶寬滿足正常業(yè)務(wù)流量時,波動非常穩(wěn)定。
test=# select application_name,sys_wal_lsn_diff(sys_last_wal_receive_lsn(),flush_lsn)/1024/1024 as MB from sys_stat_replication;
application_name | mb
------------------------------+------------------------
node4 | 0.00000000000000000000
node5 |0.8233871459960938
(2 rows)
小結(jié)
在實際演練過程中,還有其他幾類場景,金倉KingbaseES兩地三中心集群故障處理結(jié)果總結(jié)如下:
●生產(chǎn)中心和同城災(zāi)備中心可以保證數(shù)據(jù)無丟失的RPO=0、RTO=秒級的高可用容災(zāi)方案。在各類場景的演練均能做好數(shù)據(jù)不丟,服務(wù)不斷,無須人工干預(yù)的企業(yè)級處理標準(對應(yīng)信息安全技術(shù)信息系統(tǒng)災(zāi)難恢復(fù)規(guī)劃6級)。
●異地災(zāi)備中心數(shù)據(jù)差異有一定的波動。差異值主要取決于距離和帶寬、網(wǎng)絡(luò)延遲,金倉會提前幫助客戶規(guī)劃好異地的帶寬配置情況,以滿足當(dāng)前業(yè)務(wù)系統(tǒng)評估日志每天的生成量,制定合理的帶寬值。同時利用日志壓縮功能,可以壓縮日志在50-70%以上,可為用戶節(jié)省昂貴的異地專用帶寬。在合理的滿足業(yè)務(wù)流量需求上,RPO可以達到秒級。RTO推薦用戶手動執(zhí)行,自動切換異地災(zāi)備默認RTO在數(shù)分鐘內(nèi)完成。
應(yīng)用案例
當(dāng)前,金倉KingbaseES“兩地三中心”方案已在x中心核心業(yè)務(wù)系統(tǒng)中成功應(yīng)用,為關(guān)鍵政務(wù)數(shù)據(jù)的安全保駕護航。
系統(tǒng)于2020年底上線并穩(wěn)定運行后,該中心技術(shù)負責(zé)人致電金倉,充分肯定金倉方案、產(chǎn)品及服務(wù)團隊的專業(yè)性和先進性,對金倉在項目中的勤奮務(wù)實與專業(yè)精神予以贊揚并表示感謝。
結(jié)語
隨著互聯(lián)網(wǎng)的不斷發(fā)展和電子政務(wù)建設(shè)步伐的邁進,各行各業(yè)不斷加緊開展線上業(yè)務(wù),越來越多的用戶核心業(yè)務(wù)都要求二十四小時不斷網(wǎng),持續(xù)運行,對數(shù)據(jù)安全提出了更高的要求。
但是,地震、海嘯、龍卷風(fēng)、火山噴發(fā)、泥石流、山體滑坡,以及氣候變化引發(fā)的干旱、洪水.....如同達摩克里斯之劍一般懸在我們頭頂,隨時威脅著數(shù)據(jù)安全,影響著人類文明的進程。身處地球,沒有誰能置身事外。誰都無法預(yù)測這些自然災(zāi)難將會何時降臨,切斷服務(wù)、摧毀業(yè)務(wù)核心數(shù)據(jù)。這就需要我們具備應(yīng)對各種災(zāi)難、故障場景的能力,而金倉KingbaseES兩地三中心集群將會是您最好的選擇。
完善的災(zāi)備方案、智能的故障自動恢復(fù)和資源轉(zhuǎn)移、瞬時的業(yè)務(wù)恢復(fù)時長......金倉KingbaseES兩地三中心集群,與您一起應(yīng)對各種災(zāi)難場景,帶您避免自然災(zāi)害對業(yè)務(wù)的毀滅性打擊!
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關(guān)資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責(zé)。本網(wǎng)站對有關(guān)資料所引致的錯誤、不確或遺漏,概不負任何法律責(zé)任。
任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應(yīng)及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關(guān)文章源頭核實,溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。 )