Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

マルチAZ(マルチエーゼット)とは | 意味や読み方など丁寧でわかりやすい用語解説

マルチAZ(マルチエーゼット)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

読み方

日本語表記

マルチアベイラビリティーゾーン (マルチアベイラビリティゾーン)

英語表記

Multi-AZ (マルチエーゼット)

用語解説

「マルチAZ」とは、システムの可用性と耐障害性を高めるために、複数の「アベイラビリティゾーン」(Availability Zone、略称AZ)を利用してシステムを構築する設計概念を指す。この設計は、現代のクラウドコンピューティング環境において非常に重要なものとなっている。

まず、この概念を理解するために、「AZ」とは何かを明確にする必要がある。AZとは、クラウドサービスプロバイダーが提供するデータセンターの論理的または物理的な区画であり、その内部には独立した電源、ネットワーク、冷却システムなどのインフラが備わっている。一つのリージョン(地理的な広範囲な地域)内に複数のAZが存在し、それらのAZ間は低遅延なネットワークで相互に接続されている。しかし、それぞれのAZは互いに数キロメートルから数十キロメートル離れた場所に位置し、物理的に隔離されているため、あるAZで大規模な障害(例えば大規模停電や自然災害)が発生しても、他のAZにはその影響が及ばないように設計されている。

「シングルAZ」構成の場合、システム全体が一つのAZ内に構築されるため、そのAZで障害が発生するとシステムが停止し、サービスが利用できなくなるリスクがある。このようなリスクを回避し、システムの停止時間を最小限に抑えることを目的としているのがマルチAZである。マルチAZ構成では、データベース、アプリケーションサーバー、ロードバランサーといったシステムの主要コンポーネントを、少なくとも二つ以上の異なるAZに分散配置する。これにより、仮に一つのAZ全体が機能不全に陥ったとしても、別のAZで稼働しているコンポーネントが処理を引き継ぎ、サービスを継続することが可能となる。

詳細な仕組みとして、データベースを例にとると、マルチAZ構成ではプライマリデータベースを一つのAZに配置し、そのデータを複製(レプリケーション)したスタンバイデータベースを別のAZに配置する。データのレプリケーションには「同期レプリケーション」と「非同期レプリケーション」の二種類がある。同期レプリケーションでは、プライマリデータベースへの書き込み処理がスタンバイデータベースにも書き込まれたことを確認してから完了するため、データの一貫性が完全に保たれるが、ネットワーク遅延の影響を受けやすく書き込み性能が低下する可能性がある。一方、非同期レプリケーションでは、プライマリデータベースへの書き込みが完了した時点で処理を返すため、性能への影響は少ないが、障害発生時にわずかながらデータ損失のリスクが残る。一般的に、高いデータ保全性が求められる場合は同期レプリケーションを、性能を重視する場合は非同期レプリケーションを選択する。

アプリケーションサーバーの場合も同様で、複数のAZにまたがってインスタンスを展開し、それらのインスタンス群をロードバランサーで束ねることが一般的である。ロードバランサーもまた、異なるAZに配置されるか、AZ障害に耐えうるように冗長化されて提供される。これにより、特定のAZ内のアプリケーションサーバーに障害が発生しても、ロードバランサーが自動的に健全なAZのインスタンスにトラフィックを振り分け、サービスの継続性を保つことができる。

システムの障害を検知し、自動的に別のAZのコンポーネントに処理を引き継ぐ仕組みは「フェイルオーバー」と呼ばれる。マルチAZ構成では、このフェイルオーバーが自動で行われることが多く、システム管理者の介入なしにサービスの継続が図られる。例えば、プライマリデータベースが障害で停止した場合、自動的にスタンバイデータベースが新しいプライマリとして昇格し、アプリケーションからの接続先が切り替わる。この一連のプロセスは通常、数分程度の短時間で完了し、ユーザーにとっては一時的なサービス停止や遅延として認識されるだけで、システム全体が停止する事態は避けられる。

マルチAZ構成を採用するメリットは多岐にわたる。最も大きなメリットは「高可用性」と「耐障害性」の向上である。システムが停止する時間を極限まで短縮し、突発的な障害からサービスを守ることができる。これにより、ユーザー体験の向上はもちろん、ビジネスにおける機会損失の回避にも繋がる。特に金融システム、医療システム、Eコマースサイトなど、わずかなサービス停止も許されないミッションクリティカルなシステムにおいては、マルチAZは必須の要件となる。また、地理的に分散された環境にシステムが構築されるため、地震や洪水といった広域災害が発生した場合でも、他のAZが無事であればサービスを継続できる「事業継続性」(BCP: Business Continuity Plan)の確保にも貢献する。

一方で、マルチAZにはいくつかの考慮事項も存在する。一つは「コストの増加」である。複数のAZにリソースを配置するということは、それだけ多くのサーバーやデータベースといったインフラリソースが必要となり、単一AZ構成と比較して費用が増加する。また、AZ間のデータ転送には費用が発生する場合があり、これも運用コストとなる。次に「構成の複雑性」である。システムの設計や構築、そして運用管理が単一AZ構成よりも複雑になるため、より高度な知識とスキルが求められる。さらに、特に同期レプリケーションを利用する場合、AZ間のネットワーク遅延がシステム全体のパフォーマンスに影響を与える可能性もある。

これらのメリットとデメリットを考慮し、システムが要求する可用性のレベルと予算のバランスを見極めてマルチAZ構成を採用することが重要である。現代のクラウド環境において、マルチAZはシステムの安定稼働を支える基盤技術として広く利用されており、システムエンジニアを目指す者にとって、その概念と仕組みの理解は不可欠な知識である。

関連コンテンツ

関連IT用語