开发人员眼中的 DevOps
1、我的理解
DevOps 是什么?
DevOps 来自于Development 和Operations的组合。
DevOps 是一个面向IT运维的工作流,以及IT自动化以及持续集成(CI)、持续部署(CD)为基础,来优化程式开发、测试、系统运维等所有环节。
2、工作流
3、实现 DevOps 常用的工具
- 代码管理:GitHub、GitLab、SubVersion
- 构建工具:Ant、Gradle、maven
- 持续集成:Jenkins
- 容器:Docker
- 数据库:数据库:MySQL、Oracle、PostgreSQL等关系型数据库
- 测试:robot
- 质量检查:sonar
- 项目管理:Jira
4、基本介绍
4.1、核心
在我看来,DevOps 最大的核心就是持续集成,代码通过发布之后,经过 Jenkins 等的持续集成,经过检出、质量检查、编译、打包、测试、通知、确认发布之后,软件开发部署部分就完成了最核心的一部分。这部分就实现了开发人员与运维人员的交汇、开发人员可以只需要开发代码、并通过 Devops 发布部署到指定的节点上,同时,开发人员只需要提交代码就可以了,而运维人员也可以通过Devops 和开发人员进行良好的沟通与协作,更快更可靠的创建高质量软件,给用户更直观、高效的体验。
4.2、重要性
- 代码经过检出、质量检查、编译后的代码更可靠
- 代码在编译、打包中发现的问题能及时发现并解决
- 代码的部署更加方便、分布式管理、分布式操作、节约了资源
- 高效的通知、通过邮箱、短信等,迅速知晓对应的集成情况
- 高质量的维护:运维人员通过日志、测试、监控等对项目提供更高效的管理
- 架构合理:通过微服务等架构更加高效、问题少
5、建议
- 更好的集成安全扫描工具等、对项目提供更好的漏洞检查、安全扫描等
- 代码的操作,直接在 DevOps 中进行技术分享等