kube-monkey is an implementation of Netflix's Chaos Monkey for Kubernetes clusters. It randomly deletes pods in the cluster, encouraging and validating the development of failure-resilient services.
Apps opt in with a label, terminations happen during the hours and days you pick, and dry run is the default, so nothing dies until you say so.
helm repo add kubemonkey https://asobti.github.io/kube-monkey/charts/repo
helm repo update
helm install kube-monkey kubemonkey/kube-monkey --namespace kube-system
Opt an app in by labelling it:
metadata:
labels:
kube-monkey/enabled: enabled
kube-monkey/identifier: monkey-victim
kube-monkey/mtbf: "2"
That is a kube-monkey in dry run mode and an app that expects to lose a pod on about one run day in two. See Getting started for the walk through, including how to watch a real termination before you trust it with a live namespace.
See How to contribute. Join us at #kube-monkey on Kubernetes Slack.
Apache License v2.0 - see LICENSE for details.