DevOps面向运维如何落地,简单易懂,大白话,看不懂你骂死我

一、什么是DevOps

DevOps 是一种思想或方法论,它涵盖开发、测试、运维的整个过程

DevOps 强调软件开发人员与软件测试、软件运维、质量保障 (QA) 部门之间有效的沟通与协作

强调通过自动化的方法管理软件变更,软件集成,软件部署上线(CI/CD/CD)

使软件从 构建 到 测试、发布、更加快捷、可靠,最终按时交付软件。

如下图涵盖了整个 DevOps 的流程结构。

实现以下流程,也就实现了 DevOps 的产品落地。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sYLsFV8U-1594383863712)(C:\Users\86156\Pictures\devops\批注 2020-07-09 131945.png)]

图解如下:

开发Dev:

plan :开发设计,上线需求
code:开发人员编码实现需求
build:发开人员构建软件环境

管理Ops:

test:测试上线
release:发布到服务端
deploy:部署软件程序
operate:监控
monitor:运维

一个需求/软件,从诞生开始到上线维护的闭环流程。这个流程也就是 DevOps 实现一体化的方向。


二、公司开发流程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qXW6Kk8q-1594383863713)(C:\Users\86156\Pictures\devops\批注 2020-07-09 132800.png)]

大白话讲解公司一个项目的落地过程:

  1. 用户给一个反馈,产品经理拿到客户反馈后,书写计划任务,变成对应的需求。
  2. 拿到产品的需求后,根据需求列举代办清单,代办清单里面有优先级。重要的事情优先处理。
  3. 然后进行迭代的计划,第一个拿到任务的是开发人员。
  4. 开发人员进行程序的开发,开发之后将代码上传到 github/gitlab 里面。最终发布到持续集成系统
  5. 持续集成系统有测试环境、发布环境、生产环境。测试负责干测试的事,运维负责干运维的事。


三、如何实现 DevOps 落地

​ DevOps 兴起于2009年,近年来由于云计算,互联网的发展。促进了 DevOps的基础设施以及工具链的发展,涌现了一大批优秀的工具,这些工具涵盖各个领域。帮助 DevOps 实现落地。

例如:Github/Gitlab、Git/svn、Docker、Jenkins、HudSon、Maven/Nexus 、Ansible(puppet)、ELk 等
在这里插入图片描述

开发人员只需要修改代码,并将其上传到仓库。剩下的事全部由 DevOps 持续集成自动完成。

开发 — devops — 测试 — 上线 ---- 监控 ---- 运维 。这一套自动化实现,不需要你手动操作,就叫 DevOps落地。
实现这些你必须的会很多可以实现 DevOps 的应用软件。

在这里插入图片描述


四、持续集成交付部署

在这里插入图片描述

生产线完成代码更新,之后的所有任务全部自动完成。

传统交付流程

在这里插入图片描述

提交代码至 gitlab/github,通过webhook出发SVN分支检测并触发构建

通过持续集成系统(jenkins-CI)对检测到的软件包进行分发部署

容器交付流程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A1J1v8aF-1594383863718)(C:\Users\86156\Pictures\devops\批注 2020-06-13 074644.png)]

在持续集成部分构建镜像并进行推送。推送至镜像仓库后,再执行批量部署。


五、什么是 CI / CD /CD

CI:持续集成 (代码写好存盘提交后,后续的构建能够自动化执行,再被测试工具部署到测试环境中进行测试,将所有步骤自动完成。一但出现问题打回重新处理)

CD:持续交付,Delivery(交付给运维进行部署,测试完成后打包到可以被运维拿到的共享文件服务,仓库当中。让运维工程师能从中得到打包好的构建好的产品)

CD:持续部署,Deployment (交付完成后进行部署,自动将包拖出来,触发任务自动发布到线上)


六、总结

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XmQsWOys-1594383863719)(C:\Users\86156\Pictures\devops\批注 2020-07-09 134604.png)]

传统模式 👉 敏捷模式 👉 DevOps 模式

​ 开发团队需要与运维团队进行了大规模的"交接"。运维团队负责执行一系列“部署”活动,将软件代码转移到生产环境。并负责后续的系统稳定运行。生产环境的基础设施与开发或者测试不同。需要额外的检查和平衡,以确保它的一切功能正常。

DevOps 这种软件开发方法,涉及到软件整个开发生命周期,这些活动只能在 DevOps中实现,而不是传统与敏捷。

DevOps 是在较短的开发周期内开发高质量软件的首选方法,同时可以提高客户满意度。

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值