Glossary
DevOps

Chaos Engineering

프로덕션 환경에서 의도적으로 장애를 주입하여 시스템의 복원력을 검증하는 실험적 접근법. Netflix가 개척한 방법론으로, 장애 발생 전 취약점을 발견하고 개선합니다.

1. Chaos Engineering 원칙

1. 정상 상태 가설 수립

시스템의 정상 동작을 측정 가능한 지표로 정의

2. 실제 이벤트 시뮬레이션

서버 장애, 네트워크 지연, 디스크 가득 참 등 실제 장애 재현

3. 프로덕션에서 실험

실제 트래픽과 환경에서 테스트 (안전장치 필수)

4. 자동화 및 지속 실행

CI/CD 파이프라인에 통합하여 지속적 검증

2. 장애 주입 유형

인프라 장애
  • • EC2 인스턴스 종료
  • • AZ(가용 영역) 장애
  • • 디스크 I/O 지연
  • • CPU/메모리 스트레스
네트워크 장애
  • • 네트워크 지연 (Latency)
  • • 패킷 손실
  • • DNS 장애
  • • 서비스 간 통신 차단

3. 도구

AWS FIS

AWS Fault Injection Simulator - 관리형 카오스 엔지니어링

Chaos Monkey

Netflix 오픈소스, 랜덤 인스턴스 종료

Litmus

Kubernetes 네이티브 카오스 엔지니어링

Summary

Chaos Engineering은 “장애는 반드시 발생한다”는 전제 하에 사전에 취약점을 발견하고 시스템 복원력을 강화하는 방법론입니다.

  • • 프로덕션에서 통제된 실험 수행
  • • 장애 발생 전 취약점 발견
  • • AWS FIS로 관리형 카오스 실험