您現在的位置是:首頁 > 垂釣

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

  • 由 量子位 發表于 垂釣
  • 2022-06-30
簡介而上面提到的“配置變化”,就是日常維護工作中主要用於檢測Facebook主幹網路的可用性的一條命令

設施工程師是什麼

博雯 發自 凹非寺

量子位 報道 | 公眾號 QbitAI

Facebook全球宕機6小時的原因,是公司內部工程師的一條錯誤指令。

最近,Facebook官方針對這次大規模宕機的原因做了迴應。

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

這一新聞已經出現在了微博熱榜。

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

而在回覆中,官方也(針對各種神奇的假說)強調:

沒有駭客惡意攻擊行為,使用者的資料也沒有受到損害。

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

在第二天,Facebook又發了另一則宣告,詳細地說明了這次宕機的技術細節。

那麼這場Facebook有史以來持續時間最長,規模最大,造成公司股價蒸發百億的宕機到底是因為什麼?

一起來看看。

日常維護切斷網路

一切都開始於日常維護中的一條錯誤指令。

也就是Facebook engineering平臺上的宣告中所提到的“配置變化”:

協調資料中心之間網路流量的主幹路由器的配置變化導致了通訊中斷,進而影響了資料中心的的通訊方式,最後導致了服務中斷。

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

在日常維護網路基礎設施時,工程師經常需要離線維護部分主幹網,比如修理一條光纖線路,增加更多容量,或者更新路由器本身的軟體。

而上面提到的“配置變化”,就是日常維護工作中主要用於檢測Facebook主幹網路的可用性的一條命令。

當然肯定有應對這種命令的保護措施,但不巧審計工具(audit tool)中出了個bug……

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

於是,這個“配置變化”就撒著歡兒,啪一下把Facebook主幹網路的所有連線都給切斷了。

這一斷,應用程式對資料的重新整理搜尋,上傳下載等請求就無法從使用者裝置傳到最近的資料中心了。

而這些資料中心不僅有容納了數百萬臺儲存資料機器,用於支撐平臺執行的大型建築,還有將主幹網路連線到更廣泛的網際網路和具體應用平臺的較小設施。

嗯,差不多就是這樣的嚴重性……

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

這還沒完。

上述資料中心裡的小型設施還有一個工作,那就是響應DNS查詢。

DNS是網際網路的地址簿,能夠將瀏覽器中鍵入的簡單網路名稱轉換為特定的伺服器IP地址。

而這些地址又透過邊界閘道器協議(BGP)向網際網路其他地址進行廣播,類似一個地圖,提供通往各種目的地的線路。

當DNS伺服器發現主幹網路失去了與網際網路的連線時,BGP的“廣播”也隨之停止。

相當於Facebook短暫地被從網際網路這塊地圖上

抹除了存在

只有Facebook受傷的世界完成了

當然,在派遣工程師進入現場資料中心進行修復之後,網路服務也在10月4日下午4點左右逐漸恢復。

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

在官方回覆的最後,他們也提到會透過這次的“演習”加強系統故障的測試、訓練和整體恢復能力。

而縱觀這次全球大宕機,不僅國外熱度爆表,就連國內也上了熱搜。

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

國內外的網友們弔圖一堆,苦中作樂。

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

同為社交媒體的Twitter則高傲盡數顯現。

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

甚至連Netflix都過來蹭了把熱度,順帶了夾雜了新劇宣傳私貨:

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

而Facebook在這次事件中股價暴跌6%,扎克伯格個人財富一日蒸發逾60億美元。

Facebook全球6小時宕機原因查明:一條指令所致,內部工程師所為

現在看來,只有小扎受傷的世界完成了(狗頭表情包)。

官方迴應:

[1]https://engineering。fb。com/2021/10/04/networking-traffic/outage/

[2]https://engineering。fb。com/2021/10/05/networking-traffic/outage-details/

Top