DevOps学习回顾01-技能发展路线-岗位能力-体系认知(射箭和拉弓的区别)

news2025/4/8 5:09:00

事为先,人为重–事在人为

参考来源:
极客时间专栏:DevOps实战笔记,作者:石雪峰
课程链接:https://time.geekbang.org/column/intro/235

时代的典型特征 VUCA

VUCA 是指易变性(Volatility)、不确定性(Uncertainty)、复杂性(Complexity)和模糊性(Ambiguity),它代表了这个时代的典型特征。(在书籍《复盘》,作者沈磊那里也听过这个说法)

运维行业ITIL V4 的指导原则

关注价值、关注现状、交互式流程和反馈、协作和可视化、自动化和持续优化、极简原则和关注实践。

DevOps 技能发展路线图

根据这幅路线图,你要从编程语言入手,理解操作系统原理、系统性能、网络安全、基础设施即代码、CI/CD、运维监控和云技术等软件工程的方方面面理解…(从入门到劝退,大而全,小而精)
What is DevOps?
参考:https://roadmap.sh/devops
SVG的图片,不知道怎么拽过来,能正常访问,这个路径图的网站还挺有意思的,可以推荐给阮一峰的网络日志的周刊里。

DevOps技能模型

在这里插入图片描述

对于要想成为 DevOps 工程师的几条建议

1. 集中强化代码能力

未来的世界是软件驱动的世界,编程能力即将成为下一个必备能力,甚至连国务院发布的《新一代人工智能发展规划》中都提到,要在中小学普及推广编程教育。

而写可以用的代码,和写好的代码之间,距离绝不只是一点点而已。你可能会说,以后都用人工智能来编程了,可问题是人工智能从何而来?又是谁来训练和标注人工智能的呢?所以,越是基础的能力,越不会过时,比如数学、核心的编程思想、数据结构,以及基于代码构建对世界的认知和建模能力

如果你现在只是刚开始接触代码,我建议你给自己定一个目标,专门强化自己的代码能力,至少花 1 年时间,从新手变成熟手,这对于你未来在 IT 行业的发展,至关重要。

2. 培养跨职能领域核心能力

相信经过几年的工作,你已经具备了当前岗位所需要的基本能力,这是你当前赖以为生的根本。那么在这些能力的基础上,逐步发展跨领域跨界的能力,尤其是那些核心能力,就成了投入产出比最高的事情。
举个例子,如果你是软件开发工程师,那么恭喜你,你已经走在了代码的道路上,接下来,运维能力就是你要尝试攻克的下一个目标。而在这些目标中,比如操作系统、自动化部署以及云能力,就是你要最优先发展的跨界能力,因为它们是运维的核心,也是了解运维最好的出发点。反过来说,如果你从事的是运维行业,那么除了常用的脚本以外,核心代码能力就是你的目标。

3.DevOps 核心理念和业务思维

如果你不理解 DevOps 到底是什么,那何谈成为 DevOps 工程师呢?因此,像 DevOps中的核心理念,比如精益敏捷、持续交付,以及很多实践,你都要有所了解。

DevOps 在公司的落地是大势所趋,也许你所在的团队也会参与其中,那么除了做好自己的本职工作外,你也可以多参与,多思考,看看推进的过程是怎样的,涉及到的角色又在做些什么,项目的整体进展和计划是什么。在实战中练习和补齐短板,对于积累经验来说,是不可或缺的。

4. 潜移默化的软实力建设

类似沟通能力、同理心、自驱力、学习能力、主动性等,无论从事任何职业,都是你身上的闪光点。很多天生或者从小养成的习惯,需要长时间潜移默化的训练才能有效果。

很多时候,IT 从业人员给人的印象都是不善表达,再加上东方文化的影响,本身就比较含蓄,这对很多沟通和表达来说,都是潜在的障碍。这个时候,就要尽量把握已有的机会,比如多参加团队内部的读书分享、公司内部的讲师培训报名等。
我的建议就是 6 个字:勤练习,多总结。就像DevOps 一样,持续改进和持续反馈,培养自己的自信心。

最后,我想强调的是,就像 DevOps 没有明确的定义一样,DevOps 工程师的技能也没有
明确的限定,所以,你要时刻保持好奇心,持续学习,总结出自己的能力体系,并在实践积
累经验
,这样才能在激烈的竞争中占得先机。
在这里插入图片描述

建立起DevOps 体系认知

介绍 DevOps 的定义、价值、实施与衡量
软件开发的模式的改进(网规的考试内容中也学习过)
1.瀑布流模式
按部就班的先聊需求,确认方案,然后开始建设,检验合格,交付,开发完成转维护;
2.敏捷开发模式
小步快走,你想要的是这样的吗?对照效果看看再确认,是这样的吗?行,那我们接着开发;
3.DevOps 模式(要解决什么问题?)
DevOps 最开始想要打破的就是开发和运维之间的对立和隔阂。在传统模式下,度量开发团队效率的途径就是看开发完成了多少需求。对于运维团队而言,他们的考核指标却是系统的稳定性、可用性和安全性

运维和运营的区别
运维团队转向运营团队,他们需要持续不断地把线上的真实数据和用户行为及时地反馈给需求团
队,来帮助需求团队客观评估需求的价值,并及时作出有利于产品发展的调整,这样一来,
业务也被引入到了 DevOps 之中,甚至诞生了 BizDevOps 这样一个专门的词汇。

DevOps 的定义(3P+calms)

DevOps 是通过平台(Platform)、流程(Process)和人(People)的有机整合,以
C(协作)A(自动化)L(精益)M(度量)S(共享)文化为指引,旨在建立一种可以
快速交付价值并且具有持续改进能力的现代化 IT 组织。

DevOps的目标

试图通过体系化的研发实践导入、软件架构的整体革新、组织管理理念的不断升级和企业文化的影响塑造,来帮助企业改善整个软件交付过程,在实现高吞吐量的同时保证服务的总体稳定性,从而真正实现又快又好的软件交付目标

DevOps 的 4 个结果指标(交付效率和交付质量),

  1. 部署频率指应用和服务向生产环境部署代码的频率。
  2. 变更前置时间:指代码从提交到成功运行在生产环境的时长。
  3. 服务恢复时间:指线上应用和服务出现故障到恢复运行的时长。
  4. 变更失败率:指应用和服务在生产环境部署失败或者部署后导致服务降级的比例

DevOps 的 3 个支柱(文化、工具、培训赋能)要义与核心

人 + 流程 = 文化,在具体的流程之下,人会形成一套行为准则,而这套行为准则会潜移默化地影响软件交付效
率和质量的方方面面。这些行为准则组合到一起,就构成了企业内部的文化。

流程 + 平台 = 工具,企业内部流程的标准化,是构成自动化的前提。试想一下,如果没有一套标准的规则,每一项工作都需要人介入进行判断和分析,那么结果势必会受到人的因素的影响,这样的话,又如何做到自动化呢?

而平台的最大意义,就是承载企业内部的标准化流程。当这些标准化流程被固化在平台之中时,所有人都能够按照一套规则沟通,沟通效率显然会大幅提升。平台上固化的每一种流程,其实都是可以用来解决实际问题的工具

平台 + 人 = 培训赋能,平台是标准化流程的载体,一方面可以规范和约束员工的行为,另一方面,通过平台赋能,
所有人都能以相同的操作,获得相同的结果。这样一来,跨领域之间的交接和专家就被平台所取代,当一件事情不再依赖于个人的时候,等待的浪费就会大大降低,平台就成了组织内部的能力集合体。

DevOps的模型和框架

DevOps 能力成熟度模型

这套模型覆盖了软件交付的方方面面,包括敏捷开发管理、持续交付和技术运营三大部分,同时,也有与应用架构设计、安全和组织结构对应的内容。

DevOps 的能力实践和能力框架

能力实践定义了企业落地DevOps 的路线图和主要建设顺序,能力模型可以指导支撑方法的各类实践的落地建设;
能力实践时刻跟随企业价值交付的导向,而能力模型的积累和沉淀,能够让企业游刃有余地面对未来的各种挑战。

建设-DevOps 的实施要点

企业需要立足自身,识别差异,锚定目标,关注能力,并持续改善软件的开发交付效率,立体化的实施框架,通过模型、方法、能力和实践的相互作用,实现全方位的能力提升。

建设-DevOps 的通用实施路径 -三步工作法

“DevOps 三步工作法”。它来源于《DevOps 实践指南》,高度抽象的“三步工作法”,概括了 DevOps 的通用实施路径。
第一步:流动。通过工作可视化,限制在制品数量,并注入一系列的工程实践,从而加速从开发到运营的流动过程,实现低风险的发布。

第二步:反馈。通过注入流动各个过程的反馈能力,使缺陷在第一时间被发现,用户和运营数据第一时间展示,从而提升组织的响应能力。

第三步:持续学习和试验。没有任何文化和流程是天生完美的,通过团队激励学习分享,将持续改进注入日常工作,使组织不断进步。

第一步“流动”所要解决的问题。通过使用价值流图对软件交付过程进行建模,使整个过程可视化,从而识别出交付的瓶颈和各个环节之间的依赖关系;

第二步:寻找团队痛点,所谓痛点,就是当前最影响团队效率的事情,同时也是改进之后可以产生最大效益的事情。

第 三 步:快速建立初期成功,切记不要把面铺得太广,把战线拉得太长,这其实是DevOps 转型初期最典型的一个陷阱。
最关键的就是识别一个改进点,定义一个目标。比如,环境申请和准备时间过程,那么就可以定义这样一个指标:优化 50% 的环境准备时长。这样一来,团队的目标会更加明确,方便任务的拆解和细化,可以在几周内见到明显的成果。

为什么 VSM 会是企业 DevOps 转型的第一步呢?

  1. 看见全貌。
    对于流程改进来说,第一步,也是最重要的一步,就是能够看见全
    貌,这样才能从全局视角找到可优化的瓶颈点,从而提升整体的交付效率。

  2. 识别问题。
    VSM 中的几个关键指标,也就是前置时长、增值和不增值时长,以及完成度和准确度,
    都是可以客观量化改进的指标。当面对这样一幅价值流图的时候,我们很容易就能识别出当
    前最重要的问题和改进事项。

  3. 促进沟通。
    在我们开展 VSM 梳理的时候,团队才第一次真正了解上下游团队的职责、工作方式,以及让他们痛苦低效的事情。这时,我们通常会设身处地地想:“只要我们多做一点点,就能大大改善兄弟团队的生存状况了。”实际上,这种同理心对打破协作的壁垒很有帮助

  4. 驱动度量。
    收集 VSM 数据的过程本身,就需要平台间的打通和数据共享,以及自动化的推进,这有助于度量活动的开展。

  5. 价值展现。
    对于企业而言,任何投入都需要有产出。要实现 DevOps 的转型,企业需要投入大量的精力。那么如何让高层领导明白企业交付效率改善所带来的价值呢?价值流梳理就是一种很好的方式。因为 VSM 从价值分析而来,到价值优化而去,本身就是在回答 DevOps 对于企
    业的价值问题。

价值和价值流图

价值就是那些带给企业生存&&发展的核心资源,比如生产力、盈利能力、市场份额、用户满意度等。

VSM 是Value Stream Mapping的缩写,它起源于传统制造业的精益思想,用于分析和管理一个产品交付给用户所经历的业务流、信息流,以及各个阶段的移交过程。

说白了,VSM 就是要说清楚在需求提出后,怎么一步步地加工原材料,进行层层的质量检查,最终将产品交付给用户的过程.

VSM 中有哪些关键要素和概念呢?

有 3点是你必须要了解的。

1.前置时间(Lead Time,简称 LT)。前置时间在 DevOps 中是一项非常重要的指标。具体来说,它是指一个需求从提出(典型的就是创建一个需求任务)的时间点开始,一直到最终上线交付给用户为止的时间周期。这部分时间直接体现了软件开发团队的交付速率,并且可以用来计算交付吞吐量。DevOps 的核心使命之一就是优化这段时长

2.增值活动时间和不增值活动时间(Value Added Time/Non-Value Added Time,简称VAT/NVAT)。在精益思想中,最重要的就是消除浪费,也就是说最大化流程中那些增值活动的时长,降低不增值活动的时长。在软件开发行业中,典型的不增值活动有很多,比如无意义的会议、需求的反复变更、开发的缺陷流向下游带来的返工等。

3.完成度和准确度(% Complete/Accurate,简称 %C/A)。这个指标用来表明工作的质量,也就是有多少工作因为质量不符合要求而被下游打回。这里面蕴含了大量的沟通和返工成本,从精益的视角来看,也是一种浪费。

关于前置时间

有很多种解释,一般建议采用需求前置时间和开发前置时间两个指标进行衡量,关于这两个指标的定义,你可以简单了解一下。

需求前置时间:从需求提出(创建任务),到完成开发、测试、上线,最终验收通过的时间周期,考查的是团队整体的交付能力,也是用户核心感知的周期。

开发前置时间:从需求开始开发(进入开发中状态),到完成开发、测试、上线,最终验收通过的时间周期,考查的是团队的开发能力和工程能力。

##END提示,>!<

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

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

相关文章

都说可视化设计是面向B端的点睛之笔,看到这些,我信了。

抽象复杂的B端系统&#xff0c;如果用可视化图表/逻辑图表现处理来 &#xff0c;那对于系统来说绝对是画龙点睛之笔&#xff0c;大美B端工场带领大家感受一下。 图形可视化设计在B端系统中被认为是点睛之笔的理由如下&#xff1a; 1. 提升数据可理解性&#xff1a; B端系统通…

代码随想录——组合总和(Leetcode LCR81)

题目链接 回溯 class Solution {List<List<Integer>> res new ArrayList<List<Integer>>();List<Integer> list new ArrayList<Integer>();public List<List<Integer>> combinationSum(int[] candidates, int target) {b…

Java——面向对象进阶(三)

前言&#xff1a; 抽象类&#xff0c;接口&#xff0c;内部类 文章目录 一、抽象类1.1 抽象方法1.2 抽象类1.3 抽象类的使用 二、 接口2.1 接口的定义和实现2.2 default 关键字2.3 实现接口时遇到的问题 三、内部类3.1 成员内部类3.2 静态内部类3.3 成员内部类3.4 匿名内部类&a…

qmt量化交易策略小白学习笔记第32期【qmt编程之获取行业概念数据--如何获取迅投行业成分股数据】

qmt编程之获取迅投行业成分股数据 qmt更加详细的教程方法&#xff0c;会持续慢慢梳理。 也可找寻博主的历史文章&#xff0c;搜索关键词查看解决方案 &#xff01; 感谢关注&#xff0c;咨询免费开通量化回测与获取实盘权限&#xff0c;欢迎和博主联系&#xff01; 获取迅投…

大模型是什么?能干嘛?怎么学?

引言 随着人工智能技术的飞速发展&#xff0c;大模型研究已成为该领域的一大热点。这些研究覆盖了众多方向&#xff0c;每个方向都面临着独特的研究焦点和挑战。本文将逐一探讨一些备受关注的研究方向&#xff0c;包括检索增强生成RAG、大模型Agent、Mamba、MoE、LoRA等&#…

Star-CCM+自动网格执行方法与设置技巧

在Star中进行一个仿真项目时,有时会创建多个自动网格。网格创建结束后需要执行。在Star中,网格执行可以分为三种。分别是:单独执行操作;多个执行操作;全部执行操作。接下来将三种执行操作的方法与步骤进行介绍。 其次,如果不习惯用自定义控制网格,有时在一个项目中就会…

new Set( )的基本使用以及如何去重对象数组

目录 Set 对象方法 Set 对象作用 实现数组的去重 实现字符串的去重 实现并集 交集 差集 实现去重对象数组 相关参考资料 在 ES6 中&#xff0c;引入了一个新的数据结构类型&#xff1a;Set。而 Set 与 Array 的结构是很类似的&#xff0c;且 Set 和 Array 可以相互进…

散文:乡村回忆

散文&#xff1a;乡村回忆 在记忆的长河中&#xff0c;旧时代如同一本泛黄的相册&#xff0c;静静地躺在时光的角落。每当我翻开那些尘封的照片&#xff0c;那些遥远而又熟悉的画面便跃然纸上&#xff0c;带我回到了那个纯真的年代。 那时的天空总是那么蓝&#xff0c;那么纯…

基于python-CNN的常见鱼类分类识别-含数据集+pyqt界面

代码下载地址&#xff1a; https://download.csdn.net/download/qq_34904125/89383072 本代码是基于python pytorch环境安装的。 下载本代码后&#xff0c;有个requirement.txt文本&#xff0c;里面介绍了如何安装环境&#xff0c;环境需要自行配置。 或可直接参考下面博文…

海豚调度异常处理: 使用 arthas 在内存中删除启动失败的工作流

&#x1f4a1; 本系列文章是 DolphinScheduler 由浅入深的教程&#xff0c;涵盖搭建、二开迭代、核心原理解读、运维和管理等一系列内容。适用于想对 DolphinScheduler了解或想要加深理解的读者。祝开卷有益。大数据学习指南 大家好&#xff0c;我是小陶&#xff0c;DolphinSch…

哪些因素驱动新零售发展?新零售与传统零售、电子商务区别在哪?

零售业正经历着一场前所未有的变革&#xff0c;这场变革由多种因素驱动&#xff0c;涉及技术、消费习惯以及商业模式的全面升级。我们称之为”新零售”&#xff0c;它不仅仅是一个概念&#xff0c;更是零售业未来发展的方向。新零售的兴起&#xff0c;标志着零售行业正在迈向一…

[图解]《分析模式》漫谈04-Martin Fowler叫的是哪家的士

1 00:00:01,230 --> 00:00:04,190 今天我们来探讨一个有趣的话题 2 00:00:05,130 --> 00:00:08,350 Martin Fowler&#xff0c;他叫的是哪一家的的士 3 00:00:11,980 --> 00:00:15,240 第2章这里&#xff0c;Martin Fowler写 4 00:00:15,250 --> 00:00:18,550 他…

专业媒体公关-北京-上海-60城媒体邀约服务机构-51媒体网

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 「51媒体」提供的媒体邀约服务致力于帮助企业或机构邀请全国范围内的媒体进行现场报道宣传。 媒体邀约的重要性 媒体邀约是一种有效的宣传手段&#xff0c;可以帮助企业或活动在公众中…

django学习入门系列之第二点《浏览器能识别的标签4》

文章目录 input类型下拉框多行文本往期回顾 input类型 1&#xff1a;打出后可以在里面编写内容 <!-- 自闭合标签 --> <!-- 默认行内标签 --> <input type"text">placeholder 显示背景 <input type"text" id"txtUser" p…

链路追踪-微服务小白入门(6)

背景 什么是链路追踪 随着微服务分布式系统变得日趋复杂&#xff0c;越来越多的组件开始走向分布式化&#xff0c;如分布式服务、分布式数据库、分布式缓存等&#xff0c;使得后台服务构成了一种复杂的分布式网络。在服务能力提升的同时&#xff0c;复杂的网络结构也使问题定…

网络编程之XDP和TC

一、TC之于XDP 在前面分析过XDP&#xff0c;今天简单分析一下与其相关的TC&#xff0c;即traffic control,流量控制。在分析XDP时知道其只能用于ingress方向触发&#xff0c;而TC却可以在两个方向即ingress和egress方向触发。也可以简单理解成它可以同时钩住进出两个方向的数据…

气膜球幕影院:多元化应用的新选择—轻空间

随着科技的进步和人们对体验需求的不断提升&#xff0c;气膜球幕影院以其独特的结构和灵活的应用&#xff0c;逐渐成为多个领域的重要工具。 教育领域 在教育领域&#xff0c;气膜球幕影院展现出强大的优势。其便捷的搭建方式使得教育机构可以在不同场合快速部署。通过全景投影…

HK1-BOX X3刷UBUNTU 24.04,并开启WIFI

端午刚好有点时间&#xff0c;顺便把改完散热的HK1-BOX刷了个最新OC版的UBUNTU 24&#xff0c;这里记录下操作的步骤&#xff1a; 准备材料 HK1-BOX S905X3&#xff1a;注意X4的不行固件没匹配的。建议先改完散热&#xff0c;不然作为7X24小时的机器长时间高温还是很伤硬件的…

6个免费自动写文章软件,简直好用到爆

对于创作者而言&#xff0c;创作一篇高质量的文章并非易事&#xff0c;它需要耗费大量的时间与精力去构思、组织语言、斟酌字句。灵感并非总是源源不断&#xff0c;有时我们可能会陷入思维的僵局&#xff0c;不知从何下手。而此时&#xff0c;免费自动写文章软件就如同黑暗中的…

Java--多维数组

1.多维数组可以看成是数组的数组&#xff0c;比如二维数组就是一个特殊的一维数组&#xff0c;其每一个元素都是一个一维数组 2.二维数组 下列数组啊可看成一个两行五列的数组 int a[][] new int[2][5]; 3.输出二维数组的第一个数组中具体元素&#xff0c;通过调用打…