Amazon SOA-C02: 네트워킹 및 콘텐츠 전송 — 학습 가이드
다음의 일부입니다: AWS SysOps Administrator Associate SOA-C02 — 학습 가이드. 검증된 답안으로 연습하기: Amazon 시험 허브, 또는 다음에서 시간 제한 모의고사 풀기: ExamRoll.io.
CloudFront CDN, 캐싱 전략 및 무효화
CloudFront는 엣지 로케이션에 콘텐츠를 캐싱하여 콘텐츠 전송을 가속화하고 오리진(원본)의 부하를 줄입니다. 경로 패턴별로 캐시 동작(Cache Behavior)을 구성하고, 오리진의 Cache-Control 및 Expires 헤더를 사용하여 캐싱을 제어하거나, 배포 설정의 전달 값(Forwarded Values) 및 최소/최대 TTL을 통해 재정의합니다. 여러 엣지 로케이션에서 발생하는 오리진 부하를 줄이려면 Origin Shield를 사용합니다.
주요 캐시 전략:
- 정적 자산: 긴 TTL을 사용하고, 무효화가 필요 없도록 핑거프린팅(객체 버전 관리)을 사용합니다.
- 동적 콘텐츠:
Cache-Control: no-cache또는 최소 TTL을 설정하고, Lambda@Edge 또는 캐시 정책(Cache Policy)을 사용하여 헤더/쿠키를 기반으로 선택적으로 캐시합니다. - API: 짧은 TTL을 사용하는 리전별 캐시(API Gateway + CloudFront)를 고려합니다.
무효화 및 관리 패턴:
- 즉시 제거하려면
aws cloudfront create-invalidation --distribution-id E123 --paths "/index.html"또는"/*"를 사용합니다. 큰 패턴의 경우 무효화 비용이 발생할 수 있다는 점에 유의하세요. - 잦은 무효화를 피하기 위해 객체 버전 관리(파일명 변경 또는 쿼리 문자열 버전 관리)를 선호합니다.
- 오리진 구성 확인: S3 오리진은 CloudFront만 읽을 수 있도록 Origin Access Control (OAC) 또는 OAI로 잠가야 합니다. ALB 오리진의 경우 상태 확인(health check) 및 고정 세션(stickiness) 설정이 CloudFront 동작과 일치하는지 확인합니다.
TLS 인증서, ACM 및 인증서 수명 주기
AWS Certificate Manager (ACM)를 사용하여 ELB, CloudFront, API Gateway용 인증서를 프로비저닝합니다. 자동 갱신이 가능한 DNS 검증을 위해 aws acm request-certificate --domain-name example.com --validation-method DNS 명령으로 퍼블릭 인증서를 요청합니다. 중요: CloudFront는 us-east-1 리전의 ACM 인증서가 필요하며, 리전 서비스(ALB, API Gateway regional)는 대상 리전의 인증서가 필요합니다.
검증 및 교체 패턴:
- DNS 검증은 갱신을 자동화하며 프로덕션 환경에서 권장되는 방법입니다. 콘솔 또는
aws route53 change-resource-record-sets를 통해 Route 53에 CNAME 레코드를 생성합니다. - 수동 또는 가져온 인증서의 경우
aws acm import-certificate를 사용하고aws acm list-certificates --certificate-statuses ISSUED를 사용하여 만료를 추적합니다. - 기존 인증서와 함께 새 인증서를 배포(ALB 또는 CloudFront 배포에 추가)하여 인증서를 교체하고, 트래픽을 확인한 다음, 만료 전에 기존 인증서를 제거합니다.
결정 기준: AWS 관리형 엔드포인트에 연결된 퍼블릭 인증서에는 ACM을 사용합니다. 프라이빗 CA 또는 외부 신뢰 앵커가 필요한 경우에만 가져온 인증서를 사용합니다.
일반적인 함정 및 결정 기준
- 잘못된 보안 그룹 또는 라우팅 테이블 규칙으로 인한 인스턴스 연결 불가 — 보안 그룹 인바운드 및 아웃바운드 규칙과 라우팅 테이블의
0.0.0.0/0항목을 확인하세요. 보안 그룹은 상태 저장(stateful)이고, NACL은 상태 비저장(stateless)이며 임시 포트(ephemeral port)에 대한 명시적인 허용이 필요하다는 점을 기억하세요. - 잘못 구성된 DNS TTL로 인한 장애 조치 후의 오래된(stale) 라우팅 — 장애 조치 시간(failover window)에 따라 TTL을 설정하고(액티브 장애 조치의 경우 짧은 TTL), 상태 확인을 활성화하여 장애 조치를 테스트하세요.
- CloudFront 오리진 구성 및 OAC/OAI 간과 — S3 오리진을 잠가 버킷이 퍼블릭이 되지 않도록 하고 CloudFront의 오리진 자격 증명(origin identity)이 객체를 읽을 수 있는지 확인하세요.
- VPN 백업 없이 Direct Connect에만 의존 — 복원력을 위해 항상 DX + VPN 하이브리드 아키텍처를 구성하고 BGP 장애 조치 동작을 검증하세요.
- NAT Gateway를 단일 AZ에만 배치 — AZ 간 데이터 경로와 단일 AZ의 이그레스(egress) 장애를 피하기 위해 AZ별로 NAT Gateway를 생성하세요.
- CloudFront에 대한 ACM 리전 규칙을 잊는 경우 — CloudFront용 퍼블릭 인증서는
us-east-1에서 요청해야 합니다. 페더레이션 또는 리전 서비스는 리전별 인증서가 필요합니다.
실제 문제: 사용 사례 시나리오
AcmePayments는 리전별 ALB, S3 기반 정적 사이트, 그리고 높은 처리량의 정산 링크가 필요한 온프레미스 데이터센터를 갖춘 글로벌 결제 앱을 운영합니다. 이들은 예측 가능한 지연 시간, 정적 콘텐츠의 안전한 배포, 그리고 특정 리전의 성능 저하 시 빠른 장애 조치가 필요합니다.
- AZ-로컬 퍼블릭 및 프라이빗 서브넷으로 VPC를 설계합니다. AZ별로 NAT Gateway를 배포하고 프라이빗 서브넷이 로컬 NAT를 통해 이그레스(egress)되도록 라우팅 테이블을 구성합니다.
- 가장 가까운 리전으로 프라이빗 VIF를 사용하여 Direct Connect를 프로비저닝하고, Transit Gateway로의 적절한 경로 전파와 함께 BGP를 사용하는 자동 장애 조치용으로 이중화된 Site-to-Site VPN을 구성합니다.
- 중요한 엔드포인트에 대해 상태 확인 및 낮은 TTL을 사용하는 ALB용 Route 53 지연 시간 기반 라우팅을 사용합니다. 단계적 장애 조치 테스트를 위해 가중치 레코드(weighted records)를 구현합니다.
- Origin Access Control로 보호되는 S3 오리진을 사용하여 정적 사이트용 CloudFront를 배포하고, 무효화를 피하기 위해 긴 TTL과 객체 버전 관리를 설정합니다. 필요한 헤더 조작을 위해 Lambda@Edge를 사용합니다.
- DNS 검증을 통해 ACM 인증서를 요청하고(
us-east-1에서 CloudFront용으로), 블루/그린 교체를 위해 기존 인증서와 함께 새 인증서를 배포한 다음, 만료 전에 기존 인증서를 제거합니다.
근거: 이러한 단계는 장애 도메인을 격리하고, 낮은 지연 시간의 글로벌 라우팅을 제공하며, 엣지에서 정적 자산을 안전하게 보호하고 캐시하며, 인증서 수명 주기가 자동화되고 중단 없이 운영되도록 보장합니다. 이는 운영 가용성 및 보안 모범 사례에 부합합니다.
← 보안 · 모든 도메인 · 스토리지 및 데이터 관리 →
이 문제 연습하기 → · ExamRoll.io에서 시간 제한 연습 →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
시험 합격하기 →