「クラウドサービスを運用しているが、クラウド障害が心配だ」
「クラウド障害時の対策を考えたいが、どうすべきかわからない」
とお悩みの方へ。
AWSをはじめとするクラウドサービスは、その手軽さや利便性の高さ、そして可用性の高さから人気が高まっています。しかし、クラウドも障害発生率が0%というわけではありません。
この記事ではクラウド障害対策について悩んでいる方に向けて、実際の事例や企業が取るべき対策について解説します。
クラウド障害とは
「クラウド障害」とは、AWSやAzureといったクラウドサービス事業者側で何らかの問題が発生して、クラウド上に構築した自社サービスが十分に使えなくなることを指します。
具体的には、データセンター内におけるサーバーのオーバーヒートや災害による物理的な損傷、電源の喪失などが挙げられ、どれも自社側で防げるものではありません。
クラウド=可用性が高い、という認識から多くの企業がクラウドサービスを構築しています。確かにクラウドは可用性が高いですが、「絶対に落ちない」というものでもありません。
実際に、国内でも複数のクラウド障害が発生しているのです。
クラウド障害の事例一覧
国内でもいくつかのサービスやプラットフォームで障害が起きています。3つの事例について一覧にまとめました。
AmazonのAWS(2019年8月)
2019年8月23日、AmazonのクラウドサービスであるAWSに障害が発生しました。AWSを利用している国内企業は多く、ECサイトやゲームサイトをはじめ多数のサービスが利用できず大きな影響を与えました。
特定のデータセンターで制御システムにトラブルが起きたことが原因で、空調異常によってサーバーがダウンしてしまったのです。
発生したのが12時頃で、18時過ぎには大部分が復旧しています。時間にすると6時間程度ですが、多くの企業が活動している日中の6時間でクラウド障害が発生した影響は大きく、各企業でサービスの普及などの対応に追われました。
参照:AWSの大規模障害、「やはりクラウドは信頼できない」のか?
https://www.sbbit.jp/article/cont1/36915
ヤマト運輸の法人向けクラウドサービス B2クラウド (2019年9月)
宅配便事業の大手であるヤマト運輸では、2019年9月に法人向けのクラウドサービスで全国的に障害が発生しました。
クラウド障害が発生したのは、「送り状発行システムB2クラウド」という法人向け送り状発行サービスです。小さい荷物を対象とした「ネコポス」サービスはB2クラウドからしか発行できず、多くのEC事業者に影響を与えました。
クラウド障害は9月24日に発生し、ヤマト運輸が公式で復旧を発表したのは3日後の9月27日です。ヤマト運輸は緊急対応として「送り状発行ソフトB2(インストール版)」のダウンロードを行うなどしましたが、中には手書き対応を行った事業者もいます。
参照:ヤマト運輸企業サイト
https://www.kuronekoyamato.co.jp/ytc/info/info_190924.html
音楽ストリーミング「Spotify」(2022年3月)
世界で4億人以上のユーザーを抱える音楽ストリーミングサービス「Spotify」では、2022年3月にクラウド障害が発生しました。
クラウド障害はクラウドベースのサービス発見システムが原因とされ、復旧するまでの約2時間、ユーザーは自分のアカウントにログインできませんでした。ダウンタイムは短いもののユーザーが多いために障害は世界規模となり、その影響は少なくありません。
参照:Spotify、Coinbase、Slackなど大手Webサイトやアプリの2022年第1四半期の大規模障害事例トップ5を報告、Uptime.com
クラウドシステムを利用する企業が取るべき障害対策
前述したように国内でもクラウド障害が発生しています。クラウドサービスを提供する企業は、クラウド障害が起きた際の対策を考えておく必要があります。
企業におけるクラウド障害対策として、以下の5つが有効です。
- クラウド障害に関する情報源を知っておく
- システム障害を見越した設計を行う
- 自動で復帰させる仕組みを使う
- システムを分散させる
- システムの監視を行う
それぞれの対策について、順番に解説します。
クラウド障害に関する情報源を知っておく
リアルタイムのクラウド障害について、把握できる情報源を知っておくのも1つの手段です。
例えば、AWS東京リージョンのクラウド障害情報について発信しているTwitterアカウントがあります。Amazon公式ではありませんが多くの人がフォローしており、情報収集の1つとしておすすめです。
AWS東京リージョンのTwitterアカウントはこちら
そのほかにも、Amazonの公式ブログや公式SNSアカウントで情報が発信されることもあります。クラウド障害が発生した当初は情報が錯そうしやすいため、信用できる情報源をあらかじめ把握しておきましょう。
システム障害を見越した設計を行う
クラウドを完璧だと過信せず、落ちる可能性を前提としたシステム設計も重要です。障害を見据えた設計は「Design for Failure」と呼ばれ、クラウドサービスを構築する上で必要な要素となっています。
AWSを提供するAmazonも、特定の区域のインスタンスがダウンしても稼働できるような高可用性(HA:high-availability)のある設計を推奨しています。
自動で復帰させる仕組みを使う
クラウド障害が発生した際、自動で復旧させる仕組みがあればある程度の混乱を防ぐことが可能です。
たとえばAWSの場合、2022年3月からインスタンスの自動復旧が既定となっています。万が一クラウド障害が発生した場合、AWSがインスタンスを別のハードウェアに移行させて再起動します。これにより、インスタンスにアクセスできなくなってもサービスが止まりません。
参照:Amazon EC2 でインスタンスの自動復旧がデフォルトで実行
https://aws.amazon.com/jp/about-aws/whats-new/2022/03/amazon-ec2-default-automatic-recovery/
またクラウド障害は、クラウドサービスそのものではなく、自社が構築したシステム側で起きる可能性もあります。そのため、独自に別の自動復旧ツールを導入して対策している企業も少なくありません。
システムを分散させる
仮想サーバー(インスタンス)を単体で設置せず、複数のデータセンターに分散して設置する対策も有効です。システムを分散すれば、1つのデータセンターで障害が発生してもすべてのサービスが停止することを防げます。
上記のような分散について、AWSでは「アベイラビリティゾーン」、Azureでは「可用性ゾーン」というサービス名で提供されています。
システムの監視を行う
システムの状態を監視することで、障害につながる要素を早期発見することができます。クラウドサービスが監視機能を提供している場合もありますが、監視体制として不十分であることも少なくありません。
上記のような状況に備え、自社で別の監視ソフトを導入するなどして複数の監視体制を構築するようにしましょう。
AWSでは、AWSのリソースと実行アプリケーションをリアルタイムでモニタリングする「Amazon CloudWatch」というサービスがあります。AWSを利用しており監視を強化したいなら、検討するのもおすすめです。
参照:Amazon CloudWatch
https://aws.amazon.com/jp/cloudwatch/
まとめ
クラウド障害について、その定義や国内事例、企業における対策について解説しました。この記事をまとめます。
- クラウド障害とは、クラウドサービス事業者側で起きるトラブルである
- クラウドサービスを提供する企業は、クラウド障害対策を講じる必要がある
- クラウド障害対策として、障害を見越した設計やリスク分散が重要
イニシャルコストの低さや利便性から、多くの企業がクラウドサービスの提供を開始しています。しかしご紹介したようにクラウドにも障害はつきもので、企業は対策を考えなければなりません。
