bloomberg / powerfulseal
- среда, 20 декабря 2017 г. в 03:13:35
A powerful testing tool for Kubernetes clusters.
PowerfulSeal adds chaos to your Kubernetes clusters, so that you can detect problems in your systems as early as possible. It kills targeted pods and takes VMs up and down.
It follows the Principles of Chaos Engineering, and is inspired by Chaos Monkey
Embrace the inevitable failure. Embrace The Seal.
Watch us introduce the Seal at Kubecon 2017 Austin
PowerfulSeal works in two modes: interactive and autonomous.
Interactive mode is designed to allow you to discover your cluster's components, and manually break things to see what happens. It operates on nodes, pods, deployments and namespaces.
Autonomous mode reads a policy file, which can contain any number of pod and node scenarios. Each scenario describes a list of matches, filters and actions to execute on your cluster.
Here's a sneak peek of what you can do in the interactive mode:
Autonomous reads the scenarios to execute from the policy file, and runs them:
A minimal policy file, doing nothing, looks like this:
config:
minSecondsBetweenRuns: 77
maxSecondsBetweenRuns: 100
nodeScenarios: []
podScenarios: []
The schemas are validated against the powerful JSON schema
A full featured example listing most of the available options can be found in the tests.
Setup includes:
These interactions are available:
PowerfulSeal
is available to install through pip:
pip install powerfulseal
powerfulseal --help # or seal --help
We found these two links to be a good start:
PowerfulSeal was inspired by Chaos Monkey, but it differs in a couple of important ways.
The Seal does:
The Seal doesn't:
cron
We would love you to. In particular, it would be great to get help with:
Check out our CONTRIBUTING.md file for more information about how to contribute.
It might have been inspired by this comic