Session

Using Chaos Toolkit to Determine Resiliency for Your Web App

Level: All

Introduction

Chaos engineering is the process through which one can conduct a series of experiments in order to build confidence in a system’s capability to withstand unexpected behavior.

Objective

The objective of this talk is to help developers working on Python-based web apps to learn about how they can use a simple toolkit to carry out such chaos experiments. The Chaos toolkit (https://chaostoolkit.org/) would help Python developers to customize their experiments as per their project requirements. This can be further automated leveraging CI/CD and Cloud technologies to be able to maintain resiliency in production apps.

Problem statement

More often than not developers face a lot of issues when scaling their applications or when certain unpredictable situations occur. Using the Chaos toolkit developers can determine the resiliency of their application under a chaos situation. In addition, developers can create custom experiments that could be automated to identify failures before they become outages. The session will demonstrate how to achieve a better resiliency using the Chaos toolkit for existing web applications.

Takeaways

Key takeaways from this sessions:

  • Understanding important concepts of Chaos engineering
  • Learn what is meant by steady state hypothesis and create experiments for your Python based web app
  • Automating the process through CI/CD

Demo solution highlights

Following are the highlights:

  • Demonstrating how to setup your first experiment using Chaos toolkit
  • Defining steady-state-hypothesis, probes and controls
  • Running the experiment under various chaos conditions