AWS🚡

Amazon S3 (Simple Storage Service)

MAYMIN 2024. 4. 14. 16:42
728x90
SMALL

 

🥐 Amazon Simple Storage Service (S3)

S3는 AWS에서 제공하는 객체 스토리지 서비스이다.

 

스토리지?

데이터를 저장하는 장소이며, 객체란 텍스트 파일이나 음성 파일 같은 데이터를 말한다.

 

 

🥐 객체스토리지

기존의 파일 스토리지처럼 폴더 구조는 갖지 않고 객체 키로 데이터를 고유하게 식별해 데이터의 입출력과 관리를 수행한다.

키 만으로 데이터를 관리하기 때문에 간편하게 대용량의 데이터를 저장하고 관리 가능하다.

 

 

🥐S3 특징

  • 용량 무제한
    객체당 5TB라는 제약 있으나, 객체 수나 데이터 용량에는 제한 없다.
  • 높은 내구성
    일반적으로 데이터가 3개 이상의 AZ(가용영역)으로 복사된다.
  • 저렴한 비용
    사용한 만큼만 비용 발생

 

 

🥐S3 요금

데이터 저장 용량, 데이터 액세스 횟수, 데이터 전송량에 따라 요금 발생

 

 

 

🥐S3 용어

  • 버킷
    객체(데이터)를 저장하는 장소이다. (사용자는 버킷에 객체를 저장)
    버킷의 이름은 전 세계 (모든 리전)에서 고유해야한다.
  • 객체
    버킷에 저장된 데이터 본체다. (한 객체당 최대 크기 5TB)

  • 객체의 저장 URL 경로다. (버킷 이름, 키 이름, 객체 이름 을 조합해 고유하게 설정 됨)

 

🥐S3  조작 방식

S3는 데이터를 CRUD하는 API를 제공한다.

 

 

🥐S3 수명 주기 설정

수명 주기 설정 기능을 통해 자동으로 스토리지 클래스 변경이 가능하다.

ex. 생성한지 1년이 경과한 객체는 S3 Glacier Flexible객체로 마이그레이션 설정을 하거나 객체 삭제도 가능하다!

but.. 저비용-> 고비용 마이그는 불가능하다.

 

 

🥐S3 버전 관리

S3상의 데이터는 3곳 이상으로 복사되므로 AWS로 인해 데이터 손실되는 경우가 거의 없다.

사용자의 휴먼 에러로 데이터 조작이 되었을 경우, S3의 버전관리 기능으로 데이터 복구가 가능하다.

버전 관리 설정은 S3버킷 단위로 가능하며, 객체단위 설정은 불가능하다.

 

 

🥐S3 버킷 접근 제어

  • 사용자 정책 (IAM정책)
    데이터를 조작하는 쪽을 제어하는 설정.
    (ex.A는 S3 버킷 데이터 검색 가능, 업로드 불가 처럼 권한 설정 가능)

  • 접근 제어 목록 (ACL)
    객체(데이터) 또는 버킷 단위로 설정
    (ex.데이터 A는 AWS계정 X에 접근허용. 처럼 데이터별로 상세한 설정 가능)

  • 버킷 설정
    버킷 단위로 설정
    (ex.파일 이름이 logs로 시작하는 데이터에 접근허용, IP주소 xx.xx.xx.xx로 부터 접근허가 처럼 설정 가능 , 설정은 JSON형식)

 

🥐S3 웹사이트

S3의 웹사이트 호스팅 기능이 있는데, 이를 활성화하면 'http://버킷이름.s3-website-리전이름.amazon.com'이라는 URL이 만들어진다.

S3는 암호화된 통신인 HTTPS를 지원하지 않으므로, 민감한 정보가 포함된 사이트 운영시

콘텐트 전송 네트워크 (CDN) 서비스인 Amazno CloudFront를 함께 사용해 HTTPS 통신을 할 수 있게 구성 가능하다.

 

 

🥐데이터 암호화

버킷의 기본 암호화 기능

-> 객체를 저장할 때 AWS에서 자동으로 암호화를 수행

 

[암호화용 키 종류]

  • AWS에서 제공하는 키 관리 기능인 AWS Key Management Service (KMS)에서 생성한 키
    ㄴ AWS 시스템 내에서 자동으로 암호화 처리를 수행하므로 사용자는 객체를 저장만 하면 된다.
  • 사용자가 관리하는 키

 

 

 

 

 

728x90
LIST