8,9강 강의 및 실습 복습 S3와 CloudFront

2025. 4. 9. 11:04·AWS_Cloud

🚀 AWS 핵심 서비스 완벽 정리: S3와 CloudFront

AWS의 가장 대표적인 서비스 중 두 가지인 S3와 CloudFront에 대해 개념과 실습 내용을 정리해 보았습니다. 초보자도 쉽게 이해할 수 있도록 구성했습니다.


🪣 S3 (Simple Storage Service)

📌 S3 기본 개념

  • S3는 AWS가 제공하는 객체(Object) 스토리지 서비스입니다.
  • 객체 단위로 데이터를 관리하며, 객체는 고유한 ID(키), 데이터, 메타데이터로 구성됩니다.
  • HTTP(S)를 통해 접근하며, 파일의 일부분만 수정할 수 없고 전체 파일을 덮어써야 합니다.

✅ S3 객체 특징 요약

  • 객체는 독립적으로 존재하며 확장성이 뛰어남
  • 수정 빈도 낮은 데이터 저장에 적합 (이미지, 동영상, 백업, 로그 등)
  • 높은 내구성 (여러 가용 영역에 데이터 복제)

✅ 스토리지 유형 비교

유형설명용도 예시
객체 스토리지 (S3) 파일의 일부 수정 불가능, 전체 덮어쓰기 이미지, 동영상, 백업 데이터
파일 스토리지 (EFS) 파일의 일부 수정 가능, 폴더 계층 구조 사용 홈 디렉터리, 공유 데이터
블록 스토리지 (EBS) 블록 단위 관리, 빠른 입출력 속도 데이터베이스(DB), 운영 체제 디스크

💻 S3 실습 과정

✅ 버킷(Bucket) 생성 및 객체 업로드

  • S3에서는 버킷이라는 저장소를 먼저 만들고, 그 안에 객체를 업로드하여 사용합니다.
  • 버킷 이름은 전 세계적으로 유일해야 하며 URL에 포함됩니다.

✅ 정적 웹사이트 호스팅

  • HTML 파일을 업로드하고 정적 웹사이트 호스팅을 설정하여 웹페이지로 배포할 수 있습니다.
  • 퍼블릭 액세스 및 버킷 정책을 설정하여 외부 접근을 허용합니다.

✅ 사이버덕(Cyberduck)을 통한 접근

  • 외부 프로그램으로도 S3 버킷 접근 가능
  • 키 발급 및 IAM 권한을 이용해 관리

💡 S3 비용 최적화 팁

S3는 데이터 다운로드 횟수와 용량이 많아지면 비용이 증가할 수 있습니다. 다음의 스토리지 클래스를 통해 비용을 효율적으로 관리할 수 있습니다.

✅ 스토리지 클래스 요약

클래스비용 특성사용 용도
Standard 보관비용↑, 접근비용↓ 자주 접근하는 데이터
Standard IA 보관비용↓, 접근비용↑ 자주 접근하지 않는 데이터
Glacier 보관비용 매우 낮음, 접근 속도 느림 장기 보관 데이터

✅ 자동화된 라이프사이클 관리

  • 객체의 수명 주기(Lifecycle)를 설정하여 자동으로 비용 절감 가능
  • Intelligent-Tiering을 통해 접근 빈도를 자동 모니터링하여 최적의 클래스로 이동 가능

✅ S3 호환 대체 서비스 추천

  • 비용을 절약하기 위해 Cloudflare R2 같은 S3 호환 서비스를 고려할 수 있습니다.
  • R2는 데이터 전송(다운로드) 비용이 없습니다.
  • MinIO는 온프레미스 환경에서 구축 가능한 S3 호환 스토리지입니다.

🌎 CloudFront (CDN 서비스)

📌 CloudFront 기본 개념

  • CloudFront는 AWS의 CDN (Content Delivery Network) 서비스입니다.
  • 전 세계의 엣지 로케이션에서 데이터를 캐싱하여 빠른 콘텐츠 전달을 지원합니다.
  • 웹 콘텐츠(이미지, 동영상, HTML, 자바스크립트 등)의 성능 향상과 DDoS 보호 기능 제공

✅ 기본 용어

  • 디스트리뷰션(배포): CloudFront의 기본 단위
  • 오리진(Origin): 원본 콘텐츠 저장 위치 (S3, EC2, ELB 등)

✅ 캐시 히트(Cache Hit)와 미스(Cache Miss)

상태설명
Hit 엣지 로케이션에 캐싱된 데이터를 제공
Miss 엣지 로케이션에 데이터가 없어 원본에서 가져와 캐싱

💻 CloudFront 실습 과정

✅ S3와 CloudFront 연동

  • S3 버킷을 오리진으로 설정하여 CloudFront 배포 생성
  • OAC(Origin Access Control)를 설정하여 보안 강화 (외부 접근 금지, CloudFront 통해서만 접근 가능)

✅ 배포 설정 과정

  • 배포는 생성에 약 5~10분 소요
  • 루트 객체 지정 (index.html 등)을 통해 기본 페이지 설정 가능
  • 배포 후 제공되는 도메인으로 접근 가능

✅ 캐시 무효화(Invalidation)

  • 캐시된 데이터가 오래되었을 때 사용하는 기능
  • 새로 업데이트된 데이터를 반영하려면 무효화가 필요
  • 주기적인 무효화가 번거롭다면 고유한 파일 이름(해시값)을 사용하여 해결 가능

🧠 캐싱 전략 및 Stale Data 관리

  • Stale Data란 캐싱된 데이터가 원본보다 오래된 경우를 의미합니다.
  • 캐시 무효화를 하지 않으면 사용자에게 오래된 정보가 제공될 수 있으므로 주의가 필요합니다.
  • 데이터가 빈번하게 변경될 때는 무효화 전략을 필수로 고려하거나 고유 키(파일 이름)을 부여하는 것이 좋습니다.

📌 정리 요약 & 복습 체크리스트

✅ S3 핵심 포인트

  • 객체 단위 관리, 수정 불가능(덮어쓰기 필요)
  • 정적 웹사이트 호스팅 가능
  • 비용 절약을 위해 다양한 스토리지 클래스 활용
  • Cloudflare R2 등 S3 호환 서비스 고려

✅ CloudFront 핵심 포인트

  • 콘텐츠 전달 성능 향상을 위한 CDN 서비스
  • 캐시 관리 중요 (무효화 또는 고유 키 전략 사용)
  • OAC로 보안 강화, 외부 직접 접근 방지

🎯 마무리
S3와 CloudFront는 웹 서비스를 구성할 때 필수적인 AWS 서비스입니다. 데이터 저장과 빠른 콘텐츠 전송을 위해 각 서비스의 특징과 활용법을 잘 익혀두세요. 특히 비용과 성능을 최적화하기 위한 다양한 전략과 대체 서비스도 꼭 기억하시기 바랍니다. 🚀🌐✨

'AWS_Cloud' 카테고리의 다른 글

11강 Iam 강의 및 실습노트 AWS Cloud  (0) 2025.04.09
10강 Route53 강의 및 실습노트 AWS Cloud  (0) 2025.04.09
8강 S3 compatible storage (AWS Cloud)  (0) 2025.04.09
9강 Cloudfront 실습 노트 (AWS Cloud)  (0) 2025.04.08
8강 S3 실습 노트 (AWS Cloud)  (0) 2025.04.08
'AWS_Cloud' 카테고리의 다른 글
  • 11강 Iam 강의 및 실습노트 AWS Cloud
  • 10강 Route53 강의 및 실습노트 AWS Cloud
  • 8강 S3 compatible storage (AWS Cloud)
  • 9강 Cloudfront 실습 노트 (AWS Cloud)
Chansman
Chansman
안녕하세요! 코딩을 시작한 지 얼마 되지 않은 초보 개발자 찬스맨입니다. 이 블로그는 제 학습 기록을 남기고, 다양한 코딩 실습을 통해 성장하는 과정을 공유하려고 합니다. 초보자의 눈높이에 맞춘 실습과 팁, 그리고 개발하면서 겪은 어려움과 해결 과정을 솔직하게 풀어내려 합니다. 함께 성장하는 개발자 커뮤니티가 되기를 바랍니다.
  • Chansman
    찬스맨의 프로그래밍 스토리
    Chansman
  • 전체
    오늘
    어제
    • 분류 전체보기 (502) N
      • Python (31)
      • 프로젝트 (43)
      • 과제 (21)
      • Database (40)
      • 멘토링 (9)
      • 특강 (18)
      • 기술블로그 (143) N
      • AI 분석 (5)
      • HTML & CSS (31)
      • JavaScript (17)
      • AWS_Cloud (21)
      • 웹스크래핑과 데이터 수집 (14)
      • Flask (42)
      • Django (44) N
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Chansman
8,9강 강의 및 실습 복습 S3와 CloudFront
상단으로

티스토리툴바