导读:很多朋友问到关于devops英文怎么读的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!
什么是devops
DevOps是IT服务管理的一种模式。过去的数十年间,IT运维发展经历了数个阶段。从早期的手工运维到标准化运维、自动化运维,到如今的DevOps、AIOps。
简言之,DevOps试图打通开发和运维的部门墙,从而打通整个IT价值交付的全生命周期,从产品需求到上线运维的全过程实现效率的提升。
DevOps最显著的作用是提高了企业产品的交付质量、缩短开发周期、减少故障。而降本增效是每一个公司在数字化转型之后的很大的挑战,DevOps无疑直击痛点。
而作为一名DevOps 工程师,除了要具备软件工程师基本的编程能力以外,还需要特定的人际交往、工具使用等技能。换句话说,DevOps 工程师需要“软”、“硬”技能兼备,具体如下:
一、沟通与协作技巧
DevOps 是一种横跨软件开发、测试和部署的协作方法。它将原本具有不同目标的开发、测试和运维小团队聚集在一起,以实现更高效和高质量的代码发布,这就要求 DevOps 流程中的不同角色之间不能有任何交流障碍。因此,良好的沟通技巧(无论是口头还是书面)对于优秀的 DevOps 工程师来说是必不可少的。
协作能力也很重要。DevOps 是团队合作的开发模式,每个工程师都是团队成员,需要在整个软件迭代过程中支持其他同事的工作。这不仅仅要求我们成为一名优秀的队友,还要在适当的时候给新人一些建议,包括但不限于指导和建议团队成员交付代码的最佳方式、编码时使用哪些工具以及如何测试最新功能。这就要求我们自身也要对这些 DevOps 流程中的必要技能有所了解。
二、熟悉和理解 DevOps 工具链
除了协作和沟通这样的“软”技能之外,DevOps 工程师还必须知道如何使用各种复杂工具协同工作以支持软件交付目标,这是成为一个优秀的 DevOps 工程师所必备的“硬”技能。
DevOps 工程师需要知道如何使用和理解以下类型工具的作用:
版本控制工具
详细地说,集合了代码审查、合并功能的版本控制工具是能让多个开发人员之间完美协作的主要DevOps 工具。由于 DevOps 流程汇集了来自各个部门的专家,所以他们需要了解源代码控制系统,以及系统跟踪不同应用程序中的更改。此外,它还维护应用程序的多个版本。
目前 DevOps 流程中常用的版本控制系统都基于开源分布式版本控制系统 Git,例如 GitHub、Gitee、GitLab 以及各大厂商基于 Git 定制的内源协作工具。
持续集成工具
持续集成(CI)是 DevOps 的关键技能之一,它是构建 pipeline 的重要部分。DevOps 要求运营和开发团队使用统一的系统。因此,持续集成所做的就是将开发人员的代码与 master 合并在一起。有了这样的技巧,就可以有效地合并数据。因此,DevOps 工程师一定要知道如何使用一些常用的 CI 工具,例如 GitHub Action、Jenkins、Bamboo、TeamCity、Travis CI 等。
容器与编排工具
容器作为现代微服务与云原生架构的核心技术,提供了关于 DevOps 的三个基本功能,包括持续的实验、流动和反馈。容器技术的不可变基础设施实现了操作系统层虚拟化,不仅方便运维程序升级和部署,还升华成了向应用代码隐藏环境复杂性的手段,成为推广分布式服务的必要前提。
目前,Docker 仍然是应用最广泛的容器技术,而以容器编排引擎 Kubernetes 为核心的云原生技术栈则是各大互联网企业构建容器技术基础设施的事实标准。
自动化工具
自动化是软件开发过程中必不可少的要素之一。几乎所有的手工任务都可以使用各种脚本语言自动完成。例如,Ruby、Bash、Python、Node、Shell 等等。可以说,使用自动化开发工具已经成为了很多 DevOps 团队加快开发和部署过程的关键。想要成为 DevOps 工程师,掌握自动化工具很有必要。
监控和报警工具
DevOps 持续集成和持续部署的实现离不开持续监控的辅助作用。许多微服务都是由数百个组件组合而成,其中一个服务的故障可能导致整个系统崩溃。当然,手动找到核心故障问题是很复杂和耗时的。其中一个解决方案就是持续监控关键特征,如 RAM 使用、请求数量、异常数量和存储空间。因此,需要根据系统的关键特性设置一个警报系统。例如,当存储空间使用率达到 80% 时应该触发警报,以便 DevOps 运维开发人员可以在整个系统崩溃之前解决问题。
三、具有成熟编码标准的特定编程技能
然编程能力是每个开发者最基本的能力,但 DevOps 工程师在这方面仍然有一些更特殊的要求。
通常来说,DevOps 工程师需要在专精 1-2 门编程语言的基础上熟悉多种语言,例如 Java、JavaScript、Ruby、Python、PHP、Go 等,这是由微服务时代同一系统不同服务可以由不同语言、不同框架实现的特性而决定的。DevOps 工程师至少需要了解这些语言的特性并具备在操作系统环境中编写和调试它们的能力。
四、技术支持和维护技能
优秀的 DevOps 工程师不仅需要开发方面的技能,有时还需要为客户提供维护和技术支持。这意味着 DevOps 工程师应该乐于为内部和外部客户提供支持,并在出现问题时进行故障排除。
「运维工程师」翻译成英语的常用说法是什么?国外的相关职位怎么称呼?
运维工程师(Operations)在国内又称为运维开发工程师(Devops),在国外称为 SRE(Site Reliability Engineering)(网站可靠性工程师)。
什么是DevOps
DevOps(英文Development和Operations的组合)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。
devops概念最早是谁提出的
DevOps 起源于亚马逊和 Google 这样的大型互联网公司
DevOps: Development和Operations的组合
可以把DevOps看作开发(软件工程)、技术运营和质量保障(QA)三者的交集。
传统的软件组织将开发、IT运营和质量保障设为各自分离的部门。在这种环境下如何采用新的开发方法(例如敏捷软件开发),这是一个重要的课题:按照从前的工作方式,开发和部署不需要IT支持或者QA深入的、跨部门的支持,而却需要极其紧密的多部门协作。然而DevOps考虑的还不止是软件部署。它是一套针对这几个部门间沟通与协作问题的流程和方法。
需要频繁交付的企业可能更需要对DevOps有一个大致的了解。Flickr发展了自己的DevOps能力,使之能够支撑业务部门“每天部署10次”的要求──如果一个组织要生产面向多种用户、具备多样功能的应用程序,其部署周期必然会很短。这种能力也被称为持续部署,并且经常与精益创业方法联系起来。 从2009年起,相关的工作组、专业组织和博客快速涌现。
DevOps的引入能对产品交付、测试、功能开发和维护(包括──曾经罕见但如今已屡见不鲜的──“热补丁”)起到意义深远的影响。在缺乏DevOps能力的组织中,开发与运营之间存在着信息“鸿沟”──例如运营人员要求更好的可靠性和安全性,开发人员则希望基础设施响应更快,而业务用户的需求则是更快地将更多的特性发布给最终用户使用。这种信息鸿沟就是最常出问题的地方。
以下几方面因素可能促使一个组织引入DevOps:
使用敏捷或其他软件开发过程与方法
业务负责人要求加快产品交付的速率
虚拟化和云计算基础设施(可能来自内部或外部供应商)日益普遍
数据中心自动化技术和配置管理工具的普及
有一种观点认为,占主导地位的“传统”美国式管理风格(“斯隆模型 vs 丰田模型”)会导致“烟囱式自动化”,从而造成开发与运营之间的鸿沟,因此需要DevOps能力来克服由此引发的问题。
DevOps经常被描述为“开发团队与运营团队之间更具协作性、更高效的关系”。由于团队间协作关系的改善,整个组织的效率因此得到提升,伴随频繁变化而来的生产环境的风险也能得到降低。
DevOps对应用程序发布的影响
在很多企业中,应用程序发布是一项涉及多个团队、压力很大、风险很高的活动。然而在具备DevOps能力的组织中,应用程序发布的风险很低,原因如下:
与传统开发方法那种大规模的、不频繁的发布(通常以“季度”或“年”为单位)相比,敏捷方法大大提升了发布频率(通常以“天”或“周”为单位)
减少变更范围与传统的瀑布式开发模型相比,采用敏捷或迭代式开发意味着更频繁的发布、每次发布包含的变化更少。由于部署经常进行,因此每次部署不会对生产系统造成巨大影响,应用程序会以平滑的速率逐渐生长。加强发布协调靠强有力的发布协调人来弥合开发与运营之间的技能鸿沟和沟通鸿沟;采用电子数据表、电话会议、即时消息、企业门户(wiki、sharepoint)等协作工具来确保所有相关人员理解变更的内容并全力合作。自动化强大的部署自动化手段确保部署任务的可重复性、减少部署出错的可能性。
什么是DevOps工程师
DevOps,是英文开发,发展、开拓的意思。DevOps工程师就是相关行业的技术人才,负责行业内业务、技术的提高和开发工作。是精英中的精英。
DevOps的概念和历史
当你看敏捷的时候,不经意间出现了DevOps这个词,你还在好奇,这是什么的时候,发现规模化敏捷也出现了,这个时候如果你还发现自己对这个词很陌生,那说明你的知识该补齐了,毕竟他们如果总是频繁出现,说明他们的相关性很高。
其实不只是敏捷,在CMMI、ITIL都在提到DevOps,说明我们真的很有必要对它进行一个系统性的了解了。
1.CMMI中提到关于Devops
图 CMMI
2.ITIL中提到关于DevOps
各类管理体系其实都在走向融合,而且都需要DevOps的支持,所以你还觉得自己不需要认真了解下它么?
如果你想快速的系统性的了解DevOps,可以先阅读以下几本书:
《凤凰项目》
《持续交付》
《独角兽项目》
《凤凰项目 一个IT运维的传奇故事》
《DevOps精要》
如果你报考了DevOps Master认证,那你《EXIN DevOps Master WhitePaper》是必读的。
DevOps是对敏捷软件开发与精益生产思想的演进,应用于IT端到端的价值链中,使得业务基于现代信息技术,并通过文化,组织与技术变革来获得更大的成功。
这是《DevOps精要》中关于DevOps定义,定义都有其严谨性,所以往往看完定义让我们摸不着头脑。DevOps其实是英文单词Development(Dev)和Operations(Ops)的组合,为什么要把这两个词组合到一起,最初创造这个词的人目的就是期望开发和运维能够紧密的合作,随后逐步的被扩展和衍生,下面这个“DevOps能力环”是对这种打破部门墙,进行顺畅交付的一个非常经典的一个表达。它强调了IT专业人员(研发,运维,测试)在应用和服务生命周期中的协作和沟通;强调整个组织合作以及交付和基础设施变更的自动化,从而实现持续集成、持续部署和持续交付。
[图片上传失败...(image-c93581-1650555848432)]
DevOps能力环
我们为什么要了解其历史,如果我们只是想用DevOps的一些工程实践,大可不必,但是如果你的团队还对这个概念很陌生,他们不知道为什么要用DevOps,如果是这样的话,我们还是有必要花几分钟来了解下它。
DevOps起源于敏捷,是在2008年敏捷论坛上被提出的,所以现在很多人会认为DevOps是敏捷的一部分,对于到底是谁属于谁,谁包含谁,这些观念大家不必纠结,各大体系都认为自己包括别人。敏捷认为它包括DevOps,而DevOps认为自己是它的衍生。
DevOps的概念在2010年的《What is DevOps》这篇文章中得到了较为完整的描述。DevOps在2013年之后被业界快速接受,源于相关技术的同步发展,2013年,dotCloud公司推出Docker项目,同年,Google推出开源项目Kubernetes,提供了以容器为中心的不部署、伸缩和运维平台,2015年云原生的概念也逐步成熟,他们的发展助推了DevOps的快速发展。
大家可能还听说过DevSecOps,Sec是不是安全,你猜的没错,就是安全和合规性,这是在2016年开始逐步推出的一个理念。关于历史的部分就讲到这里,大家感兴趣的可以再做进一步的了解。
结语:以上就是首席CTO笔记为大家整理的关于devops英文怎么读的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于devops英文怎么读的相关内容别忘了在本站进行查找喔。