Devops

Intro to Netflix 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.

vasu34k

Share
Published by
vasu34k

Recent Posts

Generative AI

Generative AI is a type of AI (such as ChatGPT) that can generate new forms…

5 months ago

Pair Programming

Pair programming is a software development technique in which two programmers work together at one…

5 months ago

AWS CodeWhisperer

Amazon recently released Amazon CodeWhisperer to the public. It is an AWS real-time AI code generator…

6 months ago

Multi-hop architecture Azure

Multi-hop architecture is a design approach for organizing data in the Delta warehouse. Multi-hop architectures…

9 months ago

MuleSoft Accelerators

MuleSoft Accelerators are predefined Mule applications, API specifications, and documentation that help to speed up the implementation life…

10 months ago

Introduction to OpenAPI

OpenAPI Specification also known as Swagger Specification is an API description format for REST APIs.…

1 year ago