AWS 리전 구성 - AWS SDK for .NET

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS 리전 구성

AWS 리전을 통해 특정 지리적 리전에 물리적으로 상주하는 AWS 서비스에 액세스할 수 있습니다. 이는 중복성에 유용할 뿐 아니라 데이터와 애플리케이션이 이를 사용하기 위해 고객님 및 고객님의 사용자가 접근하는 위치 가까이에서 계속해서 실행되도록 하는 데 도움이 될 수 있습니다.

각각의 AWS 서비스에 대해 지원되는 모든 리전 및 엔드포인트의 현재 목록을 보려면 AWS 일반 참조서비스 엔드포인트 및 할당량을 참조하세요. 기존 리전 엔드포인트 목록을 보려면 AWS 서비스 엔드포인트를 참조하십시오. 리전에 대한 자세한 정보를 보려면 계정에서 사용할 수 있는 AWS 리전 지정을 참조하세요.

특정 리전으로 이동하는 AWS 서비스 클라이언트를 만들 수 있습니다. 모든 AWS 서비스 클라이언트에 사용할 리전으로 애플리케이션을 구성할 수도 있습니다. 다음은 이 두 가지 사례에 대해 설명합니다.

특정 리전을 사용하여 서비스 클라이언트를 생성합니다.

애플리케이션의 모든 AWS 서비스 클라이언트에 대해 리전을 지정할 수 있습니다. 이러한 방식으로 리전을 설정하면 특별한 서비스 클라이언트에 대한 전역 설정에 우선합니다.

기존 리전

이 예제는 기존 리전의 Amazon EC2 클라이언트를 인스턴스화하는 방법을 보여줍니다. 정의된 RegionEndpoint 필드를 사용합니다.

using (AmazonEC2Client ec2Client = new AmazonEC2Client(RegionEndpoint.USWest2)) { // Make a request to EC2 in the us-west-2 Region using ec2Client }

RegionEndpoint 클래스를 사용하는 새 리전

이 예제에서는 RegionEndpoint.GetBySystemName을 사용하여 새 리전 엔드포인트를 생성하는 방법을 보여줍니다.

var newRegion = RegionEndpoint.GetBySystemName("us-west-new"); using (var ec2Client = new AmazonEC2Client(newRegion)) { // Make a request to EC2 in the new Region using ec2Client }

서비스 클라이언트 구성 클래스를 사용하는 새 리전

이 예제에서는 서비스 클라이언트 구성 클래스의 ServiceURL 속성을 사용하여 리전을 지정하는 방법을 보여줍니다. 이 경우에는 AmazonEC2Config 클래스를 사용합니다.

이 기법은 리전 엔드포인트가 정규 리전 엔드포인트 패턴을 따르지 않는 경우에도 사용할 수 있습니다.

var ec2ClientConfig = new AmazonEC2Config { // Specify the endpoint explicitly ServiceURL = "https://ec2.us-west-new.amazonaws.com" }; using (var ec2Client = new AmazonEC2Client(ec2ClientConfig)) { // Make a request to EC2 in the new Region using ec2Client }

모든 서비스 클라이언트의 리전 지정

애플리케이션에서 생성하는 모든 AWS 서비스 클라이언트에 대해 리전을 지정하는 방법에는 여러 가지가 있습니다. 이 지역은 특정 리전으로 생성되지 않은 서비스 클라이언트에 사용됩니다.

AWS SDK for .NET는 다음 순서에 따라 리전 값을 찾습니다.

프로파일

애플리케이션 또는 SDK가 로드한 프로필을 설정합니다. 자세한 내용은 보안 인증 정보 및 프로파일 확인 섹션을 참조하세요.

환경 변수

AWS_REGION 환경 변수를 설정합니다.

Linux 또는 macOS에서:

export AWS_REGION='us-west-2'

Windows의 경우:

set AWS_REGION=us-west-2
참고

export 또는 setx를 사용하여 전체 시스템에 대해 이 환경 변수를 설정하면 AWS SDK for .NET뿐만 아니라 모든 SDK 및 툴킷에 영향을 줍니다.

AWSConfigs 클래스

AWSConfigs.AWSRegion 속성으로 설정합니다.

AWSConfigs.AWSRegion = "us-west-2"; using (var ec2Client = new AmazonEC2Client()) { // Make request to Amazon EC2 in us-west-2 Region using ec2Client }

리전 해상도

위에서 설명한 방법 중 하나를 사용하여 AWS 리전을 지정하지 않는 경우 AWS SDK for .NET는 AWS 서비스 클라이언트가 운영할 리전을 찾으려고 시도합니다.

리전 해결 순서
  1. app.configweb.config와 같은 애플리케이션 구성 파일.

  2. 환경 변수(AWS_REGIONAWS_DEFAULT_REGION).

  3. AWSConfigs.AWSProfileName의 값으로 지정된 이름을 가진 프로필.

  4. AWS_PROFILE 환경 변수로 이름이 지정된 프로필.

  5. [default] 프로필.

  6. Amazon EC2 인스턴스 메타데이터(EC2 인스턴스에서 실행 중인 경우).

리전을 찾을 수 없는 경우 SDK는 AWS 서비스 클라이언트에 구성된 리전이 없다는 예외를 발생시킵니다.

중국(베이징) 리전에 대한 특수 정보

중국(베이징) 리전에서 서비스를 이용하려면 중국(베이징)과 관련된 계정 및 자격 증명이 있어야 합니다. 다른 AWS 리전의 계정 및 자격 증명은 중국(베이징) 리전에서 사용할 수 없습니다. 이와 마찬가지로 중국(베이징) 리전의 계정 및 자격 증명은 다른 AWS 리전에서 사용할 수 없습니다. 중국(베이징) 리전에서 사용 가능한 엔드포인트 및 프로토콜에 대한 자세한 내용은 베이징 리전 엔드포인인트를 참조하세요.

새 AWS 서비스에 대한 특수 정보

새로운 AWS 서비스는 몇 군데 리전에서 먼저 시작한 후 다른 리전에서도 지원할 수 있습니다. 이와 같은 경우 해당 서비스에 대한 새로운 리전에 액세스하기 위해 최신 SDK를 설치할 필요가 없습니다. 앞서 표시된 대로 새로 추가된 리전을 클라이언트 단위로 또는 전역적으로 지정할 수 있습니다.