Amazon S3 핵심 정리

S3 버킷·객체 구조, 보안 정책, 7가지 스토리지 클래스, Snow Family까지! CLF-C02 시험 단골 Amazon S3 핵심 개념을 한 번에 정리합니다.

Amazon S3 완전 정복 — CLF-C02 시험 핵심 총정리

Amazon S3는 CLF-C02 시험에서 매우 자주 출제되는 핵심 서비스입니다. 스토리지 클래스 비교, 보안 설정, 버저닝, Snow Family 개념을 중점적으로 학습하면 시험에서 높은 점수를 얻을 수 있습니다.

---

Amazon S3란?

Amazon S3(Simple Storage Service)는 AWS의 대표적인 객체 스토리지 서비스입니다. 파일(객체)을 버킷(bucket)이라는 컨테이너에 저장하며, 용량 제한 없이 사용할 수 있습니다.

주요 사용 사례로는 백업 및 스토리지, 재해 복구, 아카이빙, 정적 웹사이트 호스팅, 데이터 레이크, 미디어 호스팅, 빅데이터 분석, 소프트웨어 배포 등이 있습니다.

---

버킷(Bucket)과 객체(Object)

버킷은 S3에서 데이터를 담는 컨테이너 단위입니다. 버킷 이름은 전 세계 모든 AWS 계정에서 유일해야 하며, 특정 리전에 생성됩니다. S3는 콘솔에서 글로벌 서비스처럼 보이지만 실제 버킷은 리전 단위로 생성된다는 점에 주의하세요. 명명 규칙으로는 소문자·숫자로 시작해야 하고, 3~63자 사이여야 하며, 언더스코어(_)와 IP 형식은 허용되지 않습니다.

| 규칙 | 내용 | |------|------| | 이름 | 전 세계 모든 계정에서 유일해야 함 | | 리전 | 버킷은 특정 리전에 생성 | | 명명 규칙 | 소문자·숫자 시작, 3~63자, 언더스코어(_) 금지, IP 형식 금지 |

객체는 키(Key)로 식별됩니다. 예를 들어 에서 전체 경로가 키에 해당합니다. S3에는 진짜 디렉터리 개념이 없으며, 슬래시(/)가 포함된 긴 키 이름일 뿐입니다. 객체의 최대 크기는 5TB이며, 5GB를 초과하는 파일은 멀티파트 업로드를 사용해야 합니다. 메타데이터, 태그(최대 10개), 버전 ID도 포함할 수 있습니다.

---

S3 보안 (Security)

S3 접근 제어는 여러 방법으로 구성할 수 있습니다. IAM 정책은 특정 IAM 사용자나 역할의 API 호출을 허용하거나 거부합니다. 버킷 정책은 JSON 기반으로 버킷 전체에 적용되며, 크로스 계정 접근도 허용할 수 있습니다. 객체 ACL과 버킷 ACL은 개별 객체 또는 버킷 수준에서 세분화된 접근 제어를 제공합니다.

| 방법 | 설명 | |------|------| | IAM 정책 | 특정 IAM 사용자/역할의 API 호출 허용/거부 | | 버킷 정책 | JSON 기반, 버킷 전체에 적용, 크로스 계정 접근 허용 가능 | | 객체 ACL | 개별 객체 수준의 세분화된 접근 제어 | | 버킷 ACL | 버킷 수준 ACL |

아래는 공개 읽기 허용 버킷 정책의 예시입니다.

기본적으로 모든 퍼블릭 액세스는 차단되어 있습니다. 기업 데이터 유출을 방지하기 위한 조치이므로, 정적 웹사이트 호스팅이 정상 동작하지 않는다면 버킷 정책의 퍼블릭 읽기 허용 여부를 먼저 확인하세요.

---

S3 주요 기능

버저닝 (Versioning)

버저닝은 버킷 레벨에서 활성화합니다. 같은 키에 파일을 덮어쓸 때마다 버전 번호가 증가하며, 실수로 삭제된 파일을 복원하거나 이전 버전으로 롤백할 수 있습니다. 버저닝 활성화 전에 저장된 파일의 버전 ID는 null입니다. 버저닝을 비활성화해도 이미 생성된 이전 버전은 삭제되지 않습니다.

정적 웹사이트 호스팅 (S3 Websites)

S3로 HTML, CSS, JS 기반의 정적 웹사이트를 호스팅할 수 있습니다. 웹사이트 URL 형식은 입니다. 403 에러가 발생한다면 버킷 정책에서 퍼블릭 읽기 허용 여부를 확인해야 합니다.

액세스 로그 (Access Logs)

모든 S3 요청(허용·거부 포함)을 다른 S3 버킷에 로그로 저장할 수 있습니다. 감사(Audit)나 이상 패턴 분석에 유용하게 활용됩니다.

복제 (Replication)

복제는 CRR(Cross-Region Replication)과 SRR(Same-Region Replication) 두 가지 유형이 있습니다. 복제를 사용하려면 소스 버킷과 대상 버킷 모두 버저닝이 활성화되어 있어야 합니다.

| 종류 | 설명 | 사용 사례 | |------|------|----------| | CRR (Cross-Region Replication) | 다른 리전으로 복제 | 규정 준수, 낮은 레이턴시 | | SRR (Same-Region Replication) | 같은 리전 내 복제 | 로그 집계, 테스트 계정 동기화 |

---

S3 스토리지 클래스

CLF-C02 시험에서 스토리지 클래스 선택 문제가 자주 출제됩니다. 각 클래스의 특징과 사용 사례를 잘 파악해 두세요.

S3의 내구성은 모든 스토리지 클래스에서 동일하게 11 9's(99.999999999%)를 보장합니다. 가용성은 클래스별로 다릅니다.

| 클래스 | 가용성 | 특징 | 주요 사용 사례 | |--------|--------|------|--------------| | S3 Standard | 99.99% | 자주 접근하는 데이터, 낮은 지연시간 | 빅데이터, 모바일 앱, 콘텐츠 배포 | | S3 Standard-IA | 99.9% | 자주 접근 안 하지만 빠른 복구 필요 | 재해 복구, 백업 | | S3 One Zone-IA | 99.5% | 단일 AZ 저장 (AZ 소멸 시 데이터 손실) | 재생성 가능한 보조 백업 | | S3 Glacier Instant | 99.9% | 밀리초 복구, 분기별 1회 접근 데이터 | 의료 이미지 아카이빙 | | S3 Glacier Flexible | 99.99% | 분~시간 단위 복구 | 장기 백업 아카이브 | | S3 Glacier Deep Archive | 99.99% | 최저 비용, 12~48시간 복구 | 장기 규정 보관 (7~10년) | | S3 Intelligent-Tiering | 99.9% | 접근 패턴에 따라 자동 계층 이동 | 접근 패턴 예측 불가한 데이터 |

S3 Glacier Flexible의 복구 옵션은 Expedited(1~5분), Standard(3~5시간), Bulk(5~12시간)입니다. S3 Glacier Deep Archive는 Standard 복구에 12시간, Bulk 복구에 48시간이 소요됩니다.

최소 보관 기간도 중요한 시험 포인트입니다.

| 클래스 | 최소 보관 기간 | |--------|--------------| | Glacier Instant / Flexible | 90일 | | Glacier Deep Archive | 180일 |

시험에서 자주 출제되는 핵심 포인트를 정리하면 다음과 같습니다.

가장 저렴한 장기 보관 클래스는 Glacier Deep Archive입니다. 접근 패턴에 따라 자동으로 계층을 이동하는 클래스는 Intelligent-Tiering이며, 별도의 검색 비용이 없습니다. One Zone-IA는 단일 AZ에만 저장하므로 AZ 장애 시 데이터 손실 가능성이 있습니다.

---

S3 Object Lock과 Glacier Vault Lock

S3 Object Lock은 지정 기간 동안 객체 버전의 삭제를 차단합니다. Glacier Vault Lock은 정책을 잠가 변경 자체를 불가능하게 합니다. 두 기능 모두 WORM(Write Once Read Many) 모델을 구현하며, 한 번 쓰면 수정하거나 삭제할 수 없습니다. 규정 준수나 데이터 보존이 요구되는 환경에서 사용합니다.

| 기능 | 설명 | 모델 | |------|------|------| | S3 Object Lock | 지정 기간 동안 객체 버전 삭제 차단 | WORM | | Glacier Vault Lock | 정책을 잠가 변경 불가 (규정 준수) | WORM |

---

AWS Snow Family

네트워크로 데이터를 전송하기에 너무 오랜 시간이 걸릴 경우, 물리적 장치를 이용한 데이터 마이그레이션 서비스인 AWS Snow Family를 활용합니다.

아래 표는 데이터 크기에 따른 네트워크 전송 소요 시간을 보여줍니다.

| 데이터 크기 | 100Mbps | 1Gbps | 10Gbps | |------------|---------|-------|--------| | 10TB | 12일 | 30시간 | 3시간 | | 100TB | 124일 | 12일 | 30시간 | | 1PB | 3년 | 124일 | 12일 |

네트워크 전송에 1주일 이상 걸린다면 Snowball 장치를 사용하는 것이 적합합니다.

Snow Family 장치 비교

| 장치 | 스토리지 | 마이그레이션 규모 | 특징 | |------|---------|----------------|------| | Snowcone | 8TB | 최대 24TB | 초소형(2.1kg), 열악한 환경에서도 사용 가능 | | Snowball Edge Storage Optimized | 80TB | 페타바이트급 | 블록 + S3 호환 스토리지 | | Snowball Edge Compute Optimized | 42TB | 페타바이트급 | 52 vCPU, GPU 옵션 (ML·비디오 처리) | | Snowmobile | 100PB/대 | 엑사바이트급 | 트럭 형태, 10PB 초과 시 Snowball보다 효율적 |

엣지 컴퓨팅 (Edge Computing)

인터넷이나 전력 접근이 제한된 환경(이동 중인 트럭, 선박, 광산 등)에서 현장에서 데이터를 처리해야 할 때 Snow 장치를 활용합니다. Snowcone과 Snowball Edge에서 EC2 인스턴스와 Lambda 함수를 실행할 수 있으며, 전처리, 엣지 ML, 미디어 트랜스코딩 등에 사용됩니다.

AWS OpsHub

AWS OpsHub는 Snow Family 장치를 CLI 없이 GUI로 관리할 수 있는 데스크톱 소프트웨어입니다.

---

AWS Storage Gateway (하이브리드 클라우드)

AWS Storage Gateway는 온프레미스 환경과 AWS 클라우드 스토리지를 연결하는 하이브리드 스토리지 서비스입니다. S3는 독자적인 기술이므로 온프레미스 환경에서 직접 사용할 수 없는데, Storage Gateway가 이 문제를 해결합니다. 재해 복구, 백업, 계층형 스토리지 시나리오에서 활용되며, File Gateway, Volume Gateway, Tape Gateway 유형이 있습니다.

---

공동 책임 모델 (Shared Responsibility for S3)

S3에서도 AWS와 고객의 책임이 구분됩니다. AWS는 글로벌 인프라 보안, 내구성과 가용성 보장, 규정 준수 검증, 취약점 분석을 담당합니다. 고객은 S3 버저닝 설정, 버킷 정책 및 접근 제어 구성, 복제 설정, 데이터 암호화(저장 및 전송 중)를 책임집니다.

블로그 목록으로 돌아가기