Gremlin 团队最近发布的“Gremlin免费版”,开放了 Gremlin“故障即服务”功能,支持在 SaaS 平台上的运行部分混沌工程实验。当前开放的免费版本允许用户通过 Web,API 或者 CLI 命令行的方式,在主机或容器上执行关闭节点和 CPU 攻击的实验。
Gremlin 团队于 2017 年底发布了他们的混沌工程实验 SaaS 产品的首个版本,支持对主机以及底层基础设施编排执行多种、多次的攻击实验。随后在 2018 年发布的应用级故障注入(ALFI)功能,允许在应用服务或方法级别执行攻击实验。关闭运行中实例的能力是 Gremlin 产品演进过程中最主要的攻击实验方法之一,它的部分灵感来源于混沌工程领域中第一个工具——混乱猴子(Chaos Monkey)。
尽管混乱猴子非常实用,Gremlin 团队认为要想安全可靠地使用它,需要比较长的学习时间。混乱猴子仅仅支持在 AWS 上运行(不过包含类似功能的工具也逐渐出现在市面上,比如支持在其他平台,如 Azure 和 Google Cloud Platform 上面运行的工具)。“Gremlin 免费版”旨在降低开始执行混沌工程实验的门槛,让用户可以用最小的代价快速看到混沌工程实验的价值。
Tammy Butow(Gremlin 首席 SRE 工程师)给想要尝试这些新免费功能的工程师们提供了一个工具包。这个工具包包含了 5 个混沌工程实验的详细操作步骤,既有如何在 AWS,Azure 和 Google Cloud Platform 上执行关闭主机和容器的实验(需要用户使用自己的云服务账户),也有如何在本地 Docker 环境中执行关闭容器的实验。
InfoQ 最近采访了 Gremlin 的产品总监 Lorne Kligerman,讨论了“Gremlin 免费版”的初衷和未来的计划。
InfoQ:你好 Lorne,非常感谢接受我们的采访。首先能向我们介绍一下推出“Gremlin 免费版”的初衷吗?
Lorne Kligerman:有几点,第一个很简单,我们希望通过不断普及混沌工程来进一步完成我们的使命——让互联网应用更可靠。混沌工程吸引了很多的关注和兴趣,但市面上各种解决方案并不能提供足够的可靠度和安全度,同时也没有可以快速上手的 UI。
另一个动机是,我们希望开发者通过第一时间体验混沌工程实验所带来的价值和影响,并据此来决策如何为他们的用户提供正确的产品服务。“Gremlin 免费版”让每一个用户都可以快速注册,安装客户端,执行实验,最后观察实验结果。
另外,通过这个实践过程(包括配合使用现有工具并监控观察实验结果),无论是验证了系统的弹性,还是发现了潜在的缺陷,对开发者所在的组织来说都可以提高其系统的成熟度。
当然,用户也可以选择解锁 Gremlin 全功能版。
InfoQ:和我们自己运行混乱猴子和其他相关工具相比,“Gremlin 免费版”提供的功能有什么不同吗?
Kligerman:回到刚才的第一个问题,大家对混沌工程的认知来源于一系列的开源解决方案,包括混乱猴子。虽然开源非常美妙,但是搭建起开源软件运行的环境并使其稳定持续工作的成本通常不低。混乱猴子尤其不容易使用,它只能在 AWS 上工作,而且只提供随机关闭虚拟机的攻击实验类型。(值得一提的是我们的 CEO Kolton 曾在 Netflix 打造了他们的第二代故障注入工具集。)
Gremlin 提供的是一套完整的 SaaS 服务,包括了简洁的 UI 和快捷的安装方法。它提供了十数种攻击实验方式,从模拟 CPU 尖刺到硬盘资源耗尽,再到网络延迟注入等。无论是通过 UI,API 还是 CLI 使用 Gremlin 平台,用户随时都可以使用“停止攻击”按钮来快速终止所有攻击实验,让系统恢复到健康状态。我们从最根本上优先考虑了简易性,可靠性和安全性。
最后,我们希望让这个解决方案和“随机破坏东西”区别开。随机破坏有它适用的场景,但是我们认为真正产生价值的应该是经过深思熟虑后作出的实验计划,在执行时从最小爆炸半径开始逐步扩大影响范围。我们坚持要先形成系统可能行为的假设,然后通过执行实验来学习系统真实的行为表现,随着对系统信心的提升,我们可以不断扩大实验的影响范围。
所以回答你关于“Gremlin 免费版“的问题,我们其实有一部分想法就是提供一个更好的混乱猴子。它拥有和我们企业版一样简洁的 UI,可以在任何云平台上或者本地使用,并且提供两种攻击实验方式:关闭节点(和混乱猴子一样)和 CPU 攻击。
InfoQ:你怎么看待 Gremlin 下一步的发展方向?我们注意到有越来越多关于系统可观测性的讨论,尤其是复杂分布式系统,Gremlin 会考虑推出相关产品,或者考虑和现有其他产品集成吗?
Kligerman:我们还是会聚焦在我们的核心竞争力,不会去开发一套监控解决方案。业界已经有非常多出色的产品。我们目前集成了 Datadog,也在和 New Relic、Dynatrace 沟通合作,Honeycomb 的 CEO Charity Majors 去年在我们的大会上做了演讲,也表示出很大的合作兴趣。所以,是的,我们期望和所有这些出色的产品深度合作,同时非常赞同可观测性对于混沌工程来说至关重要。
至于 Gremlin 平台的未来,某种程度上我们已经领先于市场。去年发布的应用级故障注入功能已经可以执行更细粒度的实验,例如在应用级别和单次请求级别(支持 serverless)注入故障,目前市场还落后于我们。
InfoQ:最近有一些比较受欢迎的基金会,或者新兴的基金会,如CNCF,新持续交付基金会,Gremlin 同他们的关系如何?
Kligerman:我们是 CNCF 的活跃成员,对我们来说,作为这类社区的成员非常重要。新持续交付基金会比较有意思,因为在这个领域我们已经做了很多工作,坚信要发挥混沌工程最大的价值,就需要尽可能最大化自动化程度,同时整合到持续构建或持续交付的流水线里。敬请期待稍后在这方面的公告!
使用“Gremlin 免费版”需要通过 Gremlin 官网进行注册。可以在 Gremlin 官网找到产品的文档,以及更多的帮助可以访问 Slack 混沌工程频道或者 Gremlin 支持频道。
查看英文原文:Gremlin Announces Free Tier for Their Chaos Experimentation Platform
评论