From the course: DevOps Foundations: Chaos Engineering

What is Chaos Engineering?

From the course: DevOps Foundations: Chaos Engineering

Start my 1-month free trial

What is Chaos Engineering?

- [Instructor] There was a time when our software applications would be stored on a server within a building owned by the same company who created and maintained that software. If anything were to happen to that physical building, for instance a power cut, then chances would be that you'd lose access to that application also. To test this, engineers would practice disaster recovery testing on their software to see if it would recover from any unforeseeable situations like natural disasters. This usually involved offsite storage and backup servers for mission-critical services. These days, with so many applications being created and run in cloud environments, it's easy to assume that the cloud system operator is responsible for the continued running of your applications. Even if your cloud operator has servers all over the globe, the same question remains. What happens if one of these servers loses power, or worse? Enter chaos engineering, a principle which looks to simulate these events in cloud environments: the partial or total failure of servers, increased latency, and even damaged network cables that can result in information loss. Pioneered by the engineers at Netflix, chaos engineers around the globe are experimenting with new ways to try and find unknown issues within their systems using this method. The Principles of Chaos website explains chaos engineering as, "The discipline of experimenting "on a system in order to build confidence "in the system's capability "to withstand turbulent conditions in production." These turbulent conditions could be anything from the internet being slow to natural disasters cutting off data center around the globe. These scenarios are sometimes impossible to simulate, but by using chaos engineering we can see how our system reacts when these things happen. So get ready. We're going to inject a little bit of chaos into our application and see what happens.

Contents