Riot - A CLI application which introduces chaos in Kubernetes cluster using open-source Chaos Engineering tools
Riot is a small app written in Go which can be used to add chaos to the kubernetes cluster.
- Kubernetes cluster up and running.
kubectl
, if running locally.Docker
, if running a docker image.- Familiarity with the tools which are going to used.
- Clone the repository.
- Run
make all
for creating a binary. - Modify
<your-docker-username>
inMakefile
and runmake docker
for building a docker image
- Clone the repository and build the binary/docker image.
- Modify the values for chaos experiments for supported tools. Manifests and related configuration can be found in
manifests
directory. - Run
riot install chaos-tool
. - While using docker image, run:
docker run -it -v /path/to/kube/config.yml:/root/.kube/config ishantanu16/riot-k8s install/remove/update
. On prompting for kubeconfig path, enter/root/.kube/config
.
install
: Initiates chaos in the cluster.remove
: Removes chaos from the cluster.update
: Updates the attributes of the ongoing chaos.
Contribtions are welcome for adding more Chaos Engineering tools which can help in adding chaos to kubernetes clusters.
To all the creators of awesome chaos engineering tools:
- Pumba (@alexei-led)
- kube-monkey (@asobti)
- pod-reaper (@target)
- chaoskube (@linki)