正文
每当你在部署新版本应用时,都要记住以下两点:首先,你(或你的同事)是否有监控部署,并在必要时进行补救?第二,如果出现了问题,你是否能够尽可能减小影响范围?
我们的流媒体流量遵循相对可预测的模式,大多数人会在晚上打开视频流。因此,我们建议选择工作时段和非高峰时段的部署窗口。
Spinnaker 为此提供了一个界面,让我们可以轻松地指定运行部署管道的日期和时间。
部署窗口也适用于自动触发的事件。在 Spinnaker 中,可以使用 cron 表达式作为管道触发器,这也可能是一个冒险的策略:有些 cron 表达式可能会在非工作时段或周末执行管道,但这不是我们所期望的。无论你使用哪一种自动化机制,都要确保任何自动触发的管道都可以在无人值守的模式下运行。
Chaos Monkey 由 Netflix 创建并开源,是我们混沌工程工具套件的一部分。Chaos Monkey 以不可预测的方式随机终止生产环境中的实例,以此来增强服务,让服务具备应对单实例故障的弹性能力。如果某些服务不具备弹性能力,Chaos Monkey 将会暴露出它们的漏洞,服务所有者就可以在这些漏洞演变成影响用户的事故之前修复它们。在 Netflix,生产环境中的所有服务都应该启用 Chaos Monkey,在 Chaos Monkey 终止应用程序实例时,服务所有者不应该检测到任何问题。