AWS

[AWS] S3

gilssang97 2021. 12. 24. 11:22

S3(Simple Storage Service)

S3 특징

  • 안전하고 가변적인 Object 저장공간을 제공 (ex Google Cloud)
  • 편리한 UI 인터페이스를 통해 어디서나 쉽게 데이터를 저장하고 불러올 수 있음
  • 파일 크기는 0KB부터 5TB까지 지원
  • 저장공간 무제한
  • Bucket이라는 이름을 사용함 (디렉토리와 유사함)
  • Bucket은 보편적인 namespace를 사용함

S3 Object 구성요소

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

S3 Data Consistency Model

  • Read After Write Consistency (PUT)
    • 삽입 후 즉시 사용 가능
  • Eventual Consistency (UPDATE, DELETE)
    • 수정, 삭제 후 결과가 즉시 나타나지 않음

다양한 S3 스토리지 타입

  1. 일반 S3

    • 가장 보편적으로 사용되는 스토리지 타입
    • 높은 내구성, 가용성 (Durability, Availabilty)
  2. S3 - IA (Infrequent Access)

    • 자주 접근되지는 않으나 접근시 빠른 접근이 요구되는 파일이 많을시 유용
    • 일반 S3에 비해 비용은 저렴하나 접근시 추가 비용 발생
      • 자주 접근되는 곳에 부적합
    • 멀티 AZ를 통한 데이터 저장
  3. S3 - One Zone IA

    • 단일 AZ를 통한 데이터 저장
    • 단일 AZ에 의한 데이터 접근 제한 (조금 낮은 가용성)
    • 데이터 접근시 S3 - IA보다 20% 비용 저렴
  4. Glacier

    • 거의 접근하지 않을 데이터 저장 시 유용
    • 매우 저렴한 비용
    • 데이터 접근시 대략 4-5시간 소요
  5. Intelligent Tiering

    • 데이터 접근 주기가 불규칙할때 매우 유용
    • 2가지 티어 존재
      • Frequent Tier
      • Infrequent Tier
    • 데이터 접근주기에 따라 두가지 티어중 하나로 선택됨
    • Frequent Tier가 비용이 약간 더 비쌈
    • 최고의 비용 절감 효율을 누릴 수 있음

S3 요금

  • GB당
  • PUT, GET, COPY 요청 횟수당
  • 데이터 다운로드시 / 다른 리소스로 전송시
  • Metadata (object tag)

S3 버켓 생성시 알아야 할 것들

  • 파일 저장소 (로그, 다양한 파일들(이미지, 비디오, 압축파일 등))

  • 웹사이트 호스팅

  • CORS

  • 최초 S3 버켓 생성시 -> 비공개(Private)

    • 다른 사람 접근시 Access Denied
    • 필요하다면?
      • 버켓 정책 변경 (Bucket Policy)
      • 접근 제어 리스트 변경 (Access Control List)

S3 암호화

파일 업로드 / 다운로드시

  • SSL / TLS

가만히 있을시

  • SEE-S3
  • SSE-KMS
  • SSE-C