aws 10

Lambda와 API Gateway

학습 목표handler·runtime·event/response 형식으로 Lambda 함수를 작성할 수 있다.execution role·resource policy로 Lambda·API Gateway 권한을 최소로 연결할 수 있다.REST API와 HTTP API 차이를 보고 신규 API에 적합한 타입을 고를 수 있다.Lambda proxy integration으로 API Gateway와 함수를 IaC(CDK) 로 배포할 수 있다.앞 편 Serverless 아키텍처 선택 기준을 구체 구현으로 이어갈 수 있다.문제 상황10편에서 sync API는 Lambda가 맞다고 했는데 — handler가 event 구조를 몰라 500만 반환API Gateway REST로 만들었더니 비용·설정이 과함 — HTTP AP..

Serverless 아키텍처

학습 목표Serverless가 서버 관리 위임·사용량 과금·이벤트 구동을 핵심으로 함을 설명할 수 있다.FaaS·event-driven 패턴으로 요청·비동기 워크로드를 설계할 수 있다.cold start·concurrency가 latency·비용에 미치는 영향을 설명할 수 있다.serverless vs container를 트래픽·팀·운영 축에서 비교할 수 있다.Part 2 CDK로 serverless 스택을 코드화할 준비를 할 수 있다.문제 상황트래픽 10배 차이 — EC2 24/7 과금, 야간 idle 80%“서버리스로 가자” — VPC Lambda ENI·cold start 3초 — API SLA 깨짐SQS 100만 메시지 — Lambda 동시성 한도·throttle — 설계 미스K8s Deploym..

CDK 테스트와 배포

학습 목표cdk synth·diff·deploy를 로컬·CI에서 안전한 순서로 실행할 수 있다.Template assertions·snapshot test로 synth 결과를 자동 검증할 수 있다.PR CI에서 synth·diff·test를, main에서 승인 후 deploy를 구성할 수 있다.bootstrap·asset·stack approval이 배포 파이프라인에 미치는 영향을 설명할 수 있다.Terraform plan file 승인 패턴과 CDK template diff 패턴을 대응시킬 수 있다.문제 상황cdk deploy를 로컬에서만 — PR에 template 변경이 안 보이고 리뷰 불가construct id 바꿨더니 S3 bucket replace — 테스트 없이 프로덕션 적용Jest는 있는데 ..

CDK vs Terraform

학습 목표Terraform과 CDK가 같은 IaC 철학(선언·멱등)을 공유하지만 엔진·상태가 다름을 설명할 수 있다.state file vs CloudFormation stack이 plan·drift·협업에 미치는 차이를 설명할 수 있다.plan/apply와 synth/diff/deploy 워크플로를 1:1로 대응시킬 수 있다.멀티 클라우드·팀 언어·추상화 관점에서 어느 쪽을 고를지 근거를 들 수 있다.두 도구를 공존시키는 패턴(terraform-cdk, 스택 분리)을 개괄할 수 있다.문제 상황Part 1 Terraform으로 S3·VPC·remote state를 잡았는데 — AWS만 쓰면 CDK가 낫다는 말만 듣고 기준이 없음CDK cdk diff는 익숙한데 terraform plan과 뭐가 다른지 —..

CDK로 인프라 정의

학습 목표L1·L2·L3 construct 계층과 언제 어떤 레벨을 쓰는지 설명할 수 있다.ec2.Vpc·lambda.Function 등 L2로 VPC·서브넷·NAT를 정의할 수 있다.IAM Role·PolicyStatement·grantRead 등으로 권한을 선언적으로 연결할 수 있다.L1 Cfn* 로 CloudFormation 속성에 직접 접근하는 이유를 설명할 수 있다.TypeScript·Python CDK 코드의 구조 차이를 읽고 작성할 수 있다.문제 상황6편에서 s3.Bucket 한 줄은 썼는데 — VPC 3 AZ·NAT는 L2 옵션이 뭔지 모름CloudFormation 문서의 속성 이름이 L2에 없어서 막힘 — L1로 내려가야 하나IAM 인라인 policy JSON을 CDK에 하드코딩 — gr..

AWS CDK 개요

학습 목표AWS CDK(Cloud Development Kit) 가 일반 purpose 언어로 인프라를 정의하는 방식임을 설명할 수 있다.App·Stack·Construct 계층과 부모-자식 관계를 설명할 수 있다.synthesis가 CDK 코드를 CloudFormation template으로 바꾸는 과정임을 설명할 수 있다.cdk synth·cdk deploy·cdk diff가 Terraform plan/apply와 어떻게 대응되는지 비교할 수 있다.Terraform과 CDK의 상태·배포 엔진 차이를 개괄적으로 설명할 수 있다.문제 상황CloudFormation YAML 3,000줄 — !Ref·!GetAtt 추적이 지옥VPC·RDS·Lambda를 복사 붙여넣기 — 파라미터 하나 바꿀 때 전 스택 di..

Cloud IAM

학습 목표클라우드 IAM의 principal·action·resource·condition 평가를 설명할 수 있다.User·long-lived key와 role·임시 자격증명의 차이를 설명할 수 있다.workload identity(IRSA·GKE WI·Azure WI)로 Pod가 클라우드 API에 접근하는 흐름을 설명할 수 있다.2편 least privilege·8편 인가·17편 Zero Trust와 클라우드 권한을 연계할 수 있다.문제 상황EKS 노드 IAM AdministratorAccess — Pod 탈취 = 계정 전체앱 컨테이너 env에 AWS_ACCESS_KEY_ID — 13편 시크릿 유출·회전 불가개발자 개인 IAM User로 프로덕션 S3 접근 — 퇴사 후 키 잔존CI 장기 access k..

관리형 서비스

학습 목표RDS·ElastiCache의 HA·연결·VPC 배치를 설계할 수 있다.S3 오브젝트 스토리지와 스토리지 클래스·라이프사이클을 워크로드에 맞게 선택할 수 있다.SQS·SNS로 비동기·fan-out 메시징을 설계할 수 있다.Lambda 이벤트 모델·cold start·VPC 연동 트레이드오프를 설명할 수 있다.직접 운영 vs 관리형 선택 기준을 비용·운영·제어 관점에서 비교할 수 있다.문제 상황EC2에 PostgreSQL 직접 — 패치·백업·장애 복구 올인RDS public 접근 허용 — 16편 VPC 설계 무력화캐시 없이 DB 조회 폭주 — p99 급등·connection pool 고갈로그·백업을 EBS에 쌓음 — 용량·비용 선형 증가주문 API 동기로 이메일·정산 처리 — 타임아웃·재시도 폭주..

VPC와 네트워킹

학습 목표VPC·subnet·route table로 클라우드 네트워크 경계를 설계할 수 있다.Security Group과 NACL의 stateful·stateless·적용 위치 차이를 설명할 수 있다.ALB·NLB 역할과 K8s Ingress·Service 연결을 설명할 수 있다.NAT gateway로 private subnet 아웃바운드를 설계할 수 있다.public/private 서브넷 배치·CIDR 계획 실수를 피할 수 있다.문제 상황EKS worker를 public subnet에 — SSH·API 노출·스캔 폭주RDS를 public 접근 허용 — 인터넷에서 5432 시도두 VPC CIDR 10.0.0.0/16 겹침 — peering 불가NACL로 443 허용했는데 응답 안 옴 — stateless..

클라우드 모델

학습 목표IaaS·PaaS·SaaS의 관리 경계와 적합 워크로드를 설명할 수 있다.책임 공유 모델(Shared Responsibility) 에서 고객·클라우드 역할을 구분할 수 있다.리전(Region)·가용 영역(AZ) 이 가용성·지연·규제에 미치는 영향을 설명할 수 있다.온프레미스 vs 클라우드 트레이드오프를 비용·제어·속도 관점에서 비교할 수 있다.K8s on cloud·관리형 서비스가 어느 층에 해당하는지 위치할 수 있다.문제 상황“클라우드 쓰면 보안은 AWS가 다 한다” — 앱 취약점·IAM 설정은 고객 책임EC2에 OS 패치·K8s·앱까지 직접 — PaaS 쓸지 IaaS 쓸지 혼란서울 사용자인데 버지니아 리전 배포 — RTT 200ms·GDPR 데이터 위치 이슈단일 AZ RDS — AZ 장애 시..