티스토리 뷰

aws configure 는 한번 등록했으면 클라이언트 PC를 재부팅 해도 연결이 지속됩니다.

configure 라는 이름에 맞게 일종의 설정 파일을 만들어두고 자동 로그인 하는 느낌입니다.

 

※ 실제로 aws configure 정보가 등록되면 Linux 또는macOS 의 경우에는 ~/.aws/ 에

Windows 의 경우에는 c:\users\[username]\.aws\ 에 crendentials 파일이 생성되고 정보가 저장된다.

 

aws configure 는 액세스키, 비밀 액세스키를 활용해서 기존에 생성한 키페어와는 상관없이 접속이 됩니다.

 

웹콘솔 이용시에는 키페어가 필수였는데

cli 모드에서는 액세스키, 비밀 액세스키 값이 필수인 셈입니다.

 

IAM 계정은 물론 aws 관리자(root) 계정도 엑세스 키 생성이 가능한데

일반적으로 aws root 계정에서 엑세스 키 페어로 작업할 일은 거의 없으므로 권장하지 않습니다.

root 와 동등한 권한일지라도 일반 IAM 계정을 만들어서 작업하는게 좋습니다.

 

계정 권한 관리 못지 않게 액세스 키 관리에 주의를 기울여야 합니다.

액세스키 역시 키페어 파일과 마찬가지로 생성되는 시점에서만 비밀키 값을 확인할 수 있고 이후에는 확인불가합니다.

만일 자신의 엑세스 키와 시크릿 키를 분실했다면 콘솔의 IAM 메뉴에서 재발급 가능합니다.

 

다시 실습 수업으로 돌아와

지난 시간에 만들어둔 s3 bucket 을 확인하니 탐색이 잘 되는 것을 확인할 수 있습니다.

 

aws 명령어는 기존의 리눅스 커맨드와 매우 유사한 구조를 가지고 있습니다.

일단 옵션과 서브 커맨드 없이 aws 만 실행시켜 보니 간단한 사용법이 나오네요.

aws help 를 지원해주고, 각종 커맨드 help와 서브커맨드 help 도 지원해주는 것 같습니다.

 

 

aws help 를 입력해보니 글로벌 설정에서 적용가능한 옵션들과

 

aws cli 를 통해 사용가능한 서비스들을 나열해주고 있습니다.

 

사실상 웹 콘솔을 대체하는 커맨드 콘솔이기 때문에

웹 콘솔로 여기저기 링크타고 들어가는 모든 메뉴가 

명령어 커맨드로 구현되어 있겠구나 생각하면 되겠습니다.

 

aws s3 help 를 입력하면 s3 서비스에 대한 help 페이지가 나타납니다.

aws help 와 마찬가지로 서비스 개요부터 설명해줍니다.

 

그리고 말미에는 s3 서비스에서 사용 가능한 커맨드도 알려주네요

 

 

해당 매뉴얼은 AWS 공식 레퍼런스로 웹에 게시되어 있습니다.

https://awscli.amazonaws.com/v2/documentation/api/latest/reference/s3/index.html

 

s3 — AWS CLI 2.13.22 Command Reference

This section explains prominent concepts and notations in the set of high-level S3 commands provided. If you are looking for the low level S3 commands for the CLI, please see the s3api command reference page. Order of Path Arguments Every command takes one

awscli.amazonaws.com

 

웹상에 매뉴얼이 등재되어 있더라도

작업 중 바로바로 help 를 사용할 수 있다는건 굉장히 요긴합니다.

 

이제부터 부가적인 사용법은 직접 help 또는 매뉴얼 페이지를 참조하며 익히시길 바랍니다.

 

버킷명 또는 주소를 직접 입력해서 버킷에 담긴 객체를 확인할 수 있습니다.

 

aws s3 cp 를 이용해서 버킷에 들어있는 hello.txt 파일을 hello2.txt 파일로 복사했더니

제 로컬 디렉토리로 다운로드가 되어버렸습니다.

 

 

 

s3:// 로 시작되는 full path 를 명시해주니 버킷내에서 카피가 잘 이루어지네요

 

내친김에 로컬 폴더를 업로드하는 것까지 해보겠습니다.

현재 위치에 test.txt 가 담긴 test 폴더를 만들었습니다.

 

--recursive 옵션을 활용해서 폴더를 통째로 카피하려고 했는데

실제로는 새 폴더 생성은 이루어지지 않고, 하위 파일만 카피된 모습입니다.

 

웹 콘솔에서 새 폴더를 수동으로 만들지 않으면 안되는 것일까요?

 

aws s3api 기능을 통해서 test_folder 를 만들 수 있습니다.

 

새 폴더가 생성된 것이 잘 보입니다.

 

aws s3 cp 를 통해서 test.txt 파일을 cp 하고 확인까지 해봅니다.

 

새로 카피된 파일의 url 을 통해 접근해보면 역시나 퍼블릭 엑세스는 거부되어 있습니다.

 

기존에 퍼블릭 권한이 부여된 hello.txt 를 가지고 다시 테스트 해보겠습니다.

 

cmd 에서 full path 적는 것도 번거로우니 그냥 콘솔메뉴를 통해 작업해 봅시다.

 

 

웹콘솔이 불편한건 아닌데 그렇다고 cli 가 편하지도 않습니다.

cli 에서 tab 자동완성만 지원해주면 매우 편할 것 같은데...

 

여튼 test_folder 내에 기존에 퍼블릭 공개 설정이 되어 있는 hello.txt 의 사본을 생성했습니다.

 

사본은 원본의 acl 공개권한도 그대로 유지가 됩니다.

 

지금까지 cli 를 활용한 간단한 s3 사용법을 다뤄봤는데

이게 자동완성이 되고 안되고 차이가 너무 크다는 걸 느끼는 중입니다.

 

다음 시간에는 윈도우 환경에서 cli 자동완성을 적용하는 방법을 다루도록 하겠습니다.

728x90
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함