공부 내용 정리

AWS S3 & CloudFront 란?

blockchoin 2025. 8. 27. 17:33

1. AWS란?

AWS(Amazon Web Services)는 아마존에서 제공하는 클라우드 서비스 플랫폼입니다.
쉽게 말해, 인터넷 상에서 서버, 저장소, 데이터베이스, 네트워크 등을 빌려 쓸 수 있는 서비스예요.
직접 서버를 사서 관리할 필요 없이, 필요한 만큼만 쓰고 돈을 내면 됩니다.

이번 글에서는 파일 저장(S3)웹 배포(CloudFront) 를 중심으로 설명합니다.


2. S3 버킷(S3 Bucket)이란?

S3(Simple Storage Service)는 AWS에서 제공하는 파일 저장소예요.
사진, 동영상, 문서, 웹사이트 리소스 등 모든 데이터를 저장할 수 있습니다.

2.1 S3 버킷 개념

  • 버킷(Bucket) = 파일을 담는 "폴더"라고 생각하면 됩니다.
  • 각 버킷에 이미지, 동영상, PDF, HTML 파일 등 다양한 콘텐츠를 업로드할 수 있어요.
  • 저장한 파일을 URL로 불러올 수도 있어 웹사이트 호스팅에도 자주 사용됩니다.

2.2 S3 활용 사례

  • 웹사이트 이미지·동영상 저장
  • React, Vue, Next.js 같은 프론트엔드 앱 배포
  • 백업 데이터 저장소
  • 로그 데이터 관리

2.3 S3 기본 사용법

① S3 버킷 생성

  1. AWS 콘솔 접속 → S3 검색 → 버킷 만들기
  2. 버킷 이름 입력 (고유해야 함, 예: my-website-bucket)
  3. 리전(region) 선택 (한국이면 ap-northeast-2)
  4. 퍼블릭 접근 설정 → 비공개 추천 (CloudFront로 노출 예정)

② 파일 업로드

  • 업로드 버튼 클릭 → HTML, CSS, JS, 이미지 파일 등 올리기

③ 퍼블릭 액세스 설정 (선택)

  • 정적 웹사이트 호스팅을 원하면 퍼블릭 액세스 허용
  • 하지만 보안상 CloudFront를 이용하는 것을 더 추천

3. CloudFront란?

CloudFront는 콘텐츠 전송 네트워크(CDN) 서비스입니다.
S3에 올린 파일을 전 세계 사용자에게 빠르게 전달해 주는 역할을 해요.


3.1 CloudFront 필요성

예를 들어:

  • 한국에 있는 S3 버킷에 이미지를 올림
  • 미국 사용자가 사이트 접속 → 한국 S3에서 직접 다운로드 → 느림
  • CloudFront를 쓰면 미국에서도 빠르게 로드됨
    → 전 세계 AWS 엣지 서버를 통해 캐시된 파일을 전달하기 때문이에요.

3.2 CloudFront 활용 사례

  • 정적 웹사이트 배포 (React, Next.js, Vue 등)
  • 동영상 스트리밍
  • 이미지 최적화 및 캐싱
  • 전 세계 사용자에게 빠른 웹사이트 제공

4. 정리

  • S3 = 저장소
  • CloudFront = 빠른 배포
  • S3 단독으로도 웹사이트 배포 가능하지만,
    CloudFront를 함께 쓰면 속도, 보안, 전세계 접근성 모두 향상됩니다.