1月21日早朝(1月20日深夜)に発生したZohoサービスにおけるアクセス障害の詳細と今後の対策について



先日発生したアクセス障害において、多くの皆様にご迷惑をおかけし、大変申し訳ありませんでした。ZOHO Corporation CEOのシュリダー・ベンブより、今回の障害が発生した原因や今後の対策について報告させて頂きます。












1月20日金曜(太平洋標準時間、日本時間で1月21日土曜)に、すべてのZohoサービスにおけるアクセス障害が発生しました。障害は、午前8:13(日本時間で翌日午前1:13)頃に発生しました。一部のZohoサービスは午後3:49(日本時間で翌日午前8:49)に復旧し、午後6:22(日本時間で翌日午前11:22)にすべてのZohoサービスが復旧しました。ユーザーの方々にとって重要なサービスを、金曜日に停止させてしまい、多大な影響を及ぼしました。ご迷惑をおかけしたことを深くお詫び申し上げます。








■アクセス障害が発生した原因




原因は、当社が利用しているデータセンターにおいて、突然電源に障害が発生したことでした。データセンターは、最新の設備を備えており、カリフォルニアのシリコンバレーに位置しています(Equinixによって運営されています)。電源や冷却設備は冗長化され、物理的に保護された空間が提供されています。また、インターネットの接続は、別の事業者によって提供されています。







当社は、その場所において、サーバー、ネットワーク機器、ソフトウェアの管理・運用を行っています。問題は、電源に障害があったことではなく、事前の警告等なしに突然すべての設備の電源が一度に落ちたことにあります。データセンター、特に当社が利用している施設においては、電源システムが三重、時には四重に冗長化されています。これは、このような突然の電源障害を防ぐためです。







電源に障害が発生する場合、十分な警告が発せられ、機器、特に重要なのはデータベースが、適切な手順に則ってシャットダウンできるというプロセスが想定されていました。実際、データセンターが提供する主な機能としては、冷却設備、物理的なセキュリティに加え、電源システムの高い冗長性があげられます。今回の場合、事前に警告は全く発せられませんでした。当社はデータセンターの運営者に対し説明を求めており、適切な情報が得られることを期待しています。

ただ、ここで1つ述べておきたいのですが、Equinixはこの業界においてリーダーであり、5年以上にわたって当社が利用している間、一度もこのような突然の電源障害を経験したことはなく、適切に運用して頂いていたということです。しかしながら、今回の障害については、当社や他の顧客に対する説明が必要です。電源はすぐに復旧されましたが、突然の電源障害により影響が出てしまいました。







■電源障害に関する現状と今後の対策




現在のところ、当社のシステムは様々なレベルで冗長構成をとっていますが、電源の障害については今もデータセンターの設備に依存しています。ですので、今回のような問題が起きたということは、このままだと今後もまた同じような問題が発生する可能性があることを意味しています。







そこで、電源に障害が発生したとした場合においても、今回のようにサービス全体へのアクセス障害に波及しないような対応を早急にとれるように対応を進めています。文字通り、これらは最初の一歩ですが、具体的な内容としては、データセンターが提供する電源設備とは別に自前のUPS(無停電電源装置)システムを設置します。また、データベースサーバー自体にもバッテリーを持つようにし、今回のような障害が発生しても適切にシャットダウンできるようにします。








■復旧に時間がかかった要因




復旧に関しては、長い時間がかかりました。まず、この原因について説明し、将来とる対策について説明いたします。要約すると、すべてのデータベースサーバーとすべてのサーバーが止まり、復旧作業とテストに要する多大な労力が必要となり、人間を介した復旧システムで対応しきれなかったことが要因です。なお、データについては、欠損などの問題は生じておらず、保全されています。







Zohoのシステムは、分散したシステム設計をとっています。システムのすべての要素が一度に止まることはないが、部分的には止まる可能性はあり、一部が止まったとしてもサービス全体の可用性には影響しないようにとの考えのもと、設計されています。問題は、システム全体が止まった時、手動で復旧する必要があるということでした。







障害の検知後、サービス復旧のため、20人の社員が作業していましたが、100以上のクラスターがあり、そのうち40%程度のクラスターにエラーが発生していました。具体的には、クラスター内で冗長構成をとっているサーバー間で同期がとれていませんでした。冗長化する際に発生するデータの複製の不整合は、通常少量です。おそらく、100GB当たり数バイトといった量でしょう。ただ、どんなに少量であっても不整合が発生しているということが問題です。







障害があったまさにその瞬間に処理中だったデータを除いて、データの復旧自体は可能ですが、復旧作業では、データに欠損がなく、すべてのデータが冗長構成の中で整合性がとれていることの確認が必要でした。ほとんどのインスタンスではすぐに作業が終わりましたが、いくつかのインスタンスでは時間がかかり、さらに、それらに時間がかかったために、全体の復旧に時間がかかりました。







実際、最初のいくつかのクラスターをテストした時点では大きな問題はありませんでした。このため、実際よりも楽観的な予測を立ててしまいました。後になって、復旧作業を行っている20人ではすぐに対処しきれないほど、問題があるクラスターが多数見つかりました。この結果、対応できる人員すべてを動員しても問題をすぐには解決できませんでした。このため、すべてのサービスが復旧するまで時間がかかりました。








■データの安全性




Zohoでは、すべてのデータをニューヨークにある別のデータセンターにあるサーバーにコピーしています(このデータセンターもEquinixが運営しています)。このデータセンターでは電源障害が起きませんでした。2つ目のデータセンターにすべてのデータはコピーされて保存されていたため、1つ目のデータセンターのサーバーが失われても、データが失われることはありませんでした。







しかし、現在のところ、2つ目のデータセンターにあるサーバーだけで、すべてのZohoサービスを運用するだけのキャパシティーはありません。1つ目のデータセンター内で、データを三重にコピーしており、1つ、時には2つのコピーが、2つ目のデータセンターに保存されています。こうした構成になっているため、1つ目のデータセンターが完全に運用停止になったような場合に対応するには次のような点で不足があります。

  1. 2つ目のデータセンターだけですべてのサービスを運用するできるようにデータは冗長化されていない
  2. 2つ目のデータセンターだけですべてのサービスを運用した場合のトラフィックに対応できるほどのキャパシティーがない


2つ目のデータセンターは、主にデータの保護のために運用されており、すべてのトラフィックに対応することはできませんでした。この点については、できるだけ早く対応し、いくつかのサービスから対応を開始できるようにします。








■今後の対策




現在、最も重要視していることは、このようなアクセス障害を今後発生させないように対策をとることです。次に、万一、災害等によって障害が発生した場合でもできるだけ早く復旧させるようにしていきます。2つ目の点については、すでにこれまでにも対策を進めていますが、対応の速度を速めます。具体的には、次のような取り組みを追加的に行います。

  1. ユーザーの方々の事業運営に必要な情報に常にアクセスできるようにするためのオフラインアクセスの強化
  2. 編集可能な形で全てのデータを復旧するための作業をしている間でも最低限データへのアクセスを担保するため、閲覧のみのアクセスを提供するような仕組みの構築
  3. 大きな障害が発生した時もできるだけ手動の作業が少なく対応できるようなさらなる自動化を推進






今回の障害において、最優先したのは、ユーザーの皆様のデータを保全することでした。保存されていたデータは失われることはありませんでした。しかしながら、メールのストレージがダウンしたことにより、受信メールサーバーのキューがオーバーフローしたため、配送不能になり差出人に不達となって戻ったメールがありました。このような問題が今後発生しないように、メールのストレージをさらに追加します。







こうした取り組みに関して、随時対応の状況をお知らせしていきます。ハードウェア関連の対策(新しいシステムの購入・設置)を最初に行い、ソフトウェア関連の対策(より早く復旧するためのさらなる自動化)は最も時間がかかる見込みです。いずれに関してもこうした対応に関して状況をお知らせしていきます。







今回の障害は、Zohoサービスを運営し始めてから最も大きな障害でした。Zohoサービスを業務で毎日利用されているユーザーの方に対し、今回の障害は大きな失望を抱かせることとなってしまったかと思います。私たちの社内からも、問題に関する厳しい追及の声があがっており、調査と今後の対応について詳細に議論を進めています。







今後、すべての有料ユーザーの方に対し、1週間分の利用料金に相当する金額を返金をいたします(※ゾーホージャパンからご購入頂いているユーザーの方に対しては、次年度更新時に同額の割引をさせて頂きます)。この措置は、当社にご連絡を頂いたか否かに関わらず、すべての有料ユーザーの方に対して適用します。返金によって失われた時間が戻るわけでもありませんし、今回生じた障害に伴う影響をカバーできるわけではないことは承知しておりますが、当社からの謝罪の気持ちとしてお受け取り頂けますと幸いです。今回の返金総額を当社に対する罰として記憶し、このような障害が今後発生しないようにするために努めて参ります。







ZOHO Corporation CEO, シュリダー・ベンブ(Sridhar Vembu)






なお、このブログは、英語版の  Zoho Blogs  を翻訳したものです。  
元の記事:   Our Friday Outage and Actions We Are Taking

PAGE TOP