Japan
サイト内の現在位置を表示しています。
[解説] なぜクラウド環境でも冗長構成が必要なのか?
CLUSTERPRO オフィシャルブログ ~クラブロ~はじめに
クラウドもいろいろ種類がありますが、今回はパブリッククラウド(主にAWSやAzure)について『なぜ冗長構成が必要なのか』について解説します。
クラウドサービスとSLA
SLAとは『Service Level Agreement(サービス水準合意書)』の略で、サービスの提供者(クラウドベンダ)とサービス利用者(ユーザー)の間で結ばれるサービス水準に関する合意です。AWSやAzureで提供される仮想マシンのクラウドサービス(Amazon EC2やAzure Virtual Machines)にはSLAがしっかりと定義されており、仮想マシンの稼働率についても細かく記載があります。
さて、稼働率が明確に定義されているのにもかかわらず『なぜ冗長構成が必要なのか』という点についてAWSとAzureを例に解説していきます。
Amazon EC2のSLAからみる冗長構成の必要性
Amazon EC2のSLAは下記サイトに記載されています。
https://aws.amazon.com/jp/ec2/sla/
- ※最新情報は英語版が優先されます。
- 画面右上の言語メニューから英語を選択してご覧ください。
サービスコミットメントの項に『月間使用可能時間割合がそれぞれの場合において 99.95%以上で使用できるようにするため商業的に合理的な努力をする』とあります。
「EC2の稼働率は99.95%」と言われる理由はここの表現からくるものです。
しかし、ここで注目すべきは『月間使用可能時間割合』の定義です。
『月間使用可能時間の割合』とは、『「地域(Region)使用不能」の状態になった時間(単位は分)の割合を100%から減じて計算』とあり、『地域(Region)使用不能』とは、『同一地域(Region)内で、サービス利用者がインスタンスを実行している複数のAvailability Zoneが、サービス利用者にとって「使用不能」となることをいう』とあります。
平たく言うと「インスタンスを実行している複数のAvailability Zoneが「使用不能」になった時にしか、月間使用可能時間の割合として計算されないということです。
AWSには「Availability Zone」というデータセンター群の概念※ があり、東京リージョンには2つのAvailability Zoneがあります(2017年6月時点)。 EC2を利用する場合、この2つのAvailability ZoneにEC2をそれぞれ配置することが前提となっている、すなわち「冗長構成は必要である」と言えます。
Azure Virtual MachinesのSLAからみる冗長構成の必要性
Azure Virtual MachinesのSLAは下記サイトに記載されています。
https://azure.microsoft.com/ja-jp/support/legal/sla/virtual-machines/
冒頭に『すべての仮想マシンに、同じ可用性セットにデプロイした2つ以上のインスタンスがある場合、マイクロソフトは、99.95%以上の時間において少なくとも1つのインスタンスに対する仮想マシン接続が確保されることを保証します。』という一文があります。
Azureの場合、『同じ可用性セットにデプロイした2つ以上のインスタンスがある場合』にある『可用性セット(Availability Set)』という概念がポイントになります。『可用性セット』とは、単一障害点を避けるために異なる障害ドメイン※ にデプロイされた2つ以上の仮想マシンです。同じ可用性セットに複数のインスタンスを割り当てることで、各インスタンスは異なる障害ドメインにデプロイされます。
- ※電源およびネットワーク接続などの共通のリソースを共有するサーバーの集合と表現されており、ファシリティ的にある程度の独立性があるものと考えられます。
以上のことから、Azure Virtual Machinesを利用する際にも『冗長構成は必要である』と言えます。
まとめ
AWSとAzureの仮想マシンのサービスを例に「なぜ冗長構成が必要なのか」についてSLAの観点を中心に解説しました。
どちらも99.95%の稼働率の前提条件として「冗長構成が必要」です。
また、今回解説したSLAはあくまでクラウドサービスのSLAです。
システム全体としてのSLAはクラウド利用者側の責任である点にも注意が必要です。
SLAは更新されている場合もあるので定期的に各サイトの記載をしっかり確認しましょう。
お問い合わせ