Q1
회사는 여러 대륙의 도시에서 온도, 습도, 기압 데이터를 수집하고 있습니다. 각 사이트마다 하루 평균 500GB의 데이터를 수집하며, 모든 사이트는 고속 인터넷 연결을 가지고 있습니다.
회사는 이 모든 데이터를 가능한 한
빠르게 단일 Amazon S3 버킷에 집계하길 원하며,
운영 복잡성은 최소화해야 합니다.
이 요구 사항을 충족하는 최선의 방법은 무엇입니까?
포인트: S3 버킷 사용, 운영 복잡성은 낮게, 500GB 정도 생
S3 Transfer Acceleration
CloudFront 엣지 위치를 사용해 글로벌 사용자의 업로드 속도 향상하는 기술
멀티파트 업로드
대용량 파일을 쪼개 병렬 업로드해 전송 속도 및 복원력 향상
S3 교차 리전 복제
S3 객체를 다른 리전으로 자동 복사하는 기능(운영 복잡성 증가)
AWS Sonwball Edge Storage Optimized 디바이스 작업
테라바이트 급 데이터를 AWS로 물리적으로 이송 → 500기가는 불필요\
EBS Snapshot
EBS 볼륨 백업을 위한 스냅샷 기능. 복원 시간이 필요하고 S3랑은 무관
Q2
회사는 독점 애플리케이션의 로그 파일을 분석할 수 있는 기능이 필요합니다. 로그는 Amazon S3 버킷에 JSON 형식으로 저장되어 있습니다. 쿼리는 단순하고 필요할 때마다 실행됩니다. 솔루션 아키텍트는
기존 아키텍처에 최소한의 변경만으로 분석을 수행해야 합니다.
운영 오버헤드가 가장 적은 방법은 무엇입니까?
기존 아키텍처에 최소한의 변경만으로 → 운영 복잡성 증가 원하지 않음
A. Amazon Redshift를 사용해 모든 로그를 적재하고 SQL 쿼리 실행
데이터 적재 및 스키마 설계 필요, 비용 증가 운영 복잡
B. Amazon CloudWatch Logs에 로그 저장 후 콘솔에서 SQL 쿼리 실행
C. Amazon Athena를 사용해 S3의 데이터를 직접 쿼리
D. AWS Glue와 Amazon EMR을 활용한 Spark 클러스터에서 쿼리 실행
Redshift
완전관리형 데이터웨어하우스, 페타바이트 규모 데이터 분석
사용 예시: OLAP 분석, BI 툴 연동
장점
고성능 분석
S3, DynamoDB 연동 + S3 데이터 직접 쿼리 가능
단점
클러스터 프로비저닝 필요 → 서버리스 아님
비용이 비쌈
CloudWatch Logs
로그 수집, 모니터링, 실시간 스트리밍 처리까지 지원하는 중앙 로그 관리 서비스
장점
EC2, Lambda, VPC 등 다양한 서비스 로그 집계
Log Insights로 실시간 검색 및 시각
OpenSearch와 연동 가능
단점
오래된 로그 장기 보관에 비용 비효율적
S3의 로그를 CloudWatch로 이전해야 하므로 구조 변경 필수
Amazon Athena
S3의 데이터를 SQL로 분석하는 서버리스 쿼리 서비스
S3에 저장된 파일을 직접 SQL로 쿼리할 수 있는 것
기존 구조 변경없이 즉시 사용 가능 + 운영 오버헤드도 적다
JSON 형식도 지원하며, 복잡한 분석 없이 간단한 on-demand 분석
장점
인프라 관리 불필요, 쿼리 실행 수에 따라 비용청구
Parquet, ORC 등 압축 포맷 지원으로 비용 절감
Glue와 통합 가능
단점
복잡한 쿼리 및 대규모 처리 시 성능 한계
키워드: SQL 쿼리로 S3 분석, 온디멘드, S3 구조변경 필요없음, 운영 복잡성 비용 감소
AWS Glue
S3 및 다양한 데이터 소스로부터 ETL(추출 변환 적재) 수행 가능한 서버리스 데이터 통합 서비스
장점
크롤러를 통한 자동 스키마 인식
Athena와 통합 가능한 데이터 카탈로그 생성
JDBC로 RDS/Redshift 등 다양한 소스 지원
단점
작업 지연 발생 가능(즉시 보다 배치 지향)
운영/비용 증가
AWS EMR
Apache Hadoop, Spark, Hive, Presto 등을 AWS 상에서 실행하는 빅데이터 처리 플랫폼
장점
대규모 데이터 분석에 최적화
EC2 기반으로 커스텀 설정 가능
단점
클러스터 수동 운영 필요
서버리스 아님
운영/비용 증가
Q3
회사는 AWS Organizations를 사용하여 여러 부서의 여러 AWS 계정을 관리합니다. 관리 계정에는 프로젝트 보고서가 포함된 Amazon S3 버킷이 있습니다. 회사는 이 S3 버킷에 대한 액세스를 AWS Organizations의 조직 내 계정 사용자로만 제한하려고 합니다.
최소한의 운영 오버헤드로 이러한 요구 사항을 충족하는 솔루션은 무엇입니까?
A. 조직 ID에 대한 참조와 함께 aws:PrincipalOrgID 전역 조건 키를 S3 버킷 정책에 추가합니다.
PrincipalOrgID 는 AWS Oraganization의 조직 ID를 기준으로 접근을 제한하는 조건 키
한 줄 정책으로 조직 내 모든 계정 사용자에 대한 접근을 허용할 수 있어 운영 오버헤드가 최소
B. 각 부서에 대한 조직 단위(OU)를 만듭니다. aws:PrincipalOrgPaths 전역 조건 키를 S3 버킷 정책에 추가합니다.
조직 단위를 만들어서 사용하지만, OU마다 따로 관리해야 하므로 오버헤드 증가
C. AWS CloudTrail을 사용하여 계정 이벤트를 모니터링하고 S3 버킷 정책을 업데이트합니다.
비효율적이며 자동화 되지 않음, → 운영 오버헤드 큼
D. 각 사용자에게 태그를 지정하고 aws:PrincipalTag 조건 키를 버킷 정책에 추가합니다.
매 사용자마다 태그 관리 필요, 정책도 복잡해지고 운영 오버헤드 큼
AWS CloudTrail
AWS 계정 내에서 발생하는 모든 API 호출을 기록하는 서비스
장점
API 호출 감사를 통한 보안 로그 추적
S3/CloudWatch Logs로 자동 연동 가능
조직 단위 설정 시 조직 전체 계정 추적 가능
단점
설정만으로는 리소스 변경 추적 불완전(AWS Config 병행 필요)
AWS Organizations
여러 AWS 계정을 통합 관리할 수 있는 서비스. 루트 계정, 조직 단위, 서비스 제어 정책
S3 버킷 정책
IAM 정책처럼 JSON 형식으로 작성되며, S3 리소스에 대한 접근 권한을 정의함
장점
특정 IP, 계정, 조건자 기반 제어 가능
교차 계정 액세스 허용 가능
단점
복잡한 로직이 많아질 경우 관리 어려움
IAM 정책과 충돌 시 디버기 어려움
aws:PrincipalOrgID
IAM 정책 조건에서 사용되는 전역 조건 키.
특정 조직 ID에 속한 사용자나 역할만 허용할 수 있음 → 한 번에 관리할수있음
aws:PrincipalOrgPaths
요청 주체가 속한 조직 경로 기반으로 접근 제어
이건 특정 OU또는 하위 OU만 선택적 제한 가능
Q4 애플리케이션은 VPC의 Amazon EC2 인스턴스에서 실행됩니다
한 애플리케이션이 VPC 내 EC2 인스턴스에서 실행 중이며, Amazon S3 버킷에 저장된 로그를 처리합니다.
EC2 인스턴스는 인터넷 연결 없이 해당 S3 버킷에 접근해야 합니다.
다음 중 Amazon S3에 프라이빗 네트워크 연결을 제공하는 것은 무엇입니까?
VPC 내부 EC2 인스턴스, 인터넷 연결 없이 S3 버킷 접근 → VPC Gateway
A. S3 버킷에 대한 게이트웨이 VPC 엔드포인트를 생성한다 B. Amazon CloudWatch Logs로 로그를 스트리밍하고 S3로 내보낸다
로그 스트리밍 경로를 바꾸는 것으로, 문제 요구사항이랑 다름 C. EC2 인스턴스에 인스턴스 프로파일을 생성하여 S3 접근을 허용한다
인스턴스 프로파일은 인증 권한만 제공, 네트워크는 아님 D. PrivateLink가 설정된 API Gateway를 사용해 S3 엔드포인트에 접근한다
PrivateLink는 Interface VPC Endpoint에 해당 S3는 Gateway Endpoint임
VPC Endpoint(가상 프라이빗 연결)
AWS 서비스와 인터넷을 거치지 않고 통신할 수 있는 VPC 내부 연결
Interface VPC Endpoint: 대부분의 AWS 서비스 지원(ENI로)
장점
PrivateLink 기반으로 대부분 서비스 연결 가능
REST API와 같은 애플리케이션 통신도 가능
단점
요금 발생
서브넷마다 ENI 생성 필요
Gateway VPC Endpoint: S3, DynamoDB 전용
장점
비용 효율적(무료)
NAT gateway 불필요
단점
S3와 DynamoDB 만 가능
privateLink
다른 VPC의 서비스에 프라이빗하게 연결하는 기술
장점
VPC 피어링 없이도 서비스 연결
접그을 서비스별로 제한 가능
단점
ENI 기반이라 복잡성 및 비용 있음
EC2 Instance Profile
EC2 인스턴스에 IAM 역할을 할당하여 코드에서 자격 증명 없이 AWS 서비스 접근 가능하게 함
IAM ROLE + Instance Profile
장점
앱에서 AWS 자격 증명 노출 없음
자동으로 임시 자격 증명 제공
단점
역할 변경 시 재시작 필요
“EC2 Instance Profile은 IAM Role을 인스턴스에 할당하여 자격 증명 없이 AWS API에 접근 가능하게 합니다”
Q5 사용자 업로드 문서를 EC2 + EBS 기반 웹 애플리케이션에서 관리 중
회사는 사용자 업로드 문서를 Amazon EBS 볼륨에 저장하는 단일 Amazon EC2 인스턴스에서 웹 애플리케이션을 호스팅하고 있습니다.
더 나은 확장성과 가용성을 위해 이 아키텍처를 복제하여 **다른 가용 영역(AZ)**에 두 번째 EC2 인스턴스와 EBS 볼륨을 생성하고 Application Load Balancer 뒤에 배치했습니다.
이 변경 이후, 사용자들은 웹사이트를 새로고침할 때마다 문서의 일부나 서로 다른 하위 집합만 보이지만, 모든 문서를 한 번에 보지 못하는 현상이 발생했습니다.
모든 사용자가 항상 모든 문서를 볼 수 있도록 하려면 무엇을 해야 합니까?
핵심
두 인스턴스의 EBS가 서로 독립된 스토리지
→ 파일 공유 시스템을 사용하는 것 EFS(Elastic File System) 존재
여러 인스턴스에서 동시에 마운트 할 수 있는 분산 네트워크 파일 시스템 가용성 확정성 모두 보장
여러 AZ에 존재하는 EC2도 안정적인 파일공유가능
A. 두 EBS 볼륨에 모든 문서를 복사합니다.
수동으로 데이터 복사는 동기화 어렵고 오버헤드 아주 크게 발생
B. 문서가 있는 서버로 사용자를 유도하도록 ALB를 구성합니다.
사용자를 특정 서버로 유도하는 건 로드밸런싱의 목적에 반함
C. 두 EBS 볼륨의 데이터를 Amazon EFS로 복사하고, 애플리케이션이 새 문서를 EFS에 저장하도록 수정합니다.
D. 두 서버 모두에 요청을 보내도록 ALB를 구성하고 올바른 서버에서 문서를 반환합니다.
양쪽 서버 모두에 요청하면 성능 저하
Amazon EFS
NFS 기반의 완전관리형 공유 파일 시스템, 다수의 EC2 인스턴스에서 동시에 마운트 가능
장점
멀티 AZ 지원: 가용성과 내구성 우수
리눅스 기반 다중 인스턴스에서 동시 마운트 가능
서버리스 + 확장성
단점
비용이 상대적으로 높음
윈도우에서는 FSx 사용 필요
EBS
EC2 전용 블록 스토리지. 한 AZ 내에서 EC2 인스턴스에 연결 가능
AZ 종속적인 블록 스토리
장점
고성능, 낮은 지연 시간 저장소 제공
스냅샷 기능으로 백업 가능
암호화 지원
단점
AZ 제한: 단일 AZ에서만 사용 가능
여러 EC2 간 공유 볼구
ALB(Application Load Balancer)
7계층 기반의 로드밸런서. 라우팅 및 WAF 연동 지원
장점
헤더, 경로 기반 라우팅 지원
상태 확인 통해 정상 인스턴스에만 트래픽 전달
AWS WAF, CloudFront 등과 통합 가능
단점
단순 TCP 수준 로드밸런싱은 NLB가 더 적합
멀티 AZ 아키텍쳐
동일 리전 내 2개 이상의 AZ에 리소스를 배치하여 가용성 확보
EC2, RDS, EFS 등 AZ 간 이중화 배치
Auto Scaling, ALB와 함께 사용 시 고가용성 극대
Q6. 대용량 비디오 파일을 최소한의 네트워크 대역폭으로 S3에 마이그레이션
회사는 **NFS(Network File System)**를 사용하여 온프레미스 NAS(Network Attached Storage)에 대용량 비디오 파일(1MB~500GB)을 저장하고 있으며, 총 스토리지는 70TB입니다.
이제 이 데이터를 Amazon S3로 마이그레이션하려고 합니다.
요구 사항은 다음과 같습니다:
- 가능한 한 빠르게 마이그레이션
- 최소한의 네트워크 대역폭 사용
어떤 솔루션이 가장 적합합니까?
A. IAM 역할과 AWS CLI를 사용해 로컬에서 S3로 파일을 직접 복사
일반적인 복사는 오래걸리고 대역폭도 많이 잡아먹음
B. Snowball Edge 장비를 주문해 오프라인으로 데이터 전송 후 AWS로 반납
70TB의 경우는 이게 맞음
C. S3 파일 게이트웨이를 배포해 NFS 공유로 연결 후 데이터 전송
S3 파일 게이트웨이는 지속적인 파일 공유용으로 적합, 대규모 마이그레이션은 부적합
D. Direct Connect 연결 후 S3 파일 게이트웨이를 통해 전송
Direct Connect는 고정된 네트워크 대역폭을 확보하는 데는 좋지만, 초기 설정 시간도 오래 걸리고 비용이 높음
S3 File Gateway 온프레미스 애플리케이션이 S3 객체 스토리지를 파일 시스템처럼 사용할 수 있도록 해주는 하이브리드 스토리지 서비스 장점
- 로컬에서 자주 사용하는 데이터를 캐시에 저장하여 지연시간 최소화
- SMB, NFS 프로토콜 지원
- S3 Lifecycle 정책 연동 가능
단점
- 온프레미스에 게이트웨이 어플라이언스를 배포해야 함
- 고성능 IO에는 적합하지 않음
시험 포인트 문장
S3를 로컬 파일 공유처럼 지속적으로 자주 사용하려면? → S3 File Gateway
Direct Connect
온프레미스 데이터 센터와 AWS 간에 전용 네트워크 회선을 통해 연결하는 서비스
장점
- 일관된 네트워크 성능 제공
- 인터넷 거치지 않음
- Direct Connect Gateway를 통해 다지역 VPC 연동 가능
단점
- 설치 및 운영 비용 존재
- 장애 복구를 위해 VPN 백업 권장
시험 포인트 문장:
- “Direct Connect는 온프레미스와 AWS 간에 전용 고속 네트워크를 제공하며, Direct Connect Gateway로 여러 리전의 VPC를 연결할 수 있습니다
- “인터넷 대역폭 부담을 줄이기 위해 백업 트래픽을 Direct Connect로 우회”
Q7. 회사는 대량 메시지를 수집 및 처리하는 아키텍처를 설계하려고 합니다
회사는 들어오는 메시지를 수집하는 애플리케이션을 운영하고 있으며,
수십 개의 애플리케이션과 마이크로서비스가 이 메시지를 빠르게 소비합니다.
메시지 수는 급격하게 변하며, 초당 최대 100,000개까지 증가할 수 있습니다.
회사는 아키텍처를 분리(Decoupling) 하고, 확장성(Scalability) 을 확보하길 원합니다.
어떤 솔루션이 가장 적합합니까?
핵심
대량 트래픽, 빠른 확장, 애플리케이션 분리(Decoupling)
Amazon SNS + 여러 SQS Queue 구독 구조
Producer와 Consumer를 완전히 분리할 수 있으며,
여러 소비자가 병렬적으로 메시지를 읽을 수 있어서 확장성이 뛰어남
SNS → 다수의 SQS 구독자 구조는 고성능 마이크로서비스 아키텍쳐에서 일반적으로 사용됨
A. Amazon Kinesis Data Analytics를 사용하여 메시지를 유지하고 처리하도록 구성
Kinesis Data Analytics는 스트리밍 SQL 분석에 적합. 메시지 브로커 아키텍처에는 부적합
B. EC2 Auto Scaling 그룹에 수집 애플리케이션을 배포하고 CPU 기반 스케일링 구성
EC2 + Auto Scaling만으로는 수신 메시지를 분리하지 못하므로 결합도 높음
C. Kinesis Data Stream에 단일 샤드를 사용하고 Lambda + DynamoDB로 처리
Kinesis 단일 샤드는 초당 처리량이 제한적(샤드당 최대 1MB/s 또는 1000레코드/s). 초당 10만건에는 부적합
D. SNS 주제에 메시지를 게시하고, 여러 SQS 구독을 통해 소비 애플리케이션이 처리하도록 구성
SNS
발행/구독 메시징 서비스
주체에 메시지를 게시하면 여러 구독자에게 동시에 전달
장점
- 푸시 기반, 다수 구독자에 동시 전송
- Email, SMS, Lambda, SQS 등 다양한 전송 지원
단점
- 메시지 순서 보장 불가
- 전송 실패 시 Dead-Letter Queue 직접 설정 필요
SQS
분산형 메시지 큐 서비스로, 생산자와 소비자 간 비동기 메시지 처리
장점
- 표준/FIFO 큐 지원 → 순서 보장 필요 여부에 따라 선택 가능
- 확장성 높고, 메시지 일시 저장 및 재시도 가능
단점
- 소비자에서 직접 메시지 Pull 처리 필요(푸시 아님)
SNS + SQS 구조
SNS는 단일 메시지를 여러 구독자에게 전파
SQS를 구독자에 위치시킴
SQS의 소비자들에게 자신의 큐에 비동적으로 처리하게 함
SQS를 연결시켜 분리시킬 수 있음
Amazon Kinesis
Data Streams
고속, 실시간 데이터 스트리밍 수집 서비스
장점
- 낮은 지연 시간, 실시간 처리
- Shard 단위로 수평 확장 가능
- Lambda, Firehose, Analytics와 통합
단점
시험 문장:
- “Kinesis Data Streams는 초당 수백 MB의 스트리밍 데이터를 수집하고 사용자 정의 애플리케이션으로 처리할 수 있습니다”
Data Firehose
수집된 데이터를 변환해 저장소로 자동 전송 시킴
서버리스 / 자동 배치 처리로 운영 부담 최소화
Data Analytics
SQL 기반으로 실시간 스트리밍 데이터 분석 가능한 서비스
장점
- SQL 또는 Flink 사용
- 자동 확장 및 내결함성 내장
단점
- Apache Flink 등 고급 설정은 진입장벽 존
시험 문장:
- “Kinesis Data Analytics는 SQL을 사용해 스트리밍 데이터를 실시간 분석할 수 있으며, Firehose와 함께 사용 시 운영 부담이 적습니다”
Q8. 회사는 레거시 분산 애플리케이션을 AWS로 마이그레이션하고자 합니다
회사는 다양한 워크로드를 처리하는 분산 애플리케이션을 AWS로 마이그레이션 중입니다.
기존 시스템은 여러 컴퓨팅 노드에서 작업을 조정하는 기본 서버(master server) 로 구성되어 있습니다.
회사는 이 애플리케이션을 탄력성(resiliency) 과 확장성(scalability) 을 극대화하는 형태로 현대화하고자 합니다.
솔루션 설계자는 이 요구 사항을 충족하기 위해 어떻게 아키텍처를 설계해야 합니까?
핵심
레거시 기반 기본 서버 의존 아키텍처 → 현대적 분산형 구조로 전환
작업 수요에 따라 탄력적으로 확장 및 축소
큐 기반으로 작업 분산
A. SQS 대기열을 구성하고, EC2 Auto Scaling 그룹을 설정한 뒤 **예약된 스케일링(Scheduled Scaling)**을 구성한다.
예약된 스케일링은 예측 가능한 트래픽에만 적합, 동적 탄력성 부족
B. SQS 대기열을 구성하고, EC2 Auto Scaling 그룹을 구성하여 대기열 크기에 따라 스케일링하도록 설정한다.
C. 기본 서버와 컴퓨팅 노드를 EC2 Auto Scaling 그룹으로 구성하고, 작업 대상으로 CloudTrail을 설정한다.
CloudTrail은 이벤트 로깅 도구이지 작업 디스패칭에 사용안됨
D. 기본 서버와 컴퓨팅 노드를 EC2 Auto Scaling 그룹으로 구성하고, 작업 대상으로 EventBridge를 설정한다.
EventBridge는 이벤트 중심 작업 트리거에 적합/ 지속적인 작업 큐 분산 처리에는 SQS가 더 적합
Auto Scaling 그룹
EC2 인스턴스를 그룹으로 관리하며, 수요에 따라 자동으로 인스턴스 수를 증가 또는 감소시키는 서비스
Target Tracking Scaling: CPU, RequestCount 등 특정 지표를 목표값으로 설정하여 자동 조정
Step Scaling: 지표 임계값을 단계별로 설정
Scheduled Scaling: 특정 시간에 스케일링
장점
- 고가용성/ 비용 최적화 동시에 달성
- 다양한 이벤트 및 지표 기반 확장 가능
단점
Queue Length 기반 스케일링
SQS 메시지 수를 기분으로 Auto Scaling 그룹 인스턴스를 확장/축소하는 것
큐가 너무 많으면 소비자를 추가해 큐를 줄이려는것
EventBridge
다양한 AWS 서비스 또는 자체 애플리케이션 이벤트를 중앙에서 수집, 필터링, 라우팅하는 이벤트 버스 서비스(이벤트를 실시간으로 수집/필터/전송)
📌 핵심 목적: 이벤트 기반 자동화 및 서비스 간 decoupling
Q9. 데이터센터 SMB 파일 서버 스토리지 공간 부족 문제 해결
회사는 데이터 센터에서 SMB 파일 서버를 운영 중입니다.
- 해당 서버는 파일 생성 후 처음 며칠간은 자주 접근,
- 7일 이후에는 거의 접근이 없는 대용량 파일을 저장하고 있습니다.
현재 전체 스토리지 용량이 한계에 도달하고 있어,
솔루션 설계자는 다음 요건을 만족해야 합니다:
- 가장 최근에 접근한 파일은 저지연으로 액세스 유지
- 스토리지 공간 확장 필요
- 향후 스토리지 문제 방지를 위한 파일 수명 주기 관리 필요
어떤 솔루션이 가장 적절한가요?
S3 File Gateway는 온프레미스에서 SMB 파일 시스템 처럼 작동하지만, S3에 저장됨
자주 접근되는 데이터는 로컬 캐시에 유지하므로 저지연 성능 유지
7일 지나면 자동으로 Glacier Depp Archive로 이동시켜 비용절감
A. AWS DataSync를 사용해 7일 이상 지난 데이터를 AWS로 복사
DataSync는 일회성/주기적 이동에 적합 / 지속적 하이브리드 통합에는 부적합 B. Amazon S3 File Gateway 생성 후 S3 수명 주기 정책으로 7일 후 Glacier Deep Archive로 전환 C. Amazon FSx for Windows File Server 생성
비용이 높고 수명 주기 정책없음 D. 사용자 PC에 유틸리티 설치 후 S3에 직접 접근하도록 설정, 7일 후 Glacier Flexible Retrieval로 전환
사용자 단에서 유틸리티 설치는 운영오버헤드 큼, 웅앙 집중형 관리에 부적합
Data Sync
온프레미스 ↔ AWS 또는 AWS ↔ AWS 간에 대규모 데이터 이동을 빠르고 안정적으로 수행하는 완전관리형 데이터 전송 서비
📌 목적: 데이터 이전, 백업, 복제, 실시간 동기화 작업을 자동화하고 가속화
온프레미스 → S3 이전: NFS, SMB 기반 파일 서버의 데이터를 S3로 이전 하는 것
S3 → EFS 복제할 때도 사용
Q10. 회사는 전자상거래 웹 애플리케이션을 AWS에 구축 중입니다
회사는 AWS에서 전자상거래 웹 애플리케이션을 구축하고 있으며,
해당 애플리케이션은 Amazon API Gateway REST API를 통해 새 주문 정보를 수신합니다.
회사는 다음 요구사항을 만족하고자 합니다:
- 주문은 접수된 순서대로 처리되어야 함 (순서 보장)
핵심
순서 보장
SNS / SQS Standard 는 순서 보장 못함
SQS FIFO Queue는 순서 보장 + 중복 방지를 위해 설계된 큐
Lambda는 SQS FIFO Queue와 통합되어 정확한 순서로 메시지를 소비할 수 있음
A. API Gateway 통합으로 SNS에 메시지를 게시, SNS를 구독한 Lambda가 처리
SNS는 순서 보장 못함
B. API Gateway 통합으로 SQS FIFO 대기열에 메시지를 전송하고 Lambda가 처리
C. API Gateway 권한 부여자를 사용하여 모든 요청을 처리 중 차단
권한제어는 접근 제어 목적, 메시지 순서와 무관
D. API Gateway 통합으로 SQS 표준 대기열에 메시지를 전송하고 Lambda가 처리
SQS Standard는 순서 보장 못함
API Gateway
REST, HTTP, WebSocket API를 손쉽게 생성, 게시, 보호할 수 있는 완전관리형 서비스
Lambda, Kinesis, SQS, HTTP 백엔드 등과 통합 가능
예) 스프링 백엔드 앞단에서 모든 요청을 검사하고 라우팅을 해주거나 할 수 있음
[API Gateway] ↓ 인증/경로/속도 제한 [WAF] ↓ 공격 차단 [Spring 백엔드 (ECS/EKS/EC2 등)]
장점
인증/인가/요금제/키 관리 등 API 기능 완비
WAF, CloudFront와 통합 가능
캐싱, 사용량 제한, 로그 추적 지원
단점
지연시간이 상대적으로 큼
호출량 증가 시 요금 급증 우려
시험 포인트
- “API Gateway는 REST/HTTP/WebSocket API를 제공하며 Lambda, SQS, Kinesis 등과 통합 가능합니다”
- “API Gateway와 SQS FIFO 대기열을 함께 사용해 주문의 순차적 처리를 보장할 수 있습니다”
WAF
SQL Injection, XSS 등 웹 공격을 필터링하는 방화벽
API Gateway, ALB 앞단에 연결 가능
SQS FIFO Queue
엄격한 순서 보장과 중복 제거 기능 있음
하지만 처리량이 제한적임
AWS Lambda
서버 없이 코드를 실행하는 서비스
요청이 오면 Spring을 내부적으로 띄워서 실행
사용자는 람다에 맞게 조금 수정한 스프링 코드를 통해 사
API Gateway, SQS, SNS, DynamoDB 등 다양한 서비스와 직접 통합 가능
장점
- 자동 확장(1 요청 = 1 인스턴스)
- 이벤트 기반 자동 트리거
- 과금: 실행 시간 + 리소스 사용량
단점
- 실행 시간 제한 있음
- 초기 Cold Start로 인한 지연 가능
Q11. EC2 인스턴스가 로컬 자격 증명을 사용해 Aurora에 연결 중
회사는 Amazon EC2 인스턴스에서 실행되는 애플리케이션과
Amazon Aurora 데이터베이스를 사용하고 있습니다.
현재 EC2 인스턴스는 로컬 파일에 저장된 사용자명과 비밀번호를 사용해 데이터베이스에 연결합니다.
회사는 자격 증명 관리의 운영 오버헤드를 줄이길 원합니다.
이 목표를 달성하기 위한 최적의 방법은 무엇입니까?
로컬 파일에 저장된 사용자명과 비밀번호로 DB 접근하는데 이걸 더 효율적으로 관리하려면
해당 정보를 AWS에 올려서 사용하면됨
이걸 해주는게 Secrets Manager → 로컬파일에 비번 저장할 필요 없음
운영 오버헤드 줄고 보안 수준도 높아짐
A. AWS Secrets Manager를 사용하고 자동 회전을 활성화한다. B. AWS Systems Manager Parameter Store를 사용하고 자동 회전을 활성화한다.
일반 매개변수 저장에는 좋지만, 데이터베이스 자격 증명 관리에는 기능이 부족하고 자동 회전 설정도 복잡함 C. AWS KMS로 암호화된 자격 증명 파일을 S3 버킷에 저장하고, 애플리케이션이 이를 참조하도록 한다.
자격 증명을 S3에 두는 것은 보안 위험이 있음. 접근 제어가 더 복잡하고 오버헤드가 큼 D. 암호화된 EBS 볼륨을 생성하고 자격 증명 파일을 그 위에 마이그레이션한 뒤 애플리케이션이 이를 참조하게 한다.
로컬 디스크에 파일을 옮기는 구조로 기존 방식과 유사하며, 여전히 수동 갱신 필요 → 오버헤드 큼
Amazon Aurora
클라우드 최적화 고성능 관계형 데이터베이스 서비스
MySQL / PostgreSQL과 호환됨
성능 확장성 고가용성 극대화한 DBMS
Standard / Serverless v2
RDS 기반 관리형 DB
특징
6개 복제본이 3개의 AZ에 자동 분산 저장
자동 증설
디스크 오류 자동 복구
Reader 인스턴스 다중 구성 가능
읽기 부하 분산
Aurora Serverless v2
사용량에 따라 자동으로 컴퓨팅 리소스를 늘리고 줄임
유휴 상태일 때는 과금 거의 없음
스케일링 단위가 작고 빠름
AWS Secrets Manager
DB 자격증명, API 키, 토큰 등 보안 비밀을 안전하게 저장하고 자동 교체(Rotation)를 지원하는 서비스
애플리케이션이 Secrets Manager에게 API 호출로 비밀을 조회하여 사용하는 것
장점
- 보안 강화 (코드 하드코딩 제거)
- 자동 회전으로 장기 키 리스크 감소
- RDS, Redshift, DocumentDB와 자동 통합
단점
- 비용 있음 (Parameter Store보다 비쌈)
- Lambda를 활용한 Rotation은 복잡성 존재
Automatic Rotation
비밀번호, 토큰 등 보안 비밀을 자동으로 정해진 주기마다 교체
AWS는 Lambda를 호출하여 자동으로 새 비밀을 생성하고 업데이트
AWS Systems Manager Parameter Store
애플리케이션 설정, 구성값, 민감한 값들을 저장할 수 있는 키-값 저장소
일반 문자열과 암호화된 보안 문자열 지원
여기에 비밀번호 같은건 저장 안하는게 좋음
자동회전 설정이 어렵
차이점 vs Secrets Manager
항목 Secrets Manager Parameter Store
대상 |
비밀번호, API 키 |
구성값, 환경변수 등 |
자동 회전 |
지원 (자동) |
❌ 직접 구성 필요 |
복제 |
다중 리전 지원 |
❌ |
비용 |
유료 |
대부분 무료 (고급은 과금) |
AWS KMS
키를 관리하는 서비스임 + AWS 리소스와 연동하여 자동 암호화함
CMK: 사용자가 만든 키
키 자동 회전 가능
CloudTrail로 로깅
Q12. 글로벌 회사의 웹 애플리케이션: 정적 + 동적 콘텐츠 성능 개선
글로벌 회사는 Amazon EC2 인스턴스 뒤에 ALB(Application Load Balancer) 를 두고
웹 애플리케이션을 호스팅하고 있습니다.
- 정적 콘텐츠는 Amazon S3 버킷에 저장되어 있고,
- 동적 콘텐츠는 EC2 인스턴스에서 제공됩니다.
- 도메인은 Amazon Route 53에 등록되어 있습니다.
회사는 정적 데이터 및 동적 데이터의 성능을 개선하고
대기 시간(latency)을 줄이길 원합니다.
어떤 솔루션이 가장 적절합니까?
A. S3 버킷과 ALB를 오리진으로 포함하는 CloudFront 배포를 생성하고, Route 53이 CloudFront 배포로 트래픽을 라우팅하도록 구성한다.
B. ALB 오리진 기반 CloudFront 배포를 만들고, S3 버킷을 엔드포인트로 포함하는 Global Accelerator를 생성한다. Route 53은 CloudFront로 라우팅한다.
Global Accelerator는 S3에 직접 연결 불가
C. S3를 오리진으로 포함한 CloudFront 배포를 만들고, ALB 및 CloudFront를 포함하는 Global Accelerator를 생성한다. 사용자 지정 도메인을 Accelerator DNS로 매핑한다.
복잡한 구조, ALB + CloudFront 둘 다 Global Accelerator에 넣을 필요 없음
D. ALB 오리진 CloudFront 배포 생성, S3를 Global Accelerator에 포함. 동적 콘텐츠 전용 도메인을 별도로 만든다.
도메인 이중화는 관리 오버헤드 증가됨
Amazon CloudFront
CDN 서비스
전 세계에 분산된 엣지 로케이션을 통해 S3, EC2, ALB 등에서 제공하는 정적/동적 콘텐츠를 사용자에게 가장 가까운 위치에서 빠르게 제공
Route 53
고가용성 DNS 웹 서비스
정점
- 지능적인 트래픽 분산 가능
- CloudFront, ELB, S3와 연계 용이
- 온프레미스 DNS와 연동 가능
Global Accelerator
원래는 IP는 리전에 국한됨 근데 이걸 여러 리전에 동일하게 두고 만약 해당 아이피로 접속되면 AWS 엣지서버로 들어가 빠르게 AWS 내부 백본망을 통해 빠르게 전송되다는 것
AWS 글로벌 네트워크를 활용해 전 세계 사용자 트래픽을 가장 빠르고 안정적인 AWS 엔드포인트로 라우팅
TCP, UDP 기반 애플리케이션에 대해 Anycast 고정 IP 제공
- 사용자는 전 세계 고용 IP로 접속
- 글로벌 네트워크 백본을 통해 지연 시간 최소화된 AWS 리전으로 트래픽 전송
- 최종적으로 EC2, ALB, NLB 등 엔드포인트로 도달
장점
- TCP/UDP 지원
- 상태 기반 라우팅 → 비정상 엔드포인트 제거
- 고정 IP 제공
- 빠른 장애 복구
단점
- 웹 계층이 아닌 네트워크 계층에 작동
- Route 53보다 비싼 경우 있다.
Q13. 여러 리전의 RDS MySQL 자격 증명을 주기적으로 교체해야 함
회사는 AWS 인프라에 대해 매월 유지 관리 작업을 수행합니다.
이 유지관리 중에는 여러 AWS 리전에 있는 Amazon RDS MySQL DB 인스턴스의 자격 증명(비밀번호)을 교체해야 합니다.
회사는 이를 운영 오버헤드 최소화 방식으로 자동화하길 원합니다.
가장 적절한 해결책은 무엇입니까?
AWS Secrets Manager는 데이터베이스 자격 증명 관리에 최적화된 서비스
다중 리전 복제 기능(Multi-Region Secret Replication)을 통해 한 번 정의한 자격 증명을 여러 리전의 RDS 인스턴스에서 공유할 수 있다
비밀번호 자동 회전으로 운영자가 수동 갱신 필요없음
→ 운영 오버헤드 최소화 + 보안성 강화
A. AWS Secrets Manager에 자격 증명을 저장하고, 다중 리전 복제를 활성화하며, 비밀번호를 자동으로 교체하도록 구성한다. B. Systems Manager Parameter Store에 자격 증명을 저장하고, 다중 리전 복제를 활성화한 뒤 자동으로 교체하도록 구성한다.
Parameter Store는 비밀번호 자동 회전 기능이 제한적 C. 암호화된 S3 버킷에 자격 증명을 저장하고 EventBridge를 사용해 Lambda 함수로 교체 작업을 자동화한다.
S3에 비밀번호를 저장하는 것은 보안상 권장 안됨 D. AWS KMS로 암호화한 자격 증명을 DynamoDB 글로벌 테이블에 저장하고 Lambda + RDS API로 교체한다.
너무 많은 서비스 → 운영부담 큼
다중 리전 복제 기능(Multi-Region Secret Replication)
하나의 시크릿을 기본 리전에 생성하고, 다른 리전으로 자동 복제하여 동기화하는것
읽기 전용으로 다른 리전에 복제본 만들어 줌(수정은 주 리전의 시크릿으로)
Q14. EC2 기반 전자상거래 애플리케이션의 데이터베이스 읽기 성능 저하 문제
회사는 Application Load Balancer 뒤 Amazon EC2 인스턴스에서
전자상거래 애플리케이션을 실행하고 있습니다.
- 인스턴스는 **여러 가용 영역(AZ)**에 걸쳐 있는 Auto Scaling 그룹에서 실행되며,
- CPU 사용률 기반으로 스케일 아웃됩니다.
- 애플리케이션은 MySQL 8.0 데이터베이스를 사용하는데,
- 해당 데이터베이스는 대규모 EC2 인스턴스에서 호스팅되고 있습니다.
문제: 애플리케이션 로드가 증가하면 데이터베이스 성능이 빠르게 저하됩니다.
읽기 요청이 쓰기보다 훨씬 많습니다.
요구사항: 고가용성 유지 + 예측 불가능한 읽기 트래픽에 따라 자동 확장 가능해야 함
고가용성 ⇒ 다중 AZ
Aurora는 기본이 다중 AZ에 복사본을 가지게 됨
A. 단일 노드 Amazon Redshift 사용
단일노드는 가용성 불만족/Redshift는 대용량 데이터 분석용 DB임 트랜잭션용도론 별로
B. RDS 단일 AZ 배포, 리더 인스턴스를 추가
단일az X, 리더 인스턴스도 수동 설정해야함
C.Amazon Aurora 다중 AZ 배포 + Aurora 복제본 + Auto Scaling 구성
D. EC2 스팟 인스턴스 + Memcached ElastiCache 사용
스팟이면 갑자기 종료, ElastiCache 이건 DB의 대체가 아
Q15. 회사는 AWS로 마이그레이션한 후 프로덕션 VPC의 트래픽을 보호하고자 합니다
회사는 최근 AWS로 마이그레이션을 완료했습니다.
프로덕션 VPC의 인바운드/아웃바운드 트래픽을 보호하는 솔루션을 구현하고자 합니다.
과거에는 온프레미스 데이터 센터에 검사 서버(Inspection Server) 를 두고
과 같은 작업을 수행했습니다.
이제 회사는 AWS 클라우드 상에서 동일한 기능을 제공받기 원합니다.
어떤 솔루션이 이 요구 사항을 충족합니까?
VPC의 인바운드/아웃바운드 트래픽을 보호하는 솔루션 → 방화벽이 필요
→ AWS Network Firewall
온프레미스의 트래픽 검사 서버 기능을 대체할 수 있는 가장 유사한 클라우드 서비스
A. Amazon GuardDuty를 사용해 트래픽 검사 및 필터링
GuardDuty는 보안 위협 탐지 및 이상 징후 탐지 용도, 실시간 필터링 또는 트래픽 차단은 못함
B. VPC 트래픽을 미러링하여 검사 및 필터링
Traffic Mirroring 트래픽을 복사해서 별도 장비나 EC2에서 분석 가능. 실시간 차단/필더링 불가
C. AWS Network Firewall을 사용해 VPC 트래픽 검사 및 필터링 규칙 생성
D. AWS Firewall Manager를 사용해 검사 및 필터링 규칙 생성
여러 계정, 여러 VPC의 보안 규칙을 중앙 통제하는 도구, 단독으로 검사 필터링 기능은 없음
Network Firewall을 기본으로 써야 저걸 쓸 수 있음
AWS Network Firewall
- VPC 레벨에서 트래픽 검사 및 필터링이 가능한 L3/4/7 네트워크 방화벽
- Stateful & Stateless 룰 세트 구성 가능
- NAT Gateway 또는 Internet Gateway를 통해 나가는 트래픽도 제어 가능
- 라우팅이 필수
- 사용예) 외부로 나가는 HTTP 요청에서 악성 도메인을 차단하고 싶다면 이걸 사용
VPC의 서브넷 경계
장점
- VPC 내부에서 네트워크 기반 제어 가능
- IDS/IPS와 유사한 기능 포함
- 다중 AZ에 걸쳐 가용성 유지
시험포인트
“AWS Network Firewall은 VPC에 들어오고 나가는 트래픽을 검사하고 필터링할 수 있도록 도와줍니다”
인터넷 ↓ [VPC Network Firewall] ← 트래픽 경계 제어 (멀티AZ, IPS, 도메인 룰 등) ↓ [NACL] ← 서브넷 입구/출구에서 기본 허용/거부 판단 ↓ [보안 그룹] ← 각 EC2 인스턴스에서 포트 단위로 인바운드 필터링 ↓ [애플리케이션]
Firewall Manager
AWS Organizations 내 여러 계정과 리전의 WAF, Shield, Network Firewall, 보안 그룹 규칙을 중앙에서 통합 관리하는 보안 정책 서비
GuardDuty
계정, 네트워크, S3 접근 등의 비정상 활동을 탐지하는 AI 기반 위협 탐지 서비스
동작원리
- CloudTrail 로그, VPC 흐름 로그, DNS 로그 분석
- 이상행위 감지
장점
- 완전 관리형(Agent 없이 사용 가능)
- AWS Security Hub 와 연동 가능
- 탐지 결과는 시각화/자동 대응 가능
VPC Traffic Mirroring
특정 ENI에서 실시간 네트워크 트래픽을 복제하여 보안 분석 도구로 전달
- 트래픽 분석 및 보안 검사
- 네트워크 부하 발생 가능
- 추가 비용 및 설정 복잡도
Q16. 회사는 데이터 레이크를 운영 중이며 시각화된 리포트 솔루션을 원함
회사는 AWS에서 데이터 레이크(Data Lake) 를 운영하고 있습니다.
- 데이터는 Amazon S3 및 Amazon RDS for PostgreSQL에 저장되어 있습니다.
회사는 다음과 같은 리포팅 솔루션이 필요합니다:
- 데이터 시각화 기능 포함
- 데이터 레이크의 모든 소스(S3, RDS) 포함
- 경영진(Management Team) 은 전체 데이터에 대한 전체 액세스 권한
- 다른 직원들은 제한된 액세스 권한만 가짐
어떤 솔루션이 요구 사항을 충족합니까?
시각화를 원함 → QuickSight: 시각화 BI(비지니스 인텔리전스)도구로 시각화 리포트 만듬
권한 설정도 가능함 사용자/그룹 기반의 공유 모델 채용
A. QuickSight 분석 생성 → 데이터 소스 연결 → 대시보드 게시 → IAM 역할로 공유
QuickSight는 IAM Role 기반 공유를 지원하지 않음 / 사용자 및 그룹 기반 공유만 가능 B. QuickSight 분석 생성 → 데이터 소스 연결 → 대시보드 게시 → 사용자 및 그룹과 공유 C. AWS Glue + ETL로 리포트 생성 후 S3에 저장, 버킷 정책으로 접근 제한
S3에 지정된 정적 리포트는 시각화 기능 부족 + 동적 대시보드 기능 없음 D. AWS Glue + Athena Federated Query로 분석 후, S3에 보고서 저장, 접근은 S3 정책으로 제한
Athena는 쿼리는 가능하나, 시각화 목적에는 적합하지 않음. 수동 작업 많음
Amazon QuickSight
AWS의 완전관리형 BI 및 데이터 시각화 서비스
SQL 없이도 대시보드, 차트 등을 생성 가능
- 다양한 데이터 소스 연동: S3, Athena, RDS, Redshift, Salesforce 등
- SPICE 엔진 기반 빠른 쿼리 처리
- IAM 기반 사용자 접근 제어
- 대시보드 공유 가능
AWS Data Lake
정형/비정형 데이터를 중앙에 통합 저장하여 분석 가능한 형태로 만든 저장소 구조
주로 Amazon S3 기반으로 구성
- 모든 데이터를 원시 형태로 저장
- Glue, Lake Formation, Athena, Redshift 등과 연동
- 보안, 권한 제어는 IAM 또는 Lake Formation 사용
Lake Formation
데이터 레이크 생성을 단순화하며, 데이터 접근 제어를 세분화할 수 있다.
AWS Glue
서버리스 추출, 변환, 적재 서비스
S3나 데이터베이스에 흩어진 데이터를 수집하고, 변형, 분석 도구에서 쿼리 가능하도록 준비해주는 것
풀로 흩어진 데이터쪼가리를 붙여서 분석 가능하게 만드는
데이터를 정제, 구조화하여 Athena, Redshift에서 분석 가능하게 만듦
크롤러: 데이터 스캔 → 스키마 자동 인식
데이터 카탈로그: 테이블, 스키마 메타데이터 저장
ETL 작업
AWS Athena
S3의 데이터를 SQL로 직접 쿼리하는 서버리스 대화형 분석 서비스
데이터베이스 없이도 S3에 저장된 CSV, JSON, Parquet 등을 SQL로 분석
- 표준 SQL 사용
- Glue 데이터 카탈로그와 통합
- 쿼리한 데이터 양만큼 비용 부과
시험 포인트
Athena는 서버리스로 동작하며, S3의 데이터를 SQL로 즉시 쿼리할 수 있습니다
Athena Federated Query
Athena가 S3뿐 아니라 RDS, Redshift, JDBS 등 외부 데이터 소스도 쿼리 가능하게 하는 기능
커넥터 기반으로 확장 가능
RDS, DynamoDB, Aurora 등 실시간 데이터도 조회 가능
데이터 이동 없이 분석 가능(데이터 가상화)
시험 포인트
Athena Federated Query를 사용하면 RDS 데이터도 Athena에서 직접 SQL로 분석 가능
Amazon RDS
MySQL, PostgreSQL, MariaDB, Oracle, SQL Server를 AWS에서 관리형으로 제공
인프라 설치/패치/백업 자동화
- 멀티 AZ 배포 가능
- Read Replica로 읽기 성능 확장 가능
- 자동 백업, 모니터링, 스냅샷 지원
- RDS Proxy로 연결 효율화 가능
DynamoDB
완전관리형 NoSQL 키-값 및 문서형 데이터베이스
무한에 가까운 확장성과 밀리초 단위 응답속도
- 서버리스
- DAX(DynamoDB Accelerator)로 캐시 성능 강화
- Global Table로 멀티 리전 복제 가능
- TTL, 스트림, PartiQL(SQL 유사 문법) 지원
읽기/쓰기 패턴이 빠르고 예측 불가한 워크로드에 적합
Aurora(Amazon RDS 기반 클라우드 네이티브 DB)
MySQL, PostgreSQL 호환 고성능 RDS
고가용성 고성능
ElastiCache(Redis / Memcached)
인메모리 캐시 DB
응답 시간 짧음
Redis: 영속성, 복제, Pub/Sub 지원
Memcashed: 단순 캐시용
DocumentDB(MongoDB 호환)
JSON 형식 문서를 저장하는 NoSQL DB
MongoDB API 호환
읽기 복제본 지원
Timestream
시계열 데이터 저장 및 분석에 최적화된 DB
QLDB(Quantum Ledger DB)
변조 불가능한 트랜잭션 로그 기록
회계/감사/공공 기록 시스템 용도
Neptune
그래프 DB(SNS 관계, 추천 시스템 등)
Q17. EC2 인스턴스에서 실행되는 새 비즈니스 애플리케이션이 S3에 접근해야 함
회사는 새로운 비즈니스 애플리케이션을 구현하고 있습니다.
- 애플리케이션은 두 개의 Amazon EC2 인스턴스에서 실행됩니다.
- 문서 저장을 위해 Amazon S3 버킷을 사용합니다.
요구사항:
솔루션 설계자는 EC2 인스턴스가 해당 S3 버킷에 정상적으로 액세스할 수 있는지 확인해야 합니다.
인스턴스에게 AWS 리소스에 대한 접근을 부여하는 방법은 IAM Role 역할을 부여하는 것이다.
무엇을 해야 합니까?
A. S3 버킷에 대한 액세스 권한을 부여하는 IAM 역할을 생성하고, 이를 EC2 인스턴스에 연결한다. B. S3 버킷에 대한 액세스 권한을 부여하는 IAM 정책을 생성하고, 이를 EC2 인스턴스에 연결한다.
정책 바로 붙일 수 없음 C. S3 버킷에 대한 액세스 권한을 부여하는 IAM 그룹을 생성하고, 그룹을 EC2 인스턴스에 연결한다.
그룹은 사용자용임 D. S3 버킷에 대한 액세스 권한을 부여하는 IAM 사용자를 생성하고, 이를 EC2 인스턴스에 연결한다.
IAM 사용자 계정을 EC2에 직접 연결하는 것은 보안상 취약
Q18. 이미지 압축 마이크로서비스 구성: 내구성 + 상태 비저장 구성 요구
애플리케이션 개발 팀은 큰 이미지를 작은 압축 이미지로 변환하는 마이크로서비스를 설계하고 있습니다.
사용자가 웹 인터페이스를 통해 이미지를 업로드하면:
- 이미지가 Amazon S3 버킷에 저장되고,
- AWS Lambda 함수가 이미지를 처리 및 압축하며,
- 다른 S3 버킷에 압축된 이미지를 저장합니다.
솔루션 설계자는 내구성(durability)이 있고 상태 비저장(stateless)인 구성 요소를 사용해
자동으로 이미지를 처리하는 솔루션을 설계해야 합니다.
어떤 조합의 작업이 요구사항을 충족합니까? (2개 선택)
내구성 + 상태 비저장 + 자동 처리
S3 + SQS + Lambda
A. Amazon SQS 대기열을 생성하고, S3 버킷에서 업로드 이벤트가 발생할 때 해당 SQS에 알림을 보낸다 B. Lambda 함수를 SQS 호출 소스로 구성하고, 처리 성공 시 메시지를 삭제하도록 설정한다 C. S3 버킷 이벤트를 감지하는 Lambda를 만들고, 파일 이름을 메모리 텍스트 파일로 관리한다
메모리 내 텍스트 파일로 상태추적 → 비내구성 + 람다의 stateless 원칙 위반 D. EC2 인스턴스를 띄워 SQS를 모니터링하고 파일명을 기록한 뒤 Lambda 호출
모니터링하는 것에 대한 운영 비용+유지보수 비용 증가, 람다 호출하는 것도 복잡 E. EventBridge로 S3 이벤트를 감지해 SNS로 이메일 알림 전송
SNS는 알림용/ 실제 처리 트리거로는 적합하지 않음 자동처리가아님
S3 Event Notification
S3 버킷에서 발생하는 특정 이벤트를 감지하여 다른 AWS 서비스로 알림을 전송할 수 있게 해주는 기능
SQS, SNS, Lambda, EventBridge
Q19. 3계층 웹 애플리케이션의 트래픽을 타사 방화벽 어플라이언스로 검사하고자 함
회사는 AWS에 3계층 웹 애플리케이션을 배포했습니다.
- 웹 서버는 VPC의 퍼블릭 서브넷에
- 애플리케이션 서버와 DB 서버는 프라이빗 서브넷에 배포되어 있습니다.
회사는 AWS Marketplace에서 구입한 타사 가상 방화벽 어플라이언스를
검사 VPC에 배포했으며, 해당 어플라이언스는 IP 패킷을 수신할 수 있는 인터페이스로 구성되어 있습니다.
요구사항: 웹 서버로 도달하는 모든 트래픽을 방화벽 어플라이언스로 먼저 통과시키고 싶음
운영 오버헤드를 최소화해야 합니다.
핵심
Gateway Load Balancer는 서드파티 네트워크 보안 어플라이언스와의 통합을 위한 정용 로드 밸런서
GWLB Endpoint를 통해 VPC 외부의 인스턴스 또는 다른 VPC의 보안 장비로 트래픽 전송할 수 있음
A. 애플리케이션 VPC의 퍼블릭 서브넷에 Network Load Balancer를 생성해 트래픽을 어플라이언스로 라우팅
L4 기반 트래픽 라우팅은 가능하나 보안 어플라이언스 연동이 복잡, 상태 저장 검사 어려움 B. 애플리케이션 VPC의 퍼블릭 서브넷에 Application Load Balancer를 생성해 트래픽을 어플라이언스로 라우팅
ALB는 l7 용 IP 패킷 단위 라우팅 불가 C. 검사 VPC에 Transit Gateway를 배포하고 라우팅 테이블 구성
다중 VPC 간 연결에는 좋지만 트래픽 검사 기능은 제공하지 않 D. 검사 VPC에 Gateway Load Balancer를 배포하고 Endpoint를 통해 어플라이언스로 트래픽 전달
Gateway Load Balancer(GWLB)
L3/L4 트래픽을 보안 가상 어플라이언스로 전달하고, 스케일링과 고가용성까지 제공하는 로드 밸런서
보안 어플라이언스를 중앙 집중식으로 배포, 확장, 관리하기 위한 전용 로드밸런서
GWLB Endpoint
GWLB를 각 VPC에 연결하기 위한 인터페이스 엔드포인트
VPC 내부에서 발생한 트래픽을 GWLB로 보내기 위한 연결 지점
타사 보안 어플라이언스
보안 업체의 가상 방화벽, IPS, IDS 제품
IDS(Intrusion Detection System)
침입 탐지 시스템 탐지만 함
IPS(Intrusion Prevention System)
침입 차단 시스템 탐지 후 자동으로 차단까지 수행
Q20. EC2 + EBS 기반 프로덕션 데이터를 테스트 환경으로 빠르게 복제
회사는 동일한 AWS 리전 내 테스트 환경에 대량의 프로덕션 데이터를 복제하는 기능을 개선하고자 합니다.
- 데이터는 EC2 인스턴스의 EBS 볼륨에 저장되어 있으며,
- 복제된 데이터를 수정하더라도 프로덕션에 영향을 주면 안 됩니다.
- 해당 데이터를 사용하는 애플리케이션은 지속적으로 높은 I/O 성능을 요구합니다.
요구사항:
- 복제 시간 최소화
- 프로덕션 데이터는 유지되며, 테스트에서 수정 가능
- 고성능 I/O 보장
핵심
EBS Fast Snapshot Restore(FSR) 기능을 사용하면 스냅샷에서 새 EBS 볼륨을 즉시 완전 성능 상태로 복원할 수 있음
이건 프로덕션과 격리되어 있음으로 수정해도 영향 없음
A. EBS 스냅샷 생성 후, 테스트 환경의 EC2 인스턴스 스토어 볼륨에 복원
EC2 인스턴스 스토어는 일시적 스토리지이며, 스냅샷에서 복원 불가
B. 프로덕션 EBS 볼륨을 다중 연결(EBS Multi-Attach)로 설정하고 테스트 환경에 연결
Multi-Attach는 EBS io1/io2에서만 사용가능하며, 읽기/쓰기 충돌 위험 + 프로덕션에 영향 가능 C. 스냅샷 → 새 EBS 볼륨 생성 → EC2에 연결
그냥 스냅샷으로 새볼륨 만들면 오래걸 D. 스냅샷 생성 후, EBS 빠른 스냅샷 복원(FSR)을 활성화하여 새 EBS 볼륨으로 복원 후 연결
Multi-Attach
하나의 EBS 볼륨을 여러 EC2 인스턴스에 동시에 연결하는것
읽기/쓰기 충돌 방지를 위해 클러스터형 파일 시스템 필요
EBS Snapshot
EBS 볼륨의 시점 복사본을 S3에 저장하는 백업 기능
변경된 블록만 저장하는 증분 스냅샷 방식
초기 지연이 발생함 → 성능저하
Fast Snapshot Restore(FSR)
스냅샷에서 새 EBS 볼륨을 복원할 때 초기 지연을 없애고, 즉시 높은 성능 제공
기본 스냅샷 복원은 lazy load 방식이라, 복원 직후에는 성능 저하 발생 가능
→ FSR은 사전에 준비된 풀을 만들어 두어 즉시 고성능으로 시작 가
Q21. 하루 1개 제품만 판매하는 전자상거래 사이트, 밀리초 응답과 수백만 요청 처리 필요
한 전자상거래 회사는 AWS에서 하루 1회 웹사이트를 시작하려고 합니다.
- 매일 정확히 1개의 제품만 판매합니다.
- 회사는 피크 시간 동안 밀리초 단위 응답 지연 시간으로
- 시간당 수백만 건의 요청을 처리할 수 있어야 합니다.
운영 오버헤드가 최소인 솔루션이 요구됩니다.
핵심
정적 웹 콘텐츠 제공(빠른응답)
짧은 시간에 폭발적인 트래픽 대응(Auto Scaling or 서버리스)
운영 오버헤드 최소화 → 관리를 자동으로(완전관리형 or 서버리스)
S3 + CloudFront ⇒ 빠른 정적응답
Lambda + DynamoDB ⇒ 서버리스 백엔드 + 고성능 확장 + 관리 필요없음
A. Amazon S3에서 정적 웹사이트 호스팅 + CloudFront 배포 설정 + 주문 데이터도 S3에 저장
주문 데이터까지 S3에 저장? → S3는 객체 저장소라 DB로 적합하지 않음 B. EC2 Auto Scaling 그룹에 ALB 구성, RDS(MySQL) 사용
EC2와 ALB RDS는 모두 고정 인프라 필요해서 운영 오버헤드가 큼 C. 애플리케이션을 Amazon EKS에 마이그레이션, Kubernetes 클러스터 자동 확장 사용
쿠버네티스 학습난이도 높고 운영 복잡함 D. Amazon S3에서 정적 웹사이트 호스팅 + CloudFront 배포 + 백엔드 API는 Lambda + DynamoDB
Q22. S3를 사용하는 디지털 미디어 애플리케이션 스토리지 아키텍처 설계
솔루션 설계자는 Amazon S3를 사용하여 새로운 디지털 미디어 애플리케이션의 스토리지 아키텍처를 설계하고 있습니다.
- 미디어 파일은 가용 영역 손실에 대한 복원력이 있어야 하며,
- 일부 파일은 자주 액세스되며,
- 다른 파일은 예측할 수 없는 패턴으로 거의 액세스되지 않습니다.
스토리지 및 검색 비용을 최소화해야 합니다.
어떤 스토리지 옵션이 가장 적합합니까?
A. S3 Standard
자주 접속되는 거에 맞는 거
B. S3 Intelligent-Tiering
자동으로 이동시켜줌
C. S3 Standard-IA
저렴하지만 30일 이상 보관 + 예측 가능한 패턴이 있어야 함
D. S3 One Zone-IA
단일 AZ 이기 때문에 복원력 없음
S3 스토리지 클래스 전체 요약
클래스 특징 가용성 내구성 최소 저장 기간 삭제 수수료 주요 사용처
S3 Standard |
기본, 자주 액세스 |
99.99% |
11 9’s |
없음 |
없음 |
자주 읽고 쓰는 일반 데이터 |
S3 Intelligent-Tiering |
액세스 패턴에 따라 자동 계층화 |
99.9% |
11 9’s |
없음 |
일부 계층에 존재 |
액세스 패턴이 불확실한 경우 |
S3 Standard-IA |
적게 읽고 자주 저장 |
99.9% |
11 9’s |
30일 |
있음 |
백업, 로그 |
S3 One Zone-IA |
IA보다 저렴, AZ 1개 |
99.5% |
11 9’s |
30일 |
있음 |
복구 가능 백업, 2차 데이터 |
S3 Glacier Instant Retrieval |
저비용, 즉시 복원 |
99.9% |
11 9’s |
90일 |
있음 |
자주 접근 안 하지만 즉시 복구해야 하는 데이터 |
S3 Glacier Flexible Retrieval (이전: Glacier) |
장기 보관, 느린 복원 |
99.99% |
11 9’s |
90일 |
있음 |
장기 백업, 보관 의무 데이터 |
S3 Glacier Deep Archive |
최저비용, 가장 느림 |
99.99% |
11 9’s |
180일 |
있음 |
규제 목적 장기 보관, 1년에 1~2회 접근 |
사용 시점 정리
상황 추천 클래스 이유
실시간 웹 이미지, 동영상, 앱 콘텐츠 |
S3 Standard |
빠른 응답, 높은 가용성 |
사용자 업로드 파일 (패턴 모름) |
Intelligent-Tiering |
자동 계층 최적화 |
백업 데이터 (가끔 복원) |
S3 Standard-IA |
읽기 적고 저장 위주 |
덤프 파일/로그, 복구용 복제본 |
S3 One Zone-IA |
1개 AZ만 필요, 저렴 |
드물지만 즉시 복구해야 하는 기록 |
Glacier Instant Retrieval |
빠른 복원 + 저렴 |
오랜 기간 법적 보관 |
Glacier Deep Archive |
최저가, 12~48시간 복원 |
1년에 1~2회 볼까 말까한 데이터 |
Glacier Flexible Retrieval |
스토리지 비용 절감 극대화 |
✅ 시험 포인트 문장
- “S3 Intelligent-Tiering은 액세스 패턴이 불확실한 경우 자동으로 비용 최적화 계층으로 전환합니다.”
- “S3 Glacier Deep Archive는 가장 저렴한 스토리지로, 복원 시간은 수 시간 이상이 소요됩니다.”
- “S3 Standard-IA는 적은 빈도의 액세스를 위한 비용 최적화 스토리지로, 최소 저장 기간 30일이 있습니다.”
- “S3 One Zone-IA는 단일 AZ에 저장되며, 복구 가능한 데이터에 적합합니다.”
Q24. EC2 비용 증가 → 인스턴스 유형의 수직적 확장 원인 분석
회사는 최근 청구서에서 EC2 비용이 증가한 것을 확인했습니다.
- 청구 팀은 일부 EC2 인스턴스에서 예상치 않은 수직적 확장(인스턴스 유형 변경) 을 발견했습니다.
솔루션 설계자는 지난 2개월간 EC2 비용을 비교하는 그래프를 생성하고
비용 증가의 원인을 심층 분석하려고 합니다.
운영 오버헤드가 가장 적은 방식은 무엇입니까?
A. AWS Budgets를 사용하여 예산 보고서를 생성하고 인스턴스 유형별로 비용 비교
AWS Budgets는 비용 예측과 경보용임 원인분석에는 부적합
B.AWS Cost Explorer의 세분화된 필터링 기능을 사용하여 인스턴스 유형 기반 비용 분석
C. AWS Billing and Cost Management 대시보드의 그래프 사용
Billing 대시보드는 개요만 보여주며, 세분화된 필터링 불가함
D. AWS 비용 및 사용 보고서(CUR)를 S3로 내보내고 QuickSight에서 시각화
CUR + QuickSight는 강력하지만 구성 복잡하고 시각화 작업 필요 → 오버헤드 큼
AWS Cost Explorer
AWS 사용 비용과 사용량 데이터를 시각적으로 탐색하고 분석하는 도구
- 비용/사용량 추세, 패턴 및 예측 분석이 가능
- 여러기간 동안의 비용 데이터를 시각화
- 필터 및 그룹화를 사용하여 서비스, 리전, 태그별 비용 분석 가능
비용 추세와 변동 원인을 파악하고, 비용 최적화 기회를 식별할 때
AWS Budgets
비용, 사용량 등을 목표로 하는 예산을 설정하고 모니터링
- 예산 한도 초과, 예상 초과분 발생 시 알림 기능 제공
- 비용, 사용량 및 예약 인스턴스 또는 Saving Plans 활용도에 대해 예산 설정 가능
비용 초과나 사용량 급증 등 예산 한도 준수를 실시간으로 모니터링하여 대응할 때
AWS Billing and Cost Management
AWS 비용 청구, 결제, 계정 관리 전반을 위한 대시보드 및 기능 제공
- 월별 청구 내역 확인, 결제 방식 및 청구서 다운로드
AWS 청구서를 검토하여 비용 내역, 청구 세부사항, 결제 방식 등을 확인할 때
CUR + QuickSight
CUR(Cost and Usage Report)
매우 상세한 AWS 사용량 및 비용 데이터를 CSV, Parquet, ORC 등 다양한 형식으로 제공
- AWS 서비스별, 리전별, 태그별로 원시 데이터를 집계하며 세부 분석 가능
상세한 정보가 필요하고 커스텀 보고서를 만들때
이러한 데이터를 시각화해 보고서를 만들기 위해 QuickSight와 연계해서 만들 수 있음
Q25. Lambda + Aurora 아키텍처에서 대량 데이터 처리 → 확장성과 구성 간소화
회사는 다음 구성의 애플리케이션을 설계하고 있습니다:
- Amazon API Gateway → AWS Lambda 함수
- Lambda는 Amazon Aurora PostgreSQL 데이터베이스에 정보를 저장합니다.
초기 개념 증명(PoC)에서는 데이터베이스에 대량의 데이터를 로드하려면 Lambda의 할당량을 크게 증가시켜야 했습니다.
→ 솔루션 설계자는 확장성 개선 + 구성 간소화를 목표로 새로운 아키텍처 설계를 추천해야 합니다.
A. Lambda 코드를 EC2에서 실행되는 Tomcat 애플리케이션으로 리팩터링. JDBC로 Aurora 연결
EC2는 서버 관리 필요 + 람다의 서버리스 이점 상실
B. Aurora를 DynamoDB로 변경하고 DAX 클러스터를 구성하여 호출 성능 개선
DynamoDB는 완전 다른 DB
C. Lambda 2개 구성. SNS를 통해 한 함수가 다른 함수를 호출해 Aurora에 데이터 로드
SNS는 푸시 기반 브로드캐스트에 적합함 대량처리에 비효율적
D. Lambda 2개 구성. SQS로 한 함수가 메시지를 전송하고, 다른 함수가 메시지를 받아 DB에 기록
SQS는 큐기반이기 때문에 대용량 처리에 유리
핵심
- 대량 데이터 처리
- Lambda 제한 완화
- 구성 간소화 및 자동 확장
개념 증명 단계(PoC: Proof of Concept)
이 아이디어나 설계가 실제로 기술적으로 구현 가능한지를 소규모로 실험해보는 단계
SQS는 대용량 처리를 하기 좋음 큐에 담아두고 처리하면 되니까
Q26. S3 버킷의 무단 구성 변경 방지 및 감지
회사는 AWS 클라우드 배포를 검토하고 있으며,
Amazon S3 버킷이 무단으로 구성 변경되지 않도록 보호하고자 합니다.
솔루션 설계자는 이를 위해 무엇을 해야 합니까?
A. 적절한 규칙으로 AWS Config를 활성화한다. B. 적절한 검사를 통해 AWS Trusted Advisor를 활성화한다.
퍼포먼스, 보안, 비용 최적화 등에 대한 일반 가이드 제공만 함
→ 실시간 구성 변경 감지X C. 적절한 평가 템플릿으로 Amazon Inspector를 활성화한다.
주로 EC2, 컨테이너 취약점 스캔 등 보안 취약점 탐지 전용 D. Amazon S3 서버 액세스 로깅을 활성화하고, EventBridge를 구성한다.
변경 감지는 가능하나, 구체적 구성 변경의 정책 기반 평가/통제 기능은 부족 → Config가 더 정밀함
핵심
- AWS Config는 AWS 리소스의 구성을 지속적으로 추적, 기록, 평가할 수 있는 서비스
- S3 버킷 구성의 변경을 기록하고, 설정한 규칙과 다를 경우 자동으로 감지하고 경고를 생성
- 또한 무단 변경에 대한 감사(Audit) 기능도 제공함
AWS Config
AWS 리소스 구성 변경을 기록하고, 규정 준수 여부를 평가할 수 있는 서비스
- EC2, VPC, IAM, S3 등 리소스의 상태 변경 기록
- 이전 구성과 현재 구성을 비교 가능
- Config Rule을 설정하여 정책 위반 탐지 및 알림
시험 포인트
- “AWS Config는 리소스의 구성 변경을 추적하고 규정 위반 여부를 자동 평가할 수 있습니다”
Amazon Inspector
EC2, 컨테이너, Lambda에 대한 취약점 및 보안 위험을 자동 스캔하는 서비스
시험 포인트
- “Amazon Inspector는 소프트웨어 취약성, 포트 오픈, 잘못된 접근성 등을 지속적으로 스캔합니다”
AWS Trusted Advisor
AWS 리소스 구성에 대해 5개 분야(비용, 보안, 고가용성, 성능, 서비스 할당량) 관점에서 최적화 권장 사항을 제공
- 퍼블릭 S3 버킷 감지
- 사용되지 않는 리소스 식별
- 서비스 할당량 초과 알림
- 예약 인스턴스 최적화 추천
간단한 권고 기반 리소스 점검 및 성능 튜닝
Q27 CloudWatch 대시보드를 AWS 계정 없는 외부 사용자에게 공유
회사는 새 애플리케이션을 시작했고, Amazon CloudWatch 대시보드에 애플리케이션 지표를 표시하고 있습니다.
**제품 관리자(Product Manager)**는 이 대시보드에 정기적으로 접근해야 합니다.
단, 제품 관리자에게는 AWS 계정이 없습니다.
솔루션 설계자는 **최소 권한 원칙(Least Privilege)**을 준수해야 합니다.
로그인 없이 제공하고 싶은 것
어떤 솔루션이 요구사항을 충족합니까?
A. CloudWatch 콘솔에서 대시보드를 공유하고, 이메일 주소 입력 후 공유 링크 제공
B. 제품 관리자용 IAM 사용자 생성, CloudWatchReadOnlyAccess 정책 연결, 로그인 정보 공유
계정만들어주는건 최소 권한 위배
C. ViewOnlyAccess IAM 사용자 생성, 콘솔로 대시보드 직접 찾아보게 안내
ViewOnlyAccesse도 AWS 로그인 필요.
D. 배스천 서버를 만들어 RDP 통해 대시보드 접근, 서버 내 캐시된 자격 증명 사용
베스천 서버 + RDP는 운영 오버헤드와 보안 리스크 큼 과도한 구성임
CloudWatch Dashboard Share
AWS 리소스의 모니터링 데이터를 시각화하여 보여주는 사용자 정의 대시보드
Share 기능을 통해 외부 사용자와 안전하게 공유할 수 있음(url)
배스천 서버
외부 인터넷과 내부 프라이빗 VPC를 안전하게 연결하는 중계 서버
보통 퍼블릭 서브넷에 위치하며, 프라이빗 서브넷의 EC2 인스턴스에 sSH 또는 RDP로 접근하기 위해 사용
RDP(Remote Desktop Protocol)(윈도우 계열의 ssh 같은 거)
윈도우 기반 서버/PC에 원경으로 접속할 수 있는 마이크로소프트의 원격 접속 프로토콜
Q28. 다계정 환경에서 온프레미스 AD 기반 SSO 설정 요구
회사는 AWS로 애플리케이션을 마이그레이션하고 있으며, 애플리케이션은 다양한 AWS 계정에 배포됩니다.
회사는 AWS Organizations를 사용해 이 계정들을 중앙에서 관리합니다.
보안 팀은 다음과 같은 요구사항을 갖고 있습니다:
- 모든 계정에 대해 단일 로그인(SSO) 솔루션을 제공해야 하며,
- 사용자 및 그룹 관리는 온프레미스에서 운영 중인 Microsoft Active Directory에서 유지해야 합니다.
어떤 솔루션이 이 요구사항을 충족합니까?
- AWS Organizations ⇒ 다계정 환경
- 온프레미스 Microsoft AD 사용자 관리 유지
- AWS 리소스 접근에 대한 단일 로그인 제공
A. AWS SSO 콘솔에서 SSO를 활성화하고, AWS Managed Microsoft AD를 통해 온프레미스 AD와 단방향 트러스트(One-way trust) 구성
단방향 트러스트는 AWS에서 온프레미스 AD를 조회할 수 없어 사용자 인증 불가 B. AWS SSO 콘솔에서 SSO를 활성화하고, AWS Managed Microsoft AD와 온프레미스 AD 간에 양방향 트러스트(Two-way trust) 구성 C. AWS Directory Service에서 두 개의 트러스트를 포함한 Microsoft AD 디렉터리 구성
Directory Service 자체만으로는 SSO 구성 부족. IAM Identity Center와 통합되어야 함 D. 온프레미스에 IdP를 구축하고, SSO 콘솔에서 AWS SSO를 활성화
온프레미스에 IdP 구축은 관리 복잡성 증가, 별도 연동 설정 필요 → 운영 오버헤드 큼
SSO(Single Sign-On)
한 번 로그인하면 여러 시스템에 별도 인증 없이 접근 가능하게 하는 인증 방식
- AWS SSO → AWS IAM Identity Center로 명칭 변경
- 기업 내부의 Active Directory 또는 외부 IdP와 연동 가능
- SAML 2.0, OIDC 기반 연동 가능
Microsoft Active Directory
사용자 계정, 그룹, 컴퓨터 등을 중앙에서 관리하는 Windows 기반 디렉터리 서비스
AWS Directory Service
AWS에서 마소 AD를 관리할 수 있도록 제공하는 서비스
AWS Managed Microsoft Active Directory: MAD 완전관리형
AD Connector: 온프레미스 AD에 연결하는 프록시 역할
트러스트
한 디렉토리가 다른 디렉터리의 사용자 인증을 신뢰할 수 있도록 설정한 관계
- 도메인 트러스트
- 포리스트 트러스트
- 단방향
- A가 B 신뢰 하지만 B는 A를 신뢰하지 않음
- 양방향
IdP
인증을 제공하는 시스템
사용자의 로그인 정보를 확인하고 토큰을 발급
키워드 설명
AWS IAM Identity Center (구 AWS SSO) |
여러 AWS 계정에 대해 중앙화된 사용자 접근 제어 제공 |
AWS Managed Microsoft AD |
AWS에서 관리하는 Microsoft AD 서비스. Trust 설정 가능 |
Two-way Trust |
AWS AD와 온프레미스 AD가 서로 사용자 인증 정보 공유 가능 |
AWS Organizations |
다계정 환경을 중앙에서 관리하는 조직 단위 관리 도구 |
Q29. UDP 기반 VoIP 서비스 → 최저 지연 리전 라우팅 + 리전 간 장애 조치
회사는 UDP 연결을 사용하는 VoIP (Voice over IP) 서비스를 운영하고 있으며,
Auto Scaling 그룹 기반 EC2 인스턴스에 배포되어 있습니다.
- 서비스를 여러 AWS 리전에 걸쳐 배포했고,
- 사용자는 가장 지연이 낮은 리전으로 라우팅되어야 합니다.
- 또한 **리전 간 장애 조치(Failover)**도 필요합니다.
어떤 솔루션이 요구 사항을 충족합니까?
핵심
- UDP 지원 → NLB
- 지연 시간 기반 리전 라우팅 → Global Accelerator
- 지역 간 자동 장애 조치 → Global Accelerator
A. 각 리전에 NLB(Network Load Balancer)를 배포하고, 이를 AWS Global Accelerator 엔드포인트로 구성
B. 각 리전에 ALB(Application Load Balancer)를 배포하고, 이를 AWS Global Accelerator 엔드포인트로 구성 → ALB는 UDP 적용 못함
C. 각 NLB의 별칭을 Route 53 지연 시간 레코드로 연결하고, 이를 오리진으로 하는 CloudFront 배포 생성
CloudFront는 UDP 지원 불가 HTTP/HTTPS 전용
D. 각 ALB의 별칭을 Route 53 가중치 레코드로 연결하고, 이를 오리진으로 하는 CloudFront 배포 생성
ALB/CloudFront는 UDP 지원 불가 HTTP/HTTPS 전용
AWS Global Accelerator
사용자를 가장 가까운 리전으로 라우팅, 리전 장애 시 자동 장애 조치
VoIP 서비스 요건
- 낮은 지연 시간
- UDP
- 고가용성
Route 53
도메인 기반 라우팅 제공하지만
Global Accelerator 만큼 빠른 전환성/지능적 라우팅은 없음
Q30. 월 1회, 48시간 동안만 사용하는 RDS MySQL 테스트 인스턴스 → 비용 최적화 방안
개발 팀은 범용 Amazon RDS for MySQL 인스턴스에서 월 1회 리소스 집약적 테스트를 실행합니다.
- 테스트는 한 번에 48시간 동안 지속되며,
- 이 시간 외에는 데이터베이스를 사용하지 않습니다.
- 팀은 컴퓨팅 및 메모리 속성은 유지하되,
- 테스트 실행 비용을 줄이길 원합니다.
가장 비용 효율적인 솔루션은 무엇입니까?
RDS를 사용안한면
A. 테스트 완료 후 DB 인스턴스를 중지하고, 필요 시 재시작
인스턴스가 중지 되어도 EBS 스토리지 요금 청구됨
B. DB 인스턴스에 Auto Scaling 정책을 설정하여 테스트 완료 후 자동 확장
인스턴스 안꺼지면 돈 왕창
C. 테스트 완료 후 스냅샷 생성 → 인스턴스 종료 → 필요 시 스냅샷 복원
인스턴스 종료 → 삭제라는 것 비용 안나옴
스냅샷을 저장하다가 필요할 떄 복원 가능
가장 비용 절약
D. 테스트 완료 후 저사양 인스턴스로 변경, 필요 시 원래 인스턴스로 수정
수정하지 말라고 했으니 안됨
EBS
인스턴스 중지 ⇒ 요금 나옴
인스턴스 종료 ⇒ 제거되므로 요금 안나옴