前の記事では、 AWSがサーバー・ストレージ・データベース・ネットワークなどを クラウド上で利用できるサービスであることを学びました。
では、AWSでEC2などのリソースを作成した場合、 そのリソースは世界のどこに作られるのでしょうか?
東京リージョンとは何?
AZとはリージョンと何が違う?
AWSでは世界各地にインフラストラクチャが配置されており、 その構造を理解するために重要なのが、 リージョン(Region)と アベイラビリティゾーン(Availability Zone / AZ) です。
この2つは、 EC2・RDS・VPCなどを学ぶうえで 何度も登場するAWSの基本用語です。
「リージョンの中に複数のAZが存在する」 というAWSインフラの基本構造を理解し、 なぜ複数AZを利用する設計が重要なのかを説明できる状態を目指します。
最初にリージョンとAZの関係を理解しよう
細かい説明へ進む前に、 最も重要な関係を確認しましょう。
まずはこの包含関係を覚えてください。
AWSリージョンとは?
リージョン(Region)とは、 AWSがインフラストラクチャを展開している 地理的な領域です。
たとえば、日本でAWSを利用する場合には 東京リージョンや大阪リージョンなどを選択できます。
AWSでリソースを作成するときは、 基本的に どのリージョンで利用するか を選びます。
リージョンにはリージョンコードがある
AWSでは各リージョンに、 識別するためのコードがあります。
ap-northeast-1
AWS CLIやTerraformなどを利用すると、 このリージョンコードを見る機会が増えます。
AWS初級では、 「東京リージョンにはap-northeast-1という識別子がある」 程度の理解で十分です。
なぜAWSには複数のリージョンがある?
世界中のすべてのユーザーが 1か所のデータセンターだけを利用するのではなく、 AWSは世界各地にリージョンを配置しています。
リージョンを選択するときには、 主に次のような要素を考えます。
利用者に近いリージョンを選ぶことで、 通信遅延を抑えやすくなります。
AWSサービスや一部機能は、 リージョンによって利用可否が異なる場合があります。
データを保存する地域について、 法令や組織のルールを考慮する場合があります。
AWSサービスの料金は、 リージョンによって異なる場合があります。
リージョン同士は分離されている
東京リージョンと大阪リージョンは、 単なる名前の違いではありません。
基本的に、 それぞれ独立した地理的なリージョン として設計されています。
そのため、 東京リージョンに作成したEC2が、 何もしなくても大阪リージョンへ自動的にコピーされる というわけではありません。
別リージョンにもシステムやデータを用意したい場合は、 AWSサービスの機能などを利用して リージョンをまたぐ設計を行います。
アベイラビリティゾーン(AZ)とは?
次に アベイラビリティゾーン(Availability Zone / AZ) を理解しましょう。
AZは、 1つのAWSリージョン内に存在する、物理的・論理的に分離されたインフラストラクチャの単位 です。
つまり、 リージョンの中に複数のAZがある という構造です。
AZ=1つのデータセンター、とは限らない
ここは初心者が誤解しやすいポイントです。
そのため、 AZを単純に 「データセンターそのもの」 と覚えないようにしましょう。
なぜ1つのリージョンに複数のAZがある?
理由の1つが、 障害に強いシステムを作るため です。
たとえば、 すべてのサーバーを1つの場所に配置していたとします。
同じAZ内のシステムが影響を受ける可能性
これに対して、 複数のAZへサーバーを分けて配置すれば、 障害の影響範囲を分散できます。
ただし、 「AZを分ければ自動的にすべて冗長化される」 わけではありません。 各AWSサービスの構成を適切に設計する必要があります。
リージョンとAZの違いを整理しよう
東京・大阪・バージニアなど、 AWS Infrastructureを配置する大きな地理的単位。
1つのRegion内に複数存在し、 可用性を高める設計に利用されます。
AZには「ap-northeast-1a」のような名前がある
AWSマネジメントコンソールなどでは、 AZを次のような形式で見ることがあります。
ap-northeast-1a
ap-northeast-1c
ap-northeast-1d
先頭の
ap-northeast-1
は東京リージョンを表し、
最後の文字がAZを表します。
ap-northeast-1a
あるAWSアカウントの
ap-northeast-1a
と、
別のアカウントの同名AZが
必ず同じ物理的AZを指すとは限りません。
AWSサービスによって「どの範囲に属するか」が違う
AWSを学習していくと、 サービスやリソースごとに リージョン単位・AZ単位など、スコープが異なる ことに気づきます。
VPCはRegionに作成し、 その中で複数AZを利用できます。
1つのSubnetは、 1つのAZに属します。
EC2 Instanceは、 配置するSubnetを通して特定AZで稼働します。
この違いは、 後のVPC・Subnet・EC2を学習するときに 非常に重要になります。
AWSシステムではリージョンとAZをどう使う?
典型的なWebシステムのイメージを見てみましょう。
1つのRegion内で 複数AZを利用することで、 特定AZの障害だけでシステム全体が停止しにくい構成 を目指せます。
理解度チェック:RegionとAZを分類してみよう
RegionとAZの包含関係を思い出しましょう。
実際に考えてみよう:どこにEC2を配置する?
次の要件を考えてみましょう。
1つのAZに障害が発生しても、 もう1台のWebサーバーを利用できる構成にしたいとします。
どの配置を選びますか?
「1つのAZに障害が発生した場合」を考えてみましょう。
初心者が間違えやすいポイント
① RegionとAZを同じものだと思う
② 東京Region=東京に1つのData Centerがある、ではない
リージョンは、 単一のサーバーや単一のデータセンターを表す言葉ではありません。
そのリージョン内に、 複数のAZが存在するという構造を覚えましょう。
③ AZを分ければ自動的に高可用性になると思う
AZを分けることは重要ですが、 単にリソースを配置するだけで すべての障害に自動対応できるわけではありません。
たとえばWebサーバーを複数AZへ配置するのであれば、 ロードバランサーなどを使って 適切に通信を振り分ける設計も必要になります。
確認問題:RegionとAZの基本を確認しよう
AWSリージョンについて最も適切な説明はどれですか?
Regionは東京や大阪など、 AWS Infrastructureが展開される地理的な領域です。
RegionとAvailability Zoneの関係として正しいものはどれですか?
AWSでは1つのRegion内に複数のAvailability Zoneが配置されています。
Webサーバー2台をAZ障害に備えて配置する場合、 基本的にどの考え方が適切ですか?
1つのAZ障害の影響を分散するため、 複数AZへResourceを配置する設計が基本になります。
3問に挑戦してみましょう。
まとめ
Regionは、 AWS Infrastructureが存在する地理的な領域
Availability Zone(AZ)は、 Region内に存在する分離されたInfrastructure単位
AWSでは 1つのRegion内に複数のAZ が存在する
複数AZへResourceを分散することで、 特定AZ障害の影響を小さくする設計 ができる
RegionとAZの考え方は、 EC2・VPC・Subnet・RDSなど この先のAWS学習の土台 になる
次は「1つのAZ」と「複数AZ」の違いを理解しよう
RegionとAZの関係を理解できたら、 次に重要なのが 実際にResourceをどのAZへ配置するか です。
この違いを理解すると、 AWSで なぜ複数AZを利用した構成が重要なのか がさらに具体的に理解できるようになります。
次は「シングルAZとマルチAZの違いを理解する」を学びましょう
1つのAZだけを利用する シングルAZ構成と、 複数AZへResourceを分散する マルチAZ構成 の違いを学習します。
障害が発生したときに何が変わるのかを、 実際のAWS構成を見ながら理解していきましょう。
シングルAZとマルチAZの違いを理解する →
