이 문서는 AWS CLI의 버전 1에만 해당합니다. AWS CLI의 버전 2와 관련된 문서는 버전 2 사용 설명서를 참조하세요.
AWS CLI에서 엔드포인트 사용
AWS 서비스에 프로그래밍 방식으로 연결하려면 엔드포인트를 사용해야 합니다. 엔드포인트는 AWS 웹 서비스를 위한 진입점의 URL입니다. AWS Command Line Interface(AWS CLI)는 AWS 리전 리전의 각 서비스에 대해 자동으로 기본 엔드포인트를 사용하지만, API 요청에 대해 대체 엔드포인트를 지정할 수 있습니다.
엔드포인트 주제
단일 명령에 대한 엔드포인트 설정
단일 명령에 대한 엔드포인트 설정이나 환경 변수를 재정의하려면 --endpoint-url
명령줄 옵션을 사용하세요. 다음 명령 예제에서는 사용자 지정 Amazon S3 엔드포인트 URL을 사용합니다.
$
aws s3 ls --endpoint-url
http://localhost:4567
모든 AWS 서비스 서비스에 대한 글로벌 엔드포인트 설정
모든 서비스에 대한 요청을 사용자 지정 엔드포인트 URL로 라우팅하려면 다음 설정 중 하나를 사용하세요.
-
환경 변수:
-
AWS_IGNORE_CONFIGURED_ENDPOINT_URLS
- 구성된 엔드포인트 URL을 무시합니다. -
AWS_ENDPOINT_URL
- 글로벌 엔드포인트 URL을 설정합니다.
-
-
config
파일:-
ignore_configure_endpoint_urls
- 구성된 엔드포인트 URL을 무시합니다.ignore_configure_endpoint_urls = true
-
endpoint_url
- 글로벌 엔드포인트 URL을 설정합니다.endpoint_url =
http://localhost:4567
-
서비스별 엔드포인트와 --endpoint-url
명령줄 옵션은 모든 전역 엔드포인트를 재정의합니다.
모든 AWS 서비스에 FIPS 엔드포인트를 사용하도록 설정
모든 서비스에 대한 요청을 FIP 엔드포인트로 라우팅하려면 다음 중 하나를 사용하세요.
-
AWS_USE_FIPS_ENDPOINT
환경 변수 -
use_fips_endpoint
파일 설정use_fips_endpoint = true
일부 AWS 서비스는 일부 AWS 리전에서 FIPS(Federal Information Processing Standard) 140-2
이 설정이 활성화되어 있지만 해당 서비스에 대한 FIPS 엔드포인트가 AWS 리전에 없는 경우 AWS 명령이 실패할 수 있습니다. 이 경우 --endpoint-url
옵션을 사용하여 명령에 사용할 엔드포인트를 수동으로 지정하거나 서비스별 엔드포인트를 사용합니다.
AWS 리전별로 FIPS 엔드포인트를 지정하는 방법에 대한 자세한 내용은 서비스별 FIPS 엔드포인트
모든 AWS 서비스에 이중 스택 엔드포인트를 사용하도록 설정
모든 서비스에 대한 요청을 사용 가능한 이중 스택 엔드포인트로 라우팅하려면 다음 설정 중 하나를 사용하세요.
-
AWS_USE_DUALSTACK_ENDPOINT
환경 변수 -
use_dualstack_endpoint
파일 설정use_dualstack_endpoint = true
이중 스택 엔드포인트를 사용하여 AWS 요청을 보내도록 설정합니다. IPv4 및 IPv6 트래픽을 모두 지원하는 이중 스택 엔드포인트에 대한 자세한 내용은 Amazon 심플 스토리지 서비스 사용 설명서의 Amazon S3 이중 스택 엔드포인트 사용을 참조하세요. 이중 스택 엔드포인트는 일부 리전에 사용할 수 있는 서비스입니다. 서비스 또는 AWS 리전에 대한 이중 스택 엔드포인트가 없는 경우 요청이 실패합니다. 이 옵션은 기본적으로 비활성화되어 있습니다.
서비스별 엔드포인트 설정
서비스별 엔드포인트 구성은 AWS CLI 요청에 대해 사용자가 선택한 영구 엔드포인트를 사용할 수 있는 옵션을 제공합니다. 이러한 설정은 로컬 엔드포인트, VPC 엔드포인트 및 타사 로컬 AWS 개발 환경을 지원할 수 있는 유연성을 제공합니다. 테스트 환경과 프로덕션 환경에 서로 다른 엔드포인트를 사용할 수 있습니다. 개별 AWS 서비스 서비스에 대한 엔드포인트 URL을 지정할 수 있습니다.
서비스별 엔드포인트는 다음과 같은 방법으로 지정할 수 있습니다.
-
단일 명령에 대한 명령줄 옵션
--endpoint-url
. -
환경 변수:
-
AWS_IGNORE_CONFIGURED_ENDPOINT_URLS
- 명령줄에 지정하지 않는 한 구성된 모든 엔드포인트 URL을 무시합니다. -
AWS_ENDPOINT_URL_<SERVICE>
- 특정 서비스에 사용되는 사용자 지정 엔드포인트를 지정하며, 여기서<SERVICE>
는 AWS 서비스 서비스 식별자로 대체됩니다. 모든 서비스별 변수에 대해서는 서비스별 엔드포인트: 서비스별 식별자 목록를 참조하세요
-
-
config
파일:-
ignore_configure_endpoint_urls
- 환경 변수를 사용하거나 명령줄에서 지정하지 않는 한 구성된 모든 엔드포인트 URL을 무시합니다. -
config
파일의 services 섹션과endpoint_url
파일 설정이 결합됩니다.
-
서비스별 엔드포인트 주제:
서비스별 엔드포인트: 환경 변수
환경 변수는 구성 파일의 설정을 재정의하지만 명령줄에 지정된 옵션을 재정의하지는 않습니다. 모든 프로파일이 디바이스에서 동일한 엔드포인트를 사용하도록 하려면 환경 변수를 사용하세요.
다음은 서비스별 환경 변수입니다.
-
AWS_IGNORE_CONFIGURED_ENDPOINT_URLS
- 명령줄에 지정하지 않는 한 구성된 모든 엔드포인트 URL을 무시합니다. -
AWS_ENDPOINT_URL_<SERVICE>
- 특정 서비스에 사용되는 사용자 지정 엔드포인트를 지정하며, 여기서 AWS 서비스가<SERVICE>
식별자로 대체됩니다. 모든 서비스별 변수에 대해서는 서비스별 엔드포인트: 서비스별 식별자 목록를 참조하세요다음 환경 변수 예제는 AWS Elastic Beanstalk의 엔드포인트를 설정합니다.
환경 변수 설정에 대한 자세한 내용은 환경 변수를 사용하여 AWS CLI에 대한 환경 변수 구성을 참조하세요.
서비스별 엔드포인트: 공유 config
파일
공유 config
파일에서 endpoint_url
은 여러 섹션에서 사용됩니다. 서비스별 엔드포인트를 설정하려면 services
섹션 내의 서비스 식별자 키 아래에 중첩된 endpoint_url
설정을 사용하세요. 공유 config
파일에서 services
섹션을 정의하는 방법에 대한 자세한 내용은 섹션 유형: services를 참조하세요.
다음 예제에서는 services
섹션을 사용하여 Amazon S3에 대한 서비스별 엔드포인트 URL과 다른 모든 서비스에 사용되는 사용자 지정 글로벌 엔드포인트를 구성합니다.
[profile
dev1
] endpoint_url =http://localhost:1234
services =s3-specific
[servicestesting-s3
] s3 = endpoint_url =http://localhost:4567
단일 프로파일로 여러 서비스에 대한 엔드포인트를 구성할 수 있습니다. 다음 예제에서는 동일한 프로파일에서 Amazon S3와 AWS Elastic Beanstalk에 대한 서비스별 엔드포인트 URL을 설정합니다.
services
섹션에서 사용할 모든 서비스 식별자 키 목록은 서비스별 식별자 목록을 참조하세요.
[profile
dev1
] services =testing-s3-and-eb
[servicestesting-s3-and-eb
] s3 = endpoint_url =http://localhost:4567
elastic_beanstalk = endpoint_url =http://localhost:8000
서비스 구성 섹션은 여러 프로파일에서 사용할 수 있습니다. 다음 예제에서는 두 개의 프로파일이 동일한 services
정의를 사용합니다.
[profile
dev1
] output = json services =testing-s3
[profiledev2
] output = text services =testing-s3
[servicestesting-s3
] s3 = endpoint_url =https://localhost:4567
서비스별 엔드포인트: 서비스별 식별자 목록
AWS 서비스 서비스 식별자는 모든 공백을 밑줄로 바꾸고 모든 문자를 소문자로 바꾸는 방식으로 API 모델의 serviceId
를 기반으로 합니다.
다음 서비스 식별자 예제에서는 AWS Elastic Beanstalk를 사용합니다. AWS Elastic Beanstalk의 serviceId
는 Elastic Beanstalk
이므로 서비스 식별자 키는 elastic_beanstalk
입니다.
다음 표에는 모든 서비스별 식별자, config
파일 키 및 환경 변수가 나열되어 있습니다.
엔드포인트 구성 및 설정 우선 순위
엔드포인트 구성 설정은 시스템 또는 사용자 환경 변수, 로컬 AWS 구성 파일 또는 명령줄에서 파라미터로 명시적으로 선언된 위치 등 다양한 장소에 있습니다. AWS CLI 엔드포인트 구성 설정은 다음 순서에 따라 우선적으로 적용됩니다.
-
--endpoint-url
명령줄 옵션 -
사용 설정된 경우, 사용자 지정 엔드포인트를 무시하도록
AWS_IGNORE_CONFIGURED_ENDPOINT_URLS
글로벌 엔드포인트 환경 변수 또는 프로파일 설정ignore_configure_endpoint_urls
를 사용합니다. -
서비스별 환경 변수
AWS_ENDPOINT_URL_<SERVICE>
에서 제공하는 값(예:AWS_ENDPOINT_URL_DYNAMODB
). -
AWS_USE_DUALSTACK_ENDPOINT
,AWS_USE_FIPS_ENDPOINT
및AWS_ENDPOINT_URL
환경 변수에서 제공하는 값입니다. -
공유
config
파일의services
섹션 내의endpoint_url
설정에서 제공하는 서비스별 엔드포인트 값. -
공유
config
파일의profile
내에서endpoint_url
설정에 의해 제공되는 값. -
use_dualstack_endpoint
,use_fips_endpoint
및endpoint_url
설정입니다. -
각 AWS 서비스에 대한 기본 엔드포인트 URL이 마지막에 사용됩니다. 각 리전에서 사용할 수 있는 표준 서비스 엔드포인트 목록은 Amazon Web Services 일반 참조의 AWS 리전 및 엔드포인트를 참조하세요.