AWS #4

MIMO·2023년 7월 5일
0

AWS

목록 보기
4/12
post-thumbnail

S3 (Simple Storage Service)

AWS에서 가정 처음으로 지원한 서비스이다. S3는 안전하고 가변적인 Object 저장공간을 제공하며 편리한 UI 인터페이스를 통해 어디서나 쉽게 데이터를 저장하고 불러올 수 있다. 파일 크기는 0KB부터 5TB까지 지원하며 Bucket이라는 이름을 사용하여 해당 공간에 파일들을 저장한다.

S3 Object 구성요소

  • Key
  • Value
  • Version ID
  • Metadata
  • CORS (Corss Origin Resource Sharing)

S3 Data Consistency Model

  • Read after Write Consistency (PUT)
    단순히 S3 bucket에 파일을 올리는 것을 의미한다. 또한, S3에 데이터를 올리면 올린 즉시 해당 데이터를 확인할 수 있음을 의미한다.
  • Eventual Consistency (UPDATE, DELETE)
    PUT과 다르게, 데이터를 수정하거나 삭제하면 해당 내용을 즉시 확인할 수 없음을 의미한다.

S3 스토리지

일반 S3

가장 일반적으로 사용되는 스토리지 타입이다. 높은 내구성과 가용성을 가지고 있기 때문에 많은 사람들이 사용하는 스토리지이다.

S3-Infrequent Access

자주 접근되지는 않으나 접근시 빠른 접근이 요구되는 파일이 많을시 유용하다. 일반 S3에 비해 비용은 저렴하나 접근시 추가 비용이 발생한다. 멀티 AZ를 통한 데이터 저장이 가능하다.

S3-One Zone IA

단일 AZ를 통한 데이터를 저장한다. 단일 AZ에 의해 데이터 접근을 제한하기 때문에 가용성이 조금 낮다. 데이터 접근시 S3-IA보다 20%정도 저렴하다.

GLACIER (빙하)

거의 접근하지 않을 데이터 저장시 유용하다. 매우 저렴하며 데이터 접근할 시에 대략 4~5시간이 소요된다.

Intelligent Tiering

2018년도에 처음 런칭한 스토리지, 데이터 접근 주기가 불규칙할 때 매우 유용하다. 2가지 티어(Frequent Tier, Infrequent Tier)가 존재하며 데이터 접근 주기에 따라 두가지 티어 중 하나로 선택한다. Frequent Tier가 비용이 약간 더 비싸며 최고의 비용 절감 효율을 누릴 수 있다.

S3요금

일반적으로 GB당 요금을 지불한다. 또한, PUT, GET, COPY 요청 횟수당 비용을 지불한다.

S3 버킷 생성시 주의사항

S3 사용 용례

  1. 파일 저장소 (로그, 이미지, 비디오, 압축파일..)
  2. 웹사이트 호스팅(html, css, js를 올린 후 도메인 등록)

최초 S3 버켓 생성시

생성한 사람한테만 접근 권한이 부여된다. 이를 위해 다른 사람이 접근하기 위해 2가지 방법을 사용할 수 있다.
1. 버켓 정책 변경 (Bucket Policy)
2. 접근 제어 리스트 변경 (Access Control List)

S3 암호화

  1. 파일 업로드/다운로드시 : SSL/TLS
  2. 가만히 있을시 : SEE-S3, SSE-KMS, SSE-C

S3 암호화 과정

S3에 파일을 넣을 경우 아래 사진과 같이 PUT 요청이 생성된다.

위 헤더에서 지켜봐야 할 항목은 x-amz-server-side-encryption-parameter이다. 해당 항목을 통해 파일의 암호화를 요청하게 되며 어떤 방식을 사용하여 암호화 할지도 파라미터에 넣어서 지정하게 된다. 이 값은 default값으로 들어 있으며, 파일을 암호화하지 않고 싶다면 버킷정책에서 설정을 해야한다.

profile
행복한 사람

0개의 댓글