Files
2nd/10_Wiki/Topics/Domain_Programming/DevOps_and_Security/카오스 몽키(Chaos Monkey).md
T
Antigravity Agent c24165b8bc refactor(topics): 멀티 에이전트용 지식 재편 — _Common(공통 기본기) + Domain_* 구조
에이전트 8종(대화형/프로그래머 C·S/디자이너/설계자/기획자/QA/PD/PM)에게
[공통 기본 능력 + 롤별 Specialty] 2층으로 지식을 주입하기 위한 재분류.
문서 내용·포맷은 무수정, 폴더 이동만 (6,372개 문서 수 보존 확인).

- Topic_Programming → Domain_Programming (내부 구조 보존)
- Topic_Graphic → Domain_Design
- Topic_Business → Domain_Product
- Topic_General → Domain_General
- _Common 신설: Math(구 Topic_Math_Specialty), Reasoning(구 General/From_Thinking & Reasoning),
  Reasoning_Creativity(구 General/From_창의성), Communication(Poetic_Blog_Writing + From_writing)
- 타 도메인의 From_* 폴더는 유지 (출처 표기일 뿐, 이미 도메인에 맞게 분류된 문서)
- 빈 폴더 정리 (memory/procedures)
- 에이전트→폴더 매핑은 workspace의 .astra/agent-knowledge-map.json (9개 에이전트)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-11 11:05:56 +09:00

6.0 KiB

id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, verification_status, tags, raw_sources, last_reinforced, github_commit, tech_stack
id title category status canonical_id aliases duplicate_of source_trust_level confidence_score verification_status tags raw_sources last_reinforced github_commit tech_stack
wiki-2026-0508-카오스-몽키-chaos-monkey 카오스 몽키(Chaos Monkey) 10_Wiki/Topics verified self
Chaos Monkey
Chaos Engineering
Netflix Simian Army
none A 0.9 applied
chaos-engineering
sre
resilience
reliability
devops
2026-05-10 pending
language framework
go kubernetes

카오스 몽키(Chaos Monkey)

매 한 줄

"매 random instance termination, 매 production 의 의". 매 2010 Netflix 의 의 의 release 의 chaos engineering 의 의 의 origin tool — 매 production cluster 의 의 random instance 의 의 의 kill 의 의 system 의 의 self-heal 의 verify. 매 2026 — 매 Litmus, Chaos Mesh, Gremlin 의 의 의 Kubernetes 의 native.

매 핵심

매 Chaos Monkey origin

  • 매 2010, Netflix 의 의 AWS 의 의 의 migration 의 의 trigger.
  • 매 hypothesis: "매 instance 의 의 의 die — 매 inevitable. 매 production 의 의 의 의 simulate 의 의 의 resilience 의 의 의 confirm".
  • 매 OSS 2012 — 매 Simian Army (Chaos Monkey, Chaos Gorilla, Chaos Kong, Latency Monkey, etc.).

매 Chaos engineering 의 의 의 5 principles (Netflix)

  1. 매 hypothesis 의 의 의 build (steady-state).
  2. 매 real-world event 의 의 vary (instance fail, network partition).
  3. 매 production 의 의 의 의 run.
  4. 매 automate 의 의 의 의 continuous.
  5. 매 blast radius 의 의 의 minimize.

매 Failure injection 의 의 의 categories

  • Resource — CPU / memory / disk / network exhaustion.
  • State — 매 process kill, 매 container OOM.
  • Network — latency, packet loss, partition.
  • Time — clock skew.
  • Application — exception throw, response delay.

매 2026 Tooling

Tool 매 platform 매 특성
Chaos Mesh k8s 매 CNCF, declarative CRD
LitmusChaos k8s 매 CNCF, GitOps native
Gremlin multi 매 commercial, full-spectrum
AWS FIS AWS 매 managed, IAM-aware
Pumba docker 매 lightweight

💻 패턴

매 Chaos Mesh — pod kill

apiVersion: chaos-mesh.org/v1alpha1
kind: PodChaos
metadata:
  name: pod-failure-example
  namespace: chaos-testing
spec:
  action: pod-failure
  mode: one
  duration: "30s"
  selector:
    labelSelectors:
      app: payment-service
  scheduler:
    cron: "@every 10m"

매 Network latency injection

apiVersion: chaos-mesh.org/v1alpha1
kind: NetworkChaos
metadata:
  name: delay-pods
spec:
  action: delay
  mode: all
  selector:
    labelSelectors:
      app: api
  delay:
    latency: "500ms"
    jitter: "100ms"
  duration: "5m"

매 LitmusChaos — CPU stress

apiVersion: litmuschaos.io/v1alpha1
kind: ChaosEngine
metadata:
  name: cpu-hog
spec:
  appinfo:
    appns: prod
    applabel: "app=worker"
  experiments:
    - name: pod-cpu-hog
      spec:
        components:
          env:
            - name: TOTAL_CHAOS_DURATION
              value: "60"
            - name: CPU_CORES
              value: "2"

매 AWS Fault Injection Simulator

{
  "actions": {
    "stopInstances": {
      "actionId": "aws:ec2:stop-instances",
      "parameters": { "duration": "PT5M" },
      "targets": { "Instances": "ec2-prod-asg" }
    }
  },
  "targets": {
    "ec2-prod-asg": {
      "resourceType": "aws:ec2:instance",
      "resourceTags": { "Env": "prod" },
      "selectionMode": "PERCENT(20)"
    }
  }
}

매 Application-level fault injection

import "github.com/lingo-cn/chaos"

func ChargePayment(ctx context.Context, amt int) error {
    if chaos.Active(ctx, "payment.delay") {
        time.Sleep(2 * time.Second)
    }
    if chaos.Active(ctx, "payment.fail") {
        return errors.New("chaos: simulated failure")
    }
    return realCharge(ctx, amt)
}

매 Steady-state hypothesis (Gremlin)

hypothesis:
  title: "API latency p99 stays under 500ms"
  probes:
    - name: api-latency
      type: probe
      provider:
        type: http
        url: https://prom/api/v1/query?query=histogram_quantile(0.99, http_latency)
      tolerance: { type: probe, value: 500 }

method:
  - name: kill-payment-pod
    action: chaos-mesh.pod-kill
    target: app=payment

rollback:
  - name: clear-chaos
    action: chaos-mesh.delete

매 결정 기준

상황 Approach
매 starting 매 staging — 매 pod kill, 매 manual run
매 mature 매 production — 매 scheduled, blast-radius limited
매 k8s native 매 Chaos Mesh / Litmus
매 multi-cloud 매 Gremlin
매 application logic 매 toxiproxy + feature flag

기본값: 매 staging 의 의 의 시작 → 매 GameDay 의 의 의 production 의 expand.

🔗 Graph

🤖 LLM 활용

언제: 매 chaos experiment 의 의 의 design, 매 hypothesis 의 의 formulate, 매 GameDay runbook 의 의 의 작성. 언제 X: 매 system 의 의 의 의 of basic monitoring 의 의 의 부족 — 매 chaos 의 의 의 premature.

안티패턴

  • No hypothesis: 매 random kill 의 의 의 의 — 매 결과 의 의 interpret 의 의 X.
  • No blast radius: 매 production 의 의 의 의 50% 의 kill — 매 outage 의 의 의 cause.
  • No rollback: 매 chaos 의 의 의 의 의 stuck — 매 manual recovery.
  • No alerting integration: 매 chaos 의 의 의 의 alert page — 매 oncall fatigue.
  • One-time: 매 매 한 번 의 의 의 의 의 — 매 regression 의 의 의 catch X.

🧪 검증 / 중복

  • Verified — Netflix Tech Blog (2010-2026); Chaos Engineering by Casey Rosenthal (O'Reilly); CNCF Chaos Mesh / LitmusChaos docs.
  • 신뢰도 A.

🕓 Changelog

날짜 변경
2026-05-08 Phase 1
2026-05-10 Manual cleanup — Chaos Mesh / Litmus / FIS examples + 5 principles