メニュー
Amazon Elastic Compute Cloud
Linux インスタンス用ユーザーガイド

リージョンとアベイラビリティーゾーン

Amazon EC2 は、世界各地のロケーションでホスティングされています。これらのロケーションは、リージョンとアベイラビリティーゾーンから構成されています。リージョンはそれぞれ、地理的に離れた領域です。1 つのリージョンに複数のそれぞれ独立したロケーションがあり、このロケーションを「アベイラビリティーゾーン」といいます。Amazon EC2 では、お客様がインスタンスなどのリソースとデータを複数のロケーションに配置できます。複数のリージョンにまたがってリソースのレプリケーションを行うには、お客様がそのように指定する必要があります。

Amazon は、アベイラビリティーの高い最新のデータセンターを運用しています。しかし、非常にまれですが、同じ場所にあるインスタンスすべての可用性に影響する障害が発生することもあります。もし、すべてのインスタンスを 1 か所でホストしている場合、そのような障害が起きたとき、インスタンスがすべて利用できなくなります。

リージョンとアベイラビリティーゾーンに関する概念

各リージョンは完全に独立しています。各アベイラビリティーゾーンは独立していますが、同じリージョン内のアベイラビリティーゾーンどうしは低レイテンシーのリンクで接続されています。次の図に、リージョンとアベイラビリティーゾーンの関係を示します。

リージョンとアベイラビリティーゾーン

Amazon EC2 リソースには、グローバルなもの、リージョンに結び付けられているもの、アベイラビリティーゾーンに結び付けられているものがあります。詳細については、「リソースの場所」を参照してください。

リージョン

各 Amazon EC2 リージョンは、他の Amazon EC2 リージョンと完全に分離されるように設計されています。これにより、最大限の耐障害性と安定性が達成されます。

リソースを表示すると、指定したリージョンに結び付けられているリソースだけが表示されます。これは、リソースは相互に分離されており、リージョン間のリソースのレプリケーションは自動的に行われないためです。

インスタンスを起動するときは、同じリージョン内にある AMI を選択する必要があります。AMI が別のリージョンにある場合は、使用しているリージョンに AMI をコピーできます。詳細については、「AMI のコピー」を参照してください。

リージョン間のすべての通信は、パブリックインターネットを通して行われます。したがって、適切な暗号方式を使用してデータを保護する必要があります。リージョン間でデータを転送すると、送信側と受信側の両方のインスタンスで、インターネットデータ転送速度に応じて料金が発生します。詳細については、「Amazon EC2 Pricing - Data Transfer」を参照してください。

アベイラビリティーゾーン

インスタンスを起動するときに、アベイラビリティーゾーンを自分で選択するか、自動的に選択されるようにできます。インスタンスを複数のアベイラビリティーゾーンに配布する場合は、1 つのインスタンスで障害が発生したら別のアベイラビリティーゾーンのインスタンスが要求を処理するように、アプリケーションを設計できます。

また、伸縮自在な IP アドレスを使用すると、あるアベイラビリティーゾーンのインスタンスの障害を、別のアベイラビリティーゾーンのインスタンスにアドレスをすばやく再マッピングすることによってマスクできます。詳細については、「Elastic IP アドレス」を参照してください。

アベイラビリティーゾーンは、リージョンコードとそれに続く文字識別子によって表されます (us-east-1a など)。リソースがリージョンの複数のアベイラビリティーゾーンに分散されるようにするため、アベイラビリティーゾーンは各アカウントの識別子に個別にマップされます。たとえば、あるアカウントのアベイラビリティーゾーンは別のアカウントのus-east-1aアベイラビリティーゾーンと同じ場所にはない可能性がありますus-east-1a。ユーザーがアカウント間でアベイラビリティーゾーンを調整する手段はありません。

アベイラビリティーゾーンが拡大すると、アベイラビリティーゾーンを拡張しにくくなる場合があります。その場合、ユーザーがアベイラビリティーゾーンに既にインスタンスを持っているのでない場合は、制約のあるアベイラビリティーゾーンでのインスタンスの起動を制限する場合があります。最終的に、制約のあるアベイラビリティーゾーンを新しいお客様に対するアベイラビリティーゾーンのリストから削除することもあります。したがって、アカウントによってリージョン内で使用できるアベイラビリティーゾーンの数が異なる場合があります。

自分のアカウントで使用できるアベイラビリティーゾーンをリストできます。詳細については、「リージョンとアベイラビリティーゾーンの記述」を参照してください。

利用できるリージョン

アカウントにより、利用できるリージョンが決まります。以下に例を示します。

  • AWS アカウントでは複数のリージョンが提供されるため、それぞれの要件に合った場所で Amazon EC2 インスタンスを起動できます。たとえば、ヨーロッパの顧客に近づけるため、または法的要件を満たすために、ヨーロッパでインスタンスを起動することができます。

  • AWS GovCloud (米国) アカウントでは、AWS GovCloud (米国) リージョンにアクセスできます。詳細については、「AWS GovCloud (米国) リージョン」を参照してください。

  • Amazon AWS アカウントでは、中国(北京) リージョンにアクセスできます。

次の表に、AWS アカウントで提供されるリージョンのリストを示します。AWS GovCloud (米国) や 中国(北京) など、AWS アカウントの追加のリージョンを記述またはアクセスできないことに注意してください。

コード名前

us-east-1

米国東部(バージニア北部)

us-west-2

米国西部(オレゴン)

us-west-1

米国西部(北カリフォルニア)

eu-west-1

欧州(アイルランド)

eu-central-1

欧州(フランクフルト)

ap-southeast-1

アジアパシフィック (シンガポール)

ap-northeast-1

アジアパシフィック(東京)

ap-southeast-2

アジアパシフィック(シドニー)

ap-northeast-2

アジアパシフィック (ソウル)

ap-south-1

アジアパシフィック (ムンバイ)

sa-east-1

南米 (サンパウロ)

詳細については、「AWS グローバルインフラストラクチャ」を参照してください。

リージョンごとのアベイラビリティーゾーンの数とマッピングは、AWS アカウント間で異なる場合があります。アカウントで使用可能なアベイラビリティーゾーンのリストを取得するには、Amazon EC2 コンソールまたはコマンドラインインターフェースを使用できます。詳細については、「リージョンとアベイラビリティーゾーンの記述」を参照してください。

リージョンとエンドポイント

コマンドラインインターフェイスまたは API アクションを使用してインスタンスを操作するときは、そのリージョンエンドポイントを指定する必要があります。Amazon EC2 のリージョンおよびエンドポイントの詳細については、『アマゾン ウェブ サービス全般のリファレンス』の「リージョンとエンドポイント」を参照してください。

AWS GovCloud (米国) のエンドポイントとプロトコルの詳細については、『AWS GovCloud (US) User Guide』の「AWS GovCloud (米国) エンドポイント」を参照してください。

リージョンとアベイラビリティーゾーンの記述

Amazon EC2 コンソールまたはコマンドラインインターフェースを使用して、アカウントで使用できるリージョンおよびアベイラビリティーゾーンを特定できます。これらのコマンドラインインターフェイスの詳細については、Amazon EC2 へのアクセス を参照してください。

Amazon EC2 コンソールを使用してリージョンとアベイラビリティーゾーンを検索するには

  1. https://console.aws.amazon.com/ec2/)にある Amazon EC2 コンソールを開きます。

  2. ナビゲーションバーから、リージョンセレクターのオプションを表示します。

    リージョンの表示
  3. アベイラビリティーゾーンは、ダッシュボードの [Service Health] の [Availability Zone Status] に一覧表示されます。

    アベイラビリティーゾーンの表示

コマンドラインを使用してリージョンとアベイラビリティーゾーンを検索するには

  1. 次のように describe-regions コマンドを使用してリージョンを記述します。

    $ aws ec2 describe-regions
    {
        "Regions": [
            {
                "Endpoint": "ec2.us-east-1.amazonaws.com",
                "RegionName": "us-east-1"
            },
            {
                "Endpoint": "ec2.ap-southeast-1.amazonaws.com",
                "RegionName": "ap-southeast-1"
            },
            {
                "Endpoint": "ec2.ap-southeast-2.amazonaws.com",
                "RegionName": "ap-southeast-2"
            },
            ...
        ]
    }
  2. 次のように describe-availability-zones コマンドを使用してリージョン内のアベイラビリティーゾーンを記述します。us-east-1

    $ aws ec2 describe-availability-zones --region us-east-1
    {
        "AvailabilityZones": [
            {
                "State": "available",
                "RegionName": "us-east-1",
                "Messages": [],
                "ZoneName": "us-east-1b"
            },
            {
                "State": "available",
                "RegionName": "us-east-1",
                "Messages": [],
                "ZoneName": "us-east-1c"
            },
            {
                "State": "available",
                "RegionName": "us-east-1",
                "Messages": [],
                "ZoneName": "us-east-1d"
            }
        ]
    }

または、AWS Tools for Windows PowerShell コマンド Get-EC2RegionGet-EC2AvailabilityZone を使用できます。

リソースのリージョンの指定

Amazon EC2 リソースを作成するたびに、リソースのリージョンを指定できます。リソースのリージョンは AWS マネジメントコンソール またはコマンドラインを使用して指定できます。

Note

一部の AWS リソースは、リージョンおよびアベイラビリティーゾーンによっては利用できない場合があります。特定のアベイラビリティーゾーンでインスタンスを起動する前に、目的のリージョンまたはアベイラビリティーゾーンで必要なリソースを作成できることを確認してください。

コンソールを使用してリソースのリージョンを指定するには

  1. https://console.aws.amazon.com/ec2/)にある Amazon EC2 コンソールを開きます。

  2. ナビゲーションバーのリージョンセレクターを使用します。

    コンソールリージョンセレクターの使用

コマンドラインを使用してデフォルトのリージョンを指定するには

環境変数の値を、目的のリージョンエンドポイント(例: https://ec2.us-west-1.amazonaws.com)に設定できます。

  • AWS_DEFAULT_REGION(AWS CLI)

  • Set-AWSDefaultRegion (AWS Tools for Windows PowerShell)

または、各コマンドで --region (AWS CLI) または -Region (AWS Tools for Windows PowerShell) のコマンドラインオプションを使用することもできます。たとえば、--region us-west-1 と指定します。

Amazon EC2 のエンドポイントの詳細については、「Amazon Elastic Compute Cloud Endpoints」を参照してください。

アベイラビリティーゾーンでのインスタンスの起動

インスタンスを起動するときは、特定のお客様にインスタンスを近付けるリージョン、または法律や他の要件を満たすリージョンを選択します。個別のアベイラビリティーゾーンでインスタンスを起動することにより、1 つの場所で障害が発生しても、アプリケーションを保護することができます。

インスタンスを起動するときは、必要に応じて、使用するリージョン内のアベイラビリティーゾーンを指定できます。アベイラビリティーゾーンを指定しないと、自動的に選択されます。初期インスタンスを起動するときには、デフォルトのアベイラビリティーゾーンを受け入れることをお勧めします。これにより Amazon EC2 が、システムの状態と利用可能な機能に基づいて、最適なアベイラビリティーゾーンを選択できます。追加インスタンスを起動する場合、新しいインスタンスが実行中のインスタンスに近いか、分かれている必要がある場合は、アベイラビリティーゾーンだけを指定します。

コンソールを使用してインスタンスのアベイラビリティーゾーンを指定するには

  1. https://console.aws.amazon.com/ec2/)にある Amazon EC2 コンソールを開きます。

  2. ダッシュボードで、[Launch Instance] を選択します。

  3. ウィザードの指示にしたがって操作します。[Configure Instance Details] ページで以下の操作を実行します。

    • [EC2-Classic] リストからアベイラビリティーゾーンのオプションを選択するか、[No Preference] を選択して最善のアベイラビリティーゾーンを自動的に選択します。

      インスタンス用のアベイラビリティーゾーンを選択する
    • [EC2-VPC] リストからサブネットオプションを選択するか、[No preference (default subnet in any Availability Zone)] を選択して最善のサブネットを自動的に選択します。

      インスタンス用のサブネットを選択する

AWS CLI を使用してインスタンスのアベイラビリティーゾーンを指定するには

run-instances コマンドと次のいずれかのオプションを使用できます。

  • [EC2-Classic] --placement

  • [EC2-VPC] --subnet-id

AWS Tools for Windows PowerShell を使用してインスタンスのアベイラビリティーゾーンを指定するには

New-EC2Instance コマンドと次のいずれかのオプションを使用できます。

  • [EC2-Classic] -AvailabilityZone

  • [EC2-VPC] -SubnetId

別のアベイラビリティゾーンへのインスタンスの移行

必要な場合は、1 つのアベイラビリティゾーンから別のアベイラビリティゾーンにインスタンスを移行できます。たとえば、インスタンスのインスタンスタイプを変更しようとしたときに、現在のアベイラビリティゾーンでは新しいタイプのインスタンスを起動できない場合は、そのタイプのインスタンスを起動できるアベイラビリティゾーンにインスタンスを移行することもできます。

移行プロセスでは、次の手順に示すように、元のインスタンスから AMI を作成し、新しいアベイラビリティゾーンでインスタンスを起動して、新しいインスタンスの設定を更新します。

別のアベイラビリティゾーンにインスタンスを移行するには

  1. インスタンスから AMI を作成します。手順は、オペレーティングシステムとインスタンスのルートデバイスボリュームの種類によって異なります。詳細については、使用しているオペレーティングシステムとルートデバイスボリュームに対応するドキュメントを参照してください。

  2. [EC2-VPC] インスタンスのプライベート IP アドレスを維持する必要がある場合は、現在のアベイラビリティゾーンのサブネットを削除してから、新しいアベイラビリティゾーンに元のサブネットと同じ IP アドレス範囲のサブネットを作成する必要があります。サブネットを削除する前に、その中のすべてのインスタンスを終了する必要があります。したがって、現在のサブネット内のすべてのインスタンスを新しいサブネットに移動しなければなりません。

  3. 新しいアベイラビリティゾーンまたはサブネットを指定して、作成した AMI からインスタンスを起動します。インスタンスタイプは、元のインスタンスと同じにすることも、新しいインスタンスタイプを選択することもできます。詳細については、「アベイラビリティーゾーンでのインスタンスの起動」を参照してください。

  4. 元のインスタンスに Elastic IP アドレスが関連付けられていた場合は、それを新しいインスタンスに関連付けます。詳細については、「Elastic IP アドレスの関連付け解除と別のインスタンスへの再関連付け」を参照してください。

  5. 元のインスタンスがリザーブドインスタンスの場合、予約のアベイラビリティゾーンを変更します。(また、インスタンスタイプも変更する場合は、予約のインスタンスタイプも変更できます)。詳細については、「変更リクエストの送信」を参照してください。

  6. (オプション)元のインスタンスを終了します。詳細については、「インスタンスを終了する」を参照してください。