이두잉의 AWS 세상

AWS S3 Client Tool 및 CLI 정리

2015.11.23 14:01 - leedoing leedoing

안녕하세요. 이두잉입니다.

금일은 S3 CLI에 관해 정리하도록 하겠습니다.


1. Client에서 S3 사용 정리

Client에서 S3를 이용하는 방법은 두 가지가 있습니다. AWS CLI 혹은 3rd party solution, 기본적으로 AWS API를 기반으로 HTTP/S 통신을 합니다.


3rd party solution은 다음과 같은 상황의 경우 사용합니다.

FileZilla와 같은 Client Tool을 사용하길 원하시면, CloudBerry 사의 Explorer를 사용하시면 됩니다. (Freeware)

파일 서버와 같이 S3를 사용하길 원하시면, CloudBerry 사의 Drive 혹은 TntDrive를 사용하시면 됩니다. (Free trial 30/21 day이며 1copy에 Drive $29.99 / TntDrive $59.95)


가성비로 CloudBerry가 제일 낫습니다.


2. CLI 정리

돈이 없으면 S3 SDK 혹은 CLI를 사용합시다.



2-1. 사용법은 다음과 같습니다.

A. https://aws.amazon.com/ko/cli/ 접속해서 Client 환경에 맞는 CLI를 설치합니다.

B. 설치 후에 console에 aws configure 명령어를 통해 Access 및 Secret Key를 등록합니다.

C. C:\test> aws s3 cp s3://'원하는버킷'/ ./ --recursive  (현재 test 디렉터리에 타겟 S3 버킷의 오브젝트가 복사됩니다.) (참고: http://docs.aws.amazon.com/cli/latest/reference/s3/index.html)


2-2. CLI 명령어 정리입니다.


버킷 생성 : aws s3 mb s3://'BucketName'

버킷 삭제 : aws s3 rb s3://'BucketName' 

버킷 강제 삭제 : aws s3 rb s3://'BucketName' --force


로컬 to S3 파일 복사  : aws s3 cp /test.txt s3://'BucketName'/ (S3 Path에 /가 없으면 파일로 간주하여 그 이름으로 복사됩니다.)

로컬 to S3 디렉터리 prefix 포함 복사(특정 디렉터리 제외) : aws s3 sync ./data/ s3://leedoing/data/ --exclude 'a/*' --exclude 'b/*' --exclude 'c/*'

S3 to 로컬 파일 복사  : aws s3 cp s3://'BucketName'/'FileName' ./ (절대 경로 지정)

S3 to 로컬 파일 복사2 : aws s3 cp s3://'BucketName'/ ./ --recursive (Bucket에 있는 모든 파일이 복사됩니다.)

S3 to S3 복사의 경우 위 예시와 동일하며 Path만 S3 Path로 지정하면 됩니다.



디렉터리의 경우 sync, 파일 이동의 경우 mv 명령어를 사용합니다.

옵션은 --force 강제 /  --exclude 제외 / --include 포함이 있습니다.

예를 들어 aws s3 cp s3://'BucketName'/ ./ --recursive --exclude "*.log" --include "*" 의 경우 log 파일만 빼고 모든 파일이 로컬에 복사됩니다.


이상 간단하게 주로 사용되는 명령어 및 옵션에 대한 정리를 해봤습니다.

더 자세한 내용은 http://docs.aws.amazon.com/cli/latest/reference/을 참고하세요.


또한 CLI는 옵션뿐만 아니라 Configuration도 설정할 수 있습니다. 파일 성향에 따라 다르겠지만 기본적으로 request와 queue 사이즈 증가만으로 CLI 성능을 증가 시킬 수 있습니다.

http://docs.aws.amazon.com/cli/latest/topic/s3-config.html 


감사합니다. 

'Storage&CDN > S3' 카테고리의 다른 글

AWS S3FS vs EBS Performance  (2) 2016.01.27
AWS S3 Region 간 데이터 복제  (0) 2016.01.12
AWS S3 Upload Tool 3rd party solution(CloudBerryExplorer)  (0) 2015.12.08
AWS S3FS 파일 시스템  (0) 2015.12.08
AWS S3 I/O 성능  (0) 2015.11.23
AWS S3 Client Tool 및 CLI 정리  (0) 2015.11.23