基础设施即代码(IaC)的变更与重构实践
1. IaC 变更基础
在进行基础设施更新之前,需要确保系统具备对基础设施和应用程序的测试、监控和可观测性。基于可重复性原则,通常可以采用不可变的方法来更改 IaC,即通过复制和编辑配置。这一原则还能通过类似的复制过程提高基础设施系统的冗余性。
冗余在 IaC 中意味着在配置中添加额外的空闲资源,以便在组件发生故障时进行故障转移。添加冗余配置可以提高系统的可靠性,即衡量系统在特定时间段内正确运行的时长。
常见的配置模式和部署策略如下:
- 主动 - 被动配置 :包含一个处理请求的活动环境和一个在活动环境出现故障时备用的空闲环境。故障转移会将流量从出现故障的活动环境切换到空闲的被动环境。
- 主动 - 主动配置 :设置两个活动环境来处理请求,并且可以使用 IaC 对它们进行复制和管理。
- 蓝绿部署 :创建一组新的基础设施资源,用于暂存想要进行的更改,并逐步将请求切换到新的资源子集,之后可以移除旧的资源集。在蓝绿部署中,需要部署想要更改的资源以及依赖于它的高级资源。对于有状态的基础设施资源(如数据库、缓存、队列和流处理工具等存储和管理数据的资源),在蓝绿部署时需要添加迁移步骤,即复制蓝绿有状态基础设施之间的数据。
- 金丝雀部署 :将一小部分流量发送到新的基础设施资源,以验证系统是否正常工作,随着时间的推移逐渐增加流量百分比。
- 回归测试 :需要预留几周时间进行回归测试,以检查系统的更改是否会影响现有或
基础设施即代码(IaC)变更与重构实践
超级会员免费看
订阅专栏 解锁全文
34

被折叠的 条评论
为什么被折叠?



