Kayenta:开源的金丝雀分析工具
极客时间编辑部
讲述:丁婵大小:1.31M时长:02:52
近日,Netflix 和谷歌开源了 Kayenta,这是一种自动金丝雀分析工具,用于评估新版本软件产品的准备良好程度。作为一种 Netflix 内部开发的工具,Kayenta 在谷歌的帮助下已经集成到了 Spinnaker,实现了跨多个云执行自动化金丝雀版本。
据了解,金丝雀发布是一种用于降低新版本软件部署到生产环境中风险的技术。其中,新版本软件被称为“金丝雀”,面向一个小范围的用户子集部署,并且与稳定运行版本一并运行。用户流量将分别分割给这两个版本,从而使得部分用户输入请求被转移到金丝雀。
为了分析一个金丝雀版本,Kayenta 需要试探这个版本,并将试探的结果与生产基线给出的结果做对比。理论上讲,Kayenta 可以将金丝雀与实际生产系统做对比。但是由于生产系统已经运行了一段时期,这种做法会在统计上存在偏差。而在分析中创建一个全新的基线集群,就确保了所生成的度量避免受到长期运行过程的影响。
除了客户访问的生产系统之外,Spinnaker 还同时运行一个金丝雀和一个新的基准线群。通常情况下,这些集群每个包括三个实例,但这并不是固定不变的。
之后,来自于一小部分(大约 1%)实际客户的请求将被引导给这些集群,系统将收集一系列的性能和功能度量并做日志,存储到一个时序数据库里,之后再做自动对比,以查看金丝雀与基线的对比情况。这一过程称为“判定”(judgement),这个步骤需要执行多次,而不是只做一次。
Kayenta 目前每天运行约 200 个判定,占其全部负载的约 30%。Netflix 补充,通过在部署中为工程人员提供更高度的信任,Kayenta 增加了开发人员的生产力。
目前,Kayenta 已经集成了 Stackdriver、Prometheus、Datadog 和 Netflix Atlas 等多种监控工具。由于整个系统采用了插件式设计,Kayenta 也支持使用其它一些工具,包括度量源、判定系统和结果存储。
由于与 Spinnaker 集成,Kayenta 可以在 AWS、GCP、Azure、Openstack、Kubernetes 等受支持的平台上以及一些混合系统上分析并部署金丝雀。
现在,Netflix 正在将其整个金丝雀部署系统迁移到 Kayenta,有望在未来几个月内完成。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论