Facebookのダウンの原因は社内のサーバー設定エラーと発表

Facebookは昨日のサービスのダウンに関するレポートを発表した。この障害は異例に広範囲かつ長時間にわたり、Facebook本体だけでなく、Instagram、Messengerも正常に作動しなくなった。

専門家の間では原因をルート・リークに求める意見が多かったが、Facebookによれば、サーバー設定エラーが問題を引き起こしたものという。

昨日、サーバー・コンフィグレーションの設定のアップデートのエラーにより多くのユーザーがわれわれのアプリやサービスにアクセスすることが困難になった。われわれはこの問題を解決し、システムは回復に向かった。多くのユーザーに不便をかけたことをお詫びするとともに、忍耐に感謝する。

何百万というユーザーがこの不調の影響を受け、状況を知り、原因を推測する(あるいは不満を発散させる)ためはTwitterを使わざるをえないことになった。われわれの場合はメールによる情報提供も役立った。

今回のFacebookのダウンはDowndectectorにとって過去最大のケースだった。Downdetector の共同ファウンダーであるTom Sanders氏は次のように述べている。

Downdetectorが2012年にスタートして以来、今回のダウンは群を抜いて最長だった。障害が継続する間にわれわれのサービスには世界のユーザーから750万件の障害レポートが寄せられた。過去これほどの規模の障害を見たことがない。

最初に問題の原因はFacebook内部にあると最初に気付いたのはネットワーク監視サービスだった。ThousandEyesの広報担当者はメールでわれわれにこう書いてきた。

(ダウンの)原因は外部のインターネットや各種のCDNではなくFacebook内部にあると思われる。たとえばわれわれはFacebookから 500件の「内部サーバー・エラー」情報を受け取っている。Facebookの規模および同社がサービスの運営を続けながらアプリからインフラまでさまざまな効率化を試みる体質を考えると、いかに優秀なエンジニアリング・チームであれ、このような大規模な障害を招くことになったことに不思議はない。

われわれは昨日、Netscoutの「障害の原因をBGP(ボーダー・ゲートウェイ・プロトコル)のルート・リークではないか」というと推測を紹介したが、同社は後に考えを変えた。

Netscout Assertチームのプリンシパル・エンジニアのRoland Dobbins氏は広報担当者がメディアに送付したメール中でFacebookのダウン問題に関して、「BGPルート・リークがダウンの原因だという証拠は発見できなかった。部内の意思疎通に問題があったものと思われる」と述べている。

原文へ

(翻訳:滑川海彦@Facebook Google+

FacebookとInstagramの世界的なダウンはBGPのルート・リークが原因か

昨夜から世界的にFacebookファミリーのサービスで不調が続いている。セキュリティ企業の一部は、大きな原因はBGP(ボーダー・ゲートウェイ・プロトコル)の「ルート・リーク」によるものだろうと推測している。

トラフィックを最適な経路で送受信するためのルーティングはこのBGPに大きく依存している。BGPはルーティング・ポリシーを共有する大規模なネットワーク(AS、自律システム)間でのトラフィックの経路を規定するプロトコルだ。これには不正または悪意があると認定されたアドレスが送信されないようにする機能がある。しかしときおりミスが起きるのは避けられない。不正なデータが混入するとルート・リーク(route leak)と呼ばれる状態が出現する。これはトラフィックを混乱させ、大規模なサービスのダウンを引き起こすことがある。

BGPルート・リークが起きるとルーティング宣言は不正なものとなり、パケットの送信者、中継者、受信者という経路のどこかで拒否されることになる。これがFacebookのダウンを起こしている原因だという。NETSCOUTのプリンシパル・エンジニア、Roland DobbinsはTechCrunchに対してメールで以下のように説明した。

2019年3月13日午後12時52分(東部標準時)ごろ、 ヨーロッパのISPの一つからメジャーISPにトラフィックを送信する際にBGPのルーティング・リークが起きたもようだ。この不正が順次下流に拡大し、アクセス待ち時間の増大などエンドユーザーにも認識できる問題が生じはじめた。

ただし専門家もすべて意見が一致しているわけではない。テュレーン大学の客員教授であるTom Thomas氏はBGPのルート・リークが原因だという考えに反対して次にように述べている。

ルート・リークは今回のFacebookのダウンの原因の一つではありえる。ルーターが「リーク」を起こして不正なデータを送出するようになるとその被害は甚大なものとなる。

ただし、BGPは基本的に静的なプロトコルだ。つまり一度セットアップされるとその後ほとんど書き換えらえることはない。むしろ原因はサービスの効率を高めるための各種のヘルスチェックを含む最適化プログラムのエラーにあるのではないか。あくまで推測だが、今日のダウンは高レベルでビジネスを制御するプログラムのコードのバグによるものだと思う。Facebookが所有するいくつものサービスにまたがって不調が起きているということは、多数のサービスの処理を効率化し、中央集権化しようとする試みの中に根本的な原因があることを推測させる。

Facebookファミリーで水曜日の大部分の時間ダウンしていた。

これまでのとこところはっきりした情報は出ていないがインターネットは(当然だが)大混乱に陥っている。

FacebookはTwitterで問題が起きていることを認めている。TechCrunchでは新たな展開があり次第アップデートする。

ソーシャルメディア管理ツールのNaytevもダウンを確認している。「Facebookは大規模な障害に直面しており、Facebookへの投稿、Naytevへのログインが困難になっている。われわれは全力を挙げて情報を収集している。Facebookがこの問題を一刻も早く解決することを強く期待する」とユーザー向けページで述べている。

ダウンが長引くにつれ、 FacebookではTwitterでネットに流れているいくつかの情報に回答し始めた。たとえば、Facebookは「ダウンの元原因はDDoS(分散サービス拒否)攻撃だ」という噂を根拠ないものとして否定している。

【編集部注】日本時間3月14日午前10時40分現在、デスクトップ・アプリではログインできるもののコンテンツが表示されないなど深刻な不具合が起きている。モバイルアプリではやや程度は軽いもののエラーが表示される状態が続いている。

原文へ

(翻訳:滑川海彦@Facebook Google+