這幾天,蘋果宕機的事件鬧得沸沸揚揚,網上已經有各種版本猜測蘋果宕機的真正原因,作為一個從事IT工作的果粉,也忍不住想要說幾句。
事件的始末是這樣的,12日下午,據部分蘋果用戶反應,iTunes商店、AppStore無法進行應用購買,并在登錄時收到錯誤提示。蘋果官方在事件發生的5個小時后發表了聲明,宣稱此次事件是“內部DNS錯誤”造成的。
蘋果所謂的“內部DNS錯誤”到底是怎么回事呢?網上的各種推測,比較靠譜的說法是蘋果內部的DNS服務器掛掉了?;蛟S就有人疑問了,DNS是何方圣神,為何一個“內部DNS錯誤”就能讓蘋果應用商店全球癱瘓11個小時之久呢?
什么是DNS?
這就不得不從DNS是什么說起了,因為計算機在網絡上通訊只能識別類似于202.96.134.1的IP地址,但因為IP地址不便于記憶,要用戶記住十幾個IP地址,就十分困難了,何況成千上網個網站。于是域名應運而生,所謂域名,就是類似www.apple.com這種網址,每個域名都對應一個或者多個真實IP地址,DNS就是把域名解析成IP地址的一種系統。
DNS域名解析過程及故障分析
大部分IT同行都知道,DNS域名解析過程大概是這樣的:
1、 在瀏覽器輸入域名(例如:www.apple.com),電腦會先在本地查是否有映射關系,如果有,先調用這個IP地址映射,完成域名解析。
故障分析:如果電腦的DNS配置出錯,就會導致個人的PC無法用訪問Web頁面,有的人會遇到可以上qq卻無法上百度的情況,這就是電腦的DNS配錯了,修改一下即可恢復上網。
2、 如果本地沒有這個域名的映射,則查找本地DNS解析器緩存,是否有這個網址映射關系,如果有,直接返回,完成域名解析。
故障分析:本地DNS服務器由專門的DNS運營商提供的,一旦故障,將會導致該DNS服務的區域內用戶無法上網。不過本地DNS服務器很少出現宕機超過12個小時的情況。
3、 如果本地與本地DNS解析器緩存都沒有相應的網址映射關系,本地DNS會向上一級權威DNS解析器發出查詢請求,由權威DNS返回相關的映射關系。
錯誤分析:蘋果此時DNS錯誤很可能是這種情況,蘋果所說的內部DNS在某種程度上等同與權威DNS,本地DNS向他發起查詢請求,它無法響應,就會導致全球范圍內的蘋果用戶無法訪問蘋果商店。
規避此類故障的辦法
蘋果作為世界科技巨頭,宕機11個小時令人驚訝。這個事件的經驗教訓,勿以宕機概率事小,一旦宕機起來,損失真不小。
說到規避方法,最主流的方案,就是采取冗余備份的方式。在每一個可能出現故障的環節,設立好的冗余備份機制,采取智能自動的切換方法,輔以常規的檢查排錯,防患于未然。我認為這其中最關鍵的,應當是智能切換和健康檢查技術。能夠在出現故障的那一剎,實現毫秒級切換,不影響正常業務,才是冗余備份真正價值所在。
說到冗余切換和健康檢查,一定得說到應用交付這種技術。應用交付技術想在被公認為最可靠的一種辦法,有各種有利的功能保障冗余切換的及時性和健康監測的準確性,因此得到了廣泛的應用。
國際上有很多優秀的應用交付廠商,像F5、A10、Radware這些,在這里就不一一列舉了。雖說應用交付是一個對技術要求偏高的領域,但國內并不缺乏優秀的應用交付產品。從Frost&Sullivan 近兩年的ADC市場調研報告,可以看出來,除了一些老身影外,部分國內品牌在市場上也頗受認可。不僅是因為近兩年信息安全自主可控的需求,更是因為國內的應用交付日漸成熟,產品穩定的應用讓用戶有了更多的信心。說到這些國內品牌,其中表現比較搶眼的要數深信服了,據Frost&Sullivan 2013年大中華區ADC市場調研報告顯示,深信服市場占有率第二,是唯一進入前三的中國產品,實屬不易。根據Gartner 2014年給出的相關數據顯示,深信服在2009年推出應用交付產品以來,連續5年都保持著比較高速的增長。
這兩年國產化趨勢越發明顯,相信有更多人會響應信息安全自主可控的號召,考慮將一些優秀的民族品牌納入考慮,從而使國產品牌得到更長足的發展,共同促進市場的良性發展。