Devops

Intro to Netflix Chaos Monkey

chaos monkey
Chaos Monkey

Netflix Chaos Monkey is a software tool that was developed by Netflix engineers to test the resiliency and recoverability of their Amazon Web Services (AWS). 

The software simulates failures of instances of services running within Auto Scaling Groups (ASG) by shutting down one or more of the virtual machines. According to the developers, Chaos Monkey was named for the way it wreaks havoc like a wild and armed monkey set loose in a data center.

Chaos Monkey works on the principle that the best way to avoid major failures is to fail constantly. However, unlike unexpected failures, which seem to occur at the worst possible times, the software is opt-out by default. It can also be configured for opt-in.

Chaos Monkey has a configurable schedule that allows simulated failures to occur at times when they can be closely monitored.  In this way, it’s possible to prepare for major unexpected errors rather than just waiting for catastrophe to strike and seeing how well you can manage.

Chaos Monkey was the original member of Netflix’s Simian Army, a collection of software tools  designed to test the AWS infrastructure.

Other Simian Army members have been added to create failures and check for abnormal conditions, configurations and security issues.  Chaos Gorilla, another member of the Simian Army, simulates outages for entire regions. 

Netflix engineers plan to add more monkeys to the army, some based on community suggestions.

To get started, Chaos Monkey is built upon another Netflix-made tool, Spinnaker, which is an open-source, multi-cloud continuous delivery platform. Spinnaker can be built on top of a cloud provider and works with all major providers.

The providers it supports are

  • Google’s App Engine
  • Amazon Web Services
  • Azure
  • Cloud Factory
  • DC/OS
  • Google Compute Engine
  • Kubernetes V2 (manifest based)
  • Oracle

Chaos Monkey is not alone in the army.Chaos engineers now have the Simian Army to work with and Chaos Monkey falls in ranks with:

  • Chaos Kong drops a whole AWS Region.
  • Chaos Gorilla drops a whole AWS Availability Zone.
  • Latency Monkey simulates network outages or delays.
  • Doctor Monkey performs health checks.
  • Janitor Monkey identifies unused resources.
  • Conformity Monkey identifies non-conforming instances based on a set of rules.
  • Security Monkey tests for known vulnerabilities. End of life in 2020, with alternatives available.
  • 10-18 Monkey detects configuration and run-time problems in instances serving customers in multiple geographic regions.

Loading

One thought on “Intro to Netflix Chaos Monkey

Comments are closed.

Translate »