단계 2: 실패 트리거 및 조사 시작

Break 스크립트 실행

IAM 정책 거부를 주입하고 합성 사용자 트래픽을 생성합니다:

sudo bash -c 'curl https://ws-assets-prod-iad-r-iad-ed304a55c2ca1aee.s3.us-east-1.amazonaws.com/25286efc-5ab4-45b2-a654-bc31f00e0426/break-scripts/module-4-break-script.sh --output module-4-break-script.sh && chmod +x module-4-break-script.sh && ./module-4-break-script.sh'

Break 스크립트가 수행하는 작업

  1. 실패 주입: Lambda에 IAM 거부 정책을 추가하여 SQS 메시지 전송 방지

  2. 합성 사용자 생성: EventBridge에 의해 트리거되어 매분 "Bulk Like All Images"를 실행하는 Lambda 배포

애플리케이션에서 장애 확인

aws cloudformation describe-stacks --stack-name sample-application \
  --query 'Stacks[0].Outputs[?OutputKey==`ApplicationURL`].OutputValue' --output text

또는 AWS 콘솔arrow-up-right에서 AWS CloudFormation > sample-application 스택 > Outputs 탭에서 ApplicationURL 값을 복사합니다.

CloudFormation ALB URL
  1. 브라우저에서 ApplicationURL 열기

  2. Bulk Like All Images 버튼을 3-4회 클릭

  3. 5XX 오류 발생 확인

Bulk Like
Bulk-like 장애

조사 시작

circle-info

CloudWatch 그래프에서 오류 시뮬레이션 후 5XX HTTP 오류 데이터포인트가 나타나기까지 몇 초에서 1분의 지연이 있을 수 있습니다. 데이터포인트가 즉시 표시되지 않으면 잠시 기다린 후 페이지를 새로 고침하세요.

Browse 탭에서 ApiGateway > By Api Name > batch-processing-api5XXError 메트릭을 선택합니다.

CloudWatch 메트릭 Browse

API Gateway의 5XX HTTP 오류를 보여주는 메트릭 그래프가 표시됩니다.

메트릭 콘솔
  1. 5XX 오류 메트릭에서 Investigate 버튼 클릭

Investigate 버튼
  1. Start a new investigation 클릭

Start a new investigation
  1. 조사 이름: High 5XX Errors 입력

조사 세부 정보
  1. 하단으로 스크롤하여 Start investigation 클릭

Start Investigation
  1. Open in full page 클릭

조사 열기
circle-info

조사가 시작되면 AI가 자동으로 관련 메트릭, 로그, 트레이스를 수집하고 분석합니다. 이 과정은 몇 분 정도 소요될 수 있습니다.

코드 분석: Break 스크립트 메커니즘

장애 주입 방식

모듈 2의 break 스크립트는 모듈 1과 다른 접근법을 사용합니다:

구분
모듈 1 (module-1-break-script.py)
모듈 2 (module-4-break-script.sh)

언어

Python (324줄)

Shell Script

장애 유형

보안 그룹 규칙 제거

IAM 정책 거부 주입

영향

DB 연결 불가

Lambda → SQS 전송 차단

복구 방법

connectivity(action="fix")

IAM 정책 복원

추가 동작

서포트 티켓 생성

합성 사용자 트래픽 생성

모듈 1 Break 스크립트 분석 (Python, 324줄)

모듈 1에서 사용한 break 스크립트의 핵심 로직:

모듈 2 장애 시나리오 흐름

탐지 포인트

AI가 분석하는 주요 텔레메트리:

소스
메트릭/로그
이상 징후

ALB 메트릭

HTTPCode_Target_5XX_Count

5XX 오류 급증

Lambda 로그

AccessDenied 예외

SQS 권한 거부

CloudTrail

SendMessageBatch 이벤트

errorCode: AccessDenied

SQS 메트릭

NumberOfMessagesSent

0으로 감소

circle-info

핵심 포인트: 모듈 2의 장애 시나리오는 IAM 권한 오구성입니다. 모듈 1의 네트워크 레벨 장애(보안 그룹)와 달리, 애플리케이션 레벨 장애로 CloudTrail, Lambda 로그, SQS 메트릭 등 다양한 텔레메트리 소스를 상관 분석해야 합니다.

마지막 업데이트