我們的新備份系統如何避免超過 24 小時的停機時間

還記得我們去年 10 月宣布的新基礎建設嗎?我們特別引以為傲的創新的一部分是我們內部創建的備份/復原系統。幾天前,該系統進行了首次關鍵的現實測試,結果令人印象深刻。當我們仍然使用舊的備份解決方案時,與上次此類事件相比,我們能夠恢復 3 倍以上的數據,速度提高 7 倍。我們是這樣做的。

我們多久需要一次大規模備份復原?

簡短的回答是:很少。擁有高度冗餘的基礎架構,在 RAID 中包含多個 SSD,幾乎消除了此類復原的需要。通常,當 SSD 發生故障時,會無縫地替換為新硬件,不會造成任何明顯的停機或資料遺失。而且磁碟故障非常常見:對於我們這樣規模的供應商來說,幾乎每天都會看到此類事件。然而,亞美尼亞電話號碼數據 時不時地,多個硬體和軟體同時發生故障的不幸巧合可能會使標準硬體更換變得不可能。這些時候,我們需要從備份副本中恢復受損實例上的所有帳戶。

之前,在我們的新備份系統之前

上一次我們需要對整個共享託管伺服器進行完整備份還原是一年多前的事了。當時我們使用的是 R1Soft 備份,它是我們行業中最受歡迎的備份之一。像我們這樣的託管提供者使用此軟體有兩個主要原因。首先,它是相當可靠的。我們幾乎從未遇到過備份遺失和損壞的嚴重問題。其次,它非常輕量級,並且在創建備份(每天都會發生的資源密集型過程)時不會在生產伺服器上產生大量負載。憑藉這兩個功能,R1Soft 在 99% 的時間裡都能完美運作 — 當它建立備份時以及當需要單獨的備份副本時。

亞美尼亞電話號碼數據

然而在極少數需要完全恢復多個帳戶的情況下

 

R1Soft 有一個嚴重的缺點 – 恢復過程極其緩慢,並且受影響的網站可能會經歷長時間的中斷。在該事件中,我們所有受影響的帳戶都關閉了 28 小時。花了這麼長時間有兩個原因。首先,R1Soft 不允許同時從多個位置恢復或同時恢復到多個位置。所有資料都需要透過一個網路介面恢復,速度很慢。 R1Soft 的另一個問題是復原不能增量,並且在整個復原過程中伺服器實例會關閉。只有在整個資訊從備份伺服器傳輸到生產電腦後,所有受影響的網站才能同時恢復線上。因此,在我們恢復整個伺服器之前,即使是最小的網站也無法恢復。

大多數共享託管提供者幾乎不會認為這個故事是一個嚴重的問題,需要在恢復結束後採取進一步的行動。畢竟,只有一台機器受到影響,所有客戶都恢復了他們的網站,沒有資料遺失。站點每年的停機時間也幾乎可以忽略不計:28 小時僅佔一年的 0.3%。然而,在 SiteGround,我們對問題的持續時間感到非常不滿意,並決心防止這種情況在未來再次發生。

現在在我們的新備份系統之後

這就是我們如何下定決心創建自己的備份系統以確保更快的恢復過程,並且我們才華橫溢的 DevOps 部門開始致力於此。我們在 2015 年 10 月推出了新的解決方案,但直到幾天前我們才不得不在類似於上述事件的事件中使用它。與我們當時使用的解決方案 R1Soft 相比,我們自己的系統進行分散式備份,並允許從多個備份實例同時還原到多個生產伺服器。因此,我們現在能夠在短短 4 小時內恢復 4TB 的資料(幾乎是之前的三倍),而上述的故事需要 28 小時。此外,市價訂單在加密貨幣交易中的作用 我們的系統允許增量恢復,並且在發現問題後幾分鐘內第一個帳戶就恢復正常,最長的停機時間(約 4 小時)僅影響少數個別站點。這將所有受影響帳戶的平均停機時間從先前的 28 小時縮短至不到 2 小時。這是一個相當令人印象深刻的進步,不是嗎?但…

還能更快嗎?

是的,可以!在我們最新的大規模復原案例中,我們實際上無法按照計劃在備份伺服器和生產伺服器之間使用 Infiniband 網路連線。因此,

另一件事是,使用新系統理論上我們可以同時恢復無限數量的生產實例,我們的新備份系統如何避免 但實際上我們受到限制,資料庫到數據 不是受到備份系統本身的限制,而是受到我們的 DNS 系統目前的工作方式的限制。我們有三個實例受到該問題的影響,每個實例都有單獨的 DNS。因此,我們只需要使用舊 IP 恢復到三個新實例,以便未向我們註冊的網域可以繼續像以前一樣工作,並且不會因DNS 傳播時間而經歷額外的停機時間。為了避免將來出現這種限制,我們計劃開發一個全新的中央 DNS 和/或代理系統。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

返回頂端