DevOps到底是什么意思?
作者:ManBetX客户端网页版 发布时间:2021-05-21 02:24
本文摘要:提到DevOps这个词,我相信许多人一定不会生疏。作为一个热门的观点,DevOps近年来频频泛起在各大技术社区和媒体的文章中,备受行业大咖的追捧,也吸引了许多吃瓜群众的围观。那么,DevOps是什么呢?有人说它是一种方法,也有人说它是一种工具,另有人说它是一种思想。更有甚者,说它是一种哲学。 越说越玄乎,感受都要封神啦!DevOps这玩意真的有那么夸张吗?它到底是干嘛用的?为什么行业里都市对它趋之如骛呢?今天这篇文章,小枣君就和大家好好聊一聊这个DevOps。

ManBetX客户端网页版

提到DevOps这个词,我相信许多人一定不会生疏。作为一个热门的观点,DevOps近年来频频泛起在各大技术社区和媒体的文章中,备受行业大咖的追捧,也吸引了许多吃瓜群众的围观。那么,DevOps是什么呢?有人说它是一种方法,也有人说它是一种工具,另有人说它是一种思想。更有甚者,说它是一种哲学。

越说越玄乎,感受都要封神啦!DevOps这玩意真的有那么夸张吗?它到底是干嘛用的?为什么行业里都市对它趋之如骛呢?今天这篇文章,小枣君就和大家好好聊一聊这个DevOps。DevOps的起源 这个故事有点长,重新开始讲起吧。上个世纪40年月,世界上第一台盘算机降生。

从降生之日起,它就离不开法式(Program)的驱动。而卖力编写法式的人,就被称为“法式员”(Programmer)。

法式员是盘算机的驾驭者,也是极其稀缺的人才。谁人时候,只有高学历、名校身世的人,才有资格成为法式员,操控盘算机。随着人类科技的不停生长,PC和Internet陆续问世,我们进入了全民拥抱信息化的时代。越来越多的企业开始将盘算机作为办公用的工具,用以提升生产力。

而普通小我私家用户也开始将盘算机作为娱乐工具,用以改善生活品质。于是,盘算机的法式,开始酿成了一门生意。法式,逐步演进为“软件(software)”,酿成了最赚钱的产物之一。

在软件工业里,法式员有了更专业的称谓,叫做“软件开发工程师(Software Development Engineer)”,也就是我们常说的“码农”。我们知道,一个软件从零开始到最终交付,或许包罗以下几个阶段:计划、编码、构建、测试、公布、部署和维护。最初,法式比力简朴,事情量不大,法式员一小我私家可以完成所有阶段的事情。

随着软件工业的日益生长壮大,软件的规模也在逐渐变得庞大。软件的庞大度不停攀升。

一小我私家已经hold不住了,就开始泛起了精致化分工。码农的队伍扩大,工种增加。除了软件开发工程师之外,又有了软件测试工程师,软件运维工程师。分工之后,传统的软件开发流程是这样的:软件开发人员花费数周和数月编写代码,然后将代码交给QA(质量保障)团队举行测试,然后将最终的公布版交给运维团队去布署。

所有的这三个阶段,即开发,测试,布署。早期所接纳的软件交付模型,称之为“瀑布(Waterfall)模型”。瀑布模型,简而言之,就是等一个阶段所有事情完成之后,再进入下一个阶段。这种模型适合条件比力理想化(用户需求很是明确、开发时间很是富足)的项目。

大家按部就班,轮流执行自己的职责即可。可是,项目不行能是单向运作的。客户也是有需求的。

产物也是会有问题的,需要革新的。随着时间推移,用户对系统的需求不停增加,与此同时,用户给的时间周期却越来越少。

在这个情况下,大家发现,粗笨迟缓的瀑布式开发已经不适时宜了。于是,软件开发团队引入了一个新的观点,那就是台甫鼎鼎的——“敏捷开发(Agile Development)”。

敏捷开发在2000年左右开始被世人所关注,是一种能应对快速变化需求的软件开发能力。其实简朴来说,就是把大项目酿成小项目,把大时间点酿成小时间点,然后这样:有两个词经常会陪同着DevOps泛起,那就是CI和CD。CI是Continuous Integration(连续集成),而CD对应多个英文,Continuous Delivery(连续交付)或Continuous Deployment(连续部署)。

美其名曰:“连续(Continuous)”,其实就是“加速——重复——加速——重复……”,这样子。画个图大家可能更明确一点:敏捷开发大幅提高了开发团队的事情效率,让版本的更新速度变得更快。许多人可能会以为,“更新版本的速度快了,风险不是更大了吗?”其实,事实并非如此。敏捷开发可以资助更快地发现问题,产物被更快地交付到用户手中,团队可以更快地获得用户的反馈,从而举行更快地响应。

而且,DevOps小步快跑的形式带来的版本变化是比力小的,风险会更小(如下图所示)。纵然泛起问题,修复起来也会相对容易一些。虽然敏捷开发大幅提升了软件开发的效率和版本更新的速度,可是它的效果仅限于开发环节。

研发们发现,运维那里,依旧是铁板一块,成为了新的瓶颈。到底什么地方出问题了?运维工程师,和开发工程师有着完全差别的思维逻辑。运维团队的座右铭,很简朴,就是“稳定压倒一切”。运维的焦点诉求,就是不出问题。

什么情况下最容易出问题?发生改变的时候最容易出问题。所以说,运维很是排挤“改变”。

于是乎,矛盾就在两者之间集中发作了。这个时候,我们的DevOps,隆重登场了。DevOps到底是什么 DevOps这个词,其实就是Development和Operations两个词的组合。

它的英文发音是 /de'vɒps/,类似于“迪沃普斯”。DevOps的维基百科界说是这样的:DevOps是一组历程、方法与系统的统称,用于促进开发、技术运营和质量保障(QA)部门之间的相同、协作与整合。

这个定位稍微有点抽象,可是并不难明白。它不是某一个特定软件、工具或平台的名字。

ManBetX客户端网页版

从目的来看,DevOps就是让开发人员和运维人员更好地相同互助,通过自动化流程来使得软件整体历程越发快捷和可靠。破墙工具许多人可能以为,所谓DevOps,不就是Dev+Ops嘛,把两个团队合并,或者将运维划归开发,不就完事了嘛,简朴粗暴。注意,这个看法是差池的。

这也是DevOps这些年一直难以落地的主要原因。想要将DevOps真正落地,首先第一点,是思维转变,也就是“洗脑”。不仅是运维的要洗,开发的也要洗。

员工要洗,向导更要洗。DevOps并不仅仅是组织架构厘革,更是企业文化和思想看法的厘革。如果不能改变看法,纵然将员工放在一起,也不会发生火花。

除了洗脑之外,就是凭据DevOps思想重新梳理全流程的规范和尺度。在DevOps的流程下,运维人员会在项目开发期间就介入到开发历程中,相识开发人员使用的系统架构和技术门路,从而制定适当的运维方案。

而开发人员也会在运维的初期到场到系统部署中,并提供系统部署的优化建议。DevOps的实施,促进开发和运维人员的相同,增进相互的理(gan)解(qing)。

在思维和流程改变的同时,想要充实落地DevOps,固然离不开软件宁静台的支持。现在支持DevOps的软件实在是太多了。

限于篇幅,就纷歧一先容了。话说回来,现在DevOps之所以被吹得天花乱坠,也有这些软件宁静台的劳绩,可以乘隙卖钱啊。DevOps生态圈中令人眼花缭乱的工具上述这些关键要素内里,技术(工具宁静台)是最容易实现的,流程次之,思维转变反而最难题。

换言之,DevOps磨练的不仅是一家企业的技术,更是治理水平和企业文化。对比前面所说的瀑布式开发和敏捷开发,我们可以显着看出,DevOps贯串了软件全生命周期,而不仅限于开发阶段。下面这张图,更显着地说明晰DevOps所处的位置,另有它的价值:DevOps的生长现状 DevOps这个词泉源于2009年在比利时根特市举行的首届DevOpsDays大会,为了在Twitter上更利便的流传,由DevOpsDays缩写为DevOps。

现在,DevOps处于高速增长的阶段。尤其是在大企业中,DevOps受到了广泛的接待。凭据2018年的观察发现,74%的受访者已经接受了DevOps,而前一年这一比例为66%。越大的企业,越喜欢DevOps。

包罗Adobe、Amazon、Apple、Airbnb、Ebay、Etsy、Facebook、LinkedIn、Netflix、NASA、Starbucks、Walmart、Sony等公司,都在接纳DevOps。如今,DevOps险些已经成为了软件工程的代名词。DevOps迅猛生长,相关专业人才的薪资待遇也随着水涨船高。

凭据调研,DevOps工程师在美国的平均年薪为130000美金,在中国平均年薪也在40万-50万区间,能力强者年薪百万也是触目皆是。数据来自招聘网站薪资的猛涨,又动员了IT工程师们学习和认证的热潮。DevOps的认证现在最受接待的就是EXIN DevOps Master和EXIN DevOps Professional。

这些认证的培训用度不低,可是仍然吸引了许多人踊跃报名。EXIN DevOps认证体系DevOps与虚拟化、容器、微服务 这几年云盘算技术突飞猛进,大家应该对虚拟化、容器、微服务这些观点并不生疏。

当我们提到这些观点的时候,也会偶然提及DevOps。它们之间有什么联系呢?其实很简朴。

大家可以设想一下,如果要对一项事情举行精致化分工,我们是对一个大铁疙瘩举行加工利便?还是拆成一块一块举行加工越发利便?显然是拆分之后会越发利便。所谓“微服务”,就是将原来黑盒化的一个整体产物举行拆分(解耦),从一个提供多种服务的整体,拆成各自提供差别服务的多个个体。如下图所示:单体式架构(Monolithic)→ 微服务架构(Microservices)微服务架构下,差别的工程师可以对各自卖力的模块举行处置惩罚,例如开发、测试、部署、迭代。

而虚拟化,其实就是一种敏捷的云盘算服务。它从硬件上,将一个系统“划分”为多个系统,系统之间相互隔离,为微服务提供便利。

容器就更彻底了,不是划分为差别的操作系统,而是在操作系统上划分为差别的“运行情况”(Container),占用资源更少,部署速度更快。明确了吧?虚拟化和容器,其实为DevOps提供了很好的前提条件。开发情况和部署情况都可以更好地隔离了,减小了相互之间的影响。

这也是DevOps为什么09年时不火,现在越来越火的一个主要原因之一。最后的话 天下武功,无坚不摧,唯快不破。时代生长到现在,客户的需求瞬息万变,市场的风向也难以预测。

作为企业,想要生存下去,只有让自己变得更快。作为员工,必须让自己眼光越发久远,心田越发包容。好了,以上就是今天的内容,谢谢大家的耐心阅读!下期再见!。


本文关键词:DevOps,ManBetX客户端网页版,到底,是什么,意思,提到,DevOps,这个,词,我

本文来源:ManBetX客户端网页版-www.lxfmc.com

电话
0898-368417401