Envato不停机迁移边缘网络提供商
极客时间编辑部
讲述:杜力大小:1.29M时长:02:50
最近,CDN 提供商 Envato 通过迁移边缘网络,将旗下分布式拒绝服务 DDoS 和 Web 应用程序防火墙 WAF 系统,整合至同一个供应商的平台上,并通过基于测试的自动化方法,将基础架构变更与监视和持续反馈机制相结合,借此进行回归测试,实现零停机顺利迁移。
Envato 主要提供 CDN 服务,与其他 CDN 提供商类似,他们也有一个由边缘服务器组成的网络。边缘网络可用于从距离用户地理位置最近的地方向用户交付内容。
Envato 的边缘网络服务器会进行 DDoS 清洗,同时可以充当 WAF。借此确保在边缘位置缓解安全威胁,而不是在源基础架构位置。这样的 WAF 通常是基于规则的,而规则源自对以往历史请求的分析结果,而面对潜在攻击,则需要通过拦截等方式降低请求速度,或强制进行人工介入。DDoS 清洗则需要检测并缓解可能的 DDoS 流量。
Envato 原本以菊花链的形式部署了这些系统,用户请求首先需要遍历 DDoS 清洗,随后遍历 WAF 系统,接下来才能抵达源位置。
不过,这些系统在调试、新部署的推出、自动化机制方面的差异,以及统一预警能力的缺失等原因,使得 Envato 希望将它们迁移为某种统一系统,通过一个系统实现 DDoS 清洗和 WAF。
对最终用户来说,迁移过程不能停机。迁移团队计划准备好测试套件,将变更发布给一组有限的测试用户,并在将这一过程中出现的所有问题顺利修复后,再全面发布给所有用户。
使用测试套件主要是为了防止基础架构功能退化,具体做法与应用程序代码的升级和发布完全类似。他们使用了基于 Ruby 的框架 RSpec 实现行为驱动的开发(BDD),这种方式已被 Envato 工程团队广泛使用。
该团队编写了一个名为 HttpSpec 的库,这个库运行在 RSpec 框架下,可处理 HTTP 交互(请求 / 响应)。此外他们还使用了 Spotify 的开源库 rspec-dns。这一过程还使用了另一个名为 ServerSpec 的周边项目,该项目可以通过编写 RSpec 测试对服务器配置进行声明式测试。
另外,他们还使用了一款内部工具对不同提供商的 API 调用响应进行转换,借此简化不同提供商之间的迁移操作。
最终,他们通过对不同流量以及对客户的潜在影响划分优先级,分阶段完成了迁移操作,并通过循环不断的自动化测试确保整个迁移过程顺利结束。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论