Building Your First Experiment
How to Design Your Experiments in Steadybit
You can run limitless varieties of experiments to stress test your systems.
A chaos experiment is a controlled set of actions carried out to stress your system in order to prove or disprove a hypothesis about the way your system will behave under those conditions.
In this lesson, we will explain how you can build and customize your own experiments in Steadybit.
Creating New Experiments
As we mentioned in an earlier lesson, you can build experiments by designing a series of actions to take place within your testing environment and directed towards specific targets.
With our timeline-based editor, you can run multiple actions at once. For example, you could set one action to check the status of your service throughout your experiment. In parallel, you could wait 10 seconds and then launch an attack like adding latency to a dependency for a set amount of time. Finally, you could check if your Observability tool has detected any anomalies.
Before we get into detailed examples, there are a few different ways you can start the process of creating an experiment.
Creating Experiments from Scratch
If you prefer to start with a clean slate, you can build your experiment from scratch. You will need to drag-and-drop actions into the editor from the left-hand menu and specify a hypothesis, action durations, targets, and a blast radius.
This approach is great if you want to get used to creating new experiments or you want to reproduce a past incident as an experiment you can run. With this method, you have the most flexibility and control over your experiment, but it may take more time to configure everything before you can run your experiment.
Creating Experiments Using a Template
If you want a shortcut, creating an experiment from a template is a fast way to get started. In the Reliability Hub, we have over 80 templates that you can choose from to test common use cases across a wide variety of targets.
When you select to create a new experiment “From Template”, you will see a list of all the templates that are relevant to your tech stack based on the extensions you have installed.
Just select a template, fill in any missing information, make adjustments, and then run your experiment right away. We’ll explore Templates in greater detail in Lesson 10.
Uploading an Experiment
Lastly, you can simply upload an experiment as a YAML- or JSON-based files, either using the platform UI or the Steadybit API. This approach may apply if you already have existing experiments or scripts, or if you want to build your experiments via code. Overall, this approach tends to be for more advanced users.
Creating Experiments from Reliability Advice
As we just covered in the last lesson, you can also create experiments based on Reliability Advice. If a target has Advice flagged as “Validation Needed”, you can click to “Create Experiment” directly from the Advice page and generate the specific experiment you would need to run.
Lesson Summary
So to recap, there are 4 ways to create new experiments in Steadybit, including:
- From Scratch
- From Template
- Upload
- From Reliability Advice
We’ll dive into more details on the first two approaches in the following lessons. Steadybit offers these options so teams can adopt the ways of working that are most likely to succeed for their organization. Flexibility is critical for a successful chaos engineering roll out. Continue on to the next lesson to learn about running experiments.
