Simian Army es una colección de herramientas de prueba en la nube de código abierto creadas por la compañía de transmisión de video en línea, Netflix. Las herramientas permiten a los ingenieros probar la confiabilidad, seguridad, resistencia y recuperabilidad de los servicios en la nube que Netflix ejecuta en la infraestructura de Amazon Web Services (AWS).
Los ingenieros de Netflix comenzaron a crear los agentes de software autónomos, que se llaman monos, poco después de pasar a la nube con AWS. Cada mono está diseñado para ayudar a que el servicio de Netflix sea menos frágil y pueda soportar un servicio continuo, con una degradación mínima, cuando partes de la nube experimentan fallas aleatorias.
Los miembros del Ejército Simio incluyen:
- Chaos Monkey: apaga aleatoriamente las máquinas virtuales (VM) para garantizar que las pequeñas interrupciones no afecten al servicio en general.
- Latency Monkey: simula una degradación del servicio y verifica para asegurarse de que los servicios ascendentes reaccionen de manera adecuada.
- Conformity Monkey: detecta instancias que no están codificadas según las mejores prácticas y las apaga, lo que brinda al propietario del servicio la oportunidad de reiniciarlas correctamente.
- Security Monkey: busca las debilidades de seguridad y finaliza las instancias ofensivas. También garantiza que los certificados SSL y DRM no caduquen o estén próximos a caducar.
- Doctor Monkey: realiza comprobaciones de estado en cada instancia y supervisa otros signos externos del estado del proceso, como el uso de la CPU y la memoria.
- Mono conserje: busca recursos no utilizados y los descarta.
Cada una de estas herramientas ayuda a que el servicio en la nube sea menos frágil y sea más capaz de soportar un servicio continuo, con una degradación mínima, cuando partes de la nube tienen un problema. Los problemas potenciales se pueden detectar y abordar. Además, las fallas inducidas brindan conocimientos que pueden ayudar a prevenir fallas futuras y también brindan orientación para hacer frente a las que se produzcan.
Los ingenieros de la palabra Netflix continúan conceptualizando y desarrollando nuevos monos e invitan a la comunidad a hacerlo también.