Skip to content

berkay-dincer/kubethanos

Repository files navigation

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.

Table of Contents

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 kubethanos
--included-pod-names=<pod(s)_will_be_selected_if_pod_name_contains_this_string>
--node-names=<pod(s)_will_be_selected_if_they_reside_in_given_node_names>
--excluded-pod-names=<pod(s)_will_be_excluded_if_pod_name_contains_this_string>
--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 healthcheck
--interval // Interval between killing pods
--dry-run // If true, print out the pod names without actually killing them. Defaults *FALSE*
--ratio // ratio of pods to kill. Default is 0.5 
--debug // Enable debug logging.
  • Pods to kill will be searched with a top-down approach. Node(s) first Pod(s) later.

  • 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! Please see the contributing file for details.

Code of Conduct

Please check the code of conduct page for efficient collaboration and communication.

License

This project licensed under MIT.

About

Kills half of your randomly selected kubernetes pods.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published