從公有云單點故障看融合云存儲的重要性
隨著國內公有云服務的普及,越來越多的企業開始選擇公有云服務。但是即使是云服務也無法保證達到100%在線的,總有可能發生突發意外導致短時間故障,所以熱備份是我們公有云服務商在做系統架構時必須考慮到的重點因素。
云服務一般都存在哪些單點故障隱患?
數據庫:我們知道數據庫的單點隱患會對業務產生很大的影響。數據庫故障會導致整個應用無法提供服務。隨著業務規模的發展,當單臺數據庫可處理的業務能力已經無法滿足業務需求時,必然引入了主、從負載均衡的數據庫架構,同時把數據庫熱備問題解決。
應用服務器:使用期限達到數年的服務器容易出現各種各樣的硬件問題而導致宕機,所以我們用到了 LVS 負載均衡技術把幾臺服務器組成集群來提供服務。
機房:一般機房單點故障出現的頻率為一兩年一次,如電力故障和網絡故障。但在今天這個云時代,大家都無法接受兩年一遇的機房單點故障,所以跨地區異地容災架構開始被應用起來。
我們看一下,為了解決以上Web應用服務存在的單點隱患,需要花費的成本:
基礎版:1臺數據庫服務器、1臺應用服務器 高容災:2臺數據庫服務器、2臺應用服務器、部署兩個機房 1+1 = 2 ;(2+2)x2 = 8
為此又拍云增加了4倍的硬件成本和相對應的研發、運維成本。但我們都覺得為了業務是值得的,這是事實。
云服務的的單點隱患該如何解決?
在現在應用開發模式下,CDN 和云存儲服務有利于降低基礎設施成本,保證開發者把有限的資源重點投入到核心設施上,如數據庫、應用服務器等。
首先我們來分析一下 CDN 和云存儲兩個服務的單點故障隱患問題:
CDN 服務是天然多地區多機房部署的:CDN 服務出現全網故障的可能性幾乎為零,一般只會出現單個機房服務故障,對整體業務的影響范圍在10%以內(已按終端用戶地區熱度來統計),而這個也能被 CDN 服務商的自動調度系統快速解決,所以對此不必擔心單點問題,即使用多家 CDN 服務也是相同的容災過程。
云存儲服務是存在單機房故障隱患:云存儲服務與 CDN 服務不同,它跟云主機服務一樣都是集中于個別機房,并且在使用云存儲服務時還得選擇使用其中一個數據中心。如果數據所在數據中心出現電力或者網絡故障,就會影響正常服務。(這里特指服務安全而不是數據安全,現在基本每個云廠商都做數據多備份的,所以不存在數據安全問題)
那么我們說到的云存儲服務單點隱患這個要怎么解決呢?
最簡單的方式就是同時使用兩個以上的數據中心,或者分別使用兩家服務商。這樣不需要自己來購買服務器來部署,現在的云存儲服務都是使用多少付多少錢的模式,所花費的成本并不多。
如果選用又拍云的話,還可以以流量進行抵扣,正常使用的情況下基本免費。
雖然同時使用多家云存儲的成本并不高,但是對應用系統產生不小的技術成本,甚至很難做好這個融合工作。目前最簡單的方法就是在 CDN 服務上做多源站的容災處理在 CDN 訪問過程中回源到 A 云存儲無法正常服務時,自動切換到 B 云存儲。但后續還有不少工作,比如應用存儲文件到 A 后還得寫個隊列同步到 B,如果 A 故障那么會只寫到 B,等 A 恢復后哪些文件要重新同步回來等等。這個時候又拍云的融合云存儲整體解決方案就能幫助大家很好的解決這些問題。