全日本空輸は3月22日に発生したシステム不具合について、詳細な故障原因を説明した。4台のデータベースを中継するスイッチと、故障を知らせるアラートシステムの2つが同時に故障したことにより、システム全体の冗長構成が機能しなかったことが分かった。
要因は2つ。1つは4台のデータベースサーバを同期するCisco Systems製の中継機「Catalyst 4948E」が故障し、同期処理の機能に障害が起きたこと。もう1つは、故障が発生した場合にあがるはずの故障シグナルが上がらなかったことだった。
ANAが公表している「国内旅客システム」の概要
ANAの「国内旅客システム」につながるのは、空港設置端末、予約センタ設置端末、インターネットサイト、旅行会社や提携航空会社など。全体をコントロールするアプリケーションサーバを、4台のデータベースサーバが支える格好になっている。
4台は通常、相互にデータを同期しながら稼働しており、万が一の場合は1台でもサービスを継続できるようになっている。
今回、まず4台間でデータを同期するスイッチに不具合が生じた。この際、データの整合性を維持するため、データベースサーバをシャットダウンする仕様になっている。
本来ならば、スイッチの故障を検知すると自動的にアラートが発する仕組みになっており、それをトリガーに、もう1台のCatalyst 4948Eが起動するようになっていた。しかし、2つ目の問題として、何らかの理由でアラート機能が働かなかった。これにより、代替スイッチへの切り替えがなされず、データベースサーバが次々とダウンすることになった。
1台目が停止したのは3月22日の午前3時44分。その後次々とデータベースサーバがダウンし、8時22分には残り3台を含めて全4台が停止した。これによりチェックインや予約システムなど空港内のすべてのサービスが使えなくなり、混乱が顕在化することになった。
8時59分、再起動を試みるが、複数台立ち上げるとシステム全体が不安定になることから、9時27分に、1台で運用することを決め、空港の自動チェックイン機などの稼働を再開し、段階的に搭乗手続き業務を再開した。
11時30分に搭乗手続き業務は通常状態に戻り、午後0時46分には予約発券業務機能が復旧。午後8時10分には国内線インターネットサービスが復旧した。
日が変わり、23日午前1時14分に、代替のスイッチに交換。3時5分にデータベースサーバ4台の構成に戻し、4時14分に国内システムに接続する全端末と他システムとの接続を再開。サービス全体が復旧した。
全体として、ANAはデータベースサーバを4台構成に冗長化した上で、スイッチについて故障に備え複数台の構成にしていた。だが、代替スイッチに自動で切り替える機能のトリガーは、スイッチの故障シグナルのみだった。結果的には、ここが単一障害点となっており、潜在的なリスクをはらんでいたということになる。
同社は、再発防止策も併せて公表。1つは、同一事象が発生した際に、故障シグナルが出ない場合でも、データベースサーバからスイッチに故障を検知できるようにすでに改善した。
このほか、スイッチ自体の不具合について、故障個所が判明しており、その改善策をメーカー側で検討中という。さらに、社内に「信頼性向上プロジェクトチーム」を設置。今回の個所に限らず、国内旅客システムを総点検する外部を交えたプロジェクトチームを4月に発足させるとしている。