AWS S3를 만들어보자!
1. S3란?
Amazon Simple Storage Service(Amazon S3)는 업계 최고의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스입니다. 모든 규모와 업종의 고객은 Amazon S3를 사용하여 데이터 레이크, 웹 사이트, 모바일 애플리케이션, 백업 및 복원, 아카이브, 엔터프라이즈 애플리케이션, IoT 디바이스, 빅 데이터 분석 등 다양한 사용 사례에서 원하는 양의 데이터를 저장하고 보호할 수 있습니다. Amazon S3는 특정 비즈니스, 조직 및 규정 준수 요구 사항에 맞게 데이터에 대한 액세스를 최적화, 구조화 및 구성할 수 있는 관리 기능을 제공합니다.
즉, 간단한 저장 서비스라고 생각하면 된다.
*AWS 공식홈페이지 - S3 설명
https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/Welcome.html
2. S3를 만들어보자!
🧺1. S3 메뉴 접속하기
; aws.amazon.com에 접속해서 로그인을 한뒤 상단검색창에 S3를 검색한다!
🧺2. 버킷 메뉴 접속 및 버킷 만들기!
; 왼쪽 메뉴 중 [버킷]을 선택하고 >> 주황색 [버킷 만들기]버튼을 눌러 시작한다.
** 버킷이란? 드라이브 ex) C드라이브, D드라이브
- 버킷은 폴더개념이 아니므로 버킷안에 버킷을 생성할 수 없다.
- 진짜 단순하게 객체 파일만 담는 용도
** 객체란? 파일과 같은 것 ex) txt파일, jpg 파일
🧺3. S3 버킷만들기
1) 버킷 이름: 모든 사용자, 모든 리전 중 이름이 '유일'해야합니다.
(* 유일해야하기 때문에 여러가지 조합을 하려하겠지만.... 몇 자 이상, 특수문자는 안되고... 이런 규칙들이 있다.)
자세한 사항은 아래 사이트 클릭👇
https://docs.aws.amazon.com/ko_kr/AmazonS3/latest/userguide/bucketnamingrules.html
2) 버킷 리전: 원하는 리전 선택
3) 객체 소유권: 다른 AWS 계정에서도 소유권을 갖거나 접속제어 가능유무를 선택하는 거다.
[ACL 비활성화를 선택]해서 내가 접속한 계정에서만 소유하도록 합니다.
🧺4. S3 버킷 액세스 차단 설정
; 나의 경우에서는 위에서처럼 이 버킷을 나 혼자 사용자로 지정했지만 !!!
나의 퍼블릭ip에서도 접속하는 걸 원하기에 [모든 퍼블릭 액세스 차단]을 해제해주고, 아래 '⚠ 퍼블릭 상태가 될 수 있음을 알고 있습니다'을 선택해주었다.
⏬
🧺5. S3 정책 설정하기
5-1. IAM 서비스 메뉴에 접속한다 (검색창에 IAM 검색)
5-2. 왼쪽 메뉴에서 [정책]을 선택 >>> s3 검색해서 AmazonS3FullAccess를 선택 >> 작업 중 attach를 선택하기
5-2. 정책을 연결해줄 사용자 or 그룹을 선택 >>> [정책연결]을 클릭
; 나의 경우는 DevOps 그룹에 연결된 사용자계정으로 S3를 사용할거라서 그룹에 연결해줬다.
🧺6. 만들어놓은 버킷에 [권한]설정해주기
; 다시 [S3 ]메뉴에서 [버킷]메뉴에 들어가, 권한 설정해줄 S3버킷을 누른다.
; 선택한 S3버킷에서 [권한] 카테고리에 들어가 버킷 정책을 [편집] 한다.
🧺7. 버킷 정책 편집하기
; 버킷 정책 편집 후 >>> [변경사항 저장] 클릭
1) Sid: 유니크 ID
2) Pricipal: 보안의 주체. 특정 사용자에 대한 권한을 제어하고 싶다고 입력
- 나의 경우 전체에 대해 설정해주었다.
3) Effect: 버킷에 대한 명령제어를 Allow / Deny 둘 중에 선택
4) Action: 동작할 것을 '서비스: 작업' 형식으로 작성
- 나의 경우 S3에서 파일객체Object를 Get할거니까 's3:GetObject'라고 작성함
5) Resource: 해당 statement에 대해 접근 권한을 주고자하는 버킷을 입력. 버킷 ARN을 사용해서 지정해준다.
- 정책 칸 바로 위에 써져있는 버킷 ARN 복사버튼을 눌러 복붙하면 편리함
⏬
완료가 되면 위에 편집했다고 초록줄이 뜬다.
🧺8. 잘 만들어 졌는지 확인하기
8-1. 직접 업로드해보기
; [업로드]버튼을 눌러보고 사진 업로드 해보기
⏬
직접 업로드가 잘 되었음을 확인
8-2. 파이썬으로 파일 업로드해보기
; s3.upload_file( ) 함수를 사용하여 같은 디렉토리에 있는 '1.jpg' 파일 업로드하기
https://github.com/LIMSONA/KDT/blob/main/3wk/firstWeb/aws_bucket_test.py
⏬
* 앞으로 연결해놓은 AWS S3로 이미지 파일을 올릴 수 있게 되었다! 🙃
* 잘 이용해봐야지! 끄-읏!
'😆 Big Data > - AWS' 카테고리의 다른 글
[AWS] AWS CLI(명령줄 인터페이스) 설치 + AWS 기본값 설정하기 (잘못 쳤을때, Access key 잊어버렸을때) (0) | 2022.01.21 |
---|---|
[AWS] IAM사용자의 엑세스키 ID와 비밀 엑세스키를 잊어버렸을 때 (access key ID, secret access key) (0) | 2022.01.21 |
[AWS] IAM(Identity and Access Management) 사용자를 만들어 보자! (0) | 2022.01.21 |
[AWS] EC2 리눅스 & conda & python3.9 설치하기 (0) | 2022.01.17 |
[AWS] EC2 - Amazone Linux AMI 생성하기 (0) | 2022.01.17 |