기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS SDK for Rust에 대한 AWS 리전 설정
AWS 리전을 사용하여 특정 지리적 영역에서 작동하는 AWS 서비스에 액세스할 수 있습니다. 이는 중복성은 물론, 데이터와 애플리케이션을 고객과 고객의 사용자가 액세스할 위치에 가까운 곳에서 실행 상태로 유지하는 데도 유용할 수 있습니다. 리전을 사용하는 방법에 대한 자세한 내용은 AWS SDK 및 도구 참조 가이드의 AWS 리전을 참조하세요.
중요
대부분의 리소스는 특정 AWS 리전에 있으므로 SDK를 사용할 때 리소스의 올바른 리전을 제공해야 합니다.
AWS 요청에 사용할 SDK for Rust의 기본 AWS 리전을 설정해야 합니다. 이 기본값은 리전이 지정되지 않은 모든 SDK 서비스 메서드 직접 호출에 사용됩니다.
공유 AWS config 파일 또는 환경 변수를 통해 기본 리전을 설정하는 방법에 대한 예는 AWS SDK 및 도구 참조 안내서의 AWS 리전 섹션을 참조하세요.
AWS 리전 공급자 체인
다음 조회 프로세스는 실행 환경에서 서비스 클라이언트의 구성을 로드할 때 사용됩니다. SDK가 설정되어 있는 첫 번째 값은 클라이언트 구성에 사용됩니다. 서비스 클라이언트 생성에 대한 자세한 내용은 환경에서 클라이언트 구성 섹션을 참조하세요.
-
프로그래밍 방식으로 설정된 모든 명시적 리전입니다.
-
AWS_REGION환경 변수를 확인합니다.-
AWS Lambda 서비스를 사용하는 경우 이 환경 변수는 AWS Lambda 컨테이너에 의해 자동으로 설정됩니다.
-
-
공유 AWS
config파일의region속성이 확인됩니다.-
AWS_CONFIG_FILE환경 변수는 공유config파일의 위치를 변경하는 데 사용할 수 있습니다. 이 파일이 보관되는 위치에 대한 자세한 내용은 AWS SDK 및 도구 참조 안내서의 공유config및credentials파일 위치를 참조하세요. -
AWS_PROFILE환경 변수를 사용하여 기본값 대신 명명된 프로파일을 선택할 수 있습니다. 여로 프로필 구성에 대한 자세한 내용은 AWS SDK 및 도구 참조 가이드의 공유config및credentials파일을 참조하세요.
-
-
SDK는 Amazon EC2 인스턴스 메타데이터 서비스를 사용하여 현재 실행 중인 Amazon EC2 인스턴스의 리전을 결정합니다.
-
AWS SDK for Rust는 IMDSv2만 지원합니다.
-
RegionProviderChain은 서비스 클라이언트와 함께 사용할 기본 구성을 생성할 때 추가 코드 없이 자동으로 사용됩니다.
let config = aws_config::defaults(BehaviorVersion::latest()) .load() .await;
코드에서 AWS 리전 설정
코드에 명시적으로 리전 설정
리전을 명시적으로 설정하려는 경우 구성에서 직접 Region::new()를 사용합니다.
리전 공급자 체인은 사용되지 않습니다. 환경, 공유 config 파일 또는 Amazon EC2 인스턴스 메타데이터 서비스를 확인하지 않습니다.
use aws_config::{defaults, BehaviorVersion}; use aws_sdk_s3::config::Region; #[tokio::main] async fn main() { let config = defaults(BehaviorVersion::latest()) .region(Region::new("us-west-2")) .load() .await; println!("Using Region: {}", config.region().unwrap()); }
AWS 리전에 유효한 문자열을 입력해야 합니다. 제공된 값은 검증되지 않습니다.
RegionProviderChain 사용자 지정
리전을 조건부로 주입하거나, 재정의하거나, 해결 체인을 사용자 지정하려는 경우 AWS 리전 공급자 체인을 사용합니다.
use aws_config::{defaults, BehaviorVersion}; use aws_config::meta::region::RegionProviderChain; use aws_sdk_s3::config::Region; use std::env; #[tokio::main] async fn main() { let region_provider = RegionProviderChain::first_try(env::var("CUSTOM_REGION").ok().map(Region::new)) .or_default_provider() .or_else(Region::new("us-east-2")); let config = aws_config::defaults(BehaviorVersion::latest()) .region(region_provider) .load() .await; println!("Using Region: {}", config.region().unwrap()); }
이전 구성은 다음과 같습니다.
-
먼저
CUSTOM_REGION환경 변수에 문자열 세트가 있는지 확인합니다. -
사용할 수 없는 경우 기본 리전 공급자 체인으로 돌아갑니다.
-
실패할 경우 ‘us-east-2’를 최종 폴백으로 사용합니다.