我眼中的DevOps

简介: DevOps 是由开发(developments)和运维(operations)两个单词组成,可以看做是开发、测试和运维之间的一个交集,通过一些列固化的流程来使得整个项目的开发周期变得更便捷和可靠。

DevOps 在IT行业内近几年来在不少企业得到广泛应用,那么DevOps到底是什么呢?接下来让我们一起做一个简单的了解吧。

DevOps简介

   DevOps 是由开发(developments)和运维(operations)两个单词组成,可以看做是开发、测试和运维之间的一个交集,通过一些列固化的流程来使得整个项目的开发周期变得更便捷和可靠。其核心是CI/CD(持续集成和持续发布),即通过自动的触发代码构建、发布、测试、监控等一系列自动化的操作,来提升工作效率,代替反复且容易出错的手工操作。它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作


DevOps流程介绍

   下面给大家简单的介绍一下一个比较简单的devops流程,也是我在第一家公司里面的流程:


微信图片_20220113144123.png


1、开发人员提交代码到源码管理仓库(git/svn),源码管理的话 ,现在公司大部分都自己搭建了gitlab服务器,并对接了公司的ldap域认证,对每个用户的权限进行严格的控制

2、代码提交后,自动出发代码编译操作,检查是否能编译通过,能编译通过,就接着出发代码扫描(包括代码编写风格、是否有安全漏洞之类、语法错误之类的),有写单元测试脚本的话也顺带执行一下单元测试脚本。在这个过程中,针对不同的编程语言,需要集成不同的插件或工具去进行扫描。

3、发布代码到指定的环境。测试阶段的话,一般检测到代码变更后,可以在构建后自动发布到测试环境,生产环境的话,则需要在验证通过之后才能发布。在这中间会搭建仓库用来存储版本发布的相关部署包。

4、发布成功后,运行测试人员写好的验证脚本进行回归验证,如果这个过程中有任何一个环境出现报错的话,可以以邮件或者其他方式提醒用户

补充说明:以上只是列举了一个最简单的流程,全流程都是可以实现自动触发操作,不需要手动操作。在这中间还可以根据自己公司的实际业务情况,进行一些环节的删减操作,在这小编再列举一下小编待过的第一家公司的devops流程实现的一些功能:

   统计开发人员每天、每周提交的代码量,某个项目针对某个版本的代码变化量,代码行数、代码未解决的bug数量

   自动发布测试环境,自动执行测试用例

   自动扫描代码,检查是否有安全漏洞,可以采集一些数据做一个简单的报表 ,给公司的QA分析各个项目每月的版本质量情况以及研发的效率。


自己搭建DevOps平台需要用到的一些工具

   下面就简单的介绍一些我了解过的工具(当然也有一些其他的工具我没接触过的)

  • 源代码管理工具:git、svn
  • 持续集成工具:jenkins
  • 仓库管理:nexus、artifactory  (管理jar包,dll文件,docker镜像等)
  • 代码编译工具:maven、ant、gradle
  • 配置管理/自动化部署工具:chef、ansible等
  • 其他:要准备对应的服务器、搭建服务器监控平台

本次就先分享这么多 ,要搭建和维护好devops平台,还需要去了解一下shell、batch脚本,以及一些其他脚本,方便处理一些复杂的操作。接下来我将根据自己的记忆,陆续分享一些在这个过程中用到的技术点,大家在学习devops相关内容时遇到问题 ,也可以与小编一起讨论,小编也很愿意与大家一起去学习这个行业的一些技术。




相关文章
|
6月前
|
运维 Devops Java
如何在职场中脱颖而出?云效DevOps帮你加分!
【6月更文挑战第11天】云效DevOps助力职场人士提升效率与竞争力。它通过自动化、集成化打破开发、测试、运维壁垒,缩短项目周期,提高交付速度。例如,使用yaml配置的自动化构建流水线能简化Java项目构建过程。此外,DevOps强调团队协作,促进信息共享,提升项目成功率。同时,DevOps鼓励创新,培养应对市场变化的能力,从而在职场中展现个人价值并保持竞争力。
50 3
|
4月前
|
运维 监控 Devops
DevOps文化下的运维自动化实践
【8月更文挑战第24天】本文将带你走进DevOps文化,探讨如何在运维工作中实现自动化,从而提升工作效率和减少人为错误。我们将从DevOps的核心理念出发,深入到运维自动化的实践策略,最后讨论自动化带来的效益与挑战。文章不仅分享理论知识,还提供实用的操作建议,帮助读者在DevOps旅程中迈出坚实的步伐。
|
6月前
|
运维 监控 Devops
云效DevOps:让梦想照进现实,你的未来不是梦!
【6月更文挑战第11天】云效DevOps是新兴的软件开发运维解决方案,它融合代码管理、自动化构建、持续集成、部署和监控,提升开发效率,强化团队协作。自动化和持续集成是其核心,减少人为错误,确保代码质量和稳定性。通过示例代码展示了自动化构建过程,强调了云效DevOps的灵活性和定制化能力。此外,其监控告警功能可及时发现并处理问题。云效DevOps正重塑开发运维模式,助力各型企业赢得竞争优势,共创美好未来。
64 3
|
敏捷开发 弹性计算 监控
阿里云项目敏捷实践之DevOps
敏捷开发少不了一个方便的持续交付环境。今天我使用阿里云简单搭了一套开发环境,这里简单记录一下搭建过程。
408 0
阿里云项目敏捷实践之DevOps
|
敏捷开发 开发框架 运维
阿里巴巴DevOps实践指南(一)| 为什么DevOps的必然趋势是BizDevOps
从精益思想出发,我们可以看到DevOps的必然发展方向,那就是向业务侧延伸。业务是产品开发和运维的源头,完整的价值流必须从源头开始。这不是预测,而是正在发生的事实
5189 1
阿里巴巴DevOps实践指南(一)| 为什么DevOps的必然趋势是BizDevOps
|
运维 Kubernetes Devops
DevOps 已死,AppOps 长存
  本文最初发布于 Medium 网站,经原作者授权由 InfoQ 中文站翻译并分享。   没错,我玩了一把标题党。很抱歉,但这样做也是有理由的。我希望大家都来关注 DevOps 中一个被人低估的新趋势,即 AppOps。   在 IT 世界中,时不时学习新的流行语是家常便饭。大多数流行术语就像流星一样,在你完全理解应该学习的内容之前就消失在了天际。还有一些概念会成为接下来几年中的趋势,比如 DevOps 和 Frontend 就是两个例子。   新的术语层出不穷,所以我们必须专注于其中真正有意义的那些。我并不相信什么流行语或者趋势,我相信的是概念。即便技术和趋势纷纷过时,概念依旧长青。
241 0
|
运维 监控 Kubernetes
分享实录 | 阿里巴巴DevOps文化浅谈
近些年DevOps火遍全国,似乎不说DevOps研发效率就是低下的,技能就是落伍的。然而真是这样么?为了让大家更好的了解DevOps文化,3月27日《云效说码》分享特别邀请了阿里巴巴资深技术专家陈鑫(花名:神秀)进行视频直播分享,聊聊他对DevOps的理解以及阿里巴巴的DevOps文化落地要诀。
6017 0
分享实录 | 阿里巴巴DevOps文化浅谈
|
运维 监控 安全
艾伟也谈项目管理,我眼中的DevOps
  相关文章:DevOps,不是一个传说!   过去一年以来,一批来自欧美的、不墨守陈规的系统管理员和开发人员一直在谈论一个新概念:DevOps。DevOps 就是开发(Development) 和运维(Operations)这两个领域的合并。
2076 0
|
安全 Devops 数据库
开发人员眼中的 DevOps
在我看来,Devops 最大的核心就是持续集成,代码通过发布之后,经过Jenkins 等的持续集成,经过检出、质量检查、编译、打包、测试、通知、确认发布之后,软件开发部署部分就完成了最核心的一部分。这部分就实现了开发人员与运维人员的交汇、开发人员可以只需要开发代码、并通过Devops 发布部署到指定的节点上,同时,开发人员只需要提交代码就可以了,而运维人员也可以通过Devops 和开发人员进行良好的沟通与协作,更快更可靠的创建高质量软件,给用户更直观、高效的体验。
1619 0