AWS リージョン
注記
設定ページのレイアウトを理解したり、以下の AWS SDK とツールによるサポートの表を解釈したりするには、「このガイドの設定ページについて」を参照してください。
AWS リージョン は AWS のサービス 作業を行う際に理解しておくべき重要な概念です。
AWS リージョン を使用すると、特定の地理的領域に物理的に存在する AWS のサービス にアクセスすることができます。これは、ユーザーがアクセスする場所の近くでのデータとアプリケーションの実行を維持するために有効です。リージョンでは耐障害性や安定性が提供され、レイテンシーを低減することもできます。これにより、リージョンの障害の影響を受けずに利用できる冗長リソースを作成できます。
ほとんどの AWS のサービス リクエストは特定の地域に関するものです。あるリージョンで作成したリソースは、AWS のサービス で提供されるレプリケーション機能を明示的に使用しないかぎり、他のリージョンに存在することはありません。たとえば、Amazon S3 と Amazon EC2 はクロスリージョンのレプリケーションをサポートしています。IAM などの一部のサービスには、リージョンリソースがありません。
AWS 全般のリファレンス には、以下の情報が含まれています。
-
リージョンとエンドポイントの関係を理解し、既存のリージョンエンドポイントのリストを表示するには、「AWS サービスエンドポイント」 を参照してください。
-
各 AWS のサービス でサポートされているすべてのリージョンおよびエンドポイントの現在のリストを確認する方法については、の「サービスとエンドポイントの割り当て」を参照してください。
サービスクライアントの作成
SDK はプログラムから AWS のサービス にアクセスするために、それぞれの AWS のサービス にクライアントクラス/オブジェクトを使用します。たとえば、アプリケーションが Amazon EC2 にアクセスする必要がある場合、アプリケーションはそのサービスとやり取りする Amazon EC2 クライアントオブジェクトを作成します。
コード自体のクライアントにリージョンが明示的に指定されていない場合、クライアントはデフォルトで以下の region 設定で設定されたリージョンを使用します。ただし、クライアントのアクティブリージョンは個々のクライアントオブジェクトに明示的に設定できます。この方法でのリージョンの設定は、特定のサービスクライアントのグローバル設定よりも優先されます。代替リージョンは、クライアントのインスタンス化時に SDK に固有に指定されます (特定の SDK ガイドまたは SDK のコードベースを確認してください)。
この機能を設定するには、以下のように使用します。
region-AWSconfig共有ファイル設定AWS_REGION環境変数aws.region- JVM システムプロパティ: Java/Kotlin のみ-
AWS リクエストに使用するデフォルト AWS リージョン を指定します。このリージョンは、使用するリージョンが指定されていない SDK サービスリクエストに使用されます。
デフォルト値: NONE。この値は明示的に指定する必要があります。
有効な値:
-
「AWS全般リファレンス」の「AWS サービスエンドポイント」に記載されているように、選択したサービスで使用できるどのリージョンコードでも指定できます。たとえば、この
us-east-1値により、エンドポイントは AWS リージョン 米国東部 (バージニア北部)に設定されます。 -
aws-globalでは、AWS Security Token Service (AWS STS) や Amazon Simple Storage Service (Amazon S3) などのリージョンのエンドポイントに加えて、グローバルエンドポイントをサポートするサービスのグローバルエンドポイントを指定します。
-
config ファイルにこの値を設定する例を以下に示します。
[default] region = us-west-2
Linux/macOS のコマンドラインによる環境変数の設定の例を以下に示します。
export AWS_REGION=us-west-2
Windows のコマンドラインによる環境変数の設定の例を以下に示します。
setx AWS_REGION us-west-2
ほとんどの SDK には、アプリケーションコード内からデフォルトリージョンを設定するための「設定」オブジェクトがあります。詳細については、特定の AWS SDK 開発者ガイドを参照してください。
AWS SDK とツールによるサポート
以下の SDK は、このトピックで説明する機能と設定をサポートします。部分的な例外があれば、すべて記載されています。JVM システムプロパティ設定は、AWS SDK for Java と AWS SDK for Kotlin でのみサポートされます。
| SDK | サポート | 注意または詳細情報 |
|---|---|---|
| AWS CLI v2 | あり | AWS CLI v2 では、 AWS_DEFAULT_REGION (両方の変数がチェックされます)の値の前に AWS_REGION の任意の値を使用します。 |
| AWS CLI V1 | あり | AWS CLI v1 では、この目的のために AWS_DEFAULT_REGION と名付けられた環境変数を使用します。 |
| SDK for C++ | あり | |
| SDK for Go V2 (1.x) |
あり | |
| SDK for Go 1.x (V1) | あり | 共有 config ファイル設定を使用するには、設定ファイルからの読み込みを有効にする必要があります。「セッション」を参照してください。 |
| SDK for Java 2.x | あり | |
| SDK for Java 1.x | あり | |
| SDK for JavaScript 3.x | あり | |
| SDK for JavaScript 2.x | あり | |
| SDK for Kotlin | あり | |
| SDK for .NET 4.x | あり | |
| SDK for .NET 3.x | あり | |
| SDK for PHP 3.x | あり | |
| SDK for Python (Boto3) |
あり | この SDK は、この目的のために AWS_DEFAULT_REGION と名付けられた環境変数を使用します。 |
| SDK for Ruby 3.x | あり | |
| SDK for Rust | あり | |
| SDK for Swift | あり | |
| Tools for PowerShell V5 | あり | |
| Tools for PowerShell V4 | あり |