1、强化共同目标 2、对开发人员的改变 3、对运维人员的改变
DevOps使得开发和运维人员联系更加紧密,通过建立和强化彼此的信任关系,基于DevOps自动化服务,共同实现高效,高质量,稳定的交付用户价值的目标。
我来说下,接下来2022年DevOps实践的4个关键点
1、评估流程永远都是第一步。
DevOps 其实不是一个非常好理解的概念。如果我们不能很好了解DevOps 是什么以及它对组织的意义,那将可能是一个灾难。
不仅如此,团队中的每一个人都需要同步自己对 DevOps 的了解,只有团队在充分沟通的“同意”下,DevOps 实践才能顺利。这也就是为什么所有公司在切换至 DevOps 时的难点和重点都是——文化建设和学习。
此外,对开发周期的评估也应该是全方位的、从头到尾的。开发的不同流程,有不同的瓶颈和低效率,只有找到当前流程不足的领域,才能在实施 DevOps 时锁定重点。
2、协作和目标是DevOps团队的预备动作。
在实施 DevOps之前,就应该要确定团队有没有准备好一起工作和沟通。向每一位成员灌输强烈的协作意识,并为他们提供有助于他们沟通和协作的工具。
此外,明确的目标则为DevOps 实践设立方向,否则任何DevOps实践都将毫无意义。通常,我们可以从一个更小、更容易实现的目标开始,之后再转向更大、更复杂的目标,以防止一次性改变太多带来不可修复的破坏。
3、自动化是DevOps 的重要组成部分。
在DevOps过程中,我们应该尽可能多地使用自动化手段。无论是扫描错误配置的代码还是自动化测试,现下都有各种不同的自动化工具来实现,这对效率的提升无疑是巨大的。
在这个基础上,如果还想进一步的自动化,项目就不得不考量团队是否能跟上了。所以,最好的办法是,从需要大量时间和手工的工作入手,去一步步实现自动化。采用自动化之初,也最好让团队先监控几周,看看进展如何。
4、了解关键指标是重中之重。
从实施DevOps的一开始就应该设置关键指标。如果没有指标,我们将无法跟踪进展,也无法及时发现问题。
飞算全自动开发平台项目发布的应用服务,在监控运维指标方面已集成 健康 检查、审计、统计和HTTP追踪等运维性能指标数据,所有的这些特性可以通过JMX或者HTTP endpoints来获得。
同时还可以与外部应用监控系统整合对接,可以方便地通过第三方系统进行监控告警,比如 Prometheus、 Influxdb 、Grafana等。这些系统提供了非常好的仪表盘、图标、分析和告警等功能,使用户可以通过统一的接口轻松地监控和管理应用。
devops的概念我觉得很难用一句话去定义或解释,主要是流程和工具的结合,规范的流程加上高效的工具构建符合业务和公司实际的运维场景
说到底就是把繁琐的 *** 作自动化,在得到快速集成和快速部署的同时,减少人为引入的失误。符合自动化发展的趋势,算是自动化在软件开发运营中的成功。
DevOps是一种打通开发和运维,并将所有环节自动化,摆脱人工束缚的理念,不仅仅只是字面上的将开发和运维打通结合。
多年以来,这两个群体一直被分开,尤其是在大型企业IT组织内部。开发者只关心编码,运维人员则确保其正常运行。他们之间完全脱节,导致需要更长的QA周期。并且经常不能在环境上部署新程序,因为这样可能会导致宕机或者破坏其它程序。
DevOps实现了高标准化,仅需几个工具,就可以替代人工干预,使用有效的方式来部署、配置和运行许多的服务。
随着DevOps的诞生,开发人员可以拥有配额,在一定的范围内他们可以按照需求,实时部署环境。
运维团队不再需要关心部署单个的应用程序,他们仍然采购硬件并且配置和管理服务器,但是规模远远大于单个的应用程序,他们的责任变成了管理开发人员更容易使用的自动化DevOps服务。
在2008年多伦多举办的敏捷大会(Velocity Conf 2008 )上,Patrick DeBois 和AndrewClay Shafer 先生首次提议讨论“敏捷基础架构”这个话题。在第二年的敏捷大会上有一个具有里程碑的意义技术分享,来自Flickr公司《每天部署10次》的分享,它激发了随后Patrick DeBios在同年十月,在比利时的根特市举办的首届DevOpsDays活动,这个活动是两天的日程,为了大家方便在twitter上的传播,人们把DevOpsDays这个词简写为 “#DevOps” 。 此后,“DevOps”一词问世了,这个词所包含的理念和实践一时在越来越广大的人群中产生了共鸣,随后成为全球IT界在各种大会和论坛里热议和讨论的焦点话题,很多大型IT论坛也都开设出了DevOps专题讨论。这就是DevOps这个词的由来。
DevOpsDays活动随后在Patrick DeBios等相关核心发起人的推动下,在全球范围内蓬勃发展了起来。2010年在美国山景城(Mountain View) 举办的DevOpsDays 活动中,Damon Edwards先生使用“CAMS”这个缩写,高度概括和诠释了DevOps,即文化(Culture)、自动化(Automation)、度量(Measurement or Metrics)和分享(Sharing)。随后Jez Humble先生将“L”精益 (Lean) 原则也加入其中,最终变成了CALMS。
♣ Culture(文化)- 是指拥抱变革,促进协作和沟通
♣ Automation(自动化)- 是指将人为干预的环节从价值链中消除
♣ Lean(精益)- 是指通过使用精益原则促使高频率循环周期
♣ Metrics(指标)- 是指衡量每一个环节,并通过数据来改进循环周期
♣ Sharing(分享)- 是指与他人开放分享成功与失败的经验,并在错误中不断学习改进
“CALMS”完全吻合Patrick DeBois先生所一向倡导的“DevOps is a human problem” (DevOps 是关于人的问题) 的理念 。
从DevOps概念的产生,到如今它在全球范围内的蔓延和认同,已经经历了9个年头的时间。它的火爆推广也伴随着IT行业的迅速变迁和发展,现在已经到了移动互联网时代的后半场,国内的信息化建设已经完成了很多年;如今各行各业的企业也都亟待完成全方位的数字化转型。IT信息技术的先进程度标志着一个企业的核心能力,任何一个成功的企业,敏捷高效的软件开发创新实力和IT管理综合能力不只是门面而已,而是实实在在的市场竞争能力。DevOps倡导打敏捷、持续交付和ITIL三种实践的组合拳,同时应用精益生产理念为基础的管理思想,这正在逐渐地被广泛的接受和认可。
在过去的几年中,国内的各种IT大会也蓬勃发展,其中DevOps相关的专题和分会场也颇受人们的关注。各种云计算、运维等IT技术的社交媒体也都非常重视DevOps这个话题的分享。一个专属于DevOps社群的、国际性的、有影响力的DevOps大会正呼之欲出。在这样的时代背景下DevOpsDays大会北京站在2017年的3月18日来到中国,在同年的8月18日上海,还要举办DevOpsDays Shanghai站的大会。
下面列举一些DevOpsDays大会的相关数据,数据来源于DevOpsDays.org 网站。从2009年到2016年,已经在全球的61个城市/国家成功地举办了117场。
下图是在过去九年中DevOpsDays大会在各个城市/国家的分布和举办次数。
今年也就是2017年预计举办30场,其中已经有18场确定了举办城市和日期;还有12个城市的召开日期待定;这不包括年内还可能会提出申办的城市。以上数据的统计时间在2017年三月。
随着国内BAT等互联网巨头的崛起,互联网公司的开发运维经验也越来越多的在国内的各种技术大会上传播。从最近这两年(2016年和2017年)的技术活动日程中可以看出,国内互联网从业人员也不约而同的用DevOps来定位和分享自己的优势和经验。他们是传播和分享运维侧DevOps实践的先头部队。
出了技术论坛的分享之外,很多线上线下的大会、论坛和讨论组也都越来越热议DevOps这一专题。国内其它相关流派的人群,例如敏捷和精益等,也对DevOps的蓬勃发展表示比较惊讶,DevOps与老牌的敏捷和精益等阵营也产生过一些争论。但这一切的发生也都增加了人们对于DevOps的更深入的兴趣。
在培训认证这方面,Exin DevOps Master是一个国际认证的培训;其它公司和组织也正在举办关于DevOps工具链的培训,这些培训则注重于技术实 *** ,关注在构建端到端的流水线的搭建方面。从DevOps的职位招聘方面,可以看到DevOps工程师相关的职位越来越多了,在职位需求中DevOps这个技能成了加分项,DevOps相关工具的技能也或将成为简历的亮点。在IT行业内不管是开发还是运维团队的人,都开始了学习和接受的过程。
据我观察DevOps方面的厂商在最近3年呈现爆炸式的发展。我把他们分为三类:
目前国内大部分企业慢慢地开始关注了DevOps,大型传统企业也开始逐渐地从各个角度做试点和尝试。试点的角度和方向各不相同,有的从底层基础架构的容器化开始,有的从交付部署流水线的自动化开始;总的来说还处于初级的尝试阶段,还没有大规模成体系的推广。
综上所述,目前国内DevOps发展的阶段还属于起步阶段。就像是ITIL/ITSM在2003年左右的状态。由于DevOps是去中心化的,所以没有唯一、权威的上游厂商的存在,各种理论实践的争执和PK都将终止与解决问题和提高效率的话题上,因此它具有百花齐放百家争鸣的发展条件。个人认为DevOps的实施和落地也不会完全依赖于传统的大型咨询厂商的咨询工作,由于它应该是在企业的内部,在内驱的作用下,自生长出来的;它必须是服务于企业的业务价值流的优化,加速业务价值产出的;而与之相关的工作和责任的担当,外部力量是很难以等量替换和承担的。
在谈这个话题前先看一下DevOps相关工具集的全貌,如下图所示:
最上面的箭头流程图表示了一个业务服务的全生命周期:开发协作、软件构建、质量测试、交付部署和投产运维。前三个阶段偏传统开发组织的工作内容,后两个阶段基本可以和运维组织的工作对应上。在每个阶段下可以看成是一个大分类,这些分类中还包含若干个小分类。这些工具可以粗放的划分为商业软件和开源软件两类;也可以分为SaaS服务类和企业内部部署型。大部分开源工具都有活跃的用户社区和群众基础,这给企业入手这些工具带来了很大的便利。在需要商业支持的场景里还可以选择使用这些开源软件的企业版。
Docker容器技术在最近三年中异军突起,持续交付的技术门槛因此被降到最低,软件生产供应链的格局和效率被彻底提升;基于Docker的微服务架构实践的热度和成熟度也与日俱增。因此,国内的传统企业纷纷试水DevOps和容器技术,在最近两年的各种技术大会中,我们可以看到国内各个行业出现了在不同维度上的DevOps先行者。他们分享的主题大多集中在自动化运维、容器化和PaaS平台的等项目经验。
从国内众多DevOps实践中,我们能看到下面三个技术尤其重要和火热:
以上三种技术相辅相成,有着比较深刻的关联。首先微服务和持续部署各自解决了特别多的传统IT的问题,这些问题都是长期以来制约企业业务发展的难题。容器技术由于它的快速、轻量、微服务化的天然特性,很好的从不同侧面支持了持续交付和微服务架构。容器可以为持续交付提供d性和高速的系统资源,环境管理和利用率提高了很多;容器的不可变性的特点也更好地支持了微服务架构。
我把DevOps的按照不同的技术特征做了从到1.0 到2.0的时代划分,并尽量通过以下维度比较与传统方式的差异。
我比较认可和接受的企业实践DevOps参考框架如下,其中包含了所需的最佳实践,如下图所示。
(上图来源于:Exin DevOps白皮书)
下面简要描述一下这四大支柱型最佳实践:
由此可见DevOps在企业,特别是大规模传统企业的落地和推广还是比较复杂的。虽然相关的最佳实践都是已经存在了很多年的;但是,通过DevOps的价值观重构企业从研发到交付到运维的价值流谈何容易。基于我的IT从业经验,我似乎感觉到DevOps不能单独依靠自顶向下的推广,当然高层领导的支持依然是重要的和必备的支持条件之一。 可能还需要中层的带动和底层的创新;借鉴生产制造业已经久经考验的精益制造实践也是势在必行。总之DevOps运动会在近几年给IT行业带来较大影响。
DevOps(Development和Operations的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。
它是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。
引入DevOps的因素:
1、使用敏捷或其他软件开发过程与方法
2、业务负责人要求加快产品交付的速率
3、虚拟化和云计算基础设施(可能来自内部或外部供应商)日益普遍
4、数据中心自动化技术和配置管理工具的普及
5、有一种观点认为,占主导地位的“传统”美国式管理风格(“斯隆模型vs 丰田模型”)会导致“烟囱式自动化”,从而造成开发与运营之间的鸿沟,因此需要DevOps能力来克服由此引发的问题。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)