S3 Transfer Acceleration 사용 설정 및 사용
Amazon S3 Transfer Acceleration을 사용하여 클라이언트와 S3 버킷 간의 장거리 파일 전송을 빠르고 안전하게 수행할 수 있습니다. S3 콘솔, AWS Command Line Interface(AWS CLI), API 또는 AWS SDK를 사용하여 Transfer Acceleration을 사용할 수 있습니다.
이 섹션에서는 버킷에서 Amazon S3 Transfer Acceleration을 설정하는 방법과 설정된 버킷에 대해 가속 엔드포인트를 사용하는 방법의 예를 설명합니다.
Transfer Acceleration 요구 사항에 대한 자세한 내용은 Amazon S3 Transfer Acceleration을 사용하여 빠르고 안전한 파일 전송 구성 섹션을 참조하세요.
참고
가속화된 업로드 속도와 가속화되지 않은 업로드 속도를 비교하려면 Amazon S3 Transfer Acceleration 속도 비교 도구
이 속도 비교 도구는 멀티파트 업로드를 통해 Amazon S3 Transfer Acceleration을 사용하거나 사용하지 않으면서 브라우저에서 여러 AWS 리전으로 파일을 전송합니다. 직접 업로드의 업로드 속도를 비교하고 리전별로 가속화된 업로드를 전송할 수 있습니다.
S3 버킷의 Transfer Acceleration 사용 설정
AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/
에서 Amazon S3 콘솔을 엽니다. -
버킷 목록에서 전송 속도 향상을 사용 설정하려는 버킷의 이름을 선택합니다.
-
속성을 선택합니다.
-
Transfer Acceleration에서 편집(Edit)을 선택합니다.
-
사용 설정를 선택하고 변경 사항 저장을 선택합니다.
가속화된 데이터 전송에 액세스
-
Amazon S3의 버킷에 Transfer Acceleration을 사용 설정한 후 버킷의 [속성(Properties)] 탭을 확인합니다.
-
Transfer Acceleration에서 가속 엔드포인트(Accelerated endpoint)는 버킷의 Transfer Acceleration 엔드포인트를 표시합니다. 이 엔드포인트를 사용하여 버킷과 주고받을 때 가속화된 데이터 전송에 액세스할 수 있습니다.
Transfer Acceleration을 중지하면 가속 엔드포인트는 더 이상 작동하지 않습니다.
다음은 Transfer Acceleration에 사용되는 AWS CLI 명령의 예입니다. AWS CLI 설정에 대한 지침은 Amazon S3 API 참조의 AWS CLI를 사용하여 Amazon S3에서 개발을 참조하세요.
버킷에서 Transfer Acceleration 사용 설정
AWS CLI put-bucket-accelerate-configuration 명령을 사용하여 버킷에 Transfer Acceleration을 사용하거나 일시 중단합니다.
다음은 버킷에서 Transfer Acceleration을 사용 설정하기 위해 Status=Enabled
를 설정하는 예제입니다. Transfer Acceleration을 일시 중지하려면 Status=Suspended
를 사용합니다.
$
aws s3api put-bucket-accelerate-configuration --bucketbucketname
--accelerate-configuration Status=Enabled
Transfer Acceleration 활성화
s3 및 s3api AWS CLI 명령으로 구성된 모든 Amazon S3 요청을 가속 엔드포인트 s3-accelerate.amazonaws.com
으로 보낼 수 있습니다. 이렇게 하려면 AWS Config 파일의 프로파일에서 구성 값 use_accelerate_endpoint
을(를) true
(으)로 설정합니다. 가속 엔드포인트를 사용하려면 버킷에서 Transfer Acceleration을 사용하도록 설정해야 합니다.
모든 요청은 가상의 버킷 주소 지정 방식(my-bucket.s3-accelerate.amazonaws.com
)을 사용하여 전송됩니다. ListBuckets
, CreateBucket
및 DeleteBucket
요청은 엔드포인트에서 이러한 작업을 지원하지 않으므로 가속 엔드포인트로 전송되지 않습니다.
use_accelerate_endpoint
에 대한 자세한 내용은 AWS CLI 명령 참조의 AWS CLI S3 구성을 참조하세요.
다음 예는 기본 프로파일에서 use_accelerate_endpoint
를 true
로 설정합니다.
$
aws configure set default.s3.use_accelerate_endpoint true
일부 AWS CLI 명령에는 가속 엔드포인트를 사용하고 다른 명령에는 사용하지 않으려면 다음 방법 중 하나를 사용합니다.
-
--endpoint-url
파라미터를https://s3-accelerate.amazonaws.com
으로 설정하여 s3 또는 s3api에 가속 엔드포인트를 사용합니다. -
AWS Config 파일에 별도의 프로필을 설정합니다. 예를 들어,
use_accelerate_endpoint
를true
로 설정하는 프로파일을 하나 작성하고,use_accelerate_endpoint
를 설정하지 않는 프로파일을 하나 작성합니다. 명령을 실행할 때 가속 엔드포인트를 사용할지 여부에 따라 사용하려는 프로파일을 지정합니다.
Transfer Acceleration이 사용 설정된 버킷에 객체 업로드
다음은 가속 엔드포인트를 사용하도록 구성된 기본 프로파일을 사용하여 Transfer Acceleration이 설정된 버킷에 파일을 업로드하는 예제입니다.
$
aws s3 cpfile.txt
s3://bucketname/keyname
--regionregion
다음은 --endpoint-url
파라미터를 사용하여 가속 엔드포인트를 지정함으로써 Transfer Acceleration이 설정된 버킷에 파일을 업로드하는 예제입니다.
$
aws configure set s3.addressing_style virtual$
aws s3 cpfile.txt
s3://bucketname/keyname
--regionregion
--endpoint-url https://s3-accelerate.amazonaws.com
다음은 Transfer Acceleration을 사용하여 AWS SDK를 통해 Amazon S3에 객체를 업로드하는 예제입니다. 일부 AWS SDK 지원 언어(예: Java, .NET)는 가속 엔드포인트 클라이언트 구성 플래그를 사용하므로, Transfer Acceleration의 엔드포인트를 bucketname
.s3-accelerate.amazonaws.com으로 명시적으로 설정할 필요가 없습니다.
REST API PutBucketAccelerateConfiguration
작업을 사용하여 기존 버킷에서 구성을 가속화할 수 있습니다.
자세한 내용은 Amazon Simple Storage Service API 참조의 PutBucketLifecycleConfiguration을 참조하세요.