Skip to content
Published on

AWS Solutions Architect Associate (SAA-C03) 실전 모의고사 - 65문제 시나리오 완전 정복

Authors

AWS Solutions Architect Associate (SAA-C03) 실전 모의고사

시험 개요

항목내용
시험 코드SAA-C03
시험 시간130분
문제 수65문제
합격선720 / 1000점
시험 형식시나리오 기반 4지선다 및 다중 선택
응시 비용USD 150

도메인별 출제 비율

도메인내용비율
도메인 1탄력적 아키텍처 설계 (Resilient Architectures)30%
도메인 2고성능 아키텍처 설계 (High-Performing Architectures)28%
도메인 3보안 애플리케이션 및 아키텍처 (Secure Applications & Architectures)24%
도메인 4비용 최적화 아키텍처 (Cost-Optimized Architectures)18%

핵심 아키텍처 패턴 요약

고가용성 패턴

  • Multi-AZ: 여러 AZ에 리소스 분산, 단일 장애점 제거
  • Multi-Region: 재해 복구 및 글로벌 가용성
  • Active-Active: 모든 리전이 동시에 트래픽 처리
  • Active-Passive: 하나의 리전이 대기 상태, 장애 시 전환

스케일링 패턴

  • 수직 스케일링(Scale Up): 인스턴스 크기 증가 (t2.micro → t2.xlarge)
  • 수평 스케일링(Scale Out): 인스턴스 수 증가 + 로드 밸런서
  • Auto Scaling: 수요에 따라 자동으로 인스턴스 추가/제거

데이터베이스 패턴

  • RDS Multi-AZ: 고가용성, 동기 복제
  • RDS Read Replica: 읽기 확장, 비동기 복제
  • Aurora Global Database: 글로벌 분산, 낮은 읽기 지연 시간
  • DynamoDB Global Tables: 멀티 리전 NoSQL

캐싱 패턴

  • CloudFront: CDN, 정적/동적 콘텐츠 캐시
  • ElastiCache Redis: 세션, DB 쿼리 결과 캐시
  • DAX (DynamoDB Accelerator): DynamoDB 인메모리 캐시

메시징 패턴

  • SQS: 비동기 메시지 큐, 느슨한 결합
  • SNS + SQS: 팬아웃 패턴
  • Kinesis: 실시간 스트림 처리

실전 연습 문제 65문제

도메인 1: 탄력적 아키텍처 설계 (Q1~Q20)

Q1. 한 회사가 세 개의 가용 영역에 걸쳐 웹 애플리케이션을 운영하고 있습니다. 하나의 AZ가 장애를 겪더라도 서비스가 계속 운영되도록 최소 6개의 EC2 인스턴스가 항상 실행되어야 합니다. 가장 비용 효율적인 아키텍처는?

A) 각 AZ에 2개씩 총 6개 인스턴스 배치 B) 각 AZ에 3개씩 총 9개 인스턴스 배치 C) 하나의 AZ에 6개 모두 배치 D) 두 개의 AZ에 3개씩 총 6개 배치

정답: B

설명: 하나의 AZ가 장애를 겪을 때 남은 두 개 AZ에서 최소 6개 인스턴스를 유지하려면, 각 AZ에 3개씩 총 9개를 배치해야 합니다. 만약 각 AZ에 2개씩 6개를 배치하면 하나의 AZ 장애 시 나머지 두 AZ에는 4개만 남아 요구 사항을 충족하지 못합니다. 이 패턴은 "N+1" 또는 "2N/3" 가용성 패턴이라고 하며, SAA 시험의 단골 문제입니다.

Q2. 전자상거래 회사가 갑작스러운 트래픽 급증(플래시 세일)에 대비하면서 평소에는 비용을 최소화하려 합니다. 최적의 EC2 Auto Scaling 정책은?

A) 항상 최대 용량으로 실행하는 고정 용량 정책 B) 대상 추적 스케일링(Target Tracking Scaling) - CPU 사용률 70% 유지 C) 예약된 스케일링(Scheduled Scaling) - 세일 시간에 맞춰 미리 확장 D) B와 C를 조합하여 사용

정답: D

설명: 예측 가능한 이벤트(플래시 세일)에는 예약된 스케일링으로 미리 인스턴스를 확장하고, 예측 불가능한 실시간 트래픽 변동에는 대상 추적 스케일링을 함께 사용하는 것이 최적입니다. 예약된 스케일링만 사용하면 예상치 못한 트래픽에 대응 못하고, 대상 추적만 사용하면 인스턴스 시작 시간(보통 수 분) 동안 급격한 트래픽 증가에 대응하기 어렵습니다. 두 정책을 조합하면 두 가지 상황 모두 효과적으로 대응할 수 있습니다.

Q3. 회사가 Amazon RDS MySQL 데이터베이스를 사용하는 웹 애플리케이션을 운영합니다. 데이터베이스 장애 시 최소한의 다운타임으로 복구하려면 어떤 구성이 필요합니까?

A) RDS 자동 백업 활성화 B) 다른 리전에 Read Replica 생성 C) RDS Multi-AZ 배포 구성 D) RDS 스냅샷 주기적 생성

정답: C

설명: RDS Multi-AZ 배포는 기본 인스턴스에 장애가 발생하면 자동으로 스탠바이 인스턴스로 장애 조치(1~2분)하여 최소 다운타임을 제공합니다. 자동 백업과 스냅샷은 데이터 복구에 사용되지만 장애 조치 기능은 없습니다. 다른 리전의 Read Replica는 읽기 확장이나 재해 복구용이며, 자동 장애 조치가 이루어지지 않습니다. 다운타임 최소화의 핵심은 Multi-AZ입니다.

Q4. 글로벌 미디어 스트리밍 서비스가 전 세계 사용자에게 비디오 콘텐츠를 낮은 지연 시간으로 제공하려 합니다. 어떤 AWS 서비스 조합이 가장 적합합니까?

A) EC2 + S3 B) S3 + CloudFront C) EC2 + Route 53 D) S3 + ElastiCache

정답: B

설명: Amazon S3에 비디오 파일을 저장하고 CloudFront를 통해 전 세계 엣지 로케이션에서 캐시하여 제공하면 전 세계 사용자에게 낮은 지연 시간을 제공할 수 있습니다. CloudFront는 전 세계 400개 이상의 엣지 로케이션에서 콘텐츠를 캐시하며, S3를 오리진으로 사용하면 내구성 높은 스토리지와 확장 가능한 전달 네트워크를 결합할 수 있습니다. ElastiCache는 데이터베이스 캐시용이며 대규모 미디어 파일 전송에는 적합하지 않습니다.

Q5. 회사가 AWS에서 중요한 주문 처리 시스템을 운영합니다. 주문 처리 서비스가 다운되더라도 주문이 손실되지 않아야 하며, 서비스 복구 후 처리될 수 있어야 합니다. 가장 적합한 아키텍처는?

A) 주문 서비스와 처리 서비스를 직접 API 호출로 연결 B) Amazon SQS 큐를 중간에 두어 주문 서비스와 처리 서비스를 분리 C) 두 서비스를 동일한 EC2 인스턴스에 배포 D) Amazon RDS를 통해 두 서비스가 동일 DB를 공유

정답: B

설명: Amazon SQS를 중간 메시지 버퍼로 사용하면 생산자(주문 서비스)와 소비자(처리 서비스)를 분리(느슨한 결합)할 수 있습니다. 처리 서비스가 다운되어도 주문은 SQS 큐에 안전하게 보관되며(최대 14일), 서비스 복구 후 자동으로 처리됩니다. 직접 API 호출 방식은 처리 서비스 다운 시 주문이 손실될 수 있습니다. 이는 SQS의 핵심 사용 사례인 비동기 처리와 내결함성(Fault Tolerance) 패턴입니다.

Q6. 회사가 정적 웹사이트를 호스팅하려 합니다. 최대한 낮은 비용으로 높은 가용성을 제공하는 솔루션은?

A) EC2 인스턴스에서 웹 서버 실행 B) Elastic Beanstalk 사용 C) S3 정적 웹 호스팅 + CloudFront D) ECS 컨테이너에서 실행

정답: C

설명: S3 정적 웹 호스팅은 서버를 관리할 필요 없이 HTML, CSS, JavaScript, 이미지 파일을 직접 서비스할 수 있는 가장 저렴하고 가용성 높은 방법입니다. CloudFront를 추가하면 HTTPS 지원, 전 세계 낮은 지연 시간, 추가 캐싱을 제공합니다. EC2는 서버 관리, 비용, 복잡성이 증가하며, Elastic Beanstalk와 ECS는 동적 콘텐츠에 더 적합합니다. 이 조합은 서버리스 웹 호스팅의 베스트 프랙티스입니다.

Q7. 회사가 DynamoDB를 사용하는 게임 애플리케이션을 운영합니다. 일반적으로 읽기 트래픽이 매우 많으며, 사용자 순위표(리더보드)는 항상 최신 데이터가 아니어도 수 밀리초 이내에 응답해야 합니다. 최적의 솔루션은?

A) DynamoDB 프로비저닝 모드로 읽기 용량을 높게 설정 B) DynamoDB 앞에 DAX(DynamoDB Accelerator) 클러스터 배치 C) DynamoDB Read Replica 생성 D) RDS로 데이터베이스 교체

정답: B

설명: DAX(DynamoDB Accelerator)는 DynamoDB와 완벽하게 호환되는 인메모리 캐시 서비스로, 읽기 성능을 최대 10배 향상시키고 응답 시간을 마이크로초 단위로 단축합니다. 리더보드처럼 자주 조회되는 데이터를 DAX가 캐시하여 DynamoDB 직접 요청 수를 크게 줄입니다. DynamoDB Read Replica는 존재하지 않는 기능입니다. 프로비저닝 모드로 용량을 높이면 비용이 증가하지만 속도는 크게 개선되지 않습니다.

Q8. 기업이 온프레미스 데이터 센터와 AWS VPC를 연결하여 프라이빗 네트워크 통신이 필요합니다. 인터넷을 통한 연결 없이 안정적이고 일관된 네트워크 성능을 요구합니다. 어떤 솔루션이 적합합니까?

A) AWS Site-to-Site VPN B) AWS Direct Connect C) AWS Transit Gateway D) Amazon VPC Peering

정답: B

설명: AWS Direct Connect는 온프레미스 데이터 센터와 AWS 사이에 전용 물리적 네트워크 연결을 제공합니다. 인터넷을 우회하므로 일관된 낮은 지연 시간, 높은 대역폭, 향상된 보안을 제공합니다. Site-to-Site VPN은 인터넷을 통한 암호화 연결로 지연 시간이 일관적이지 않을 수 있습니다. Transit Gateway는 여러 VPC와 온프레미스 네트워크를 연결하는 허브이지만, 기본 연결 수단으로는 Direct Connect나 VPN이 필요합니다.

Q9. 회사의 웹 애플리케이션이 ALB 뒤에 Auto Scaling 그룹의 EC2 인스턴스들로 구성되어 있습니다. 사용자 세션이 특정 인스턴스에 고정되어야 합니다(스티키 세션). 올바른 구성은?

A) EC2 인스턴스에 직접 Elastic IP 할당 B) ALB의 대상 그룹에서 고정 세션(Sticky Sessions) 활성화 C) Route 53 지리적 라우팅 사용 D) NLB로 교체

정답: B

설명: ALB의 고정 세션(Sticky Sessions, 세션 친화성이라고도 함)을 활성화하면 특정 사용자의 요청이 항상 동일한 EC2 인스턴스로 라우팅됩니다. ALB는 쿠키를 사용하여 사용자를 특정 인스턴스에 바인딩합니다. 그러나 세션 상태를 EC2 인스턴스가 아닌 ElastiCache나 DynamoDB에 저장하면 고정 세션 없이도 어떤 인스턴스든 사용자 세션을 처리할 수 있어 더 확장성 있는 아키텍처가 됩니다.

Q10. 회사가 Amazon Aurora MySQL 데이터베이스를 운영합니다. 보고서 생성 쿼리가 주 데이터베이스 성능에 영향을 미칩니다. 비용 효율적으로 이를 해결하는 방법은?

A) Aurora 클러스터 크기를 두 배로 증가 B) Aurora Read Replica를 추가하고 보고서 쿼리를 Read Replica로 라우팅 C) 보고서 생성 시간을 트래픽이 적은 야간으로 제한 D) RDS MySQL로 마이그레이션

정답: B

설명: Aurora Read Replica를 추가하면 읽기 쿼리를 주 인스턴스에서 분리하여 보고서 생성 쿼리를 Read Replica에서 처리할 수 있습니다. Aurora는 최대 15개의 Read Replica를 지원하며, 주 인스턴스와 동일한 클러스터 스토리지를 공유하여 복제 지연이 거의 없습니다. 애플리케이션에서 읽기 엔드포인트(Read Endpoint)를 통해 읽기 트래픽을 자동으로 Read Replica에 분산할 수 있습니다.

Q11. 회사가 멀티 리전 재해 복구 전략을 구현하려 합니다. RTO(복구 목표 시간)가 1시간 미만이고 RPO(복구 목표 시점)가 1분 미만입니다. 적합한 DR 전략은?

A) 백업 및 복원 (Backup and Restore) B) 파일럿 라이트 (Pilot Light) C) 웜 스탠바이 (Warm Standby) D) 액티브-액티브 (Active-Active)

정답: D

설명: RTO 1시간 미만과 RPO 1분 미만의 엄격한 요구 사항을 충족하려면 액티브-액티브(멀티 사이트 액티브) 전략이 필요합니다. 두 리전이 동시에 트래픽을 처리하므로 장애 시 거의 즉시 트래픽이 전환됩니다. 백업 및 복원은 RTO가 수 시간에서 수일, 파일럿 라이트는 수십 분, 웜 스탠바이는 수 분의 RTO를 제공합니다. 요구 사항의 엄격도에 따라 비용도 증가합니다(백업/복원이 가장 저렴, 액티브-액티브가 가장 비쌈).

Q12. 회사가 Lambda 함수를 사용하여 대용량 이미지를 처리합니다. 처리 작업이 15분 이상 걸릴 수 있습니다. Lambda의 제한을 극복하는 최적의 아키텍처는?

A) Lambda 함수의 메모리를 최대로 늘려 처리 속도 향상 B) AWS Step Functions를 사용하여 처리 작업을 여러 Lambda 함수로 분할 C) EC2 Spot 인스턴스로 마이그레이션 D) AWS Fargate로 컨테이너 작업 실행

정답: D

설명: AWS Fargate는 서버를 관리할 필요 없이 컨테이너 작업을 실행하며 15분 이상의 장시간 작업을 처리할 수 있습니다. Lambda의 최대 실행 시간은 15분으로 제한됩니다. Step Functions는 여러 Lambda를 체인으로 연결할 수 있지만 단일 처리 작업이 15분을 초과하는 경우에는 적합하지 않습니다. EC2 Spot 인스턴스는 유효하지만 인프라 관리가 필요합니다. Fargate는 서버리스 컨테이너 실행 환경으로 시간 제한 없이 장시간 작업에 적합합니다.

Q13. 회사가 마이크로서비스 아키텍처로 애플리케이션을 운영합니다. 각 서비스가 다른 서비스에 이벤트를 발행하고, 여러 서비스가 동일한 이벤트를 수신해야 합니다. 어떤 아키텍처 패턴이 가장 적합합니까?

A) 각 서비스가 다른 서비스의 API를 직접 호출 B) Amazon SNS 토픽으로 이벤트를 발행하고, 각 서비스는 SQS 큐를 통해 구독 C) Amazon Kinesis Data Streams를 통해 모든 이벤트를 전달 D) Amazon MQ를 사용한 메시지 브로커 패턴

정답: B

설명: SNS + SQS 팬아웃 패턴은 이벤트 기반 마이크로서비스 아키텍처에 이상적입니다. 발행자(Publisher)는 SNS 토픽에 이벤트를 게시하고, 각 구독자 서비스는 자신의 SQS 큐를 SNS에 구독하여 이벤트를 수신합니다. 이렇게 하면 서비스 간 느슨한 결합을 유지하면서 동일한 이벤트를 여러 서비스에 안정적으로 전달할 수 있습니다. SQS가 메시지를 버퍼링하므로 각 서비스는 자신의 속도로 처리할 수 있습니다.

Q14. 기업이 S3 버킷에 저장된 로그 파일을 다른 리전으로 자동 복제해야 합니다. 어떤 기능을 사용해야 합니까?

A) S3 Transfer Acceleration B) S3 교차 리전 복제 (Cross-Region Replication, CRR) C) AWS DataSync D) AWS Snowball

정답: B

설명: S3 교차 리전 복제(CRR)를 사용하면 S3 버킷에 업로드되는 객체를 다른 리전의 버킷으로 자동으로 복제할 수 있습니다. CRR을 활성화하려면 원본 버킷과 대상 버킷 모두 버전 관리를 활성화해야 합니다. 규정 준수, 재해 복구, 지연 시간 최소화를 위해 사용됩니다. S3 Transfer Acceleration은 업로드 속도를 높이는 기능이고, DataSync는 온프레미스-S3 간 데이터 마이그레이션에, Snowball은 대규모 오프라인 데이터 전송에 사용됩니다.

Q15. 회사가 AWS에서 상태 저장(stateful) 애플리케이션을 운영합니다. Auto Scaling으로 인해 인스턴스가 종료될 때 처리 중인 작업이 손실되지 않아야 합니다. 어떤 EC2 Auto Scaling 기능을 사용해야 합니까?

A) 인스턴스 보호(Instance Protection) B) 수명 주기 후크(Lifecycle Hooks) C) 조정 보류(Scaling Cooldown) D) 예약 스케일링(Scheduled Scaling)

정답: B

설명: Auto Scaling 수명 주기 후크(Lifecycle Hooks)를 사용하면 인스턴스가 종료되기 전에 사용자 정의 작업을 수행할 수 있습니다. 예를 들어 인스턴스 종료 이벤트가 발생하면 후크가 인스턴스를 "Terminating:Wait" 상태로 유지하고, 애플리케이션이 현재 처리 중인 작업을 완료하거나 데이터를 저장할 시간을 줍니다. 작업 완료 후 후크를 완료하면 인스턴스가 실제로 종료됩니다. 인스턴스 보호는 특정 인스턴스를 스케일 인에서 제외하는 기능입니다.

Q16. 회사가 EC2 인스턴스에서 실행되는 레거시 모놀리식 애플리케이션을 마이크로서비스로 마이그레이션하려 합니다. 다운타임 없이 점진적으로 마이그레이션하는 가장 효과적인 방법은?

A) 모든 마이크로서비스를 한 번에 구현하고 일괄 전환 B) Strangler Fig 패턴을 사용하여 ALB의 경로 기반 라우팅으로 점진적 마이그레이션 C) 먼저 모놀리식을 종료하고 새로운 마이크로서비스로 교체 D) 별도 환경에서 전체 시스템을 재구축하고 한 번에 DNS 전환

정답: B

설명: Strangler Fig 패턴은 모놀리식 애플리케이션을 점진적으로 마이크로서비스로 대체하는 전략입니다. ALB의 경로 기반 라우팅(Path-based Routing)을 사용하면 특정 URL 경로는 새로운 마이크로서비스로, 나머지는 레거시 모놀리식으로 라우팅할 수 있습니다. 이를 통해 다운타임 없이 하나씩 기능을 마이그레이션할 수 있습니다. 전체를 한 번에 전환하는 방식은 위험이 높고, 새 시스템 구축 후 DNS 전환은 두 시스템을 동시에 유지해야 하는 비용이 발생합니다.

Q17. 기업이 ECS Fargate를 사용하여 컨테이너 기반 애플리케이션을 운영합니다. 특정 API 엔드포인트에 따라 다른 컨테이너 서비스로 트래픽을 라우팅해야 합니다. 어떤 서비스를 사용해야 합니까?

A) Network Load Balancer (NLB) B) Application Load Balancer (ALB) - 경로 기반 라우팅 C) Route 53 지연 기반 라우팅 D) AWS Global Accelerator

정답: B

설명: ALB(Application Load Balancer)의 경로 기반 라우팅(Path-based Routing)을 사용하면 URL 경로에 따라 다른 대상 그룹(ECS 서비스)으로 트래픽을 라우팅할 수 있습니다. 예를 들어 /api/users/_ 요청은 사용자 서비스로, /api/orders/_ 요청은 주문 서비스로 라우팅합니다. ALB는 Layer 7에서 작동하여 HTTP 헤더, 쿠키, URL 경로, 호스트 이름 등을 기반으로 라우팅 결정을 내릴 수 있습니다. NLB는 Layer 4에서만 작동하여 경로 기반 라우팅을 지원하지 않습니다.

Q18. 회사가 Amazon EFS(Elastic File System)를 여러 EC2 인스턴스에 마운트하여 공유 파일 스토리지로 사용합니다. 특정 리전에서만 파일에 액세스해야 합니다. 최대 성능을 위한 구성은?

A) 각 인스턴스에 EBS 볼륨을 별도로 연결 B) 동일한 AZ에 있는 EC2 인스턴스들만 EFS에 연결 C) EFS를 사용하되 EFS 마운트 타겟을 각 AZ에 생성 D) Amazon S3를 공유 파일 시스템으로 사용

정답: C

설명: Amazon EFS는 리전 범위의 서비스로, 각 AZ에 마운트 타겟을 생성하면 해당 AZ의 EC2 인스턴스들이 낮은 지연 시간으로 EFS에 액세스할 수 있습니다. 다른 AZ의 마운트 타겟을 통해 액세스하는 것보다 동일 AZ의 마운트 타겟을 사용하면 지연 시간을 최소화하고 AZ 간 데이터 전송 비용을 절약할 수 있습니다. EBS는 단일 인스턴스에만 연결 가능하며(단, Multi-Attach 기능 제외), S3는 객체 스토리지로 파일 시스템 인터페이스를 제공하지 않습니다.

Q19. 회사가 Amazon SQS 큐에서 메시지를 처리하는 Lambda 함수를 운영합니다. 처리 실패한 메시지가 있을 경우 나중에 재처리할 수 있도록 보관해야 합니다. 가장 적합한 구성은?

A) Lambda 함수에 재시도 로직 직접 구현 B) SQS 데드 레터 큐(DLQ)를 구성하여 처리 실패 메시지 저장 C) SQS 큐의 가시성 타임아웃(Visibility Timeout)만 조정 D) CloudWatch 알람으로 실패 감지 후 수동 재처리

정답: B

설명: Amazon SQS 데드 레터 큐(DLQ)는 지정된 횟수만큼 처리에 실패한 메시지를 자동으로 격리하는 큐입니다. maxReceiveCount를 초과한 메시지는 자동으로 DLQ로 이동되어 나중에 분석하거나 재처리할 수 있습니다. DLQ를 사용하면 독성 메시지(Poison Pill)가 큐를 계속 막는 것을 방지하고, 실패 원인 분석이 용이해집니다. DLQ는 원본 큐와 동일한 타입(Standard 또는 FIFO)이어야 합니다.

Q20. 회사가 AWS에서 컨테이너 기반 애플리케이션을 실행합니다. 사용자의 요청이 항상 동일한 컨테이너로 라우팅되도록 해야 하며, 장애 시 자동으로 복구되어야 합니다. 어떤 서비스 조합이 가장 적합합니까?

A) EC2 + ELB + ASG B) ECS + ALB (고정 세션 활성화) + Auto Scaling C) Lambda + API Gateway D) EKS + NLB

정답: B

설명: ECS(Elastic Container Service)에서 ALB를 사용하면 경로 기반 라우팅, 호스트 기반 라우팅, 고정 세션 등 Layer 7 기능을 활용할 수 있습니다. ALB의 고정 세션 기능으로 특정 사용자 요청이 항상 동일한 컨테이너로 라우팅되도록 할 수 있습니다. ECS Auto Scaling으로 컨테이너 수를 자동으로 조정하고, ECS 서비스가 비정상 컨테이너를 자동으로 교체하여 장애 복구를 제공합니다. Lambda와 API Gateway는 상태 저장 세션에 적합하지 않습니다.

도메인 2: 고성능 아키텍처 설계 (Q21~38)

Q21. 글로벌 게임 회사가 전 세계 사용자에게 1밀리초 미만의 지연 시간으로 게임 서버에 접속할 수 있도록 해야 합니다. 어떤 서비스가 가장 적합합니까?

A) Amazon CloudFront B) AWS Global Accelerator C) Amazon Route 53 지연 기반 라우팅 D) AWS Transit Gateway

정답: B

해설: AWS Global Accelerator는 AWS의 글로벌 네트워크를 사용하여 사용자의 트래픽을 가장 가까운 AWS 엣지 로케이션에서 수신하고 최적화된 경로로 애플리케이션 엔드포인트로 전달합니다. 인터넷의 혼잡과 홉 수를 줄여 일관된 낮은 지연 시간을 제공합니다. CloudFront는 콘텐츠 캐싱에 적합하지만 게임처럼 동적이고 실시간 트래픽에는 Global Accelerator가 더 적합합니다. Global Accelerator는 고정 IP 주소 2개를 제공하며, TCP/UDP 트래픽 모두 지원합니다.

Q22. 회사의 웹 애플리케이션에서 데이터베이스 읽기 쿼리가 병목이 되고 있습니다. 동일한 쿼리 결과를 수백 번 요청합니다. 성능을 향상시키는 가장 효과적인 방법은?

A) RDS 인스턴스 크기를 업그레이드 B) RDS Read Replica를 추가 C) ElastiCache를 앞단에 배치하여 쿼리 결과 캐시 D) 데이터베이스 인덱스 최적화

정답: C

설명: ElastiCache(Redis 또는 Memcached)를 RDS 앞단에 배치하면 반복적인 읽기 쿼리 결과를 메모리에 캐시하여 데이터베이스 부하를 크게 줄일 수 있습니다. "동일한 쿼리 결과를 수백 번 요청"하는 패턴은 캐시의 핵심 사용 사례입니다. 캐시 히트 시 밀리초 미만의 응답 시간을 제공합니다. Read Replica는 읽기를 분산하지만 여전히 DB 쿼리를 실행해야 합니다. 인스턴스 업그레이드는 근본 원인(반복 쿼리)을 해결하지 못합니다.

Q23. 소셜 미디어 플랫폼이 초당 수만 건의 사용자 이벤트(좋아요, 댓글, 공유)를 실시간으로 처리하고 분석해야 합니다. 가장 적합한 아키텍처는?

A) SQS + Lambda B) Kinesis Data Streams + Lambda/Kinesis Data Analytics C) SNS + SQS + EC2 D) API Gateway + DynamoDB

정답: B

설명: Amazon Kinesis Data Streams는 초당 수만 건의 이벤트를 실시간으로 수집하고 처리하도록 설계된 서비스입니다. Lambda와 연결하면 실시간 데이터 처리가 가능하고, Kinesis Data Analytics는 Apache Flink나 SQL을 사용하여 스트리밍 데이터를 실시간으로 분석할 수 있습니다. SQS는 대기열 기반으로 실시간 분석보다는 비동기 처리에 적합합니다. Kinesis는 데이터를 순서대로 처리하고 여러 소비자가 동일한 스트림을 읽을 수 있는 특징이 있습니다.

Q24. 회사가 Amazon Redshift 데이터 웨어하우스를 운영합니다. S3에 저장된 원본 데이터를 Redshift로 복사하지 않고 직접 쿼리하려 합니다. 어떤 기능을 사용해야 합니까?

A) S3 Select B) Amazon Athena C) Redshift Spectrum D) Amazon EMR

정답: C

해설: Redshift Spectrum을 사용하면 Amazon Redshift 클러스터에 데이터를 로드하지 않고도 S3에 있는 데이터를 직접 쿼리할 수 있습니다. Redshift의 SQL 인터페이스와 병렬 처리 능력을 활용하면서 S3의 데이터를 분석할 수 있어 비용 효율적입니다. Amazon Athena도 S3 데이터를 직접 쿼리하지만 Redshift 클러스터와 통합되지 않습니다. S3 Select는 단일 객체에서 특정 데이터만 검색하는 기능입니다.

Q25. 기업이 대규모 배치 처리 작업(유전체 분석, 금융 시뮬레이션)에 AWS를 사용하려 합니다. 수천 개의 CPU 코어가 필요하며 작업 시간은 수 시간입니다. 가장 비용 효율적인 솔루션은?

A) 대형 EC2 온디맨드 인스턴스 수천 개 실행 B) AWS Batch + EC2 Spot 인스턴스 C) AWS Lambda 병렬 실행 D) EKS + 온디맨드 노드 그룹

정답: B

설명: AWS Batch는 완전 관리형 배치 컴퓨팅 서비스로, 자동으로 최적의 컴퓨팅 리소스를 프로비저닝하고 작업을 스케줄링합니다. EC2 Spot 인스턴스와 함께 사용하면 온디맨드 대비 최대 90%까지 비용을 절약할 수 있습니다. 배치 처리 작업은 중단에 내성이 있어(체크포인트 사용) Spot 인스턴스에 적합합니다. Lambda는 최대 15분 실행 제한이 있어 수 시간 작업에 부적합합니다. Batch는 작업 큐, 종속성 관리, 재시도 로직을 자동으로 처리합니다.

Q26. 금융 서비스 회사가 수백만 개의 금융 거래 레코드를 분석하는 서버리스 쿼리 솔루션이 필요합니다. 인프라 관리 없이 S3의 데이터를 표준 SQL로 쿼리하려 합니다. 어떤 서비스가 가장 적합합니까?

A) Amazon RDS B) Amazon Athena C) Amazon Redshift D) Amazon DynamoDB

정답: B

설명: Amazon Athena는 서버리스 인터랙티브 쿼리 서비스로, S3에 저장된 데이터를 인프라 관리 없이 표준 SQL로 직접 쿼리할 수 있습니다. CSV, JSON, Parquet, ORC 등 다양한 형식을 지원하며, 스캔한 데이터 양에 따라 과금됩니다(페타바이트 규모도 처리 가능). Parquet 형식 사용과 컬럼 기반 파티셔닝으로 비용과 성능을 최적화할 수 있습니다. Amazon Glue Data Catalog와 통합하여 메타데이터를 관리합니다.

Q27. 동영상 스트리밍 서비스가 S3에 업로드된 비디오 파일을 다양한 해상도로 자동 변환해야 합니다. 서버리스 방식으로 구현하는 최적의 아키텍처는?

A) EC2 Auto Scaling 그룹에서 FFmpeg 실행 B) S3 이벤트 → Lambda → Elastic Transcoder (또는 MediaConvert) C) ECS Fargate에서 변환 작업 실행 D) AWS Glue ETL 작업으로 처리

정답: B

설명: S3에 비디오가 업로드되면 S3 이벤트 알림이 Lambda 함수를 트리거하고, Lambda가 AWS Elastic Transcoder 또는 AWS Elemental MediaConvert에 변환 작업을 요청하는 서버리스 아키텍처입니다. 이 파이프라인은 서버를 프로비저닝하거나 관리할 필요 없이 완전 자동화됩니다. MediaConvert는 Elastic Transcoder보다 더 많은 기능과 형식을 지원하는 최신 서비스입니다. EC2나 ECS는 서버 관리가 필요하고, AWS Glue는 데이터 변환 ETL에 적합하지 비디오 처리에는 적합하지 않습니다.

Q28. 회사의 웹 애플리케이션이 점점 더 많은 국가에서 접속합니다. 특정 국가의 사용자에게 가장 낮은 지연 시간을 제공하는 Route 53 라우팅 정책은?

A) 단순 라우팅 (Simple Routing) B) 지리 근접 라우팅 (Geoproximity Routing) C) 지연 기반 라우팅 (Latency-based Routing) D) 가중치 기반 라우팅 (Weighted Routing)

정답: C

설명: Route 53 지연 기반 라우팅(Latency-based Routing)은 사용자의 요청을 실제 네트워크 지연 시간이 가장 낮은 AWS 리전의 엔드포인트로 라우팅합니다. 사용자의 지리적 위치가 아닌 실제 측정된 지연 시간을 기반으로 하므로 네트워크 조건이 변하더라도 항상 최적의 리전으로 라우팅됩니다. 지리 근접 라우팅은 지리적 거리를 기반으로 하며, 가중치 기반은 트래픽 비율 조정에 사용됩니다.

Q29. 회사가 Amazon EMR을 사용하여 대규모 빅데이터를 처리합니다. 클러스터 비용을 최소화하면서 처리 성능을 유지하는 가장 좋은 방법은?

A) 항상 최대 크기 클러스터 유지 B) 코어 노드는 온디맨드, 작업 노드는 Spot 인스턴스 사용 C) 모든 노드를 Spot 인스턴스로 사용 D) 단일 마스터 노드만 사용

정답: B

설명: Amazon EMR에서 코어 노드(데이터 저장 및 처리)는 온디맨드 인스턴스로 안정성을 확보하고, 추가 처리 용량이 필요한 작업 노드(Task Nodes)는 Spot 인스턴스를 사용하면 비용을 크게 절약할 수 있습니다. 코어 노드를 Spot으로 사용하면 Spot 중단 시 HDFS 데이터가 손실될 수 있으므로 위험합니다. 작업 노드는 HDFS에 데이터를 저장하지 않아 Spot 중단에 영향을 받지 않습니다.

Q30. 회사가 IoT 센서에서 수집되는 시계열 데이터를 효율적으로 저장하고 쿼리하려 합니다. 수백만 개의 센서에서 초당 수백만 건의 데이터 포인트가 생성됩니다. 가장 적합한 데이터베이스는?

A) Amazon RDS MySQL B) Amazon DynamoDB C) Amazon Timestream D) Amazon Redshift

정답: C

설명: Amazon Timestream은 시계열 데이터(시간과 함께 변화하는 데이터)를 위해 특별히 설계된 완전 관리형 서버리스 시계열 데이터베이스입니다. IoT 센서 데이터, 모니터링 메트릭, 애플리케이션 로그 등에 최적화되어 있으며, 관계형 DB보다 1,000배 빠르고 1/10 비용으로 시계열 쿼리를 처리합니다. 자동으로 최신 데이터는 메모리에, 오래된 데이터는 저렴한 스토리지로 이동하는 저장 계층 기능을 제공합니다.

Q31. 회사가 대용량 데이터 마이그레이션을 수행하려 합니다. 100TB의 데이터를 온프레미스에서 S3로 이전해야 하며, 현재 인터넷 연결 대역폭은 1Gbps입니다. 가장 빠른 방법은?

A) AWS Direct Connect로 전용 연결 설정 후 전송 B) S3 Transfer Acceleration 사용 C) AWS Snowball 장치 사용 D) 멀티스레드 S3 업로드

정답: C

설명: 100TB 데이터를 1Gbps로 전송하면 약 8,000초(약 2.2시간)이 필요하지만, 실제 인터넷 속도는 이론적 최대값에 미치지 못하고 네트워크 혼잡, 지연 등을 고려하면 훨씬 오래 걸릴 수 있습니다. AWS Snowball은 80TB 용량의 물리적 장치로, 대용량 데이터를 물리적으로 전송합니다. 일반적으로 10TB 이상의 데이터나 제한된 네트워크 대역폭 환경에서는 Snowball이 온라인 전송보다 빠릅니다. 100TB는 Snowball 2대가 필요합니다.

Q32. 회사가 Apache Spark를 사용하여 대규모 데이터를 처리하고 ML 모델을 학습시키려 합니다. AWS에서 가장 적합한 관리형 서비스는?

A) Amazon EC2 클러스터에 Spark 직접 설치 B) Amazon EMR (Elastic MapReduce) C) AWS Glue D) Amazon SageMaker

정답: B

설명: Amazon EMR은 Apache Spark, Hadoop, Hive, Presto 등의 빅데이터 프레임워크를 완전 관리형으로 실행할 수 있는 서비스입니다. 클러스터 프로비저닝, 구성, 튜닝을 자동화하며, S3와의 통합으로 데이터 처리 파이프라인을 구축할 수 있습니다. EC2에 직접 설치하면 관리 오버헤드가 크게 증가합니다. AWS Glue는 ETL(추출, 변환, 로드) 워크로드에 최적화된 서버리스 서비스로, 대규모 Spark 클러스터 운영에는 EMR이 더 적합합니다.

Q33. 금융 회사가 실시간 사기 탐지 시스템을 구축하려 합니다. 각 거래는 수 밀리초 이내에 처리되어야 하며, 수백만 건의 과거 거래 데이터와 실시간으로 비교해야 합니다. 가장 적합한 아키텍처는?

A) Lambda + RDS B) API Gateway + Lambda + ElastiCache Redis + DynamoDB C) EC2 + MySQL D) Lambda + S3 + Athena

정답: B

설명: 실시간 사기 탐지를 위한 최적 아키텍처입니다. API Gateway가 거래 요청을 수신하고, Lambda가 처리 로직을 실행합니다. ElastiCache Redis는 자주 사용되는 사기 패턴, 고위험 계정 목록 등을 밀리초 미만으로 제공하며, DynamoDB는 거래 이력을 빠르게 조회합니다. Lambda + S3 + Athena는 배치 분석에 적합하지만 밀리초 응답이 필요한 실시간 처리에는 부적합합니다. EC2 + MySQL은 수백만 건의 데이터 동시 쿼리에서 성능 문제가 발생할 수 있습니다.

Q34. 회사가 대규모 트랜잭션 데이터를 Amazon Redshift에 로드하는 ETL 파이프라인을 구축하려 합니다. S3의 데이터를 Redshift로 가장 효율적으로 로드하는 방법은?

A) INSERT 문으로 하나씩 삽입 B) COPY 명령어를 사용하여 S3에서 병렬로 로드 C) Lambda 함수로 데이터를 읽어 Redshift에 삽입 D) DataSync를 사용하여 S3에서 Redshift로 전송

정답: B

설명: Redshift의 COPY 명령어는 S3, DynamoDB, EMR 등에서 데이터를 대규모로 병렬 로드하는 가장 효율적인 방법입니다. Redshift 클러스터의 여러 컴퓨팅 노드가 동시에 S3에서 데이터를 읽어 처리하므로 단일 INSERT보다 수십 배 빠릅니다. COPY 명령어는 자동으로 데이터를 파싱하고, 압축 인코딩을 감지하며, 여러 파일을 병렬로 처리합니다. 대용량 로드 시에는 데이터를 여러 파일로 분할하여 각 슬라이스당 1개 파일이 되도록 하는 것이 최적입니다.

Q35. 회사가 애플리케이션 로그를 실시간으로 S3에 저장하고 분석하려 합니다. 초당 수천 건의 로그 이벤트가 생성됩니다. 가장 적합한 솔루션은?

A) Lambda에서 직접 S3에 개별 파일 저장 B) Kinesis Data Firehose로 로그 수집 후 S3에 배치 저장 C) CloudWatch Logs를 S3로 주기적 내보내기 D) EC2에서 파일로 저장 후 주기적 S3 업로드

정답: B

설명: Amazon Kinesis Data Firehose는 스트리밍 데이터를 S3, Redshift, Elasticsearch에 자동으로 배치로 전달하는 완전 관리형 서비스입니다. 서버를 관리할 필요 없이 초당 수천~수백만 건의 로그를 수집하고 버퍼링하여 S3에 저장합니다. 데이터를 압축(GZIP, Snappy)하고 파티션 분할하여 저장 비용과 Athena 쿼리 비용을 최소화할 수 있습니다. Lambda로 개별 저장 시 S3 요청 수가 폭발적으로 증가하여 비용과 복잡성이 높아집니다.

Q36. 회사의 웹 애플리케이션이 정기적으로 데이터베이스에서 동일한 집계 데이터를 조회합니다. 이 데이터는 1시간에 한 번씩 업데이트됩니다. 가장 효율적인 캐싱 전략은?

A) 모든 요청마다 데이터베이스에서 조회 B) ElastiCache Redis에 TTL 1시간으로 캐시, 만료 시 DB에서 갱신 C) EC2 인스턴스 로컬 메모리에 데이터 캐시 D) 데이터를 S3에 저장하고 Lambda로 제공

정답: B

설명: ElastiCache Redis에 TTL(Time-To-Live) 1시간을 설정하여 데이터를 캐시하면 데이터 업데이트 주기와 캐시 만료 시간이 일치합니다. Cache-Aside(Lazy Loading) 패턴을 사용하면 캐시 미스 시 DB에서 데이터를 가져와 캐시에 저장하고, 이후 TTL이 만료될 때까지 캐시에서 직접 제공합니다. 이 패턴은 데이터베이스 부하를 크게 줄이고 응답 시간을 단축시킵니다. EC2 인스턴스 로컬 캐시는 여러 인스턴스 간 일관성 문제가 발생합니다.

Q37. 회사가 EC2 인스턴스에서 고성능 컴퓨팅(HPC) 작업을 수행합니다. 인스턴스 간 낮은 지연 시간과 높은 네트워크 처리량이 필요합니다. 어떤 배치 전략을 사용해야 합니까?

A) 분산 배치 그룹 (Spread Placement Group) B) 파티션 배치 그룹 (Partition Placement Group) C) 클러스터 배치 그룹 (Cluster Placement Group) D) 기본 배치 (Default Placement)

정답: C

설명: 클러스터 배치 그룹(Cluster Placement Group)은 EC2 인스턴스들을 단일 AZ 내에서 물리적으로 가깝게 배치하여 인스턴스 간 초저지연(10Gbps+ 네트워크)을 제공합니다. HPC, 빅데이터 처리, 머신러닝 학습 등 노드 간 높은 네트워크 처리량이 필요한 작업에 적합합니다. 분산 배치 그룹은 인스턴스를 서로 다른 물리 하드웨어에 분산하여 장애 격리에 사용하고, 파티션 배치 그룹은 HDFS, Cassandra처럼 분산 데이터 저장에 사용합니다.

Q38. 회사가 Amazon Aurora Serverless v2를 도입하려 합니다. 이 서비스의 주요 장점은?

A) 항상 고정된 컴퓨팅 용량 제공 B) 트래픽에 따라 즉시 자동 스케일링되며, 비용은 실제 사용한 ACU(Aurora Capacity Units)에 따라 청구 C) 멀티 리전 배포를 자동 지원 D) PostgreSQL과 MySQL을 동시에 지원

정답: B

설명: Aurora Serverless v2는 트래픽 변화에 따라 초 단위로 자동으로 스케일 업/다운되는 Aurora의 온디맨드 자동 확장 구성입니다. 최소 0.5 ACU에서 최대 128 ACU까지 즉각적으로 확장되며, 실제 사용한 ACU(Aurora Capacity Unit)에 대해서만 비용을 지불합니다. 예측 불가능한 트래픽 패턴을 가진 애플리케이션이나 개발/테스트 환경에 이상적입니다. v2는 v1의 느린 스케일링(분 단위)을 개선하여 순간적인 트래픽 급증에도 즉시 대응합니다.

도메인 3: 보안 애플리케이션 및 아키텍처 (Q39~52)

Q39. 회사가 AWS에서 3계층 웹 애플리케이션(웹, 애플리케이션, 데이터베이스)을 설계합니다. 보안 모범 사례에 따른 올바른 VPC 구조는?

A) 모든 레이어를 퍼블릭 서브넷에 배치 B) 웹 레이어는 퍼블릭 서브넷, 앱 레이어와 DB 레이어는 프라이빗 서브넷에 배치 C) 모든 레이어를 프라이빗 서브넷에 배치 D) DB 레이어만 프라이빗 서브넷, 나머지는 퍼블릭 서브넷

정답: B

설명: 3계층 아키텍처의 보안 모범 사례는 인터넷에 직접 노출되어야 하는 웹 레이어(ALB)만 퍼블릭 서브넷에 배치하고, 애플리케이션 서버(EC2)와 데이터베이스(RDS)는 프라이빗 서브넷에 배치하는 것입니다. 프라이빗 서브넷의 EC2 인스턴스가 인터넷 업데이트가 필요한 경우 NAT 게이트웨이를 통해 아웃바운드 트래픽만 허용합니다. 이 구조는 최소 공격 표면 원칙(Defense in Depth)을 구현합니다.

Q40. 개발자가 EC2 인스턴스에서 실행 중인 애플리케이션이 S3 버킷에 파일을 저장해야 합니다. 가장 안전하게 S3 접근 권한을 부여하는 방법은?

A) EC2 인스턴스에 S3 액세스 키를 환경 변수로 설정 B) IAM 역할을 EC2 인스턴스에 연결하여 S3 접근 권한 부여 C) EC2 인스턴스의 사용자 데이터(User Data)에 자격 증명 포함 D) 하드코딩된 자격 증명을 애플리케이션 코드에 포함

정답: B

설명: EC2 인스턴스에 IAM 역할을 연결하는 것이 가장 안전한 방법입니다. 역할은 임시 자격 증명(매 시간 자동 갱신)을 사용하여 장기 자격 증명 노출 위험이 없습니다. 애플리케이션은 EC2 인스턴스 메타데이터 서비스(IMDS)를 통해 자동으로 임시 자격 증명을 얻습니다. 액세스 키를 환경 변수나 코드에 하드코딩하는 방식은 자격 증명 노출 위험이 있으며 AWS 보안 모범 사례에 위배됩니다.

Q41. 회사가 AWS에서 멀티 계정 구조를 사용합니다. 개발 계정의 Lambda 함수가 프로덕션 계정의 S3 버킷에 읽기 전용 접근이 필요합니다. 가장 안전한 구성은?

A) 프로덕션 S3 버킷을 퍼블릭으로 설정 B) 프로덕션 계정에 크로스 계정 IAM 역할을 생성하고 개발 계정의 Lambda가 이 역할을 Assume C) 개발 계정에 프로덕션 S3 자격 증명을 복사 D) AWS Organizations SCP로 직접 접근 허용

정답: B

설명: 크로스 계정 접근의 모범 사례는 신뢰 정책(Trust Policy)을 통해 다른 계정의 엔터티가 Assume할 수 있는 IAM 역할을 생성하는 것입니다. 프로덕션 계정에 S3 읽기 전용 권한을 가진 역할을 생성하고, 개발 계정의 Lambda가 AssumeRole API를 호출하여 임시 자격 증명을 받습니다. 버킷을 퍼블릭으로 설정하면 보안 위험이 증가하고, 자격 증명을 복사하는 것은 장기 자격 증명을 여러 계정에 공유하는 나쁜 관행입니다.

Q42. 회사가 AWS Secrets Manager를 사용하여 데이터베이스 자격 증명을 관리하려 합니다. 주요 이점은?

A) 데이터베이스 성능을 자동으로 최적화 B) 데이터베이스 자격 증명을 자동으로 교체(Rotation)하고 암호화하여 저장 C) 데이터베이스 백업을 자동화 D) 무료로 무제한 비밀을 저장

정답: B

설명: AWS Secrets Manager의 핵심 기능은 데이터베이스 비밀번호, API 키 등의 자격 증명을 안전하게 저장하고 자동으로 교체(Rotate)하는 것입니다. RDS 비밀번호의 경우 지정된 스케줄(예: 30일마다)에 따라 자동으로 비밀번호를 변경하고 애플리케이션이 항상 최신 자격 증명을 사용하도록 합니다. 자격 증명은 KMS로 암호화되어 저장됩니다. AWS Parameter Store와 비교하면 Secrets Manager는 자동 교체 기능이 있지만 비용이 발생합니다.

Q43. 회사가 Amazon Cognito를 사용하여 모바일 앱의 사용자 인증을 구현하려 합니다. 소셜 로그인(Google, Facebook)도 지원해야 합니다. 어떤 Cognito 기능을 사용해야 합니까?

A) Cognito User Pools만 사용 B) Cognito Identity Pools만 사용 C) Cognito User Pools (인증) + Identity Pools (AWS 리소스 접근) D) IAM 사용자 직접 생성

정답: C

설명: Amazon Cognito는 두 가지 구성 요소를 제공합니다. User Pools는 사용자 디렉토리로 사용자 등록, 로그인, 소셜 ID 제공자(Google, Facebook, Amazon, Apple) 연동을 처리합니다. Identity Pools(Federated Identities)는 인증된 사용자에게 AWS 리소스(S3, DynamoDB 등)에 임시로 접근할 수 있는 AWS 자격 증명을 부여합니다. 두 서비스를 함께 사용하면 소셜 로그인부터 AWS 리소스 접근까지 완전한 인증/권한 부여 솔루션을 구현할 수 있습니다.

Q44. 보안 팀이 AWS 계정 전체의 리소스 구성을 지속적으로 모니터링하고 규정 준수 여부를 평가하려 합니다. 어떤 서비스가 가장 적합합니까?

A) Amazon CloudWatch B) AWS Config C) AWS CloudTrail D) Amazon Inspector

정답: B

설명: AWS Config는 AWS 리소스의 구성 변경 사항을 지속적으로 기록하고 평가하는 서비스입니다. 리소스가 원하는 구성(Config Rules)을 준수하는지 지속적으로 평가하며, 비준수 리소스에 대해 자동 수정(Auto Remediation) 조치를 취할 수 있습니다. 예를 들어 "S3 버킷에 퍼블릭 액세스를 허용하지 않아야 한다" 같은 규칙을 설정할 수 있습니다. CloudTrail은 API 호출 기록, CloudWatch는 성능 모니터링, Inspector는 취약점 스캔에 사용됩니다.

Q45. 회사가 VPC에서 인터넷으로 아웃바운드 트래픽을 허용하되, 인터넷에서 인바운드 연결을 허용하지 않는 구성이 필요합니다. 프라이빗 서브넷의 EC2 인스턴스에 필요한 구성은?

A) 인터넷 게이트웨이 (IGW)를 라우팅 테이블에 추가 B) NAT 게이트웨이를 퍼블릭 서브넷에 배치하고, 프라이빗 서브넷 라우팅 테이블에서 0.0.0.0/0을 NAT GW로 라우팅 C) Elastic IP를 EC2 인스턴스에 할당 D) 퍼블릭 서브넷으로 인스턴스 이동

정답: B

설명: NAT 게이트웨이(NAT GW)는 프라이빗 서브넷의 인스턴스가 인터넷으로 아웃바운드 연결(소프트웨어 업데이트, API 호출 등)을 할 수 있게 하면서 인터넷에서의 인바운드 연결을 차단합니다. NAT GW는 퍼블릭 서브넷에 배치하고, 프라이빗 서브넷의 라우팅 테이블에 기본 경로(0.0.0.0/0)를 NAT GW로 설정합니다. NAT GW는 IPv4 트래픽만 지원하며, IPv6에는 Egress-Only IGW를 사용합니다.

Q46. 회사가 AWS WAF를 사용하여 웹 애플리케이션을 보호합니다. 특정 국가의 IP에서 오는 트래픽을 차단하려 합니다. 어떤 WAF 규칙 유형을 사용해야 합니까?

A) Rate-based Rules B) Managed Rules C) Geo Match Rules D) IP Set Rules

정답: C

설명: AWS WAF의 지리 일치(Geo Match) 규칙을 사용하면 특정 국가 또는 지역에서 오는 웹 요청을 허용하거나 차단할 수 있습니다. WAF는 요청의 원본 IP 주소를 사용하여 국가를 결정합니다. Rate-based Rules는 특정 IP의 요청 속도가 임계값을 초과하면 차단하는 규칙, Managed Rules는 AWS 또는 AWS Marketplace에서 제공하는 사전 정의된 규칙, IP Set Rules는 특정 IP 또는 CIDR 범위를 차단하는 규칙입니다.

Q47. 회사가 EC2 인스턴스의 보안 취약점을 정기적으로 평가하고 CVE를 자동으로 감지하려 합니다. 어떤 서비스를 사용해야 합니까?

A) AWS Config B) Amazon Inspector C) AWS Trusted Advisor D) Amazon GuardDuty

정답: B

설명: Amazon Inspector는 EC2 인스턴스, 컨테이너 이미지, Lambda 함수의 소프트웨어 취약점(CVE)과 의도하지 않은 네트워크 노출을 자동으로 스캔하는 취약점 관리 서비스입니다. Amazon Inspector v2는 지속적으로 실행되며 새로운 CVE가 발표되면 자동으로 재평가합니다. AWS Config는 리소스 구성 준수, GuardDuty는 위협 탐지, Trusted Advisor는 보안 모범 사례 권장에 사용됩니다.

Q48. 회사가 AWS에서 HIPAA 규정 준수가 필요한 의료 애플리케이션을 운영합니다. PHI(Protected Health Information) 데이터가 포함된 S3 버킷을 보호하는 가장 중요한 구성은?

A) S3 버킷 정책으로 퍼블릭 액세스 차단 및 SSE-KMS 암호화 활성화 B) S3 버킷을 다른 리전으로 복제 C) S3 Transfer Acceleration 활성화 D) CloudFront로 콘텐츠 배포

정답: A

설명: HIPAA 준수를 위해 PHI 데이터를 포함한 S3 버킷에는 최소한 다음 구성이 필요합니다: (1) 퍼블릭 액세스 차단(Public Access Block)으로 모든 공개 접근 방지, (2) SSE-KMS로 저장 데이터 암호화, (3) 버킷 정책으로 최소 권한 접근 제어, (4) S3 액세스 로그 활성화, (5) CloudTrail로 모든 접근 감사. AWS는 HIPAA BAA(Business Associate Agreement)를 제공하며, S3가 HIPAA 적격 서비스에 포함됩니다.

Q49. 회사의 애플리케이션이 타사 API 키를 AWS Systems Manager Parameter Store에 저장합니다. API 키를 가장 안전하게 저장하는 방법은?

A) Standard 파라미터로 평문 저장 B) SecureString 타입으로 저장하여 KMS로 암호화 C) S3 버킷에 JSON 파일로 저장 D) EC2 환경 변수로 설정

정답: B

설명: AWS Systems Manager Parameter Store의 SecureString 파라미터는 KMS를 사용하여 값을 암호화하여 저장합니다. API 키, 비밀번호 등 민감한 정보는 반드시 SecureString으로 저장해야 합니다. 애플리케이션은 Parameter Store API를 통해 런타임에 값을 검색하며, IAM 정책으로 접근을 제어합니다. Standard 파라미터는 평문으로 저장되므로 민감한 정보에는 부적합합니다. S3와 EC2 환경 변수도 민감한 자격 증명 저장에는 보안상 취약합니다.

Q50. 회사가 AWS Organizations를 사용하여 여러 AWS 계정을 관리합니다. 모든 계정에서 특정 리전 이외의 AWS 서비스 사용을 방지하려 합니다. 어떤 도구를 사용해야 합니까?

A) IAM 정책 B) AWS Config 규칙 C) 서비스 제어 정책 (SCP, Service Control Policy) D) 보안 그룹

정답: C

설명: 서비스 제어 정책(SCP)은 AWS Organizations에서 멤버 계정에 적용할 수 있는 최고 수준의 권한 경계입니다. SCP는 계정 또는 OU(Organizational Unit)에 허용 또는 거부 권한 경계를 설정하며, 계정 내의 루트 사용자를 포함한 모든 IAM 엔터티에 적용됩니다. 특정 리전 이외의 서비스 사용을 방지하는 SCP를 구성하면 개별 계정의 IAM 정책 설정과 무관하게 해당 정책이 적용됩니다. IAM 정책은 단일 계정 내에서만 적용됩니다.

Q51. 회사가 CloudFront를 통해 콘텐츠를 배포합니다. S3 오리진에 대한 직접 액세스를 방지하고 CloudFront를 통해서만 콘텐츠에 접근하도록 하려 합니다. 어떤 기능을 사용해야 합니까?

A) S3 버킷을 퍼블릭으로 설정 B) CloudFront OAC(Origin Access Control) 또는 OAI(Origin Access Identity) 구성 C) S3 Transfer Acceleration 활성화 D) S3 버킷 정책에서 모든 IP 허용

정답: B

설명: CloudFront Origin Access Control(OAC, 권장 최신 방법) 또는 Origin Access Identity(OAI, 구 방법)를 사용하면 S3 버킷에 대한 직접 접근을 차단하고 CloudFront를 통해서만 콘텐츠에 접근하도록 할 수 있습니다. OAC/OAI는 CloudFront가 S3에 접근할 때 사용하는 특별한 IAM 엔터티로, S3 버킷 정책에서 이 엔터티만 접근 허용합니다. 이를 통해 사용자는 CloudFront URL을 통해서만 콘텐츠에 접근 가능하여 S3 직접 접근 URL로의 우회를 방지합니다.

Q52. 회사의 보안 팀이 AWS 환경에서 의심스러운 활동(예: 비정상적인 API 호출, 알 수 없는 IP에서의 로그인)을 자동으로 감지하려 합니다. 어떤 서비스가 가장 적합합니까?

A) AWS Config B) Amazon Macie C) Amazon GuardDuty D) AWS Security Hub

정답: C

설명: Amazon GuardDuty는 머신러닝과 위협 인텔리전스를 사용하여 CloudTrail 이벤트, VPC Flow Logs, DNS 로그를 분석하여 의심스러운 활동을 자동으로 감지합니다. 비정상적인 API 호출 패턴, 알려진 악성 IP에서의 접속, 자격 증명 침해 지표 등을 탐지합니다. AWS Security Hub는 GuardDuty, Inspector, Macie 등 여러 보안 서비스의 결과를 통합하는 중앙 보안 대시보드입니다. Macie는 S3의 민감 데이터 발견, Config는 구성 준수에 초점을 맞춥니다.

도메인 4: 비용 최적화 아키텍처 (Q53~Q65)

Q53. 회사가 24시간 365일 안정적으로 실행해야 하는 프로덕션 데이터베이스 서버가 있습니다. 가장 비용 효율적인 EC2 구매 옵션은?

A) 온디맨드 인스턴스 B) 스팟 인스턴스 C) 1년 약정 예약 인스턴스 (부분 선불) D) 3년 약정 예약 인스턴스 (전액 선불)

정답: D

설명: 24시간 365일 안정적으로 실행되는 프로덕션 데이터베이스에는 예약 인스턴스가 가장 비용 효율적입니다. 3년 약정 전액 선불은 온디맨드 대비 최대 72% 할인을 제공하며, 1년 약정보다 더 큰 할인율을 제공합니다. 스팟 인스턴스는 중단될 수 있어 프로덕션 DB에 부적합합니다. 실제로는 3년 약정이 너무 길다고 느끼면 1년 약정 전액 선불(최대 40% 할인)도 좋은 선택입니다. 온디맨드는 약정이 필요 없지만 가장 비쌉니다.

Q54. 회사가 S3에 대량의 로그 파일을 저장합니다. 로그는 처음 30일간 자주 조회되고, 그 이후에는 거의 접근하지 않습니다. 1년 이상 보관해야 합니다. 가장 비용 효율적인 S3 스토리지 전략은?

A) 모든 로그를 S3 Standard에 저장 B) S3 수명 주기 정책으로 0-30일 S3 Standard, 30-365일 S3 Standard-IA, 365일 이후 S3 Glacier Deep Archive C) 처음부터 S3 Glacier에 저장 D) 30일 이후 모든 로그 삭제

정답: B

설명: S3 수명 주기 정책(Lifecycle Policy)을 사용하면 데이터의 접근 패턴에 맞는 스토리지 클래스로 자동 전환하여 비용을 최적화할 수 있습니다. 자주 접근하는 초기 30일은 S3 Standard(빠른 접근), 가끔 접근하는 30-365일은 S3 Standard-IA(저렴한 접근 비용), 거의 접근하지 않는 1년 이후는 S3 Glacier Deep Archive(가장 저렴한 아카이브)를 사용합니다. 처음부터 Glacier에 저장하면 자주 접근하는 기간에 높은 검색 비용이 발생합니다.

Q55. 회사가 배치 처리 작업에 EC2를 사용합니다. 작업 중단에 내성이 있으며 최대 24시간까지 실행될 수 있습니다. 비용을 최소화하는 방법은?

A) 온디맨드 인스턴스로 항상 실행 B) 스팟 인스턴스와 스팟 플릿(Spot Fleet) 사용, 인터럽션 핸들링 구현 C) 예약 인스턴스 구매 D) AWS Fargate Spot 사용

정답: B

설명: 중단에 내성이 있는 배치 작업에는 스팟 인스턴스가 최적입니다. 스팟 인스턴스는 온디맨드 대비 최대 90% 저렴합니다. 스팟 플릿(Spot Fleet)을 사용하면 여러 인스턴스 유형과 AZ에서 스팟 인스턴스를 요청하여 가용성을 높일 수 있습니다. 중단 통보(2분 전 경고) 시 현재 진행 중인 작업을 체크포인트에 저장하고 다른 인스턴스에서 재개하는 인터럽션 핸들링을 구현하면 효과적입니다. AWS Fargate Spot은 컨테이너 워크로드에 적합합니다.

Q56. 회사가 AWS에서 여러 서비스를 사용합니다. 어느 서비스가 가장 많은 비용을 발생시키는지 파악하고, 향후 비용을 예측하려 합니다. 어떤 도구를 사용해야 합니까?

A) AWS Trusted Advisor B) AWS Cost Explorer C) AWS Config D) Amazon CloudWatch

정답: B

설명: AWS Cost Explorer는 AWS 비용과 사용량 데이터를 시각화하고 분석하는 도구입니다. 서비스별, 리전별, 태그별, 계정별로 비용을 분류하여 가장 많은 비용이 발생하는 서비스를 파악할 수 있습니다. 향후 3개월의 비용을 예측하는 기능도 제공합니다. 예약 인스턴스 권장 사항을 통해 추가 비용 절감 기회도 발견할 수 있습니다. Trusted Advisor는 비용 최적화 권장 사항을 제공하지만 상세한 비용 분석은 Cost Explorer가 담당합니다.

Q57. 회사가 Amazon S3에 대규모 비디오 파일을 저장합니다. 파일 크기는 평균 10GB이며, 업로드 중 실패 시 처음부터 다시 시작해야 하는 문제가 있습니다. 업로드 효율성을 높이는 방법은?

A) S3 Transfer Acceleration 활성화 B) S3 멀티파트 업로드(Multipart Upload) 사용 C) CloudFront를 통해 업로드 D) 파일을 작은 청크로 분할 후 하나씩 업로드

정답: B

설명: S3 멀티파트 업로드는 대용량 파일(100MB 이상 권장, 5GB 이상 필수)을 여러 파트로 분할하여 병렬로 업로드하는 기능입니다. 주요 이점은: (1) 병렬 업로드로 속도 향상, (2) 특정 파트 실패 시 해당 파트만 재업로드(전체 재시작 불필요), (3) 업로드 일시 중지 및 재개 가능, (4) 네트워크 문제로 인한 중단 위험 감소입니다. 멀티파트 업로드를 시작한 후 완료되지 않은 파트는 비용이 발생하므로, 수명 주기 정책으로 미완성 멀티파트 업로드를 자동 삭제하는 것이 좋습니다.

Q58. 회사가 개발/테스트 환경의 EC2 인스턴스를 업무 시간(평일 9시~18시)에만 실행하고 싶습니다. 비용 절감을 자동화하는 방법은?

A) 개발자에게 매일 수동으로 인스턴스를 시작/중지하도록 지시 B) AWS Instance Scheduler 또는 Lambda + EventBridge 규칙으로 자동화 C) 예약 인스턴스 구매 D) 인스턴스를 항상 실행하되 스팟 인스턴스 사용

정답: B

설명: AWS Instance Scheduler(AWS 솔루션) 또는 Lambda + Amazon EventBridge(CloudWatch Events) 조합을 사용하면 지정된 시간에 자동으로 EC2 인스턴스를 시작/중지할 수 있습니다. 평일 9시~18시만 실행하면 연간 약 76% 비용을 절약할 수 있습니다(주 45시간 실행 vs 168시간). EventBridge 규칙에 Cron 표현식으로 시작/중지 일정을 설정하고, Lambda 함수가 EC2 API를 호출하여 인스턴스를 제어합니다. 수동 방식은 사람의 실수 가능성이 있습니다.

Q59. 회사가 AWS Compute Savings Plans를 사용하려 합니다. 예약 인스턴스와 비교한 Savings Plans의 주요 장점은?

A) 더 큰 할인율 제공 B) 특정 인스턴스 패밀리, 리전에 얽매이지 않고 EC2, Lambda, Fargate에 걸쳐 유연하게 적용 C) 약정 기간이 없음 D) 자동으로 최적 인스턴스를 선택

정답: B

설명: Compute Savings Plans는 예약 인스턴스보다 유연한 할인 모델입니다. 특정 인스턴스 타입, 리전, OS에 제한되지 않고 EC2(어떤 인스턴스 패밀리, 리전도), Fargate, Lambda 전체에 걸쳐 적용됩니다. 특정 사용량(예: 시간당 10달러의 컴퓨팅 사용)을 1년 또는 3년 약정하고 온디맨드 대비 최대 66% 할인을 받습니다. 반면 EC2 Instance Savings Plans는 특정 인스턴스 패밀리와 리전에 한정되지만 최대 72% 할인을 제공합니다.

Q60. 회사가 AWS에서 데이터 전송 비용을 최소화하려 합니다. 비용 절감에 가장 효과적인 방법은?

A) 모든 서비스를 단일 리전에 배포 B) S3 Transfer Acceleration 사용 C) VPC 엔드포인트를 통해 VPC 내에서 AWS 서비스 접근 D) CloudFront를 통해 S3 접근

정답: C

설명: VPC 엔드포인트(게이트웨이 엔드포인트: S3, DynamoDB; 인터페이스 엔드포인트: 기타 서비스)를 사용하면 인터넷 게이트웨이나 NAT 게이트웨이를 통하지 않고 AWS 서비스에 접근할 수 있습니다. 이를 통해 데이터 전송 비용을 절약하고 보안을 강화합니다(트래픽이 AWS 네트워크 내에서만 이동). 예를 들어 EC2에서 S3로 데이터를 전송할 때 S3 게이트웨이 엔드포인트를 사용하면 데이터 전송 비용이 발생하지 않습니다. 게이트웨이 엔드포인트는 무료입니다.

Q61. 회사가 S3에 저장된 비정형 데이터를 분석하려 합니다. 데이터는 CSV 형식으로 저장되어 있으며, 분석 빈도는 낮습니다. 비용을 최소화하는 분석 방법은?

A) Redshift 클러스터를 항상 실행하여 쿼리 B) Amazon Athena로 S3 데이터 직접 쿼리 (서버리스, 스캔 데이터 기준 과금) C) EMR 클러스터를 항상 실행 D) EC2에 직접 분석 도구 설치

정답: B

설명: Amazon Athena는 서버리스로 인프라 관리가 없으며, 실제 스캔한 데이터 양(TB당 5달러)에 따라 과금됩니다. 분석 빈도가 낮은 경우 Redshift나 EMR처럼 클러스터를 항상 실행하는 것보다 훨씬 저렴합니다. 비용 최적화를 위해 Parquet 또는 ORC 형식으로 변환하면 스캔 데이터 양을 80-90% 줄여 비용을 대폭 절감할 수 있습니다. 데이터를 파티션 분할하면 쿼리가 필요한 파티션만 스캔하여 비용을 더욱 절약할 수 있습니다.

Q62. 회사의 애플리케이션이 EBS gp2 볼륨을 사용합니다. 성능 요구 사항은 일정하지만 현재 과도하게 프로비저닝되어 있습니다. 비용을 절감하는 방법은?

A) gp3로 업그레이드하고 필요한 IOPS/처리량만 설정 B) io2 볼륨으로 변경 C) 인스턴스 스토어로 마이그레이션 D) RAID 구성으로 여러 gp2 볼륨 사용

정답: A

설명: gp3는 gp2의 후속 세대로, gp2보다 최대 20% 저렴하면서 기본 3,000 IOPS와 125MB/s 처리량을 제공합니다. gp2는 볼륨 크기에 따라 IOPS가 자동으로 결정되어 필요 이상으로 과도하게 프로비저닝될 수 있습니다. gp3는 스토리지, IOPS, 처리량을 독립적으로 설정할 수 있어 필요한 만큼만 프로비저닝하여 비용을 절감할 수 있습니다. AWS는 gp2에서 gp3로의 마이그레이션을 권장하고 있으며, 다운타임 없이 볼륨 유형을 변경할 수 있습니다.

Q63. 회사가 CloudFront를 통해 S3 콘텐츠를 제공합니다. 오리진 S3 버킷으로의 직접 요청을 최소화하여 비용을 절감하려 합니다. 어떤 CloudFront 설정이 도움이 됩니까?

A) 캐시 TTL(Time-To-Live)을 최소화 B) 캐시 TTL을 최대화하여 캐시 히트율 향상 C) CloudFront 배포를 여러 개 생성 D) 오리진 응답 압축 비활성화

정답: B

설명: CloudFront의 캐시 TTL을 높이면 엣지 로케이션에서 콘텐츠를 더 오랫동안 캐시하므로 오리진 S3로의 요청(캐시 미스)이 줄어듭니다. 오리진으로의 요청이 줄면 S3 GET 요청 비용과 데이터 전송 비용이 감소합니다. 정적 콘텐츠(이미지, CSS, JS)는 변경이 드물므로 TTL을 길게(예: 1일, 1주) 설정하는 것이 적절합니다. 콘텐츠 업데이트 시에는 CloudFront 캐시 무효화(Invalidation)를 사용하여 즉시 최신 콘텐츠로 갱신할 수 있습니다.

Q64. 회사가 Amazon RDS를 사용하지만 비용이 높습니다. 분석을 통해 데이터베이스가 주로 야간에 사용되고 낮에는 거의 사용되지 않는다는 것을 발견했습니다. 비용을 절감하는 최선의 방법은?

A) 더 작은 인스턴스 크기로 다운그레이드 B) 온디맨드 RDS를 Amazon Aurora Serverless v2로 마이그레이션 C) 낮에 RDS 인스턴스를 수동으로 중지 D) RDS Multi-AZ 비활성화

정답: B

설명: Aurora Serverless v2는 트래픽에 따라 자동으로 스케일 업/다운되어 사용량이 적은 시간대에는 최소 용량(0.5 ACU)으로 운영되어 비용을 절감합니다. 야간에는 최대 용량, 낮에는 최소 용량으로 자동 조정됩니다. 일반 RDS는 인스턴스를 중지할 수 있지만 최대 7일 후 자동으로 다시 시작되며 이 경우 연결 끊김이 발생합니다. Aurora Serverless v2는 중단 없이 동적으로 스케일링하여 가변 트래픽 패턴에 최적화되어 있습니다.

Q65. 회사가 AWS 비용 최적화를 위해 사용되지 않는 리소스를 식별하려 합니다. 어떤 서비스가 미사용 EC2 인스턴스, 비어 있는 EBS 볼륨, 유휴 로드 밸런서를 자동으로 감지합니까?

A) Amazon CloudWatch B) AWS Cost Explorer C) AWS Trusted Advisor D) AWS Config

정답: C

설명: AWS Trusted Advisor는 비용 최적화 범주에서 미사용 EC2 인스턴스, 유휴 로드 밸런서, 사용되지 않는 EBS 볼륨, 비어 있는 Elastic IP, 사용되지 않는 예약 인스턴스 등을 자동으로 감지하여 권장 사항을 제공합니다. Business 또는 Enterprise Support 플랜에서는 모든 Trusted Advisor 검사를 이용할 수 있으며, API를 통해 자동화할 수 있습니다. Cost Explorer는 비용 분석과 예측에 특화되어 있고, AWS Config는 리소스 구성 준수에 초점을 맞춥니다.


시험 합격 전략

1. 시나리오 분석 방법

  • 문제에서 키워드를 찾으세요: "비용 효율적", "고가용성", "최소 다운타임", "서버리스"
  • 요구 사항을 RTO/RPO 기준으로 분류하세요
  • 공동 책임 모델최소 권한 원칙은 항상 고려하세요

2. 자주 출제되는 패턴

  • S3 + CloudFront: 정적 콘텐츠 전달
  • SQS: 느슨한 결합, 비동기 처리
  • Multi-AZ: 고가용성
  • Read Replica: 읽기 확장
  • ElastiCache: 반복 쿼리 캐시
  • Spot 인스턴스: 비용 절약 배치 작업

3. 핵심 서비스 비교

  • S3 Standard vs Standard-IA vs Glacier: 접근 빈도에 따라 선택
  • RDS Multi-AZ vs Read Replica: 고가용성 vs 성능
  • CloudFront vs Global Accelerator: 정적 콘텐츠 vs 동적 TCP/UDP
  • SQS vs SNS: 큐 vs 발행/구독
  • EC2 Reserved vs Spot vs On-Demand: 24/7 안정적 vs 배치 작업 vs 유동적