2017 年 3 月31日 22:28 から発生した、東日本リージョンの障害についてご迷惑をおかけし、大変申し訳ございませんでした。
以下 Web サイトに公開された、本障害の原因調査報告書 (RCA) について、日本語抄訳をご案内いたします。
Azure の状態の履歴
https://azure.microsoft.com/ja-jp/status/history/
インシデント情報
インシデント発生日時: 2017 年 3 月31日 22:28 から、4 月 1 日 7:16 (日本標準時)
影響があった地域: 東日本リージョン
問題の概要
日本時間の 2017 年 3月31日 22:28 から 4月1日 7:16 にかけて、東日本リージョンの一部のお客様において、仮想マシン (VM) の利用不可、VM の再起動、パフォーマンスの低下ならびに、このリージョンのストレージサービスに依存するリソースにアクセスを試みた際の接続失敗が発生しました。
Azure エンジニア チームは標準のモニタリングの結果、この地域での可用性の低下に関する警告を受信いたしました。エンジニアは、N+2 の冗長構成で動いているはずの電源供給システムが障害の原因であることを特定しました。N+2 冗長構成において稼働しているうち、ひとつの RUPS (rotary uninterruptible power supply) に障害が発生し、当該データセンターの空冷システムへの電源供給が行われなくなりました。冷却システムのダウンにより、いくつかのハードウェア リソースは、熱問題によるデータ損失を防ぐため、自動シャットダウンを実行しました。
日本時間の 3/31 23:12、ファシリティ チーム (サードパーティの委託先) とマイクロソフト サイト サービスの人員が現地にて作業をし、冷却システムの空調ハンドラーを再稼働させ、外気による冷却を行いました。同時に、複数のマイクロソフト サービス チームは、関連するデバイス間の不調が生じることを避けるため、自動プロセスを回避し、エンジニアがコントロールしながらシステムを復旧できるようスタンバイしました。
日本時間の 4/1 午前 1:08、データセンターの気温は稼働可能な段階まで復帰し、安全な電源復旧手順に従って起動が再開されました。RUPS システムと冷却システムが再稼働したのち、入念な正常性確認を行い、支障がある、あるいはその疑いがあるコンポーネントはすべて排除されました。また、問題があると思われるコンポーネントは、切り離して調査に送られました。
日本時間の 4/1 午前 1:53、エンジニアはおよそ 95% のネットワーク スイッチとネットワーク デバイスが復旧したことを確認しました。続いて、ソフトウェア ロード バランシング (SLB) サービスという、VNET やパブリック IP へのネットワーク通信を司るサービスをホストするスケール ユニットへの電源オンの作業が開始されました。
日本時間の 4/1 午前 2:16、コア インフラストラクチャの大部分がオンラインとなりました。ネットワーク エンジニアが復旧プロセスを開始し、ソフトウェア ロード バランシング (SLB) サービスを管理されたプロセスにてプログラミングし、必要な接続が確立できるよう試みました。
SLB が稼働開始した後、エンジニアは多くのサービスが自動回復し、正常になったことを 4/1 午前 3:51 頃に確認しました。仮想マシンには、副次的な影響が残存していることが発覚したため、エンジニアはこの調査を続行し、仮想マシンがオンラインになるよう対応を行いました。並行して、エンジニアは、影響の残る仮想マシンを保有するお客様に、ポータルからの通知作業を行いました。
日本時間の 4/1 午前 7:16、エンジニアはストレージ、ならびにストレージに依存する全てのサービスが復旧したことを確認しました。
お客様への影響:
東日本リージョンにリソースをお持ちのお客様においては、上記タイムフレームにて、お持ちのリソースが利用できない状況となっておりました。
回避策
仮想マシンにおいて、管理ディスク (Managed Disks) を利用し、可用性を構成していたものについては事象の影響が回避出来た可能性があります。管理ディスクの詳細は、以下のサイトをご参照下さい。
Azure Managed Disks の概要
https://docs.microsoft.com/ja-jp/azure/storage/storage-managed-disks-overview
Migrate Azure VMs to Managed Disks in Azure (Azure VM を管理ディスク環境に移行する)
https://docs.microsoft.com/ja-jp/azure/virtual-machines/windows/migrate-to-managed-disks
Azure Redis Cache を利用のお客様: キャッシュは、レイテンシやスループットの観点では確かにリージョン依存ですが、アプリケーションが別リージョンの Redis Cache を参照している場合、サービスを継続してご利用いただけました。
SQL Database サービスをご利用のお客様で、アクティブ geo レプリケーションを構成されている場合、ジオ セカンダリへのフェールオーバーを実行することでダウンタイムを縮小可能でした。このフェールオーバーは、5 秒程度で行えます。他の回避策としては、geo リストアがあります。
これらの機能の詳細は以下をご参照下さい。
Azure SQL Database によるビジネス継続性の概要
https://docs.microsoft.com/ja-jp/azure/sql-database/sql-database-business-continuity
障害の発生中、西日本リージョンは完全に稼働しておりました。お客様のアプリケーションがジオ冗長性 (例えば、Traffic Manager を使って正常なリージョンに接続を行う構成) を活用している場合、アプリケーションは当該事象の影響を最小化することが可能でした。
クラウド アプリケーションのベスト プラクティスやデザイン パターンについては以下を参照してください。
http://aka.ms/mspnp
Traffic Manager については、以下を参照してください。
https://docs.microsoft.com/ja-jp/azure/traffic-manager/traffic-manager-overview
原因:
RUPS システム (a rotary uninterruptible power supply system) に障害が発生し、エア ハンドラー ユニット (AHU) への電源供給に支障をきたした結果、東日本データセンターに障害が発生したということが、初期調査により判明しました。 エア ハンドラーの停止により、データセンター全体の気温が上昇しました。サードパーティの委託先により管理される東日本リージョンでは、3 つの専用のセキュリティ スペースが存在しますが、それら全てに影響を及ぼしました。冷却システムは、N+1 の冗長性 (パラレル冗長性) を持つ設計となっており、電源供給は N+2 となっています。マイクロソフトならびにサードパーティの委託先は、この冗長性があったにも関わらず、RUPS システムの失敗が、全てのエア ハンドラー ユニット (AHU) への電源供給に影響したのかについて、現在調査中です。
今後について
Azure チーム一同、この度の事象の影響を受けたお客様に深くお詫びを申し上げます。
Microsoft Azure プラットフォームの改善、ならびに運用プロセスを改善するためのステップを設け、同様の問題が再発しないように努めてまいります。
今回のケースは、以下の対策を講じます。(また、以下に限らず、継続的な改善に尽くします。) :
・RUPS システムは調査のため、調査用施設に送られました。サイト オペレーション、ファシリティ エンジニア、設備の提供元にて原因調査を行い、事象の再発のリスクを取り除きます。
・今回の事象で影響を受けたAzure サービスの見直しを行い、サービス リソースが複数のスケール ユニット、あるいは複数のジオ計画に基づいて冗長化され、今回のような現象が発生したとしても、それに耐えて最小限のサービス中断となるようにしてまいります。
原因調査報告書 (RCA) のサーベイについて
Azure ご利用のお客様へのコミュニケーションを改善するため、以下のサーベイにご協力ください。
https://survey.microsoft.com/351091