클라우드

AWS S3

탁재민 2024. 5. 29. 20:44
 아마존 웹 서비스의 대표적인 객체 스토리지 서비스

1. 주요 기능

  • 무제한 스토리지
  • 객체 저장: 파일 및 메타데이터를 객체로 저장하며, 각 객체는 고유한 키를 가짐
  • S3 버킷: 데이터는 버킷이라는 컨테이너에 저장, 하나의 버킷 내에는 무수히 많은 객체를 저장

2. 작동 방식

  • 버킷 생성: 버킷 이름 및 AWS 리전을 지정하여 생성
  • 객체 업로드: 데이터를 객체로 업로드하고 고유한 키 할당
  • 데이터 접근: 버킷 정책, IAM 정책, ACL을 사용하여 접근 관리
    • AWS Management Console: 웹 기반 사용자 인터페이스
    • AWS Command Line Interface: 명령줄 도구
    • AWS SDK: 프로그래밍 언어 및 플랫폼용 라이브러리
    • Amazon S3 REST API: HTTP 인터페이스를 통한 데이터 접근

3. 장점

  • 확장성: 필요에 따라 자동으로 확장되며, 데이터 양에 제한이 없음
  • 내구성: 데이터 손실의 위험이 매우 낮음
  • 가용성: 여러 가용 영역에 데이터를 분산 저장하여 높은 가용성을 보장
  • 보안: 데이터 암호화, 액세스 제어, 버킷 정책, IAM 역할 등 다양한 보안 기능을 제공
  • 비용 효율성: 사용한 만큼만 지불하는 유연한 비용 구조

4. 사용 사례

  • 정적 웹 사이트 호스팅: HTML, CSS, JavaScript 파일을 S3에 저장하고 웹 호스팅
  • 데이터 백업 및 복구
  • 데이터 아카이빙
  • 로그 파일 저장 및 분석
  • 멀티미디어 파일 저장: 이미지, 동영상 등 대용량 멀티미디어 파일을 저장하고 배포

5. 보안

데이터 암호화: 서버 측 암호화(SSE) 및 클라이언트 측 암호화(CSE) 지원

  • SSE-S3: S3가 관리하는 키를 사용하여 데이터 암호화
  • SSE-KMS: AWS KMS(Key Management Service)를 사용한 데이터 암호화
  • SSE-C: 고객이 제공한 키를 사용한 데이터 암호화
  • 액세스 제어: 버킷 정책, IAM 정책, ACL을 통해 세밀한 접근 제어 가능
  • 버전 관리: 객체의 여러 버전을 저장하여 데이터 손실 방지
  • MFA 삭제: 멀티 팩터 인증을 통해 중요한 객체 삭제 시 추가 보안 제공
  • 로그 및 모니터링: S3 액세스 로그를 통해 버킷 및 객체의 접근 기록 모니터링

6. 비용 구조

  • 스토리지 비용: 저장하는 데이터 양에 따라 비용 부과. 스토리지 클래스에 따라 요금이 다름
  • 데이터 전송 비용: S3로부터 데이터를 전송할 때 발생하는 비용
  • 요청 비용: PUT, GET, LIST 등 API 요청에 따라 부과되는 비용
  • 데이터 복제 비용: 다중 가용 영역 간 데이터 복제 시 발생하는 비용
  • 추가 기능 비용: S3 Select, 객체 태그 지정, Inventory 보고서 등 추가 기능 사용 시 발생하는 비용