什么是DevOps

【云原生】传统DevOps和云原生DevOps有什么区别? 【云原生】传统DevOps和云原生DevOps有什么区别?导读DevOps的发展史1. 瀑布式开发——>敏捷开发2. 敏捷开发——>DevOps3. 实行DevOps的优势什么是云原生DevOps传统DevOps云原生DevOps那究竟什么是云原生DevOps呢? 参考:《PaaS DevOps 微服务》、阿里云原生 导读 云原生的四大基石大家都应该知道吧,就是容器、微服务、持续交付、DevOps 其实博主公司的一些应用就是部署到K8S上,基本上用到了云原生相关的技术,之前和公司同事聊过一 阅读详情

开发和运维的战争

五天前,张大胖负责的开发团队向运维部门交付了一批新代码,这是一次用户期待已久的重要升级,部署进行得非常顺利,大家都很高兴。 

可是今天生产环境的CPU持续接近100%,有好几台服务器都down机了, 运维老大勃然大怒:“已经是第三次了! 张大胖,你们开发团队怎么搞的? 新代码一上线CPU就100%!”  

张大胖自然也不甘示弱:“我们在测试环境测试得非常充分,用户压力比生产环境大多了,代码坚如磐石,肯定是你们配置错了什么东西!” 

“不可能,我们是严格按照你们要求的步骤来部署的,肯定是你们代码的问题!” 

“那测试环境怎么就没有问题?”

 ......  

两位主管吵了好久,也没有什么好的解决方案,大家又熬了一个通宵,把代码回滚到上个版本,烧香拜佛,希望不要再出问题。 

经过这一番折腾,今年年底的奖金估计是悬了! 

张大胖觉得极为郁闷, 心绪难平,黑着脸来到茶水间倒了一杯咖啡,坐在那里一边喝一遍感慨这运维部门简直是太难合作了! 

看看他们新招的这些人,完全不懂业务,他们为了要“逃避责任”,经常说:“我不懂业务,这次上线的内容,你要把每一步都写得清清楚楚,我只管执行,不问为什么,出了问题可不是我的责任。”你说气人不气人! 难道他就想当个机器人吗? 

还有,他们运维团队每个人侧重不同,有人负责数据库脚本执行,有人负责Web服务器,有人负责SSO , 我的天,每次上线前都得把一堆人拉过来开好几次会,让他们熟悉操作步骤。 这个人部署了一次,好不容易熟悉了,下一次又换了一个人,还美其名曰这是人力资源池,能提高效率,但是新人又需要从头儿学习,这怎么可能不出错?! 唉......

张大胖的回忆

喝了两杯咖啡以后,张大胖稍微平静了一下,仔细想想,本质原因还是软件本身太复杂了,不但开发复杂,部署也超级复杂,每次部署就把人扒掉一层皮。 

张大胖不由地想起来这些年来自己经历过的软件开发和部署流程。 

大学时候,跟着老师做一些小项目,开发、测试都是一个人搞定,部署到用户那里也是自己做,几乎没出过岔子。 

毕业后进入一个小公司,做的是C/S架构的系统,有了开发团队、测试团队之分,开发团队把代码写完,交给测试团队测试,通过以后就可以到客户那里部署了。 

通常来说实施人员也都是开发或者测试的兄弟们兼任,自己也兼职干过,拿着部署文档和光盘,到客户那里严格按照步骤把系统安装到客户的机器上,基本上没啥大问题,即使有了问题,现场调试一下也都能解决,大不了把开发的兄弟们叫过来一起熬夜。

再后来互联网浪潮来临,自己也跳槽到这家互联网公司,专门做一个网上约车的系统,给用户提供约车服务,根本不用到客户那里去安装软件,公司独立地运行、维护好这个系统就万事大吉。 

但是这个网上约车的系统可比原来的单机软件、C/S软件要复杂得多,尤其是要面对海量用户的高并发访问,需要解决各种各样的技术难题,挑战巨大。 系统不但复杂,还需要以24*7的方式运行, 靠开发或测试的兼职人员已经无法维护了。

公司专门设立了运维(Operations)部门,负责系统的部署、日常维护、监控。运维人员的地位空前提高,当然,对他们的技能的要求也空前提高。 

张大胖看过一个招聘的运维的邮件: 

熟练使用Linux, unix, windows操作系统; 

精通各种常用服务器软件(tomcat, apache, nginx,redis,mysql...)的配置及优化 

了解负载均衡和高可用的原理,如LVS,Keepalived等 

熟悉网络原理,TCP/IP协议,掌握至少一种脚本语言。 

会使用各种配置管理和部署管理的工具。 

...... 

总之,运维的重要性已经和开发差不多了。 

开发和运维的鸿沟

为了加快交付速度,前两年,自己带领着开发团队实施了敏捷转型,成功地把原来的瀑布开发方式转换成了小步快跑,经常交付的敏捷模式。  0?wx_fmt=png

(图片来源:http://www.agilenutshell.com/scrum) 

通过敏捷软件开发,把需求人员,开发人员,测试人员拉到了一起,形成所谓“特性团队”,把需求拆分成一个个独立的,对用户有价值的故事,按优先级排序以后再开发、测试,甚至可以达到每两周就能交付几个独立需求的程度。

 (码农翻身注,参见《白话敏捷软件开发》) 

成功的敏捷转型获得了公司的极大认可,还对外输出了不少培训。 

虽然能频繁地交付,但是却不能频繁地上线,原因很简单:搞运维的家伙们总是希望系统稳定、稳定、再稳定, 稳定压倒一切。所以他们从骨子里不想频繁地上线,那不是给自己找麻烦吗? 

这恰恰和自己的敏捷软件开发相反,敏捷就是要拥抱变化啊 !

0?wx_fmt=png

 (开发要求变化,运维要求稳定,图片创意来自 http://dev2ops.org,老刘做了重画) 

想通了这个本质矛盾,张大胖就明白自己是搞不定这个问题了,必须上层出面解决。 

张大胖立刻去找CTO Bill,希望他能出点好主意。  

Dev + Operations = DevOps

让张大胖没想到的是, 运维主管老李已经在Bill办公室里了,张大胖心说不好,这小子也许恶人先告状了。 

Bill 一看到愁眉哭脸的张大胖,让他先坐下,听老李把开发和运维之间的“矛盾”和“战争”讲完。 

老李唠唠叨叨,说的问题和自己思考的也差不多。 

Bill笑着说:“大胖,软件的开发流程基本上就是需求->开发->测试->部署, 现在你的团队已经把需求、开发、测试给‘团结’到一起了, 看来你又要‘团结’一个新的小伙伴了!” 

“难道是老李的运维部门?” 

“没错。” 

“那是不可能的, 我们的目标都完全不同,一个要变化,一个要稳定,怎么可能在一起玩?” 大胖非常诧异。

“不,以后我们要强调业务目标,以用户的价值为唯一的评判标准,团队的考核评价机制也要改变,个体和团队的成功都要放在整个开发-运维生命周期内来进行评价,开发完成了很多用户需求不一定是成功,运维保障系统不down机也不一定是成功!只有用户想要的功能被及时实现了,被成功部署了,被稳定使用了才算成功。 ” CTO总是很擅长用MBA的词汇来讲话。 

“就是说要求我们运维和开发紧密合作喽?” 老李接着问道。 

“是啊,现在有个热词叫做DevOps,就是把敏捷开发部门和运维部门之间的围墙打通,形成闭环。”

0?wx_fmt=png

 “难道我们要再增加一个部门,叫DevOps部门? 招聘DevOps工程师?” 

“不不,如果再增加一个这样的部门,岂不是又增加了一堵墙? 我们本来是要打破开发和运维团队之间的隔阂啊。其实运维部门的工作目标不仅仅是让我们的网上约车系统更加稳定和高效,更需要支持业务的快速演化——这一点是和你们敏捷软件开发的目标是一致的啊。”

 "但我们也不能频繁部署啊?快速和稳定的矛盾还是解决不了。"老李叹了口气。

 "我知道张大胖的团队正在实施微服务的改造,将来再部署的话就不是以一个巨无霸应用为单位了,而是以一个个微服务为单位,那样就简单得多,频繁部署是有可能的,并且出了错回滚也便捷得多,肯地不用你们熬夜了!"  

张大胖和老李都点头认同。 

 “那具体该怎么做?” 

 “首先是观念的改变,以后你们不能互相推卸责任,互相指责,而要共同担责了!一个项目的开发、部署、维护,是你们双方的事情,双方都要对业务负责,出了什么问题,你们要通力合作,共同解决。这一点你们回去后要给组员多`洗洗脑`。”

 张大胖心想,我们刚刚通力合作回滚了代码。

 “还有,”,Bill看了一眼老李, “运维人员也要了解业务,Code变化带来的影响要告知运维人员。你们开发人员工作的开发/测试环境要尽可能地和生产环境一致。” 

“运维部门所要求的详细安装步骤实在是太烦人了!” 张大胖抱怨。

Bill说道:“我们先设定一个短期目标,把部署工作完全自动化起来。部署的脚本由老李的运维部门主导,有问题大胖来辅助, 将来这个部署脚本要在所有的环境都用起来!”

 张大胖和老李再次点头。 

Bill又说道:“最后一点就是度量,例如失败部署的百分比,用户开的ticket数目,故障恢复的平均时间等等,这些老李应该比我清楚。我们会用这些度量指标去衡量DevOps做得到底怎么样, 最重要的是我们无论用了什么工具、方法,如果最后没有减少需求从提出到上线,交付给用户使用的时间,那都是失败。我要求你们两个想尽一切办法,去减少这个时间,不是一次、两次,而是持续、稳定地交付给用户。”

张大胖说:“这DevOps听起来不错,但实施起来估计难度不小啊!”

Bill说道:“我们先选定一个产品作为试点,然后再扩大推广吧!”

(完)

你看到的只是冰山一角, 更多精彩文章,请移步《2016文章精华》或者《2017文章精华》


码农翻身

用故事讲述技术

0.jpeg

《DevOps实践指南》学习分享- 入门DevOps的经典书籍 1.为什么要学《DevOps实践指南》 《Devops实践指南》(The DevOps Handbook) 这本书有多经典呢?我总结了一下这本书的主要特点供大家参考。 作者均是业界翘楚 Gene Kim Tripwire创始人、前CTO,IT Revolution创始人,DevOps企业峰会主办人。畅销书《凤凰项目》合著者,没错就是那本我个人为的IT类最佳小说,其中的主人公遇到了我们平时遇到的所有困难和问题,建议大家可以读读。《DevOps实践指南》又称为《凤凰项目》姊妹篇。 Jez Humbl 阅读详情

相关推荐

通过 DevOps 故事落地 DevOps 实践

在 2009 年第一届 DevOpsDays 上,《敏捷教练》的作者 Rachel Davies 作为第一届 DevOpsDays 上的第一位分享嘉宾。分享了在 BBC 采用用户故事跟踪非功能需求的经验。然而这一实践并不如 DevOps 的其它实践那样广泛。这个实践实际上很简单,就是把非功能需求做为用户故事的 AC 放入故事卡里。 在我过去实践 DevOp...

顾宇的个人空间 2487

DevOps—基本概念

这是这个行业演变过程,也是一个公司从成立,到发展壮大的过程,一个公司的项目管理模式演变过程是整个行业演变过程的缩影,不同阶段有不同阶段的模式,达到一定阶段才有改变的必要,不过我们如果提前有这些了解,提前有所准备,那边在转变的过程中就可以少些弯路和内耗。再后来,随着项目的再次扩大,用户对系统的需求不断增加,与此同时,用户给的时间周期却越来越少,时间周期比较长的瀑布流模式不再适用,于是就出现了“敏捷开发”,为的就是小步快跑,持续迭代,快速发现问题,快速解决问题,快速和用户、业主进行确认。

weixin_37648525的博客 9465

DevOps的那些事儿——DevOps的前世今生

ServiceHot 旗下现产品有,ServiceHot ITSOM(IT服务运营管理平台)、ServiceHot ITSM(IT服务管理)、ServiceHot云宝箱,以及ServiceHot IT学院!欢迎登陆www.itsmcn.com 注册试用! 今天小编再给大家普及一下关于DevOps的知识~ 顺便悄悄告诉大家: ServiceHot IT学院9月DevOps

servicehot的博客 1902

Devops基本概念和原理

一、什么是DevOps 1、 DevOps概述 DevOps,即Development and Operations,是一组过程、方法与系统的统称,用于促进软件开发、运维和质量保障部门之间的沟通、协作与整合。DevOps的出现是由于软件行业日益清晰的认识到:为了按时交付软件产品和服务,开发和运维工作必须紧密合作。DevOps可看作开发、运维和质量保障(QA)三者的交集。 DevOps运动源自于提高IT服务交付敏捷性的需要,早期出现在许多大型公有云服务提供商中,并被其认可。支撑DevOps的理念基础是敏捷宣

u014118698的博客 1万+

ARM CoreSight架构

CoreSight架构是现代复杂SoC的“飞行数据记录仪”(黑匣子)和“精密诊断仪”的结合体。它彻底改变了嵌入式系统的调试方式,从传统的“盲人摸象”变成了拥有“上帝视角”,是ARM生态系统能够支撑起从微控制器到高性能服务器芯片如此广泛产品线的重要基石技术之一。

guigenyi的专栏 1422

半导体设备上位机开发:我的经验与新人指导

半导体设备上位机开发是一项复杂而富有挑战性的工作,需要扎实的技术基础和丰富的经验。如果你对半导体设备上位机开发感兴趣,欢迎随时与我交流,我会尽力帮助你!

qq_43518667的博客 2729

DevOps是什么?DevOps能够给我们带来什么?

Spring Cloud微服务实战系列,打造精品专栏。

学Java,找哪吒 1万+

创建动态代理对象bean,并动态注入到spring容器中

使用过Mybatis的同学,应该都知道,我们只需要编写mybatis对应的接口和mapper XML文件即可,并不需要手动编写mapper接口的实现。这里mybatis就用到了JDK动态代理,并且将生成的接口代理对象动态注入到Spring容器中。 这里涉及到几个问题。也许有同学会有疑问,我们直接编写好类,加入@Component等注解不是可以注入了吗?或者在配置类(@Configuration)...

lichuangcsdn的博客 3万+

什么是Devops?

DevOps(Development和Operations的组合词)是一种文化和实践方法,它强调软件开发(Dev)和信息技术运维(Ops)团队之间的紧密合作与沟通,以自动化化的工具链和可重复的过程,实现软件的快速、频繁、可靠地交付。DevOps的目标是缩短开发到部署的周期,提升软件质量和稳定性,同时增强团队的响应速度,以便更快地适应市场变化和用户需求。

CQ_0712的博客 5829

使用 Simulink 和 Simscape Electrical 工具箱设计一个 Buck 转换器系统

Buck 转换器(降压转换器)是一种常用的 DC-DC 转换器,用于将较高的输入电压转换为较低的输出电压。为了评估其抗干扰能力,我们可以在模型中引入不同的干扰源,并观察系统的响应情况。电网电压波动:输入电压的变化。负载突变:负载电阻或电感的变化。电磁干扰:高频噪声或脉冲干扰。通过模拟这些干扰,我们可以分析系统的动态响应特性,并采取相应的措施来提高系统的抗干扰能力。

xiaoheshang_123的博客 378

UFAST车道线检测 Ultra-Fast-Lane-Detection 从环境搭建到复现完成(一)

UFAST车道线检测 Ultra-Fast-Lane-Detection 从环境搭建到复现完成(一)

m0_46364958的博客 4345

Devops的概念

1、什么是DevOps? 答:DevOps是产品开发过程中开发(Dev)和运营(Ops)团队之间的灰色区域。DevOps是一种在产品开发周期中强调沟通,集成和协作的文化。因此,它消除了软件开发团队和运营团队之间的孤岛,使他们能够快速,连续地集成和部署产品。 DevOps 就是开发(Development)、测试(QA)、运维(Operations)这三个领域的合并。DevOps是一种软件开发方法,涉及软件在整个开发生命周期中的持续开发,持续测试,持续集成,持续部署和持续监控。 编码——》打包——》测试——》

果子哥丶的博客 6518

把浮点数这件小事讲清楚:ABAP 7.51 里 Open SQL 与 ABAP CDS 的 FLTP 新玩法与避坑指南

ABAP浮点数计算的风险与应对 摘要:ABAP项目中的浮点数(FLTP)在跨平台计算时存在误差风险,同一逻辑在不同数据库平台可能产生细微差异。ABAP 7.51新增了两项关键能力:1)Open SQL和ABAP CDS中可为AVG函数指定结果类型,避免默认返回FLTP;2)ABAP CDS提供FLTP_TO_DEC转换函数。但需注意这些转换仍可能存在平台相关差异,且FLTP_TO_DEC会截断而非四舍五入小数位。开发者在涉及金额、数量等关键业务计算时,应明确数值语义并设计容错机制。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 214

DevOps简介

原文:https://www.cnblogs.com/liufei1983/p/7152013.html DevOps 是一个完整的面向IT运维的工作流,以 IT 自动化以及持续集成(CI)、持续部署(CD)为基础,来优化程式开发、测试、系统运维等所有环节。 DevOps的概念 DevOps一词的来自于Development和Operations的组合,突出重视软件开发人员和运维人员...

白开水的博客 4980

LLM的MCP协议:初识MCP,搭建第一个MCP Server

MCP(Model Context Protocol),是一个开发的协议,标准化了应用程序如何为大模型提供上下文。MCP提供了一个标准的为LLM提供数据、工具的方式,使用MCP会更容易的构建Agent或者是基于LLM的复杂工作流。

Criss@陈磊 2万+

基于自抗扰控制的虚拟同步发电机二次调频控制研究

摘要:本文针对高比例可再生能源并网导致的电力系统频率稳定性问题,提出基于自抗扰控制(ADRC)的虚拟同步发电机(VSG)二次调频控制策略。通过分析VSG工作原理和传统调频方法的不足,设计了非线性ADRC和线性ADRC两种控制器,详细阐述了参数整定方法。仿真结果表明,该策略能有效消除频率稳态偏差,提升系统抗扰能力,为分布式电源参与电网调频提供了新思路。 关键词:虚拟同步发电机;自抗扰控制;二次调频;频率调节;抗扰能力

huanghm88的专栏 243

大厂都用DevOps,从多角度了解DevOps

目前很多大厂如阿里、腾讯、百度、头条、滴滴、美团等公司内部都在做DevOps,那么 DevOps是什么 ? ...

dabaoshiwode的博客 3647

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

DevOps

提到DevOps这个词,我相信很多人一定不会陌生。 作为一个热门的概念,DevOps近年来频频出现在各大技术社区和媒体的文章中,备受行业大咖的追捧,也吸引了很多吃瓜群众的围观。 那么,DevOps是什么呢? 有人说它是一种方法,也有人说它是一种工具,还有人说它是一种思想。更有甚者,说它是一种哲学。 越说越玄乎,感觉都要封神啦!DevOps这玩意真的有那么夸张吗?它到底是干嘛用的?为什么行业里都会对它趋之如骛呢? 今天这篇文章,就和大家好好聊一聊这个DevOps。 DevOps的起源 上个世

猎户星座 3584

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

DevOps 介绍

DevOps是一种思想、一组最佳实践、以及一种文化,是开发(Development)、测试(QA)、运维(Operations)这三个领域的合并。

IoTHub - 物联网开源技术社区 2447

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

DEVOPS——1

内部开发平台和DevOps团队的工作会有一定的交集,DevOps工程师也会有一定机会过渡到平台工程师的角色,在整个组织中产生更广泛的影响,并将他们的专业知识应用于为开发人员提供更好的体验。简单来说,平台工程面向的是开发人员,作为一套自助式内部开发者平台的机制和架构,用于构建和运营支持软件交付和生命周期管理,主要目标是优化开发者体验,并加快产品团队为客户创造价值的速度。DevOps需要不断地调整和改进流程和文化,以适应不同的项目和需求,而平台工程需要不断地更新和扩展平台功能,以满足不同的用户和场景。

windscreen的博客 2138

DevOps落地实践:普元:PRIMETON DEVOPS

普元发布了PRIMETON DEVOPS的5.0版本,其愿景定位为”打造新一代软件生产线, 快速提升IT运营质量与效率”。结合普元官方提供的资料,我们来围观一下其围绕DevOps的打法与路线。

知行合一 止于至善 7855

DevOps学习

1、DevOps是什么 2、为什么要采用DevOps 3、DevOps的核心理念 4、DevOps与ITIL对比 5、DevOps工作核心 6、如何实现DevOps

Remoa的休闲茶馆 4603

DevOps,到底是开发还是运维?

DevOps 自 2009 年诞生以来,至今整整过去了十年,从最初的摸索,逐步变成一种主流的软件开发交付模式。DevOps 这个词来自于 Development 和 Operations 的组合,可以说,DevOps 的应用,很好地填补了开发端和运维端之间的信息鸿沟,改善了团队之间的协作关系。 相信你也发现,DevOps 在我们身边出现的频率越来越高。各种大会上经常出现DevOps专场,行...

朱小厮的博客 1万+

【DevOps系列】什么是DevOps

随着技术的发展和市场需求的变化,软件开发方法也在不断地进化。从瀑布模型的结构化,到敏捷开发的灵活性,再到DevOps的集成与自动化,每一种方法论都是为了更好地适应软件开发的挑战和机遇。在实践中,许多组织结合使用这些方法的元素,创造出最适合自身情况的混合模式。

u013379032的博客 1408

【DevOps 】DevOps简介

DevOps 是一个完整的面向IT运维的工作流,以 IT 自动化以及持续集成(CI)、持续部署(CD)为基础,来优化程式开发、测试、系统运维等所有环节。 DevOps的概念 DevOps一词的来自于Development和Operations的组合,突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建、测试、发布更加快捷、频繁和可靠。 DevOps是为...

我的笔记本 1769

什么是 devops_DevOps对您意味着什么?

devops包括什么 据说,如果您问10个人有关DevOps的信息,您将获得12个答案。 这是由于DevOps周围意见和期望的差异所致,更不用说其实践方面的差异。 为了破译DevOps周围的悖论,我们找了最了解它的人-它是整个行业的顶尖从业者。 这些人到处都是,了解技术的来龙去脉,并且已经实践DevOps多年。 他们的观点应鼓励,激发和激发您对DevOps的想法。 DevOps对您意味着...

cuml0912的博客 428
上一篇: 面向对象圣经
下一篇: 作为你的第一门语言,初学Java时是什么感受?
码农翻身
码农翻身 《码农翻身》作者 《码农翻身》作者
博客等级 码龄8年 3万+粉丝 1084原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值