Skip to content
This repository has been archived by the owner on Mar 12, 2024. It is now read-only.
/ chaos-engine Public archive

The Chaos Engine is a tool that is designed to intermittently destroy or degrade application resources running in cloud based infrastructure. These events are designed to occur while the appropriate resources are available to resolve the issue if the platform fails to do so on it's own.

License

Notifications You must be signed in to change notification settings

ThalesGroup/chaos-engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chaos Engine

Sanity CI Quality Gate Status Lines of Code Coverage Security Rating Reliability Rating Known Vulnerabilities

Chaos Engine is an application for creating random Chaos Events in cloud applications to test resiliency. It follows the Principles of Chaos to create random faults (experiments) that could reasonably occur in a real application deployment.

Chaos Engine makes intelligent decisions in how and when to create experiments. When properly configured, experiments can be restricted to occur only during normal business hours (i.e., no pager alerts).

Supported Platforms

Chaos Engine currently supports Amazon Web Services, Google Cloud Platform, Pivotal Cloud Foundry, and Kubernetes.

⚠️ Warning

Running chaos experiments in a non-resilient system can result in significant faults. We highly recommend you use a graduated approach to chaos implementation, and build confidence in your development and staging environments before attempting the same in your production environment.

Capabilities

Resource Faults Communication Faults Application Faults
Kubernetes ✔️ ✖️ ✔️
Cloud Foundry ✔️ ✔️ ✔️
AWS EC2 ✔️ ✔️ ✔️
AWS RDS ✖️ ✔️ ✖️
GCP Compute ✔️ ✔️ ✔️
GCP Memorystore ✖️ ✔️ ✖️

Legend

✔️ - Fully Supported | ✅ - Some Support | ✖️ - Not Supported | 🚧 - Planned

For more information on how these experiments are done, please refer to the full experiment modules documentation.

Requirements

Chaos Engine does not specifically require the use of any other significant applications to already exist in your deployment. Each Cloud Platform is separately configured with access credentials.

The Chaos Engine instance runs in a Docker image, and will need network access to API endpoints for the appropriate platforms

See the documentation for more information.

Getting Started

Please see our documentation for configuration instructions.

Contributing

Chaos Engine is being actively developed, but we welcome public participation. Please note that we have internal processes that may slow down or require alterations to any pull requests. We may also have internal development on similar features. You can contact us for more information.

Demo Video

Chaos Engine Introduction

Contact

You can e-mail us, or find us on Slack.

About

The Chaos Engine is a tool that is designed to intermittently destroy or degrade application resources running in cloud based infrastructure. These events are designed to occur while the appropriate resources are available to resolve the issue if the platform fails to do so on it's own.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •  

Languages