Pass基础-DevOps

news2024/11/16 8:43:24

DevOps是Dev(开发)和Ops(运维/运营)的结合,它将人、流程、工具、工程实践等等结合起来应用到IT价值流的实现过程中,是一系列原则、方法、流程、实践、工具的综合体。DevOps面向应用的全生命周期管理,包括:规划、开发、交付和运维/运营阶段包括:规划、开发、交付和运维/运营阶段。

DevOps是什么

什么是敏捷

“敏捷是一种开发方法,它遵循敏捷软件开发宣言的原则,以增量的方式交付软件。”—— Gartner

敏捷是一种能在在不确定和混乱的环境中通过接受变化、响应变化、创造变化而取得成功的能力。

敏捷软件开发是基于敏捷宣言定义的价值观和原则的一系列方法和实践的总称。这些方法和实践以相对松散/非固化的形式组成,根据团队实际所处的环境来决定采用何种组合形式并演进。

什么是DevOps

通过在面向系统方法的环境中采用敏捷、精益实践,专注于快速的IT服务交付。DevOps强调人(和文化),它寻求改善运营和开发团队之间的协作。DevOps的实现利用了技术,特别是自动化工具,这些工具可以从生命周期的角度利用日益可编程和动态的基础设施。—— Gartner

DevOps是Dev(开发)和Ops(运维/运营)的结合,它将人、流程、工具、工程实践等等结合起来应用到IT价值流的实现过程中,是一系列原则、方法、流程、实践、工具的综合体。DevOps面向应用的全生命周期管理,包括:规划、开发、交付和运维/运营阶段。整个DevOps化的价值流交付过程,并非完全强调角色与阶段行为的一一对应,而是强调构建整体的跨职能团队。在经典的 DevOps 文化中,每个角色在某种程度上都涉及到每个阶段,而在部分传统组织/行业(如有监管要求金融业等)中,则需要做一定的变通。

敏捷与DevOps的区别与联系

一个常见的误解是,“DevOps将取代敏捷”。DevOps的原则与实践很多时候与敏捷一脉相承,更多的是敏捷在工程实践层面的延续和扩展。在DevOps的体系下,敏捷的身影通常更多出现在工作协同和持续集成的领域,帮助团队快速形成可交付的输出物。

DevOps能力成熟度模型

随着应用技术的发展,对于原则、流程、方法、工具的讨论也越来越多。而作为应用研发运维的组织和团队,自然而然期望能有统一化、标准化、可量化的方法论体系,这背后是对软件全生命周期管理最佳实践孜孜不倦的追求。这样可以帮助决策者能够快速定位自身当前所处水平,以及组织未来的目标应该定义、路径应该如何达到。

传统的CMM/CMMI就是这样诞生的,DevOps也不例外。而DevOps的能力成熟度模型即是以DevOps的理念和视角,评估整个软件全生命周期相关的能力成熟度模型。目前国内业界比较认可的是信通院发布的《研发运营一体化(DevOps)能力成熟度模型》。

 

企业研发过程管理的痛点

1、需求开发过程协作难。解决需求开发过程中的协同反模式:重文档轻交流、围绕文档的低频重型交流/大型需求澄清会、需求澄清不清晰难以理解、需求跟踪困难。

2、研发测试过程缓慢。团队花费大量时间在编译构建和测试上,缺乏自动化编译构建、自动化测试的方法和有效工程实践、没有工具去支撑重复的、可自动化的、占用大量人工时间的必要工作。

3、代码管理混乱代码管理混乱、缺乏有效的分支管理策略、代码分支策略没有固化、缺乏从需求到代码的跟踪等。

4、手工应用发布。仍然采用手工发布易出错无法跟踪发布过程、每个应用有自己单独的发布工具和发布规范、组织级发布管理规范和执行流程难以执行和跟踪等。

5、研发过程改进缺乏抓手。研发过程改进无从下手、缺乏有效的研发过程基础数据、研发过程数据散落在各处没有统一归集无法整体综合分析;

6、组织级研发管理规范难以落地。缺乏组织级研发管理规范、组织级规范停留在线下无法贯穿到工程实践中、规范执行情况难以跟踪。

DevOps平台与工具

DevOps平台概念

以DevOps及敏捷工程实践为理论基础构建的面向应用管理、研发、运维/运营场景的研发运营一体化管理平台。与搭建开源工具链相比,开源工具链可以解决CI、CD过程中一些最基础的场景,但要想达成企业级应用的全生命周期管理,就需要DevOps平台与解决方案去完成。

DevOps平台内容与用途

1、需求管理与项目协同。为开发团队提供简单高效灵活的敏捷协作服务,包括需求和缺陷的管理与跟踪,以及工作项看板、版本视图、迭代视图、甘特图等服务。

2、代码管理。支持主流的开源、商业代码托管工具工具对接与管理。提供包括仓库信息、文件管理、提交记录、分支管理等。

3、制品管理。支持主流的开源、商业制品库工具对接。提供制品库管理能力,包括资源管理器、制品上传、制品库与项目的绑定与解绑等。

4、测试管理。提供轻量级的测试管理工具,包含测试用例、测试计划、测试执行、测试报告、缺陷跟踪。

5、持续集成。提供提供图形化可编排的CICD流水线。支持暂停、重试、审批、多流水线编排、并行任务等特性。降低研发团队在工具链管理上投入的时间和成本,专注于软件研发本身。

持续部署。支持多环境的定义、管理与部署发布。并且可以结合客户的资源管理平台,形成资源管理平台对接与集成解决方案。打通资源申请与回收的流程,实现资源的自动创建与回收。

6、指标度量。提供完善的度量指标体系,通过对软件的生命周期管理过程中的进度、质量、效率等维度进行实时度量分析和反馈,驱动团队对生产过程不断改进优化,提升IT生产率。

7、文档管理。提供轻量级的文档中心,作为在线知识库。具备文档资源管理器、版本管理、权限控制功能。

DevOps工具链

CI/CD

什么是CI

持续集成(CI)是持续在源代码变更后自动检测、拉取、构建和单元测试的过程。持续集成。持续集成的目标是快速确保开发人员新提交的代码变更是正确的、可以被集成的,并且适合在代码库中进一步使用。持续集成伴生的行为是持续测试。

什么是CD

持续部署(CD)是指持续通过自动化Pipeline的方式发布制品到使用环境中的行为。持续部署的过程依赖于持续集成与持续测试。

CI/CD流程

CICD流程又称为CI/CD流水线,持续交付流水线。持续交付涵盖了从需求、设计、开发、构建、测试、上线整个过程的流程、工具、方法、平台化的输入以输出。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1202117.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

windows find findstr 命令学习

文章目录 windows find findstr 命令学习find 命令1. find 命令简介2. 使用语法及说明2.1 语法格式2.2 参数说明 3. 案例3.1 查看指定端口是否监听3.2 查看指定字符并忽略大小写3.3 统计包含指定字符串的行数3.4 显示行号3.5 查找结果反选 findstr 命令1. findstr 命令简介2. 使…

食醋行业分析:预计2029年将达到95亿美元

近年来中国食醋市场每年的销售量稳定增长,市场规模已经达到数百亿人民币。而在其他国家和地区,食醋也成为不可或缺的调味品之一,随着全球化和多样化的饮食趋势,国际市场对食醋的需求也不断增加。 食醋作为一种天然的酸味调节剂&am…

北京永达理慈善基金会与望京街道携手,为乡村振兴贡献10万元

东西部协作是推进巩固脱贫攻坚成果同乡村振兴有效衔接的重要手段。北京市朝阳区人民政府望京街道办事处自2021年起与内蒙古自治区通辽市科左后旗散都苏木、查日苏镇开展为期五年的结对帮扶工作,并号召全社会各界企事业单位及爱心人士帮扶助力,奉献爱心。…

修改/etc/fstab文件导致Linux无法正常启动解决方法

如果把 /etc/fstab 文件修改错了,也重启了,系统崩溃启动不了了,那该怎么办?比如: [rootlocalhost ~]# vi /etc/fstab UUIDc2ca6f57-b15c-43ea-bca0-f239083d8bd2 ext4 defaults 1 1 UUID0b23d315-33a7-48a4-bd37-9248…

浪涌保护器(SPD)常见的几种抑制器件特点及应用

浪涌保护器,Surge protection Device,是一种为各种电子设备、仪器仪表、通讯线路提供安全防护的电子装置,适用于交流50/60HZ,额定电220V/380V的供电系统中。当电气回路或者通信线路中因为外界的干扰突然产生尖峰电流或者电压时&am…

若依框架下载文件

若依下载的逻辑是指定文件存储的路径,在ruoyi-admin模块下的application.yml中配置路径结尾必须要加/或者\结尾。 他使用的是虚拟路径映射,所以文件名必须是配置路径下真实的文件名。 若依采用的是流的方式,前端必须要用bolb的方式去接收&am…

SystemC 学习之 VCS 仿真工具安装(八)

1、安装包下载 vcs、verdi 等工具下载地址(如果下载链接失效,可以私信我) 链接:https://pan.baidu.com/s/19CtwqWcxpv-4wPyAD4_ITw 提取码:3pib vcs-mx 下载地址 链接:https://pan.baidu.com/s/1dYELrG…

K8S知识点(九)

(1)Pod详解-结构和定义 一级属性有下面这些:前两个属性是字符串,上面有定义 kind:Pod version:v1 下面的属性是object 还可以继续查看子属性:二级属性 还可以继续查看三级属性: 通…

虹科示波器 | 汽车免拆检修 | 2010款奥迪A5车怠速时发动机偶尔自动熄火

一、故障现象 一辆2010款奥迪A5车,搭载CDN发动机,累计行驶里程约为16.3万km。车主进厂反映,发动机怠速偶尔出现抖动,紧接着自动熄火;重新起动,发动机又能正常工作;故障频率较低,有时…

第二证券:定增价公布后第二天股价表现?

近年来,定增成为一种较为老练的公司融资方法,它通过向指定政策定向发行股份来筹集资金,相关于非公开发行股票或增发股份,定增的市场轰动和价格变化相对较小。但是,定增股票发行通常会推动股价的不坚决和出资者的心境崎…

代码随想录算法训练营第五十天丨 动态规划part13

300.最长递增子序列 思路 首先通过本题大家要明确什么是子序列,“子序列是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序”。 本题也是代码随想录中子序列问题的第一题,如果没接触过这种…

采购CRM系统,这些费用你知道吗?

近些年CRM软件市场规模高速发展,技术商数量和用户数都突飞猛进。市面上产品种类丰富,系统的价格也是差距很大,从几百块到几十万不等,尽管很多厂商的价格是公开的但部署CRM之后成本很快超出了预期,实施CRM系统都有哪些费…

Spring Data JPA方法名命名规则

最近巩固一下JPA,网上看到这些资料,这里记录巩固一下。 一、Spring Data Jpa方法定义的规则 简单条件查询 简单条件查询:查询某一个实体类或者集合。 按照Spring Data的规范的规定,查询方法以find | read | get开头&…

Java实现一个简单的贪吃蛇小游戏

一、创建新项目 首先创建一个新的项目,并命名为贪吃蛇。 其次在贪吃蛇项目下创建一个名为images的文件夹用来存放游戏相关图片。 用到的图片如下: 游戏标题: 贪吃蛇的身体: 贪吃蛇的头部: 因为要向四个方向移动&am…

VINS-Mono-后端优化 (四:边缘化原理)

滑窗中固定只能有11帧,当来了新的帧的时候旧的帧就需要抹掉,但是不能直接把旧的帧的全部信息抹掉,因为旧的帧的经历过11次优化,其地图点中的优化信息是有用,边缘化的操作就是为了只把最旧帧的变量去掉,但是…

霸榜“双11”,高端文创新品发布即售罄,剑南春大促节点再传佳绩

执笔 | 洪大大 编辑 | 萧 萧 作为一年一度的重要促销大节,“双11”线上购物已成为各大品牌奋战的重要战场。而在今年,剑南春也是再一次拔得头筹。 在刚刚出炉的“双11”战报中,天猫剑南春官方旗舰店以超高人气和销售量获得白酒行业交易指…

来看看电脑上有哪些不为人知的小众软件?

​ 电脑上的各类软件有很多,除了那些常见的大众化软件,还有很多不为人知的小众软件,专注于实用功能,简洁干净、功能强悍。 1.桌面停靠栏工具——BitDock ​ BitDock是一款运行在Windows系统中的桌面停靠栏工具,功能实…

RFID汽车制造工业系统解决方案

随着物联网技术的不断发展,汽车行业的信息化水平也在不断提高,随着近几年国产汽车的带动,汽车配件配套市场也已形成了一定的规模,初步形成比较完整成熟的零部件配套体系。 RFID汽车制造工业系统解决方案 与其他行业对比&#xff0…

【Springboot】基于注解式开发Springboot-Vue3整合Mybatis-plus实现分页查询(一)——后端实现思路

系列文章目录 基于注解式开发Springboot-Vue3整合Mybatis-plus实现分页查询(二)——前端el-pagination实现 文章目录 系列文章目录系统版本实现功能操作步骤1. 新建Mybatis的全局分页配置文件2. 编写OrderMapper :继承Mybatis-plus提供的BaseMapper3. 编写OrderSer…

UE基础必学系列:项目和文件结构

官方文档:https://learn.unrealengine.com/course/ 张佳亮:UE4插件相关说明文档 1、uproject,以商城下载的ActionRPG为例 {"FileVersion": 3,"EngineAssociation": "4.20","Category": "Samples","Description&qu…