CertNote/ 출퇴근 학습 노트
로드맵
KOEN
CLF-C02 · FoundationalCloud Practitioner - Foundational
DVA-C02 · AssociateDeveloper - Associate
SAA-C03 · AssociateSolutions Architect - Associate
SOA-C02 · AssociateCloudOps Engineer - Associate
SAP-C02 · ProfessionalSolutions Architect - Professional
DOP-C02 · ProfessionalDevOps Engineer - Professional
  • Week 1
    • 1.DevOps라는 운영 모델: CALMS의 다섯 축과 DORA가 측정해 보여준 진실
    • 2.Well-Architected Framework: DevOps의 6개 렌즈로 다시 읽기
    • 3.AWS DevOps 도구 지도: Code* 시리즈와 그 너머의 진짜 그림
    • 4.멀티 계정 전략: Organizations, Control Tower, IAM Identity Center의 진짜 그림
    • 5.Week 1 종합: DevOps 사고 프레임을 시나리오로 굳히기
  • Week 2
  • Week 3
  • Week 4
  • Week 5
  • Week 6
  • Week 7
  • Week 8
  • Week 9
  • Week 10
  • Week 11
  • Week 12
    • 1.EventBridge: 이벤트 버스의 라우팅 모델과 비동기 자동화의 신경계
    • 2.SSM Automation: 운영 절차를 코드로, 사람을 워크플로 안으로
    • 3.Auto-Healing: 자동 복구의 제어 이론과 폭주를 막는 안전 공학
    • 4.ChatOps와 Incident Manager: 자동화가 끝나고 사람 조직이 시작되는 경계
    • 5.Week 12 통합 복습: 인시던트 자동화의 전체 신경계를 하나로 잇기
  • Week 13
  • Week 14
  • Week 15
  • Week 16
SCS-C03 · SpecialtySecurity - Specialty
MLA-C01 · AssociateMachine Learning Engineer - Associate
AIF-C01 · FoundationalAI Practitioner - Foundational
DEA-C01 · AssociateData Engineer - Associate
MLS-C01 · SpecialtyMachine Learning - Specialty
합격 후기

© CertNote · 주간랩스

  • 소개
  • 수정 기록
  • 문의
  • 이용약관
  • 개인정보처리방침
← DOP-C02/Week 12/Day 5

기준: DOP-C02 시험 가이드·오류 제보

DOP-C02· ProWeek 12 · Day 5읽기 약 23분

Day 5 - Week 12 통합 복습: 인시던트 자동화의 전체 신경계를 하나로 잇기

한 주 동안 우리는 자동화 도메인을 부위별로 해부했다. EventBridge라는 신경계, SSM Automation이라는 절차의 코드화, Auto-healing이라는 반사 신경, ChatOps와 Incident Manager라는 사람 조직과의 접점. 오늘은 이 부위들을 다시 하나의 살아 있는 유기체로 조립한다. 실전에서 인시던트는 이 컴포넌트들을 따로 쓰지 않는다 — 하나의 탐지가 자동 복구를 부르고, 복구가 실패하면 사람을 호출하고, 사람이 ChatOps로 협응하고, 끝나면 포스트모템으로 학습이 순환된다. 이 전체 흐름을 머릿속에 단일 그림으로 그릴 수 있어야 DOP 시험의 복합 시나리오를 풀 수 있다.

Week 12 핵심을 하나의 흐름으로

                    [탐지 Sense]
   CloudWatch Alarm · GuardDuty · EC2 StatusCheck · Synthetics
                          │
                          ▼
              [라우팅 — EventBridge Day 1]
       Event Pattern 매칭 (결정 트리, 부분 일치, 배열=OR)
                          │
        ┌─────────────────┼──────────────────┬───────────────┐
        ▼                 ▼                  ▼               ▼
   [단순 자동복구]    [표준 절차]        [복잡 복구]      [Critical]
   Lambda Day 3     SSM Automation     Step Functions   Incident Mgr
   (격리·재시작)     Runbook Day 2      (Saga, Day 3)    Day 4 (ICS)
   Cooldown·Bounded  aws:approve 게이트                  Escalation
   ·Idempotent                                          Timeline·PIR
        │                 │                  │               │
        └─────────────────┴──────────────────┴───────────────┘
                          ▼
              [알림 Notify — Day 4]
   CodeStar Notifications → Chatbot(Slack) · PagerDuty(API Destination)
                          │
                          ▼
              [학습 Learn]  비난 없는 포스트모템 · Game Day(FIS)
                          │
                          ▼ (피드백 루프: 새 패턴을 자동 대응에 추가)

이 그림의 다섯 단계 — 탐지 → 라우팅 → 대응 → 알림 → 학습 — 가 Week 12 전체의 골격이다. 각 단계의 핵심을 다시 짚는다.

  1. EventBridge(Day 1) — 자동화의 신경계. EAI/EIP의 메시지 버스·Content-Based Router를 구현해 발신자가 수신자를 모르게 결합도를 끊는다. Event Pattern 매칭은 순차 비교가 아니라 결정 트리(quamina/Rete 계열)로 컴파일되어 규칙 수에 무관하게 빠르고, 부분 일치·배열=OR 의미론을 가진다. Pipes(파이프-필터, 폴링 글루 제거), Scheduler(수백만 스케줄·Flexible Time Window 지터로 thundering herd 방지), Archive/Replay(이벤트 소싱 재처리), at-least-once 전달이라 컨슈머는 멱등해야 한다.

  2. SSM Automation(Day 2) — 운영 절차를 코드로. Runbook(aws:executeAwsApi·aws:invokeLambdaFunction·aws:approve)으로 절차를 선언하고, aws:approve로 사람 게이트를 워크플로에 끼운다.

  3. Auto-healing(Day 3) — 제어 이론의 폐쇄 루프(MAPE-K). MTTR↓가 MTBF↑보다 비용 효율적. 재시작·교체·격리·스케일·페일오버·회로차단 패턴. 플랫폼 내장(ASG ELB health check, StatusCheckFailed_System→ec2:recover) 우선. 안전망 3대 기둥(Idempotent·Cooldown·Bounded Action)이 blast radius 폭주를 막고(2017 S3 사고의 교훈), Circuit Breaker가 연쇄 장애를 끊으며, FIS Game Day로 검증한다.

  4. ChatOps & Incident Manager(Day 4) — 사람 조직과의 접점. Chatbot(SNS-Slack 다리, IAM Role∩Guardrail), CodeStar Notifications(파이프라인 알림 표준), Incident Manager(ICS 사건 지휘 체계의 코드화: Response Plan·Escalation·Timeline·PIR), API Destination(외부 SaaS 통합).

  5. 학습 — 비난 없는 포스트모템(스위스 치즈 모델·Just Culture)으로 데이터를 학습으로 전환해 피드백 루프를 닫는다.

💡 관련 이론: Week 12 전체는 사실 하나의 거대한 MAPE-K 루프(IBM Autonomic Computing)다 — Monitor(CloudWatch/GuardDuty) → Analyze(EventBridge 패턴 매칭) → Plan(어느 대응 경로로 보낼지) → Execute(Lambda/SSM/Step Functions/Incident Manager), 그리고 이 넷이 공유하는 Knowledge(런북·포스트모템·스키마 레지스트리). 개별 서비스를 외우는 대신 이 루프의 어느 단계에 무엇이 들어가는지로 이해하면, 처음 보는 시나리오도 "이건 Analyze 단계의 라우팅 문제군 → EventBridge"처럼 분해된다. 그리고 학습 단계가 Knowledge를 갱신해 다음 루프를 개선하는 것이 자율 시스템의 정수다.

컴포넌트 선택의 결정 트리

시험은 "이 상황에 어떤 서비스인가"를 묻는다. 헷갈리는 경계를 정리한다.

상황정답왜 다른 것은 아닌가
내용 기반 정밀 라우팅, 다수 AWS 서비스 분기EventBridge RuleSNS는 거친 팬아웃, SQS는 점대점 큐
SQS/Kinesis 폴링 → 필터 → 보강 → 타겟EventBridge PipesRule은 푸시 전용, 폴링 소스 미지원
수백만 사용자별 cron 스케줄EventBridge SchedulerCloudWatch cron은 규칙 수 한계
단순 격리/재시작 자동 복구Lambda (안전망 3종 필수)복잡 분기엔 부적합
분기·대기·재시도·보상 복구Step Functions (Saga)Lambda는 15분·상태유실
표준 운영 절차 + 사람 승인 게이트SSM Automation Runbookaws:approve가 핵심
EC2 하부 하드웨어 장애 복구StatusCheckFailed_System→ec2:recoverLambda 직접 구현은 검증 안 됨
ASG 인스턴스 자동 교체health-check-type ELB + Grace PeriodEC2 status만으론 좀비 못 잡음
Pipeline 실패 Slack 알림 (표준)CodeStar Notifications + ChatbotLambda Webhook은 과도한 글루
Critical 인시던트 on-call 에스컬레이션Incident Manager Escalation PlanSNS 전원 알림은 책임 분산
EventBridge → 외부 SaaS 인증 포함 전송API Destination + ConnectionLambda 직접 호출은 배관 부담

이 표의 밑바닥에는 일관된 원리가 흐른다 — "가능한 한 높은 추상화, 가능한 한 관리형(managed)". 같은 일을 Lambda로도 할 수 있지만, AWS가 관리형으로 제공하는 것(Pipes·Scheduler·ec2:recover·CodeStar Notifications·API Destination)이 있으면 그것을 쓴다. 이유는 셋이다. (1) 검증된 안전망 — 관리형 서비스는 AWS가 재시도·멱등성·레이트 리밋을 이미 검증했다. (2) 글루 코드 제거 — 직접 짜면 폴링·배치·에러·인증 갱신 같은 배관을 손으로 관리해야 한다. (3) 운영 부담 이전 — 패치·확장·가용성을 AWS가 진다. DOP 시험의 정답은 거의 항상 "운영 부담이 가장 적은 관리형 옵션"으로 수렴하며, "Lambda로 다 짠다"는 보통 오답 함정이다(되긴 하지만 운영 우수성 기둥에 반함).

통합 시나리오의 안티패턴

마지막으로, 이 컴포넌트들을 잘못 조립하는 흔한 안티패턴을 짚는다. 시험은 종종 "무엇이 잘못됐나"를 묻는다.

⚠️ 함정: 통합 자동화의 3대 안티패턴. (1) 멱등성 누락 — EventBridge·CloudWatch가 at-least-once라 중복 전달되는데 컨슈머가 멱등하지 않으면 이중 격리·이중 청구가 터진다. "이벤트가 가끔 두 번 처리됨"의 답은 거의 항상 컨슈머 멱등성 부재다. (2) 무한 자동 복구 — 개방 루프(결과 미확인)로 "재시작→실패→재시작"을 반복하거나, Cooldown·Bounded Action 없이 폭주한다(2017 S3). (3) 비가역 동작 자동화 — 격리(가역)는 자동이 맞지만 종료·삭제(비가역)를 사람 게이트 없이 자동화하면 오탐 시 데이터·증거를 영구 소실한다. 이 셋을 막는 것이 멱등성·안전망 3기둥·aws:approve 게이트다.

정리

Week 12는 "자동화"라는 한 단어 아래 다섯 층 — 탐지·라우팅·대응·알림·학습 — 을 쌓았다. 핵심 통찰은 이것들이 따로가 아니라 하나의 닫힌 피드백 루프(MAPE-K)라는 점이고, 각 층에서 AWS는 "가장 관리형인 옵션"을 정답으로 제시하며, 모든 자동화의 안전은 멱등성·blast radius 제한·비가역 동작 게이트라는 세 원칙 위에 선다는 것이다. 아래 시나리오 12개로 이 통합 그림을 점검한다.

📝 연습 문제

선택지를 클릭하면 정답·해설이 펼쳐집니다.

문제 1

GuardDuty가 Critical 위협(침해된 EC2가 C2 서버와 통신)을 탐지했다. 해당 인스턴스를 자동 격리하고 포렌식 스냅샷을 뜬 뒤, 종료는 운영자 승인을 받아 실행하는 흐름을 구성하려 한다. 가장 적합한 것은?

문제 2

SQS 큐의 메시지를 폴링해 이벤트 패턴으로 1차 필터링하고, 부족한 정보를 외부 API로 보강한 뒤 DynamoDB에 저장하는 흐름을 글루 코드 없이 구성하려 한다. 가장 적합한 것은?

문제 3

자동 복구 Lambda가 같은 알람의 중복 전달로 한 인스턴스를 두 번 격리하고, 짧은 간격으로 반복 트리거되어 자원을 소진하며, 한 번에 너무 많은 인스턴스를 건드린다. 폭주를 막는 안전망 조합은?

문제 4

매일 새벽 3시 정각에 5만 개의 사용자별 백업 작업이 동시에 실행되며 다운스트림이 부하로 무너진다. 또한 이런 사용자별 스케줄이 수십만 개라 CloudWatch cron 규칙 수 한계에 부딪힌다. 올바른 해법은?

문제 5

Critical 인시던트에서 on-call 1차 담당자가 30분 내 응답하지 않으면 자동으로 2차 그룹을, 그래도 무응답이면 매니저를 호출하고, 전 과정을 타임라인에 자동 기록하려 한다. AWS 네이티브 솔루션은?

문제 6

Slack에서 운영자가 Chatbot으로 진단 명령은 자유롭게 실행하되, 실수로라도 prod EC2 종료·RDS 삭제는 절대 못 하게 하려 한다. IAM Role은 운영 편의상 넓게 유지하고 싶다. 올바른 구성은?

문제 7

EC2 인스턴스가 하부 호스트 하드웨어 장애로 응답하지 않는다. 같은 IP·ENI·EBS를 유지하며 건강한 하드웨어로 자동 복구하려 한다. 올바른 구성은?

문제 8

"RDS 페일오버 → 완료 대기 → 캐시 무효화 → 헬스 확인 → 실패 시 사람 에스컬레이션, 성공 시 Slack 보고 + 티켓"처럼 분기·대기·재시도·보상이 얽힌 복구를 구성하려 한다. 가장 적합한 것은?

문제 9

CodePipeline 실패를 Slack 채널에 가장 단순하고 표준적으로 알리려 한다. 가장 적합한 것은?

문제 10

운영팀이 자동 복구 로직을 만들었으나, 진짜 장애가 처음 발생했을 때 버그로 작동하지 않았다(2017 S3 사고의 재시작 경로처럼). 이런 "녹슨 자동화"를 평시에 발견하는 표준 접근은?

문제 11

EventBridge로 처리하는 결제 이벤트가 가끔 두 번 처리되어 이중 청구가 발생한다. 근본 원인과 해법은?

문제 12

EventBridge에서 외부 SaaS(PagerDuty)로 인증을 포함해 인시던트를 안전하게 전송하되, 인증 갱신·레이트 리밋·재시도·시크릿 관리를 직접 코딩하지 않으려 한다. 가장 적합한 것은?

🔜 Week 13 예고

복원력 - DR, Multi-Region

Week 12가 "한 리전 안에서 장애를 감지·복구·협응"하는 신경계였다면, Week 13은 그 신경계가 리전 전체를 잃었을 때를 다룬다 — RTO/RPO의 수학, Backup·Pilot Light·Warm Standby·Multi-Site Active/Active의 비용-복구시간 트레이드오프, Route 53 페일오버, 그리고 리전 간 데이터 복제의 일관성 문제. Week 12의 자동 복구가 "노드 단위"였다면 Week 13은 "리전 단위"의 복구다.

이전ChatOps와 Incident Manager: 자동화가 끝나고 사람 조직이 시작되는 경계Week 12 · Day 4다음 Multi-AZ 고가용성: 복제 일관성·쿼럼·페일오버 뒤에 있는 분산 시스템 원리Week 13 · Day 1

참고 공식 자료

  • DOP-C02 공식 시험 안내(새 탭에서 열림)
  • Amazon EventBridge 공식 문서(새 탭에서 열림)
  • AWS Lambda 공식 문서(새 탭에서 열림)
  • Amazon DynamoDB 공식 문서(새 탭에서 열림)
  • Amazon EC2 공식 문서(새 탭에서 열림)
  • Amazon SQS 공식 문서(새 탭에서 열림)

이 페이지

  • Week 12 핵심을 하나의 흐름으로
  • 컴포넌트 선택의 결정 트리
  • 통합 시나리오의 안티패턴
  • 정리
  • 연습 문제
  • Week 13 예고