从业者必读,一篇文章轻松掌握DevOps核心概念和最佳技能实践!
文章目录
- 前言
- 一. DevOps的定义及由来
- 二. DevOps的价值
- 三. devops工具有哪些
- 3.1 devops工程师的硬实力
- 3.2 devops工程师的软实力
- 总结
前言
大家好,又见面了,我是沐风晓月,本文是对DevOps的总结,一篇文章告诉你什么是DevOps. 对很多挂在嘴边的东西不能只停留在知道英文单词怎么写的程度。
如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。
🏠个人主页:我是沐风晓月
🧑个人简介:大家好,我是沐风晓月,双一流院校计算机专业,阿里云社区专家博主😉😉
💕 座右铭: 先努力成长自己,再帮助更多的人 ,一起加油进步🍺🍺🍺
💕欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信😘
一. DevOps的定义及由来
我们先看看维基百科对DevOps 的定义,看不懂也没事,计算机的世界就是这样,每个字都认识,但当我们用一段话深入浅出的方式讲解一个概念的时候,反而看不懂了:
DevOps(开发 Development 与运维 Operations 的组合词)是一种文化、一场运动或实践,强调在自动化软件交付流程及基础设施变更过程中,软件开发人员与其他信息技术(IT)专业人员彼此之间的协作与沟通。
它旨在建立一种文化与环境,使构建、测试、软件发布得以快速、频繁以及更加稳定地进行。
它仿佛在说:
在这里我们不得不提两个岗位,分别是:开发和运维,以及开发和运维的关系。说到开发和运维的关系又离不开一整套的工作流程,比如我们常说的瀑布式开发模式。
瀑布式开发模式(Waterfall model)是一种经典的软件开发方法,它强调开发过程的线性流程,按照一定的顺序,逐个完成各个阶段的工作,直到整个项目开发完成。瀑布模型通常包括以下阶段:
- 需求分析阶段:明确需求,定义软件系统的功能和性能等要求。
- 设计阶段:制定系统的整体设计方案,包括软件架构、模块设计等。
- 编码阶段:根据设计文档编写程序代码。
- 测试阶段:对编码完成的程序进行各种测试,如单元测试、集成测试和系统测试等。
- 运维阶段:部署和维护软件系统,包括系统安装、用户培训、故障处理等。
瀑布模型的优点是工作流程清晰,容易管理和控制,每个阶段的输出是另一个阶段的输入,可以降低沟通成本和风险。
但是它也存在一些缺点, 这套按部就班的流程中需要在项目一开始就定好项目目标,范围及实现方式,而这个时间点是我们对用户和市场环境了解最少的时候,这时候做出的决策,定好的计划,往往会受到市场的影响,很容易导致因为市场和用户需求的变化导致项目范围不断变更,交付时间不断推后。
一个形象的例子是,假设你正在建造一座房子,按照瀑布式开发模式,你需要先完成设计阶段,然后进入建造阶段,最后是验收和交付阶段。
在设计阶段,你和客户沟通,制定房子的规格和设计方案。
在建造阶段,你按照设计图纸进行建造。
在验收和交付阶段,你和客户一起检查房子是否符合设计要求,并将其移交给客户。
这或许是最完美的情况了吧,一旦在建造阶段发现设计有问题,就需要回到设计阶段重新修改,或者在验收阶段发现问题,一夜回到解放前。
基于这个问题,敏捷思想开始流行,它的核心理念是,既然我们无法充分了解用户的真实需求是怎样的,那么不如将一个大的目标不断拆解,把它变成一个个可交付的小目标,然后通过不断迭代,以小步快跑的方式持续开发。
与此同时,将测试工作从研发末端的一个独立环节注入整个开发活动中,对开发交付的内容进行持续验证,保证每次可交付的都是一个可用的功能集合,并且由于质量内建在研发环节中,交付功能的质量也是有保障的。
看上去是不是比瀑布式更完美了,但这能提高团队的开发速度吗? 答案是,不能。 编码速度没有提高。
敏捷之所以更快,根本原因在于持续迭代和验证节省了大量不必要的浪费和返工。
敏捷源于开发实践,让开发和测试团队团结起来,抱团取暖。 但不管开发和测试多么团结友爱,都最终会倒在上线的门槛上。
毕竟无论功能多么强大的应用,无论测试结果多么好,都只是在测试环境,没有最终交付给用户使用。
这时候就有人提出,能不能让运维也参与进来,不要在最后上线的时候出问题, 这时候DevOps思想就应运而生,而最初的devops思想只是为了打破开发和运维之间的对立形态。
对运维团队来说,他们的考核指标是:系统的稳定运行,或者叫核心业务的稳定运维。 可用性是大头,安全性排第二,至于新功能? 不加更好。
开发人员开发的代码不会百分百可用,这就导致稳定运行受到威胁,影响运维绩效的不是服务器,不是正在跑的业务,而是开发要上线的新bug.
这谁受得了,断人财路是不共戴天之仇。
所以上线就变得越来越难,交付也会越来越难。业务服务的稳定性至关重要,如果想要跟开发合作,最好的办法就是不要上线不靠谱的需求。
于是运维人员需要收集线上数据来帮助开发人员,帮助团队做评估决策。
上线变得简单了之后,那安全呢? 于是安全人员也加入进来,各个部门齐心协力,队伍不断壮大,慢慢把devops变成了每个IT人都需要学习的思想。
最后总结一下:
我们说devops是一种文件,那这种文化就是通过平台,流程和人的有机结合,以协作,自动化,精益,可度量,共享文化为指引的合作模式,最终打造可以快速交付,持续改进的现代化IT组织。
二. DevOps的价值
软件最终交付,最需要关注的就是交付质量和交付效率,而影响这两个指标的是:
- 部署频率
- 变更前置时间
- 服务恢复时间
- 变更失败率
Devops不仅做到了高效率,还实现了高质量。
更重要的是devops最终提升了交付效率,节约了时间,还能让人休息一会,这很大程度上提高了幸福水平。
不是常说: 工作本身不难,难的是那些C淡的人和事, 而devops避免了部分相互扯皮的问题,比如瀑布式流程那种。
三. devops工具有哪些
3.1 devops工程师的硬实力
- 代码能力
- 脚本语言:shell脚本,python编程
- 高级语言编程能力: java,python,php,ruby,任意一种都可以
-
自动化能力
常用的自动化工具: git, jenkins,gitlab,sonar,ansible,docker ,k8s -
容器云能力
docker,k8s是云时代必备 -
业务和流程能力
企业需要的不仅仅是一个工具,而是工具所关联的一整套解决方案,其中最重要的就是业务流程
3.2 devops工程师的软实力
软实力可能不仅仅是devops工程师必备的,而是打工人必备的:
- 沟通能力
能不能找到好工作靠的是沟通,能不能推动工作有所进展,靠的也是沟通能力。
-
同理心
-
学习能力
没有完美,只有持续不断的学习。
总结
知己知彼方能百战不殆,只有了解的要学的内容,才能制定计划,不迷茫,不焦虑。
💕 好啦,这就是今天要分享给大家的全部内容了,我们下期再见!
💕 博客主页:mufeng.blog.csdn.net
💕 本文由沐风晓月原创,首发于CSDN博客
💕 曾国藩说: 一书未完,不读其他
相关文章:
从业者必读,一篇文章轻松掌握DevOps核心概念和最佳技能实践!
文章目录前言一. DevOps的定义及由来二. DevOps的价值三. devops工具有哪些3.1 devops工程师的硬实力3.2 devops工程师的软实力总结前言 大家好,又见面了,我是沐风晓月,本文是对DevOps的总结,一篇文章告诉你什么是DevOps. 对很多…...
2023爱分析·一体化HR SaaS市场厂商评估报告:北森
目录 1.研究范围定义 2. 一体化HR SaaS市场分析 3.厂商评估:北森 4.入选证书 1.研究范围定义 研究范围 伴随数字化转型走向深入,企业人力资源数字化也进入快速发展阶段,人力资源的价值也得到了重新审视和定义。政策层面,《…...
JAVA练习67-二叉树的中序遍历
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、题目-二叉树的中序遍历 1.题目描述 2.思路与代码 2.1 思路 2.2 代码 总结 前言 提示:这里可以添加本文要记录的大概内容: 3月3日练习…...
【JeecgBoot-Vue3】第1节 源码下载和环境安装与启动
目录 一. 资料 1. 源码下载 2. 官网启动文档 二、 前端开发环境安装 2.1 开发工具 2.2 前后端代码下载 2.3 前端启动 Step 1:安装nodejs npm Step 2:配置国内镜像(这里选阿里) Step 3:安装yarn Step 4&…...
WebAPI
WebAPI知识详解day11.Web API 基本认知作用和分类什么是DOM?DOM树的概念DOM对象2.获取DOM对象通过css选择器获取dom对象通过其他方法获取dom3.设置/修改DOM元素内容方法1. document.write() 方法方法2. 对象.innerText 属性方法3. 对象.innerHTML4.设置/修改DOM元素…...
Shell命令——date的用法
date命令可以用来显示或设定系统的日期与时间。 一、显示系统的日期与时间 (1)如果date命令后面不加任何参数,则会按照固定的格式显示时间信息: 星期几 月份 日 时:分:秒 时区 年xjhubuntu:~/iot/tmp$ date Fri Mar 3 16:56:4…...
XSS跨站脚本
XSS跨站脚本XSS简介XSS验证XSS危害XSS简介 XSS被称为跨站脚本攻击(Cross-site scripting),由于和CSS(Cascading Style Sheets)重名,所以改为XSS。XSS主要基于javascript语言完成恶意的攻击行为,因为javascript可以非常灵活的操作html、css和…...
【强烈建议收藏:MySQL面试必问系列之慢SQL优化专题】
一.知识回顾 学习本篇文章之前呢,我们可以先看一下【强烈建议收藏:MySQL面试必问系列之SQL语句执行专题】,看完这篇文章再来学习本篇文章可谓是如虎添翼。好的,那我们也不讲太多的废话,直接开始。 二.如何做慢SQL查询优化呢&…...
windows,liunx,java实现apk解压,去签名、重新签名,重新打包apk
背景:由于项目需要,需要将apk包加入服务端返回的静态资源文件到apk中,形成离线apk包供下载安装。经过调查研究,决定使用apktool实现。关于apktool的资料可以参考 https://blog.csdn.net/quantum7/article/details/124060620 htt…...
【Linux】进程信号
🌠 作者:阿亮joy. 🎆专栏:《学会Linux》 🎇 座右铭:每个优秀的人都有一段沉默的时光,那段时光是付出了很多努力却得不到结果的日子,我们把它叫做扎根 目录👉信号入门&…...
SpringBoot 集成Junit单元测试
学习文章: https://www.cnblogs.com/ysocean/p/6889906.html 开发工具: IDEA 2022.1.4 目录 目录 1. 概述 2. 实现步骤 2.1 maven导入依赖 2.2 随意代码演示(不推荐) 2.3 规范代码演示(推荐) 3. Junit相关其他注解 4. 注意事项 5. 结语 1. 概述 接触到Junit,…...
Android开发之简单控件
文章目录一 文本显示1.1 文本设置的两种方式1.2 常见字号单位类型2.2 设置文本的颜色三 视图基础3.1 设置视图的宽高3.2 设置视图的间距3.3 设置视图的对齐方式四常用布局4.1 线性布局LinearLayout4.2 相对布局RelativeLayout4.3 网格布局GridLayout4.4 滚动视图ScrollView五 按…...
树状数组讲解
树状数组 文章目录树状数组引入例题AcWing241.楼兰图腾思路代码AcWing 242. 一个简单的整数问题思路代码AcWing 244. 谜一样的牛思路代码总结引入 树状数组主要维护的是这样一个数据结构: tr[x]表示以x为终点的长度为lowbit(x)的前缀和、最大值、最小值、最大公约数…...
每个Android开发都应需知的性能指标~
无论你是发布一个新的 Android 应用,还是希望提高现有应用的性能,你都可以使用 Android 应用性能指标来帮助你。 在这篇文章中,我将解释什么是 Android 应用性能指标,并列出8个需要考虑跟踪的维度和建议的基线。 什么是 Android…...
MSYS2安装
最近在学习windows上编译FFmpeg,需要用到msys2,在此记录一下安装和配置过程。 点击如下链接,下载安装包: Index of /msys2/distrib/x86_64/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 我下载的是:ms…...
3/3考试总结
时间安排 7:30–7:50 看题,怎么感觉三道构造,T3 貌似有网络流背景。 7:50–8:30 T1,有一些简单的性质,缩减两端点后枚举一下翻转的区间就可以了。然后花了一点时间写 spj 调试。 8:30–10:20 T2,比较纯粹的构造题。有网络流做法,…...
Spark Streaming DStream转换
DStream上的操作与RDD的类似,分为Transformations(转换)和Output Operations(输出)两种,此外转换操作中还有一些比较特殊的算子,如:updateStateByKey()、transform()以及各种Window相…...
水果商城,可运行
文章目录项目介绍一、技术栈二、本项目分为前后台,有管理员与用户两种角色;1、管理员角色包含以下功能:2、用户角色包含以下功能:三、用户功能页面展示四、管理员功能页面展示五、部分代码展示六、获取整套项目源码项目介绍 一、…...
LiveGBS国标GB/T28181国标视频流媒体平台-功能报警订阅配置报警预案告警截图及录像
LiveGBS国标GB/T28181国标视频流媒体平台-功能报警订阅配置报警预案告警截图及录像1、报警信息1.1、报警查询1.2、配置开启报警订阅1.2.1、国标设备编辑1.2.2、选择开启报警订阅1.3、配置摄像头报警1.3.1、配置摄像头报警通道ID1.3.2、配置摄像头开启侦测1.3.3、尝试触发摄像头…...
软件测试---测试分类
一 : 按测试对象划分 1.1 可靠性测试 可靠性(Availability)即可用性,是指系统正常运行的能力或者程度,一般用正常向用户提供软件服务的时间占总时间的百分比表示。 1.2 容错性测试 行李箱 , 四个轮子 , 坏了一个 , 说明这个容错…...
剑指 Offer II 015. 字符串中的所有变位词
题目链接 剑指 Offer II 015. 字符串中的所有变位词 mid 题目描述 给定两个字符串 s和 p,找到 s中所有 p的 变位词 的子串,返回这些子串的起始索引。不考虑答案输出的顺序。 变位词 指字母相同,但排列不同的字符串。 示例 1: 输…...
【SpringCloud】SpringCloud详细教程之微服务比较
目录前言一.什么是微服务?为什么要使用微服务二.微服务对比三.企业开发场景前言 我会通过实际代码来给展示每个组件的用法 一.什么是微服务?为什么要使用微服务 分布式,把一个项目拆分成多个模块,每一个模块相当于一个服务。 微…...
二.项目使用vue-router,引入ant-design-vue的UI框架,引入less
根据前文《使用Vue脚手架工具搭建vue项目》搭建好脚手架后使用 1.vue-router 2.引入UI框架ant design vue 3.引入less 1.vue-router vue-router分为两种模式(默认为hash模式): hash history hash: 特征: 1.hash会在浏览器路径里带#号&#…...
网络安全怎么学?20年白帽子老江湖告诉你
很多人都知道龙叔是个老程序员,但却不知道其实我也是个H客,20年前我就开始痴迷于H客技术,可以说是网络安全方面的老江湖了。 到现在,我还依然会去研究这一块,偶尔会和一些网安的朋友交流技术,比如说红盟的…...
药房管理系统;药库管理系统
第一,主要功能: 本系统集日常销售、药品进销存、会员积分、GSP管理等药店所需的所有功能于一体,实现店铺管理的全部自动化。第二、新功能: 增加了“按功能查询药品”的功能,使软件用户可以根据客户的症状推荐合适…...
深眸科技|机器视觉提升制造性能,焕发传统企业智造新活力!
随着机器视觉技术的成熟与发展,其在工业制造中得到越来越广泛的应用。机器视觉在工业制造领域的应用朝着智能识别、智能检测、智能测量以及智能互联的完整智能体系方向发展。此外,快速变化的市场需求,不断涌入行业的竞争对手,让传…...
ubuntu安装SSH的方法
Ubuntu安装SSH的方法。14版的ubuntu经过测试,默认没有开启SSH,所以需要安装。 1、虚拟机设置网卡为桥接模式,即NAT。12版虚拟机默认的。 2、查看ubuntu使用的ip。 ifconfig即可查看,14版的ubuntu自带这个命令。 3、查看是否pi…...
哪种蓝牙耳机通话效果好?通话清晰的蓝牙耳机推荐
出门的时候,如果戴耳机和别人通话,就不必把耳机摘下来,接电话变得前所未有的简单。现在的蓝牙耳机,已经不是单纯的用来听音乐了,而是一种更好的功能。下面这四款蓝牙耳机不仅适合听歌,通话还清晰࿰…...
IT运维如何完成一场高质量复盘
复盘的终极目标是:还原事实,找到薄弱点加以改进。 提到复盘,很多人的第一反应是线上故障,有人要背锅了。 复盘真正的价值是还原事实,在薄弱处加以改进。如何做一次高质量的复盘,我们给出3点建议。 1、坦…...
JVM调优面试题——基础知识
文章目录1、JDK,JRE以及JVM的关系2、编译器到底干了什么事?3、类加载机制是什么?3.1、装载(Load)3.2、链接(Link)3.3、初始化(Initialize)4、类加载器有哪些?5、什么是双亲委派机制?6、介绍一下JVM内存划分(…...
网站集约化建设进度汇报/万网的app叫什么
选择排序就是每次遍历数组找到最大的,然后将最大的和没有排序的部分的最后一个元素进行交换 举例如下, 第一次遍历找到最大的 20,将20 和最后一个元素2 交换,20 现在是已经排好序的了 第二次遍历找到最大的值10,将10 和…...
前端进入网站建设公司怎么样/网站怎么优化自己免费
IOS上的反射是部分支持,支持使用反射读取源代码,但不支持使用反射动态生成可执行代码,下面是限制反射的命名空间:ProfilerReflection.EmitReflection.Emit.Save functionalityCOM bindingsThe JIT engineMetadata verifier (since…...
网页制作工具的选择与网站整体风格没有关系/软文写作是什么
全国计算机等级考试四级计算机组成与接口考试大纲考试大纲是考生在备考复习的一个指引方向,以下就是小编分享全国计算机等级考试四级计算机组成与接口考试大纲,我们一起来看一看吧!全国计算机等级考试四级计算机组成与接口考试大纲(2013年版)…...
可以做公司网站/创建网站
题目链接 题目大意 一个人要睡n次,一天有h个小时,可以选择睡a[ i ]个小时或者a[ i ]-1个小时,起来之后又马上睡。 如果起来的时间在L和R中间(闭区间),则答案加1,求最大的答案。 题目思路 显…...
手工艺品网站建设/产品软文撰写
list的介绍 list的底层是双向带头链表,相对其他容器,list容器不支持随机访问节点,访问list容器的节点都是O(n)级别,但是插入删除都是O(1)级别。 list的迭代器使用 list的跟其他的容器的迭代器实现不同,类似vector容器的迭代器是…...
天津做网站比较大的公司/公众号怎么推广和引流
郑骁庆老师一直从事数据集成和人工智能方面的教学和科研工作,对算法理论与技术有着深入的研究,承担国家自然科学基金和国家科技支撑项目,任教期间赴美国麻省理工学院信息技术组从事研究工作,并不断将科学研究和国际学术交流的成果…...