O Simian Army é uma coleção de ferramentas de teste em nuvem de código aberto criada pela empresa de streaming de vídeo online, Netflix. As ferramentas permitem aos engenheiros testar a confiabilidade, segurança, resiliência e recuperabilidade dos serviços de nuvem que a Netflix executa na infra-estrutura Amazon Web Services (AWS).
Os engenheiros da Netflix começaram a criar os agentes de software autônomos, que são chamados de macacos, logo após a mudança para a nuvem com AWS. Cada macaco é projetado para ajudar a tornar o serviço da Netflix menos frágil e mais capaz de suportar um serviço contínuo, com o mínimo de degradação, quando partes da nuvem sofrem falhas aleatórias.
Os membros do Exército Simiano incluem:
- Chaos Monkey - desliga máquinas virtuais (VMs) aleatoriamente para garantir que pequenas interrupções não afetarão o serviço em geral.
- Latency Monkey - simula uma degradação do serviço e verifica se os serviços upstream reagem apropriadamente.
- Conformity Monkey - detecta instâncias que não estão codificadas com as melhores práticas e as desliga, dando ao dono do serviço a oportunidade de relançá-las apropriadamente.
- Security Monkey - procura fraquezas de segurança, e termina as instâncias ofensivas. Ele também garante que os certificados SSL e DRM não estão expirados ou perto da expiração.
- Doctor Monkey - executa verificações de saúde em cada instância e monitora outros sinais externos de saúde do processo como CPU e uso de memória.
- Janitor Monkey - procura por recursos não utilizados e descarta-os.
Cada uma destas ferramentas ajuda a tornar o serviço na nuvem menos frágil e mais capaz de suportar um serviço contínuo, com o mínimo de degradação, quando partes da nuvem têm um problema. Problemas potenciais podem ser detectados e resolvidos. Além disso, as falhas induzidas fornecem conhecimento que pode ajudar a prevenir falhas futuras e também fornecer orientação para lidar com quaisquer que ocorram.
A palavra engenheiros da Netflix continuam a conceituar e desenvolver novos macacos e convidam a comunidade a fazê-lo também.