基础设施管理与测试的最佳实践
1. 持续交付与持续部署
关于持续交付(CD)存在一个误解,即认为每次提交的更改在通过自动化测试后会立即应用到生产环境。虽然一些采用持续交付的组织确实采用了这种持续部署的方法,但大多数并非如此。CD的重点不是立即将每个更改应用到生产环境,而是确保每个更改都可以应用。
CD将是否以及何时将更改应用到生产环境的决策变成了业务决策,而非技术决策。将更改推送到生产环境的行为并非是一个具有破坏性的事件,它不需要团队停止开发工作,也不需要项目计划、交接文档或维护窗口,它只是重复一个在测试环境中已经多次执行并验证过的过程。
对于IT运维团队来说,持续交付意味着对基础设施的更改会在进行时得到全面验证。用户所需的更改,例如向生产环境添加新服务器,无需IT运维团队参与即可完成,因为他们确切知道当有人点击按钮将Web服务器添加到Web服务器池时会发生什么。
2. 基础设施管理中的版本控制系统(VCS)
版本控制系统(VCS)是基础设施即代码体系的重要组成部分。在使用VCS时,基础设施团队需要考虑管理哪些内容:
- 需要版本控制的内容 :
- 编译实用程序和应用程序的脚本和源代码
- 配置文件和模板
- 配置定义(如Cookbooks、Manifests、Playbooks等)
- 测试
- 可能不需要在VCS中管理的内容 :
- 软件工件应存储在仓库中,如Java工件的Maven仓库、apt或yum仓库等,这些仓库应进行备份或有可重建它们的脚本(在VCS中)。
- 由VCS中
超级会员免费看
订阅专栏 解锁全文
5154

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



