随着最近几年,微服务,容器,云服务的普及,“DevOps” 这个词越来越多的出现在开发人员的视线里,于此同时不同的公司也在开始践行DevOps. 从敏捷,CI/CD 到DevOps, 需要的知识越来越多,可以是说作为DevOps工程师,你需要懂很多很多,从项目管理,代码管理,开发流程,版本控制,环境搭建,上线流程,运维监控等等,中间涉及各种各样的技术工具。
从事DevOps相关工作很多年,从TFS到Azure DevOps, 从Windows到Linux,积累了一些知识和实践经验,这里我会以文档的方式分享出来。文档按照DevOps流程各个阶段涉及的工具进行分类,同时也会涉及DevOps的理论和经验,这是一个庞大的工程,我会从自己接触过的开始,一点点更新上来。
这里我列出了 DevOps方面的经典书籍 ,并附加上一份学习路线图,这张图告诉我们作为DevOps工程师到底要具备什么技能?涉及的知识面很广,我也在不断学习!
DevOps方法论的主要来源是Agile, Lean 和TOC, 独创的方法论是持续交付。
-
编码:代码开发和审阅,版本控制工具、代码合并工具
-
构建:持续集成工具、构建状态统计工具
-
测试:通过测试和结果确定绩效的工具
-
打包:成品仓库、应用程序部署前暂存
-
发布:变更管理、发布审批、发布自动化
-
配置:基础架构配置和部署,基础架构即代码工具
-
日志/监控:应用程序性能监视、最终用户体验
- 《DevOps实践指南》
- 《持续交付:发布可靠软件的系统方法》
- 《凤凰项目》
- 《Effective DevOps》
// TODO