1단원 - Compute & Container & Serverless
1번

해석
회사는 기존 3계층 웹 아키텍처의 비용을 줄이고 싶다. 웹, 애플리케이션, DB 서버가 개발, 테스트, 운영 환경에서 EC2 인스턴스로 실행되고 있다. EC2 인스턴스는 피크 시간대에 평균 CPU 사용률 30%, 비피크 시간대에 10%다. 운영 EC2는 하루 24시간 돌아간다. 개발, 테스트 EC2는 매일 최소 8시간 돌아간다. 회사는 사용하지 않을 때 개발, 테스트 인스턴스를 자동으로 꺼지도록 자동화를 구현할 계획이다.
어떤 EC2 구매 옵션이 가장 비용 효율적으로 요구사항을 충족하는가?
A. 운영 EC2에 Spot 인스턴스 사용. 개발, 테스트 EC2에 Reserved 인스턴스 사용.
B. 운영 EC2에 Reserved 인스턴스 사용. 개발, 테스트 EC2에 On-Demand 인스턴스 사용.
C. 운영 EC2에 Spot 블록 사용. 개발, 테스트 EC2에 Reserved 인스턴스 사용.
D. 운영 EC2에 On-Demand 인스턴스 사용. 개발, 테스트 EC2에 Spot 블록 사용.
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
Amazon EC2, run 24, stop when they are not use, cost-effectively
2. 선지 속 핵심에 동그라미 치기
Spot, Reserved, Ondemand
📍cost-effectively 가 나올 때 - EC2 인스턴스 구매 옵션 구하기
불규칙 트래픽 → On-Demand
24/7 운영 → Reserved
중단 가능 → Spot
다양한 서비스 → Savings Plan
규정/라이선스/보안 → Dedivated
정답: 2
풀이: 상품 EC2는 하루종일 돌아가기 때문에 Spot 불가능
개발물, 테스트 EC2는 하루에 최소 8시간 돌리고, 안 쓸 때는 꺼 둬야함. → Spot이 적합
2번

해석
회사가 애플리케이션을 설계하고 있다.
이 앱은 API Gateway를 통해 정보를 받아서 Aurora PostgreSQL DB에 저장하는 Lambda 함수를 사용한다. 개념 증명(PoC) 단계에서 DB에 로드해야 하는 대용량 데이터를 처리하기 위해 Lambda 쿼타를 크게 늘려야 했다. 솔루션 아키텍트는 확장성을 높이고 설정 노력을 최소화하는 새로운 설계를 추천해야 한다.
A. Lambda 함수 코드를 EC2에서 실행되는 Apache Tomcat 코드로 교체한다. JDBC 드라이버를 사용해서 DB에 연결한다.
B. 플랫폼을 Aurora에서 DynamoDB Accelerator(DAX) 클러스터로 변경한다. DAX 클라이언트 SDK를 사용해서 기존 DynamoDB API 호출이 DAX 클러스터를 가리키도록 한다.
C. Lambda 함수 두 개를 설정한다. 하나는 정보를 수신하고, 다른 하나는 DB에 정보를 로드한다. 두 Lambda 함수를 SNS로 연결한다.
D. Lambda 함수 두 개를 설정한다. 하나는 정보를 수신하고, 다른 하나는 DB에 정보를 로드한다. 두 Lambda 함수를 SQS로 연결한다.
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
postgreSQL, increase the Lambda quotas, high volumes of data, improve scalability, minimize the configuration effort
2. 선지 속 핵심에 동그라미 치기
EC2, Tomcat, DynamoDB, Lambda, SNS, SQS
📍설명
postgreSQL: DB
Lambda quota: 람다 함수를 쓸 때 제한(ex- 15분이 넘는 작업은 람다로 못 함)
minimize the configuration effort: 설정 노력의 최소화
EC2: 한 서버
Tomcat: 아파치가 만든 web app server(WAS). 자바 앱을 실행할 때 쓰는 서버 소프트웨어
DynamoDB: DB
SNS: 메시지가 오는 즉시 Lambda를 바로 트리거
SQS: 메시지가 오면 큐에 쌓아두고 Lambda가 처리할 수 있는 만큼 꺼내 처리
정답: D
풀이: 최소한의 노력 필요, 람다는 서버리스고, DB는 이미 portgreSQL로 쓰고 있는 상황.
A의 EC2는 서버니까 제외, B의 DynamoDB를 새로 쓰면 최소 노력이 아니므로 제외.
SNS와 SQS를 비교해야 함. SNS에 대용량 데이터가 한 번에 몰리면 람다를 동시에 트리거해서 쿼타 초과 발생함.
SQS는 큐에 쌓고 람다가 처리할 여력이 되면 보냄. D가 정답.
3번

해석
회사는 결제 처리 애플리케이션을 만들고 실행하기 위해 Amazon ECS 클러스터와 Amazon RDS DB 인스턴스를 사용하려 한다.
회사는 규정 준수 목적으로 자체 온프레미스 데이터센터에서 애플리케이션을 실행할 것이다.
솔루션 아키텍트는 솔루션의 일부로 AWS Outposts를 사용하려 하고, 회사의 운영팀과 함께 애플리케이션을 구축하고 있다.
회사 운영팀의 책임에 해당하는 활동은? (3개 선택)
A. Outposts 랙에 안정적인 전원과 네트워크 연결을 제공하는 것
B. Outposts에서 실행되는 가상화 하이퍼바이저, 스토리지 시스템, AWS 서비스를 관리하는 것
C. 데이터센터 환경의 물리적 보안 및 접근 통제
D. 전원 공급 장치, 서버, Outposts 랙 내 네트워킹 장비를 포함한 Outposts 인프라의 가용성 유지
E. Outposts 구성 요소의 물리적 유지보수
F. 서버 장애 및 유지보수 이벤트를 대비해 ECS 클러스터에 여유 용량을 제공하는 것
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
ECS, RDS DB, on-premise, AWS outpost
📍AWS outpost
- 온프레미스 환경을 위해 AWS가 프라이빗 서버 기기를 직접 설치해줌
- 가상화 하이퍼바이저, 스토리지 시스템, AWS 서비스를 AWS가 제공해줌
- 전원 공급 장치, 서버, Outposts 랙 내 네트워킹 장비를 포함한 Outposts 인프라의 가용성, 서버 장애 및 유지보수 이벤트도 AWS가 관리함
- 사용자는 outpost 랙을 관리할 안전한 공간, 전원, 네트워크, 표면의 물리적인 유지보수(먼지 털기??) 만 해도 됨
정답: A, C, E
4번

해석
솔루션 아키텍트가 MySQL DB를 사용하는 복잡한 Java 애플리케이션을 구축하고 있다.
이 Java 애플리케이션은 Apache Tomcat에 배포되어야 하고 고가용성을 갖춰야 한다.
솔루션 아키텍트는 이 요구사항을 충족하기 위해 무엇을 해야 하는가?
A. AWS Lambda에 애플리케이션을 배포한다. Lambda 함수와 연결하기 위해 API Gateway API를 설정한다.
B. AWS Elastic Beanstalk을 사용해서 애플리케이션을 배포한다. 로드밸런싱 환경과 롤링 배포 정책을 설정한다.
C. 데이터베이스를 Amazon ElastiCache로 마이그레이션한다. 애플리케이션에서 접근할 수 있도록 ElastiCache 보안 그룹을 설정한다.
D. Amazon EC2 인스턴스를 시작한다. EC2 인스턴스에 MySQL 서버를 설치한다. 서버에 애플리케이션을 설정한다. AMI를 생성한다. 그 AMI로 Auto Scaling 그룹의 시작 템플릿을 만든다.
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
Java, MySQL, Tomcat, high available
2. 선지 속 핵심에 동그라미 치기
Lambda, AWS Elastic Beanstalk, load-balanced, ElastiCache, EC2, Install a MySQL, AMI
📍Tomcat과 Lambda 는 공존할 수 없다. (Lambda는 서버리스)
Tomcat: java 실행 서버 소프트웨어, 사용자의 서버가 계속 켜져 있으면서 요청을 기다려야 함
Lambda: 사용자의 서버 없이 요청이 올 때만 잠깐 실행되고 꺼짐
📍용어 설명
high available: 고가용성 = 서비스가 장애 없이 돌아감. 서버 하나가 죽어도 서비스가 죽지 않음
load-balanced: 과부하 방지를 위해 트래픽을 여러 서버에 나눠서 분산시키는 것
ElastiCache: 캐시 서비스는 DB가 아님. DB를 대체 불가
📍선지 D의 구조
EC2 (앱 + Tomcat)
└ Auto Scaling + AMI로 복제 가능 → 고가용성
EC2 (MySQL 직접 설치)
└ 그냥 서버 1대에 설치한 것 → 죽으면 끝
정답: B
풀이: DB가 존재하고 Java와 Tomcat에 배포되어야 한다. Tomcat이 있다면 사용자 서버가 있는 것이기 때문에 A의 Lambda 서버리스는 제외, C의 ElastiCache는 DB가 아니라서 마이그레이션 할 수 없다. 제외.
D는 가능하긴 하지만, 고가용성이 떨어진다.
B의 BeanStalk은 java/tomcat 환경을 기본으로 지원하고, 로드밸런싱 환경 설정과 롤링 배포로 고가용성을 바로 구성할 수 있음.
2단원 - Storage
1번

해석
회사가 Amazon S3 Standard 스토리지를 사용해서 백업 파일을 저장하고 있다. 파일은 1개월 동안 자주 접근된다. 하지만 1개월 이후에는 접근하지 않는다. 회사는 파일을 무기한으로 보관해야 한다.
가장 비용 효율적으로 요구사항을 충족하는 스토리지 솔루션은?
A. S3 Intelligent-Tiering을 설정해서 오브젝트를 자동으로 마이그레이션한다.
B. S3 Lifecycle 설정을 만들어서 1개월 후에 S3 Standard에서 S3 Glacier Deep Archive로 오브젝트를 전환한다.
C. S3 Lifecycle 설정을 만들어서 1개월 후에 S3 Standard에서 S3 Standard-IA로 오브젝트를 전환한다.
D. S3 Lifecycle 설정을 만들어서 1개월 후에 S3 Standard에서 S3 One Zone-IA로 오브젝트를 전환한다.
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
S3 Standard Storage, not access, keep...indefinitely
📍Storage Class
아래로 갈 수록 저비용
| Storage Class | 특징 |
| S3 Standard | - 자주 접근하는 데이터 - 3개 이상의 AZ에 복제 → 고가용성 |
| S3 Standard-IA | - 접근 빈도 낮음 - 3개 이상의 AZ에 복제 → 고가용성 - Standard보다 비용 절감 |
| S3 OneZone-IA | - 접근 빈도 낮음 - 3개 대신 1개의 AZ에만 복제 - Standard-IA보다 비용 절감 |
| S3 Intelligent-Tiering | - 접근 패턴이 불규칙하거나 변하는 데이터에 대해 스토리지 클래스를 자동으로 변경 - 3개 이상의 AZ에 복제 → 고가용성 |
| S3 Glacier Instant Retrieval | - 즉시 조회 가능 - 3개 이상의 AZ에 복제 |
| S3 Glacier Flexible Retrieval | - 조회 시간 1분~12시간 - 빠른 복원(1~5분), 일반(3~5시간), 대량(5~12시간) - 3개 이상의 AZ에 복제 |
| S3 Glacier Deep Archive | - 조회 시간 5~12시간 - 3개 이상의 AZ에 복제 |
정답: B
풀이: 1개월 후 사용되지 않고 무기한 보관해야 하면 가장 저비용에 아카이브 저장 방식인 Glacier class 종류로 골라야한다.
2번

해석
회사가 AWS에서 웹 애플리케이션을 운영하고 있다. 단일 EC2 인스턴스가 사용자가 업로드한 문서를 EBS 볼륨에 저장하고 있다. 더 나은 확장성과 가용성을 위해 회사는 아키텍처를 복제해서 다른 AZ에 두 번째 EC2 인스턴스와 EBS 볼륨을 만들고, 둘 다 ALB 뒤에 배치했다. 이 변경 후 사용자들이 보고했다. 웹사이트를 새로고침할 때마다 문서의 일부만 보이고, 모든 문서를 동시에 볼 수 없다고.
사용자가 모든 문서를 한 번에 볼 수 있도록 솔루션 아키텍트는 무엇을 제안해야 하는가?
A. 두 EBS 볼륨 모두 모든 문서를 갖도록 데이터를 복사한다.
B. ALB가 문서가 있는 서버로 사용자를 연결하도록 설정한다.
C. 두 EBS 볼륨의 데이터를 Amazon EFS로 복사한다. 새 문서를 EFS에 저장하도록 애플리케이션을 수정한다.
D. ALB가 두 서버 모두에 요청을 보내도록 설정한다. 각 문서를 올바른 서버에서 반환한다.
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
single EC2, EBS, duplicated, another AZ, never all of the documents at the same time
2. 선지 속 핵심에 동그라미 치기
copy ... both EBS volumes, ALB, direct to server, EBS → EFS, save new documents to EFS, ALB, both servers
📍EBS와 EFS의 차이
EBS: 하나의 EC2에 하나의 EBS, 블록 스토리지
EFS: 여러개의 EC2가 공유할 수 있는 파일 스토리지
📍용어 설명
ALB (Application Load Balancer): L7 계층에서 동작하는 로드밸런서, HTTP/HTTPS 트래픽을 여러 서버에 분산시킴. URL 경로, 헤더 기반으로 하루팅할 수 있어서 웹 서비스에 가장 많이 쓰임.
정답: C
풀이: 현재 사용 중인 EBS는 EC2와 1대1 매칭이기 때문에 두 EBS 간의 데이터는 다르고, 각 EC2의 사용자들은 하나의 EBS 내용만 볼 수 있다. EFS로 마이그레이션 하면 공유 스토리지이기 때문에 각 EC2에서 같은 내용을 볼 수 있다.
3번

해석
회사가 AWS에서 여러 Windows 워크로드를 운영하고 있다.
직원들은 두 개의 EC2 인스턴스에서 호스팅되는 Windows 파일 공유를 사용한다.
파일 공유는 서로 데이터를 동기화하고 중복 복사본을 유지한다.
회사는 사용자가 현재 파일에 접근하는 방식을 유지하면서 고가용성과 내구성을 갖춘 스토리지 솔루션을 원한다.
솔루션 아키텍트는 요구사항을 충족하기 위해 무엇을 해야 하는가?
A. 모든 데이터를 S3로 마이그레이션한다. 사용자가 파일에 접근할 수 있도록 IAM 인증을 설정한다.
B. S3 File Gateway를 설정한다. 기존 EC2 인스턴스에 S3 File Gateway를 마운트한다.
C. 파일 공유 환경을 Multi-AZ 구성의 FSx for Windows File Server로 확장한다. 모든 데이터를 FSx for Windows File Server로 마이그레이션한다.
D. 파일 공유 환경을 Multi-AZ 구성의 Amazon EFS로 확장한다. 모든 데이터를 Amazon EFS로 마이그레이션한다.
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
Windows, preserves how users currently access the files
2. 선지 속 핵심에 동그라미 치기
FSx for Windows File Server, Multi-AZ
📍S3 File Gateway
- S3를 파일처럼 접근할 수 있게 해주는 브리지 서비스
- 실제 데이터는 S3에 저장됨
- Windows 고유 기능(AD 인증, 파일 잠금 등) 미지원
📍FSx for Windows File Server
- Windows 전용 완전 관리형 파일 스토리지
- SMB 프로토콜 네이티브 지원, Microsoft AD 완벽 지원
- Multi-AZ 구성으로 고가용성 제공
정답: C
풀이: Windows 파일 공유 환경은 SMB 프로토콜이다. 이걸 유지해야 한다.
A의 S3는 SMB와 파일 공유 방식이 다르므로 기존 방식 유지가 불가능하다.
B의 S3 gateway는 SMB를 부분적으로 지원하지만, 윈도우 고유 기능(AD 인증, 파일 잠금)은 미지원
D는 EFS Linux 기반 NFS 프로토콜이라서 Windows에 적합하지 않다.
C의 FSx for Windows File Server는 SMB를 지원하는 윈도우 전용 파일 스토리지라서 기존 방식을 유지할 수 있다.
3단원 - Database
1번

해석
한 회사가 데이터 과학자들에게 회사의 운영용 Amazon RDS PostgreSQL 데이터베이스에 대한 거의 실시간 읽기 전용 접근을 제공하려 합니다.
현재 데이터베이스는 Single-AZ로 구성되어 있습니다.
데이터 과학자들은 운영 DB에 영향을 주지 않는 복잡한 쿼리를 사용합니다.
회사는 고가용성 솔루션이 필요합니다.
가장 비용 효율적인 솔루션은?
A. 데이터 과학자들을 위해 유지보수 시간에 기존 운영 DB를 스케일 업한다.
B. Single-AZ에서 더 큰 Secondary Standby 인스턴스를 가진 Multi-AZ Instance 배포로 변경한다. 데이터 과학자들에게 Secondary 인스턴스 접근을 제공한다.
C. Single-AZ에서 Multi-AZ Instance 배포로 변경한다. 데이터 과학자들을 위해 추가 Read Replica 2개를 제공한다.
D. Single-AZ에서 읽기 가능한 Standby 인스턴스 2개를 가진 Multi-AZ Cluster 배포로 변경한다. 데이터 과학자들에게 읽기 엔드포인트를 제공한다.
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
Amazon RDS, read-only, Single-AZ, highly available
2. 선지 속 핵심에 동그라미 치기
Multi-AZ instance deployment, Multi-AZ cluster deployment, two readable standby
📍Multi-AZ Instance Deployment
- Standby는 읽기와 쓰기 불가능 - 순수 대기 목적임
- 만약 Primary가 오류나면 Standby가 Primary가 되고, Primary는 Standby가 됨
📍Multi-AZ Cluster Deployment
- 1개의 Primary(AZ-b) + 2개의 Replica(AZ-a, AZ-c)로 구성된 클러스터
- 읽기(Read)는 Replica에서도 처리 가능 → 부하 분산
- 쓰기(Write)는 Primary에서만 처리
정답: D
풀이: 고가용성을 위해 멀티 AZ가 되어야 한다. A 제외.
read-only인데, Multi-AZ instance deployment의 standby는 read와 write 둘 다 못한다. B, C 제외.
2번

해석
한 회사가 Application Load Balancer 뒤에 있는 Amazon EC2 인스턴스에서 이커머스 애플리케이션을 운영합니다.
인스턴스는 여러 AZ에 걸친 Auto Scaling 그룹에서 CPU 사용률 지표 기반으로 스케일링됩니다.
이커머스 앱은 트랜잭션 데이터를 대형 EC2 인스턴스에 호스팅된 MySQL 8.0 DB에 저장합니다.
앱 부하가 증가할수록 DB 성능이 급격히 저하됩니다. 앱은 쓰기보다 읽기 요청이 훨씬 많습니다.
회사는 예측 불가능한 읽기 workload를 자동으로 스케일링하면서 고가용성을 유지하는 솔루션이 필요합니다.
A. 단일 노드로 Amazon Redshift 사용
B. Single-AZ RDS 배포 + 다른 AZ에 Reader 인스턴스 추가
C. Multi-AZ Aurora 배포 + Aurora Auto Scaling + Aurora Replica 구성
D. EC2 Spot 인스턴스로 Amazon ElastiCache for Memcached 사용
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
MySQL, more read requests than write, autoscaling
2. 선지 속 핵심에 동그라미 치기
RDS, Aurora, Single-AZ, Multi-AZ, AutoScaling
📍MySQL, PostgreSQL을 지원하는 DB 타입
- RDS, Aurora
- Aurora가 성능과 가용성 더 좋음
정답: C
풀이: MySQL DB이기 때문에 RDS 아니면 Aurora다. A, D 제외.
쓰기보다 읽기를 많이 해야 하고 고가용성을 보장해야 하기 때문에 AZ가 멀티-AZ여야 함. 정답은 C
3번

해석
한 소셜 미디어 회사가 유저 프로필, 관계, 상호작용 데이터베이스를 AWS Cloud에 저장하려 합니다. DB의 변경사항을 모니터링하는 앱이 필요합니다. 앱은 데이터 엔터티 간의 관계를 분석하고 유저에게 추천을 제공해야 합니다.
운영 오버헤드가 가장 적은 솔루션은?
A. 정보 저장: Amazon Neptune + 변경 처리: Kinesis Data Streams
B. 정보 저장: Amazon Neptune + 변경 처리: Neptune Streams
C. 정보 저장: Amazon QLDB + 변경 처리: Kinesis Data Streams
D. 정보 저장: Amazon QLDB + 변경 처리: Neptune Streams
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
profile, relationship, interaction, monitor, analyze
2. 선지 속 핵심에 동그라미 치기
Neptune
📍Neptune
📍Kinesis
📍Quantum Ledger
정답: B
풀이: 상호작용, 관계를 나타내는 건 그래프db인 Neptune이다. C, D 제외.
오버헤드를 줄여야 하니까 Neptune+Kinesis Data Stream 조합 보다는 Neptune+Neptune Stream 조합이 좋음.
정답은 B.
4번

해석
한 회사가 300개 이상의 글로벌 웹사이트와 앱을 운영합니다.
매일 30TB 이상의 클릭스트림 데이터를 분석할 플랫폼이 필요합니다.
클릭스트림 데이터를 전송하고 처리하려면?
A. AWS Data Pipeline으로 S3에 아카이브 + EMR 클러스터로 분석
B. EC2 Auto Scaling 그룹으로 데이터 처리 + S3 data lake → Redshift 분석
C. CloudFront로 캐시 + S3 저장 + S3 객체 추가 시 Lambda로 처리
D. Kinesis Data Streams로 수집 + Kinesis Data Firehose로 S3 data lake 전송 + Redshift로 분석
풀이 순서
1. 문제 지문 속 핵심에 동그라미 치기
analyze, 30TB clickstream
2. 선지 속 핵심에 동그라미 치기
Redshift, Kinesis Data Stream
📍Redshift
📍Kinesis Data Stream
정답: D
풀이:
'자격증 따기 > AWS-SAA C03' 카테고리의 다른 글
| [AWS SAA-C03] 3단원 Database (0) | 2026.03.26 |
|---|---|
| [AWS SAA-C03] 2단원 Storage (0) | 2026.03.25 |
| [AWS SAA-C03] 1단원 Compute & Container & Serverless (0) | 2026.03.24 |
| [AWS-SAA03 공부법] 알아야 할 서비스 (0) | 2026.03.24 |
| AWS SAA-C03 공부법 [알아야 할 기본 지식] (0) | 2026.03.20 |