https://github.com/robusta-dev/robusta-chaos
Chaos Engineering for Kubernetes
https://github.com/robusta-dev/robusta-chaos
Last synced: 7 months ago
JSON representation
Chaos Engineering for Kubernetes
- Host: GitHub
- URL: https://github.com/robusta-dev/robusta-chaos
- Owner: robusta-dev
- Created: 2021-12-26T21:28:02.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2024-01-21T07:34:35.000Z (about 2 years ago)
- Last Synced: 2025-07-10T11:03:25.737Z (7 months ago)
- Language: Python
- Size: 13.7 KB
- Stars: 22
- Watchers: 6
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Introduction
Chaos-engineering for Kubernetes using [Robusta](https://github.com/robusta-dev/robusta)
1. Generate OOMs
2. Generate high cpu
3. Make nodes unresponsive by creating kubelet issues
More to come soon!
# Why another chaos engineering tool
Because we love Python.
We want chaos engineering to be simpler.
We want to make the chaos scenarios easily understandable by everyone who knows a little Python.
We want to make it easier to add your own chaos scenarios specific to your company.
Robusta lets us do all of that with one simple Python function per chaos scenario.
# Is it really that simple?
Yes! Look at the code for the [kill_node](https://github.com/robusta-dev/robusta-chaos/blob/master/robusta_chaos/node_killer.py) action.
This is invoked using:
```bash
robusta playbooks trigger kill_node name=
```
All the wiring and annoying parts are handled by Robusta. The `kill_node` action contains logic but no boilerplate wiring.
[See the Robusta docs on manual triggers to understand how this works.](https://docs.robusta.dev/master/playbook-reference/triggers/manual-triggers.html)
# Examples
1. Scale a deployment up and down
```yaml
customPlaybooks:
- triggers:
- on_schedule:
fixed_delay_repeat:
repeat: -1
seconds_delay: 60
actions:
- scale_deployment:
name: nginx-deployment
namespace: default
replicas: 300
```