CICD/AWS
[AWS] Amazon S3 기초
[dev] hiro
2024. 7. 25. 20:43
해당 포스팅은 AWS 강의실(https://www.youtube.com/@AWSClassroom)를 보고 공부한 내용을 정리한 블로그입니다.
아직 많이 부족하고 배울게 너무나도 많습니다. 틀린내용이 있으면 언제나 가감없이 말씀해주시면 감사하겠습니다😁
네 자신의 불행을 생각하지 않게 되는 가장 좋은 방법은 일에 몰두하는 것이다.
Ludwig van Beethoven
S3
Amazon Simple Storage Service(Amazon S3)는 업계 최고의 확장성과 데이터 가용성 및 보안과 성능을 제공하는 객체 스토리지 서비스입니다. 99.99%의 내구성을 제공하도록 설계되었으며, 전 세계 기업의 수백만 애플리케이션을 위한 데이터를 저장합니다.
-AWS-
Amazon S3
- 객체 스토리지 서비스: 파일 보관만 가능 ↔ Block Storage Service(EBS, EFS 등)
- 어플리케이션 설치 불가능
- 글로벌 서비스. 단, 데이터는 리전에 저장
- 무제한 용량
- 하나의 객체는 0byte에서 5TB의 용량
버킷
- S3의 저장공간을 구분하는 단위
- 디렉토리/폴더와 같은 개념
- 버킷이름은 전 세계에서 고유 값: 리전에 관계없이 중복된 이름이 존재할 수 없음.
S3객체의 구성
- Owner: 소유자
- Key: 파일의 이름
- Value: 파일의 데이터
- 0byte의 데이터 → value가 없을 수도 있음
- Version Id: 파일의 버전 아이디
- Metadata: 파일의 정보를 담은 데이터
- ACL: 파일의 권한을 담은 데이터
- Torrents: 토렌트 공유를 위한 데이터
내구성
- 최소 3개 이상 가용영역(AZ)에 데이터를 분산 저장(Standard의 경우)
- 99.999999999% 내구성(eleven nine)
- 0.000000001% 확률로 파일을 잃어버릴 수 있음
- 99.9% SLA 가용성(스토리지 클래스에 따라 다름)
보안 설정
- S3모든 버킷은 새로 생성시 기본적으로 Private(비공개)
- 따로 설정을 통해 불특정 다수에게 공개 가능(ie 웹 호스팅)
- 보안 설정은 객체 단위와 버킷 단위로 구성
- Bucket Policy: 버킷단위
- ACL(Access Control List): 객체 단위
- MFA를 활용해 객체 삭제 방지 가능
- Versioning을 통해 파일 관리 가능
- 액세스 로그 생성 및 전송 가능
- 다른 버킷 혹은 다른 계정으로 전송 가능
실습
1. S3 검색 후 대시보드 들어가서 버킷 생성
1. 나머지 옵션은 그대로
2. 업로드 하는 메타 데이터(아무거나 하셔도 됩니다)
3. IAM 역할 선택
4. S3 권한 추가
1. S3 검색 후 FullAccess 선택
2. EC2에서 S3로 접근할 수 있도록 권한을 만들어줘야함.
EC2 생성