Skip to content
Kills half of your randomly selected kubernetes pods.
Go Dockerfile
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
kubethanos changed percentage argument to ratio as per #3 Dec 2, 2019
thanos initial commit Nov 28, 2019
.gitignore gitignore Nov 28, 2019
Dockerfile Update Dockerfile Nov 29, 2019
LICENSE initial commit Nov 28, 2019
README.md
go.mod removes multierror dep, typo fixes Nov 29, 2019
go.sum removes multierror dep, typo fixes Nov 29, 2019
kubethanos.png resize image Nov 29, 2019
kubethanos.yaml removes multierror dep, typo fixes Nov 29, 2019
main.go changed percentage argument to ratio as per #3 Dec 2, 2019

README.md

chaoskube

kubethanos

kubethanos kills half of your pods randomly to engineer chaos in your preferred environment, gives you the opportunity to see how your system behaves under failures.

Usage

See the kubethanos.yaml file for an example run. Here are the list of valid parameters:

--namespaces=!kubesystem,foo-bar // A namespace or a set of namespaces to restrict thanoskube
--included-pod-names=<regex_to_include_pod_names>
--excluded-pod-names=<regex_to_include_pod_names>
--master // The address of the Kubernetes cluster to target, if none looks under $HOME/.kube
--kubeconfig // Path to a kubeconfig file
--healthcheck // Listens this endpoint for healtcheck
--interval // Interval between killing pods
--dry-run // If true, print out the pod names without actually killing them.
--percentage // percentage of pods to kill. Default is 0.5 
--debug // Enable debug logging.
  • Configure kubernetes readiness & liveliness probes to /healthz endpoint.

Other similar projects

Acknowledgements

  • Thanks to @linki chaoskube for giving me the idea and having written something with a broader scope.

Disclaimer

  • You are responsible for your actions. If you break things in production while using this software I cannot help you to restore the damage caused.

Contribute

Any contributions are welcome!

License

This project licensed under MIT.

You can’t perform that action at this time.