對你的業務來說,數據中心出現故障是災難性的打擊。通常設計為三個或更多個數據中心,因為這樣成本比只有兩個數據中心低。在高峰期利用閑置的容量,而不是降低處理事務的速度。
要點:在實施災難恢復時,利用三個或更多個實時數據中心的設計,可以降低災難恢復的成本。在必要時,可以利用閑置容量滿足高峰期的需求。
對于超高速發展的公司來說,數據中心的擴展已經成了最大的痛點之一。這是因為,計劃和建造數據中心的時間較長,而且它也是在高速發展階段我們最不愿意考慮的事情之一。但有時,最不愿意考慮的事情是對公司危害最大的事情。這個原則簡單地介紹了“如何”以及“為什么要擠分數據中心以應對高速的發展。
首先,讓我們看一些基礎。為了實現故障隔離(有助于帶來高可用性)和事務的增長,我們想分別用原則8和原則9介紹的Y軸和Z軸擴展方法對數據進行分片。為了實現高可用性和事務的增長,我們想用原則7介紹的X軸擴展方法復制(或克隆)數據和服務。最后,我們假設0,你可能有一個無狀態系統或者能夠根據自己的有狀態需求進行設計,從而利用多個數據中心。正是數據和服務以及無狀態系統的分片、復制、克隆形成了分區,從而使得我們能夠把數據中心分布到多個不同地點的站點中去。
如果我們沿z軸切分數據(參閱原則9),那么可以把數據放在離請求該數據的用戶較近的數據中心。如果要在切分數據時維持多租戶性,可以選擇離終端用戶近的數據中心。如果“原子”或“粒度”元素是一個公司,那么可以把數據中心放在所服務的公司附近(如果是家大型公司,至少要選擇距離該公司最大的辦公區較近的位置)。
首先,讓我們從三個數據中心入手,這時每個數據中心存放約33%的數據。我們將這三個數據集稱之為為A數據集、B數據集和C數據集。每個數據中心的數據集都進行了備份并平分為兩部分,而這兩部分的副本則分別存在其他兩個數據中心。假設采用Z軸拆分和X軸復制的方法復制數據,那么A數據中心的客戶的50%的數據將存放在B數據中心,其另外50%的數據存放在C數據中心。任何一個數據中心出現故障,那么該數據中心50%的數據和相關事務都會被轉移到其他兩個數據中心。如果A數據中心出現故障,那么它509%的數據和相關事務會被轉移到B數據中心,另外50%將被轉移到C數據中心。如圖3-2所示。結果是所有站點總計存儲了20096的數據,但是每個站點只保存數據總量的66%,因為每個站點存放了100%的主數據集副本(占該站點數據總量的3%)和其他兩個站點的50%的數據副本(總量占該站點數據量的33%,每個數據副本占數據量的165%)。
要了解這種配置為什么比兩個數據中心好,需要進行一些計算。假設你至少需要兩個數據中心,使業務能夠在地理位置上孤立的災難事件中存活。如果我們有兩個數據中心,分別標記為A和B,那么你可能會用A數據中心進行1009%的操作,讓B數據中心作為熱備份。采用熱冷(或積極被動)配置,那么兩個數據中心都要具備10096的計算及網絡資源,這包括10096的Web和應用服務器、10096的數據庫服務器和10096的網絡設備。兩個數據中心的電力需求相似,網絡連接相似。為了應對高峰期激增的需求,每個數據中心可能需要稍大于100%的容量才行。假設每個數據中心需要110%的容量。無論何時為一個數據中心增加服務器,都要為另一個數據中心購買等量的服務器。也許為了安全復制數據,你可能會采用專用線路連接兩個數據中心。同時運行兩個實時數據中心,那么在發生災難時,在把所有處理轉移到備用數據中心之前,只有50%6的事務會失敗,但這種方法在預算和財務方面卻沒有什么優勢。
但是,采用三個實時數據中心,成本就會下降。這是因為,在每個站點中,對于所有的非數據庫系統,每個地方只需要150%的容量即可處理故障站點100%的交易。對于數據庫,雖然仍然需要200%6的存儲,但對于任何方法該成本都是必須的。電力和設備消耗也大約為單個站點的150%,不過我們需要的人員顯然要多一些,可能操作三個數據中心需要的人員要比操作一個數據中心的人員多1.5倍。唯一增加的是網絡設備,因為三個數據中心比兩個數據中心需要的網絡連接多兩條。
采用這種配置的一大好處是,能夠利用閑置容量創建測試(如負載測試和性能測試)區域,還能利用這些閑置資源應對激增的需求。這種激增的需求隨時可能出現。我們可能要處理一些計劃外的壓力,也可能關系很好的個人或公司客戶得到了難以置信的病毒式的發展。那么可以先用為災難恢復準備的容量處理交易,與此同時再采購新的設備。
我們提到過,運轉三個或更多個數據中心也有缺點。雖然我們確信三個站點都在實時工作,但是運轉這三個站點還需要額外的一些復雜工作。不過即使運轉兩個采用冷熱配置的數據中心,所需的復雜工作也不比前者需要的少。同步兩個站點是很難的,尤其是運維人員幾乎無法證明兩個站點中的某一個是否真能在必要時運行。不間斷地運轉三個數據中心雖然會更難一些,但也不是非常難。
雖然其他成本降低了,但是網絡傳輸成本的增長也非常快。在站點的全面連通圖中,每個新站點N+1都需要N條額外的網絡連接,其中N是之前站點的數目。網絡連接成本控制得好的公司,通常都會跟網絡傳輸供應商談一個批量折扣,并且還可以脫離雙方的角色來充當第三方網絡傳輸供應商,從而減少成本。
最后,我們預見到了多個實時網站制作站點的模型會造成人員及其附加的成本增加。如果數據中心很大,我們會把員工分配到數據中心附近,而不是遠程工作。即使沒有現場工作人員,也需要不時地到現場去,與第二供應商一起工作,等等。附注欄“多個實時站點注意事項總結了實施多個實時站點的好處、缺點以及架構方面需要考慮的要素。
本文地址:http://knowyourextract.com//article/3461.html