AWS 시니어 아키텍트 기술면접
새 면접Q. S3의 스토리지 클래스별(Standard, Intelligent-Tiering, Glacier, Deep Archive) 특성과 비용 구조를 설명하고, S3 Lifecycle Policy를 활용한 비용 최적화 전략을 제시해주세요. 또한 수백만 개의 작은 파일을 저장할 때 발생하는 성능 및 비용 문제와 이를 해결하기 위한 S3 Object Lambda, S3 Select, 파일 병합 전략에 대해 설명해주세요.
S3 Standard는 빈번한 액세스용으로 가장 비싸지만 검색 비용이 없고, Intelligent-Tiering은 액세스 패턴에 따라 자동으로 계층을 변경하며, Glacier는 아카이빙용으로 저렴하지만 검색 시간과 비용이 발생합니다. Lifecycle Policy로 객체 생성 후 30일은 Standard, 90일 후 IA, 1년 후 Glacier로 자동 전환하여 비용을 최적화할 수 있습니다. 작은 파일이 많으면 PUT 요청 비용과 메타데이터 오버헤드가 크므로, 여러 파일을 tar/zip으로 병합하거나 S3 Object Lambda로 동적 처리하고, S3 Select로 필요한 데이터만 추출하여 전송 비용을 절감할 수 있습니다. 또한 S3 Request Metrics와 Storage Lens를 활용해 액세스 패턴을 분석하고 최적의 스토리지 클래스를 선택해야 합니다.
- • 스토리지 클래스별 비용/성능 트레이드오프 이해 (Standard, IA, Glacier, Deep Archive)
- • Lifecycle Policy를 통한 자동 계층 전환 전략
- • 작은 파일 다수 시 파일 병합, S3 Select, Object Lambda 활용
- • Storage Lens와 Request Metrics를 통한 액세스 패턴 분석
멀티파트 업로드를 사용할 때 최적의 파트 크기를 결정하는 기준과, 업로드 실패 시 미완료 파트가 비용에 미치는 영향 및 관리 방안을 설명해주세요.
Q. VPC의 CIDR 블록 설계 시 고려해야 할 사항과, 서브넷 분할 전략(Public, Private, Database 서브넷)을 설명해주세요. 또한 NAT Gateway와 NAT Instance의 차이점, PrivateLink와 VPC Endpoint(Gateway/Interface)의 동작 원리 및 사용 사례, 그리고 온프레미스와 AWS를 연결하는 Direct Connect와 VPN의 하이브리드 아키텍처 설계 방안을 제시해주세요.
VPC CIDR는 향후 확장성을 고려해 충분히 큰 블록(/16 권장)을 선택하고, 온프레미스 네트워크와 겹치지 않도록 설계해야 하며, 각 AZ마다 Public/Private/Database 서브넷을 분리하여 가용성과 보안을 확보합니다. NAT Gateway는 AWS 관리형으로 고가용성을 제공하지만 비용이 높고, NAT Instance는 직접 관리가 필요하지만 비용 절감이 가능합니다. VPC Endpoint Gateway는 S3/DynamoDB 전용으로 무료이며 라우팅 테이블 기반이고, Interface Endpoint는 PrivateLink 기반으로 다양한 서비스를 지원하지만 시간당 비용이 발생합니다. Direct Connect는 안정적인 대역폭과 낮은 지연시간을 제공하고, VPN은 백업 경로로 사용하여 하이브리드 아키텍처의 고가용성을 확보할 수 있습니다.
- • CIDR 블록 설계 시 확장성과 중복 방지 고려
- • NAT Gateway vs NAT Instance의 비용/관리 트레이드오프
- • VPC Endpoint Gateway(무료, S3/DynamoDB)와 Interface Endpoint(PrivateLink) 차이
- • Direct Connect + VPN 하이브리드 아키텍처로 고가용성 확보
VPC Flow Logs를 활용한 네트워크 트래픽 분석 방법과, Security Group과 NACL의 차이점 및 각각의 적절한 사용 시나리오를 설명해주세요.
Q. AWS Step Functions의 Standard Workflow와 Express Workflow의 차이점을 설명하고, 각각의 실행 시간 제한, 비용 구조, 적합한 사용 사례를 설명해주세요. 또한 Step Functions에서 에러 핸들링(Retry, Catch), 병렬 처리(Parallel, Map State), 그리고 장기 실행 작업을 처리하기 위한 Wait State와 Callback 패턴의 활용 방법을 제시해주세요.
Standard Workflow는 최대 1년까지 실행 가능하고 정확히 한 번 실행을 보장하며 상태 전환당 과금되어 장기 실행 워크플로우에 적합하고, Express Workflow는 최대 5분 실행으로 제한되지만 실행 시간과 메모리 기반 과금으로 고처리량 이벤트 처리에 적합합니다. Retry는 지수 백오프와 최대 재시도 횟수를 설정하여 일시적 오류를 처리하고, Catch는 특정 에러 타입을 잡아 대체 경로로 분기합니다. Parallel State는 여러 브랜치를 동시 실행하고, Map State는 배열 항목을 병렬 처리하며, Wait State는 지정된 시간만큼 대기하고, Callback 패턴은 외부 시스템 완료를 기다릴 때 Task Token을 사용하여 비동기 처리를 구현합니다.
- • Standard(최대 1년, 정확히 한 번)와 Express(최대 5분, 고처리량) 워크플로우 차이
- • Retry/Catch를 통한 에러 핸들링 및 복원력 확보
- • Parallel/Map State로 병렬 처리 구현
- • Wait State와 Callback 패턴으로 장기 실행 및 비동기 작업 처리
Step Functions와 SQS/SNS를 조합한 이벤트 기반 아키텍처에서 멱등성을 보장하는 방법과, Step Functions의 실행 히스토리를 활용한 디버깅 및 모니터링 전략을 설명해주세요.
Q. AWS DMS(Database Migration Service)를 사용한 데이터베이스 마이그레이션 전략을 설명하고, Full Load와 CDC(Change Data Capture)의 동작 원리 및 결합 방식을 설명해주세요. 또한 대용량 데이터베이스 마이그레이션 시 다운타임을 최소화하기 위한 방법, SCT(Schema Conversion Tool)를 활용한 이기종 DB 마이그레이션 시 고려사항, 그리고 마이그레이션 검증 및 롤백 전략을 제시해주세요.
DMS는 Full Load로 초기 데이터를 일괄 복사한 후 CDC를 통해 소스 DB의 변경사항을 실시간으로 타겟에 반영하며, 트랜잭션 로그를 읽어 지속적인 동기화를 수행합니다. 다운타임 최소화를 위해 Full Load와 CDC를 동시에 시작하고, 복제 지연을 모니터링하며, 애플리케이션을 읽기 전용 모드로 전환한 후 동기화 완료를 확인하고 전환합니다. SCT는 Oracle에서 PostgreSQL 같은 이기종 마이그레이션 시 스키마와 코드를 자동 변환하지만, 저장 프로시저나 트리거는 수동 검토가 필요합니다. 마이그레이션 검증은 row count 비교, checksum 검증, 샘플 데이터 쿼리 비교를 수행하고, 롤백을 위해 소스 DB를 유지하며 DNS 전환으로 빠른 복구가 가능하도록 설계합니다.
- • Full Load + CDC 결합으로 초기 복사 후 실시간 동기화
- • 다운타임 최소화를 위한 동시 실행 및 복제 지연 모니터링
- • SCT로 이기종 DB 스키마 변환 시 수동 검토 필요
- • Row count, checksum, 샘플 쿼리로 마이그레이션 검증 및 DNS 기반 롤백 전략
Aurora와 RDS의 Read Replica를 활용한 Blue-Green 배포 전략과, 마이그레이션 중 발생할 수 있는 데이터 불일치 문제의 원인 및 해결 방안을 설명해주세요.
Q. AWS의 다양한 구매 옵션(On-Demand, Reserved Instances, Savings Plans, Spot Instances)의 특징과 비용 구조를 비교하고, 각각 어떤 워크로드에 적합한지 설명해주세요. 또한 Cost Explorer, Budgets, Trusted Advisor를 활용한 비용 모니터링 및 최적화 방법, 그리고 멀티 어카운트 환경에서 Cost Allocation Tags와 Chargeback 전략을 제시해주세요.
On-Demand는 유연하지만 가장 비싸고, Reserved Instances는 1-3년 약정으로 최대 72% 할인되며 안정적인 워크로드에 적합하고, Savings Plans는 시간당 사용량 약정으로 EC2/Lambda/Fargate에 유연하게 적용되며, Spot Instances는 최대 90% 할인되지만 중단 가능하여 배치 작업이나 내결함성 워크로드에 적합합니다. Cost Explorer로 비용 추세를 분석하고, Budgets으로 임계값 알림을 설정하며, Trusted Advisor로 미사용 리소스를 식별합니다. 멀티 어카운트 환경에서는 Cost Allocation Tags로 프로젝트/팀별 비용을 추적하고, Consolidated Billing으로 볼륨 할인을 받으며, 각 팀에 비용을 배분하는 Chargeback 모델을 구축하여 비용 책임을 명확히 합니다.
- • 구매 옵션별 비용/유연성 트레이드오프 (On-Demand, RI, Savings Plans, Spot)
- • Cost Explorer, Budgets, Trusted Advisor를 통한 비용 가시성 확보
- • Cost Allocation Tags로 프로젝트/팀별 비용 추적
- • Consolidated Billing과 Chargeback으로 멀티 어카운트 비용 관리
Compute Optimizer를 활용한 인스턴스 타입 최적화 방법과, S3 스토리지 비용 절감을 위한 Intelligent-Tiering과 Lifecycle Policy의 실제 적용 사례를 설명해주세요.
아직 댓글이 없습니다. 첫 번째 댓글을 남겨보세요!