agentsclimarketplace

Chaos engineering

Skill iceflower/agent-skills/chaos-engineering

Agent Skills 오픈 표준 기반 AI 코딩 에이전트용 스킬 컬렉션 (Java, Kotlin, Spring, NestJS, K8s, Terraform, GraphQL, gRPC, OpenTelemetry, a11y, i18n 등 60개)

Install
npx -y skills add iceflower/agent-skills --skill chaos-engineering

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Chaos engineering principles and practices for building resilient systems. Covers tools such as Chaos Monkey, Gremlin, and Litmus for fault injection, blast radius analysis, steady state hypothesis definition, experiment design, failure mode validation, and game day planning. Use when designing reliability testing, running fault injection experiments, defining steady state hypotheses, or planning chaos game days to verify system resilience.

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

8.1 KB, as published. Nobody here has run it

Skill: Chaos Engineering

Source: Release It! Second Edition - Michael Nygard (Chapter 17)

Principles and practices for building resilient systems through controlled failure injection. Use when designing reliability testing, incident prevention strategies, or system resilience verification.


1. Chaos Engineering Overview

Definition

Chaos Engineering is the discipline of experimenting on a system to build confidence in its capability to withstand turbulent conditions in production.

Core Principle

"Improvement through destruction"

  • Intentionally inject failures to discover weaknesses
  • Build confidence in system resilience
  • Identify vulnerabilities before users do

2. Pioneers and Origins

Netflix Chaos Engineering

Netflix pioneered chaos engineering practices:

  • Chaos Monkey: Randomly terminates instances in production
  • Tests automatic recovery capabilities
  • If cluster can't recover, the service team must address the issue

Evolution

GenerationToolDescription
1stChaos MonkeyRandom instance termination
2ndLatency MonkeyInject delays into calls
3rdFIT (Failure Injection Testing)Fine-grained failure injection

3. Chaos Monkey

What It Does

  • Randomly "wakes up" and kills an instance in an auto-scaling cluster
  • Cluster must automatically recover
  • If recovery fails, the owning team must respond

Purpose

  • Verify automatic recovery works
  • Ensure monitoring alerts are functioning
  • Test runbook effectiveness
  • Build muscle memory for incident response

Implementation

# Chaos Monkey Configuration Example
enabled: true
schedule:
  start_hour: 9
  end_hour: 15
  timezone: "America/Los_Angeles"
  weekends: false
  
target:
  app: "my-service"
  region: "us-east-1"
  
termination:
  frequency: "daily"
  max_instances: 1

4. Chaos Injection Types

4.1 Instance Termination

Description: The most basic and crudest injection type.

What it tests:

  • Auto-scaling group recovery
  • Load balancer health checks
  • Connection draining

Limitations:

  • Finds obvious weaknesses
  • Not sufficient alone

4.2 Latency Injection (Latency Monkey)

Description: Deliberately adds latency to calls.

What it tests:

  • Timeout configurations
  • Retry logic behavior
  • Graceful degradation

Weaknesses discovered:

IssueDescription
Fallback behaviorServices should have useful fallbacks, not just timeout or error
Race conditionsLatency can reveal race conditions that only appear when responses arrive in different orders

4.3 Service Call Failure

Description: Fail specific service-to-service calls.

What it tests:

  • Circuit breaker behavior
  • Fallback mechanisms
  • Error propagation

Useful for:

  • Deep call tree architectures
  • Microservice dependencies
  • Critical path analysis

5. Failure Injection Testing (FIT)

What is FIT?

Netflix's FIT (Failure Injection Testing) injects more subtle failures:

  • Tag requests with a cookie at the API gateway boundary
  • Cookie instructs: "Process normally, but fail when Service G calls Service H"
  • At the call point, check the cookie and fail as instructed

How It Works

Request → API Gateway (tag with cookie)
        → Service A (normal processing)
        → Service B (normal processing)
        → ...
        → Service G (check cookie → fail call to H)

Implementation Requirements

  • Common service call framework
  • Request context propagation
  • Configurable failure injection rules

6. Adopting Your Own Monkey

17.4.1 Prerequisites

Before starting chaos experiments:

PrerequisiteDescription
MonitoringMust have visibility into system behavior
AlertingMust be notified when things break
RunbooksMust know how to respond to failures
Recovery mechanismsMust have automated or manual recovery procedures
Stakeholder buy-inLeadership must understand and support experiments

17.4.2 Experiment Design

Key questions to answer:

  1. What hypothesis are we testing?
  2. What's the expected system behavior?
  3. How will we measure the impact?
  4. What's the blast radius?
  5. What's the rollback plan?

Experiment template:

## Chaos Experiment: [Name]

### Hypothesis
[What we believe will happen]

### Expected Behavior
[What should happen when failure is injected]

### Metrics to Observe
- [ ] Error rate
- [ ] Latency
- [ ] Customer impact
- [ ] Recovery time

### Blast Radius
[Which services/users are affected]

### Rollback Plan
[How to stop the experiment]

17.4.3 Chaos Injection

System knowledge required:

  • Know which instances to kill
  • Know where to add latency
  • Know which service calls to fail

17.4.4 Target Selection

Selection criteria:

FactorConsideration
CriticalityStart with non-critical services
Dependency depthTest deep call chains
Recent changesFocus on newly deployed components
Historical issuesTarget previously problematic areas

17.4.5 Automation and Repetition

Principles:

  • Automate experiment execution
  • Run experiments regularly (daily/weekly)
  • Integrate with CI/CD pipelines
  • Track results over time

7. Disaster Simulation

17.5 Game Days

Purpose: Practice incident response in controlled environment.

Structure:

1. Announce game day schedule
2. Select failure scenario
3. Inject failure
4. Observe response
5. Debrief and document

Scenarios to Simulate

ScenarioPurpose
AZ failureTest multi-AZ resilience
Region failureTest DR procedures
Database failoverTest RTO/RPO
Third-party outageTest fallback behavior
Traffic spikeTest auto-scaling

8. Chaos Engineering Checklist

Before Starting

  • Monitoring and alerting in place?
  • Runbooks documented?
  • Stakeholders informed?
  • Rollback plan ready?

For Each Experiment

  • Hypothesis defined?
  • Metrics identified?
  • Blast radius understood?
  • Timing appropriate (not during peak traffic)?
  • Team available to respond?

After Each Experiment

  • Results documented?
  • Weaknesses identified?
  • Improvements planned?
  • Follow-up experiments scheduled?

9. Common Anti-Patterns

Anti-PatternProblem
Chaos without monitoringCan't observe impact
Too much chaos at onceHard to isolate cause
Chaos only in test environmentsDoesn't prove production resilience
No rollback planRisk of prolonged outage
Surprise chaosUndermines team trust

Additional References

References

  • Release It! Second Edition, Michael Nygard, Chapter 17
  • Netflix Tech Blog: FIT (Failure Injection Testing)
  • Principles of Chaos Engineering (principlesofchaos.org)

Related Skills

  • system-stability-patterns — Stability patterns verified by chaos experiments (circuit breaker, timeouts)
  • monitoring — Monitoring patterns essential for observing chaos experiments
  • k8s-workflow — Kubernetes health checks and pod management

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.