Netflix猿猴军团(Simian Army) | IDCF

Source: Netflix Technology Blog, Jul 19, 2011 作者:Yury lzrailevsky, 云系统基础设施总监;Ariel Tseitlin, 云解决方案总监 译者:林伟丹
延迟猴子(Latency Monkey)在我们的RESTful客户端-服务器通信层中,引入人工延迟来模拟服务降级,并衡量上游服务是否适当地响应。此外,通过制造非常大的延迟,我们可以模拟一个节点甚至整个服务的停机时间(并测试我们在这种情况下的生存能力),而不必从物理上关闭这些实例。这在测试新服务的容错性时尤其有用,方法是模拟其依赖项的故障,而不会导致这些依赖项对系统的其余部分不可用。 一致性猴子(Conformity Monkey)发现不符合最佳实践的实例,并关闭它们。例如,我们知道,如果我们发现有实例不属于自动扩容组,那么就可能会有麻烦的事情发生。我们关闭它们,是为了让服务所有者有机会重新启动它们。 医生猴子(Doctor Monkey)通过运行在每个实例上的健康检查,并监视外部的其他健康迹象(例如CPU负载),来检测不健康的实例。一旦检测到不健康的实例,它们将被从服务中移除,并在给服务所有者一些时间来查找问题根因之后,最终将被终止掉。 看门猴子(Janitor Monkey)确保我们云环境的运行没有混乱和浪费。它搜索未被使用的资源,并清除掉它们。 安全猴子(Securiy Monkey)是一致性猴子的延伸。它会发现安全违规项或漏洞(如配置不当的AWS安全组),并终止有问题的实例。它还确保我们所有的SSL和DRM认证都是有效的,并且不会过期。 10-18 猴子(10-18 Monkey,本地化-国际化的缩写,或110n-i18n)使用不同的语言和字符集,检测服务于多个地理区域客户实例中的配置和运行时问题。 混沌大猩猩(Chaos Gorilla)类似于混沌猴子,但模拟了整个Amazon可用区(availability zone)的中断。我们想验证我们的服务是否能自动重新均衡到功能可用区,而不会导致用户可见的影响或手动干预。

评论
