一份DevOps工程师职责清单,待你查阅

Tommy744 等级 622 0 0

如果一个组织的开发人员和运维人员是独立工作的模式,实施DevOps就需要对组织进行大的调整。因为,只有具备合适的组织人员,文化和工具来才能成功实施DevOps。根据Atlassian的 DevOps2020趋势显示,实施DevOps的最常见的障碍之一是员工缺乏技能。

什么是DevOps工程师?

DevOps工程师是一位IT专家,应该对开发和运维工作都有广泛的了解,包括编码,基础架构,系统管理和DevOps工具链。DevOps工程师还应该具有人际交往能力,因为他们需要跨团队工作。

DevOps工程师需要对通用系统体系结构有深刻的了解,还必须具有传统开发人员的工具技能和实践的经验,例如源代码控制,代码审查,编写单元测试等。


角色与职责

DevOps工程师的角色在一个组织之间会有所不同,但始终需要将代码发布,系统基础结构配置和管理,系统管理,安全性进行某种组合。

代码发布,包括构建和部署应用程序代码所需的工作。确切的工作取决于许多变量,例如,编写代码所用的语言,已自动化的流水线数量以及系统是内部部署还是云环境。代码发布还需要选择和维护CI/CD工具,或者编写和维护定制的构建/部署脚本。

系统基础结构配置和管理,包括部署和维护托管应用程序所需的服务器,存储和网络资源等。对于拥有本地资源的组织,这可能包括管理数据中心中的物理服务器,存储设备,交换机和虚拟化软件。对于混合或完全基于云的组织,这通常指的是管理相同的虚拟实例。

传播DevOps方法,通常被低估或被完全忽略,但是可以说是DevOps工程师最重要的角色。向DevOps文化的转变,可能会给团队成员带来或多或少的不适应。作为DevOps专家,应由DevOps工程师在整个组织中帮助传播DevOps方法。


DevOps工程师技能

DevOps工程师所需的技术技能,将根据所在的团队结构,技术和工具集而有所不同。但是,强大的沟通和协作技能至关重要。

沟通与合作

对于DevOps工程师而言,与团队成员,部门经理或客户进行有效的沟通和协作非常重要。这些所谓的“软技能”通常被忽视和低估,但是DevOps的成功很大程度上取决于沟通反馈的质量和数量。

系统管理

DevOps工程师需要具有系统管理方面的经验,例如调配和管理服务器,部署数据库,安全监控,系统补丁以及管理内部和外部网络连接。

使用DevOps工具的经验

使用正确或合适的工具对于DevOps的实践至关重要,因此DevOps工程师必须了解并能够使用多种工具。这些工具涵盖了从基础架构搭建、监视、和产品或服务运维的DevOps生命周期。

配置管理

DevOps工程师要具备使用Chef,Puppet或Ansible等一种或多种配置管理工具的经验。许多组织已采用这些或类似工具来自动化管理系统环境,例如部署新系统或将安全补丁应用于已经运行的系统。

容器与容器编排

通过容器化,该应用程序的代码及其运行时环境被捆绑在同一个镜像中。这使得传统的配置管理工具变得不必要。但是,管理容器也带来了挑战,使用“容器编排”工具(例如Docker Swarm或Kubernetes)的经验也成为DevOps工程师必不可少的技能。

持续集成和持续部署

持续集成和持续交付(CI/CD)是DevOps软件开发方法的核心实践,并有许多可用工具来支持。任何CI/CD工具的最基本功能是自动化构建,测试和部署软件的过程。

DevOps工程师需要配置和部署一个或多个CI/CD工具的经验,并且通常需要与其他开发团队紧密合作以确保有效地使用这些工具。

系统架构和配置

DevOps工程师应具有设计,配置和管理本地或云中的计算机生态系统的能力。要了解基础架构即代码(IaC),还要具备将DevOps软件开发中的最佳实践应用于云基础架构资源的能力。DevOps工程师应了解如何使用Amazon Web Services(AWS),AWS CloudFormation或Terraform在云中为系统基础架构建模。

熟悉编码和脚本

许多传统的系统管理员都有编写Shell脚本以自动执行重复任务的经验。DevOps工程师不仅应该编写自动化脚本,还应该了解高级软件开发实践以及如何实施敏捷开发实践。

团队协作技巧

不管具体的组织结构如何,跨团队协作都是有效的DevOps战略的基本组成部分,DevOps工程师都应在整个组织中与许多不同的人一起工作。

例如,DevOps投资中最有价值的回报之一就是能够为开发人员提供更快的反馈。DevOps工程师也通常必须与QA合作,以提高测试方法的速度,功效和输出。

同时,开发人员在努力改善构建和部署应用程序代码的时,也需要DevOps工程师的支持。


DevOps团队:其他的角色和职责

DevOps传播者

这是一名DevOps专家,他在整个组织内促进和开发DevOps的实践。DevOps宣传人员通常具有强大的技术背景,但该角色的重点是人际沟通和流程改进。

变更顾问委员会

尚未过渡到DevOps或仍处于过渡阶段的组织可能会有一个单独的小组,称为变更顾问委员会(CAB)或一个单独的软件发布经理角色。

此类角色的目的是确保发布到生产环境中的任何应用软件均符合质量和安全标准,并获得相应的管理批准。

自动化专家

每位DevOps工程师都应具备自动化方面的专业知识,这可能就需要一个专注于管理CI/CD等自动化工具的人。

软件开发人员

在大多数情况下,软件开发人员是指编写前端或后端应用程序代码的团队成员。在敏捷思维兴起之前,这些人被描述为“计算机程序员”。

质量保证

质量保证(QA)团队负责发现软件故障。质量检查工程师历来专注于手动测试应用程序代码,以确保它不会发生异常(“烟雾测试”),不会与现有功能(“回归测试”)或与任何其他新功能(“集成测试”)冲突。

组织越来越多地雇用测试工程师来补充或替换手动测试人员。SDET致力于在将新的应用程序代码投入生产环境之前对其进行测试。但是,与其专注于测试软件,不如编写自动化测试代码。

安全工程师

不把安全性和合规性问题完全集成到项目计划和开发流程中的组织,通常会拥有一个负责安全性的个人或团队。事实证明,这是不好的,因为它使安全性成为事后考虑的问题。要保护软件的安全性要比安全性的设计,困难得多。


超越单一角色

DevOps是一种文化变革,新的管理原则以及使用技术工具的实践。DevOps工程师是DevOps转型的核心,必须具备广泛的技能来促进这一变化。然而,大多数组织将不仅需要一名DevOps工程师,而且需要全栈工程师和专家的相互配合协作以实施DevOps并改善软件开发生命周期。DevOps工程师可帮助解决各种孤岛,以促进不同专家之间以及整个工具链之间的协作,以实现DevOps的预期效果。

疑问链接:https://dzone.com/articles/how-a-devops-engineer-facilitates-devops

本文转自 https://www.kubernetes.org.cn/9004.html,如有侵权,请联系删除。

收藏
评论区

相关推荐

DevOps简介
DevOps 是一个完整的面向IT运维的工作流,以 IT 自动化以及持续集成(CI)、持续部署(CD)为基础,来优化程式开发、测试、系统运维等所有环节。DevOps的概念DevOps一词的来自于Development和Operations的组合,突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建、测试、发布更加快捷、频繁和可靠。
DevOps与CICD的区别 及 docker、k8s的CICD思路
1\. DevOps简介DevOps 就是开发(Development)、测试(QA)、运维(Operations)这三个领域的合并。image.png为什么要合并这三个领域?主要是开发和运维的脱节。DevOps是一种思想、一组最佳实践、以及一种文化。DevOps落地实施,从组织架构、设计人员、流程、人员分工、人员技能到工具,变化
基于k8s的DevOps实践之路
原标题:基于k8s的DevOps实践之路很多快速发展的公司都面临着一个巨大挑战:在需求不断动态横向扩容的同时继续保持系统的高可用性。如何有效解决这一问题,Kubernetes(k8s)应运而生。k8s以运行可扩展工作负载而闻名,它可以根据资源使用情况调整工作负载。白山科技云分发团队基于多年的DevOps实践经验,在白山会运维日第三期与Thoughtworks
SRE和DevOps值得关注的十大开源项目
构建可扩展且高度可靠的软件系统是每个SRE的最终目标。在SRE/DevOps领域中,有大量出色的开源项目,每个项目都有新颖而激动人心的解决方案。在本文中,我们将会介绍一些在监视,部署和维护领域最受欢迎的开源项目。 1\. Cloudprober可以主动跟踪和监视应用程序,并帮助你提前发现故障。它使用“活动(active)”监视模型来检查你的组件是否按预
一份DevOps工程师职责清单,待你查阅
如果一个组织的开发人员和运维人员是独立工作的模式,实施DevOps就需要对组织进行大的调整。因为,只有具备合适的组织人员,文化和工具来才能成功实施DevOps。根据显示,实施DevOps的最常见的障碍之一是员工缺乏技能。什么是DevOps工程师?DevOps工程师是一位IT专家,应该对开发和运维工作都有广泛的了解,包括编码,基础
CODING 受邀参与 DevOps 标准体系之系统和工具&技术运营标准技术专家研讨会
2019 年 5 月 24-25 日,国内领先的一站式 DevOps 解决方案供应商 CODING 作为腾讯云的深度合作伙伴,受邀参加在成都举行的由 TC608 云计算标准和开源推进委员会主办,中国信息通信研究院牵头,高效运维社区支持,DevOps 标准工作组负责组织的 DevOps 标准体系之系统和工具 & 技术运营标准技术专家研讨会。 在《研发运营一体
DOIS 2019 DevOps国际峰会北京站来袭~
DevOps 国际峰会是国内唯一的国际性 DevOps 技术峰会,由 OSCAR 联盟指导、DevOps 时代社区与高效运维社区联合主办,共邀全球80余名顶级专家畅谈 DevOps 体系与方法、过程与实践、工具与技术。 会议召开时间:2019-07-05 08:00至 2019-07-06 18:00结束 会议召开地点:北京 主办单位:DevOps
DevOps 初学者宝典
**什么是DevOps** 随着软件发布迭代的频率越来越高,传统的「瀑布型」(开发—测试—发布)模式已经不能满足快速交付的需求。2009 年左右 DevOps 应运而生,简单地来说,就是更好的优化开发(DEV)、测试(QA)、运维(OPS)的流程,开发运维一体化,通过高度自动化工具与流程来使得软件构建、测试、发布更加快捷、频繁和可靠。 ![DevOps
DevOps 标准及中国 DevOps 技术力量亮相香港
2019年5月22~23日,香港会展中心,DevOps 时代社区携 DevOps 标准首次亮相香港,社区还邀请了四位 DevOps 专家共同参加 Cloud Expo 香港站 DevOps Live ! 专场并做精彩分享。 > 全球首个 DevOps 标准,即《研发运营一体化(DevOps)能力成熟度模型》,由中国信息通信研究院牵头,云计算开源产业联盟
DevOps第一讲:什么是DevOps
DevOps概念早先升温于2009年的欧洲,因传统模式的运维之痛而生。 ![](https://static.oschina.net/uploads/img/201707/22121051_DBdW.jpg) DevOps是为了填补开发端和运维端之间的信息鸿沟,改善团队之间的协作关系。不过DevOps其实包含了四个部分:产品、开发、测试和运维。 !
DevOps简介
DevOps 是一个完整的面向IT运维的工作流,以 IT 自动化以及持续集成(CI)、持续部署(CD)为基础,来优化程式开发、测试、系统运维等所有环节。 **DevOps的概念** DevOps一词的来自于Development和Operations的组合,突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建、测试、发布更加快捷、频繁和
DevOps能否在Kubernetes攻击中幸存?
![](https://oscimg.oschina.net/oscnet/f9eca4ac5fa4f61c8780f52c71e764f265a.jpg) ![](https://oscimg.oschina.net/oscnet/5acadbba756cf65263ffc4d9a1d8d62e52a.jpg) **导语** DevOps能否
Docker,Kubernetes在DevOps中的作用
![](https://oscimg.oschina.net/oscnet/52f78a229f22fd2d7881a2c9bab59246748.gif) 大纲 -- > * DevOps是什么? > > * 为什么我们需要DevOps? > > * DevOps与敏捷开发有何不同? > > * 重要的De
K8s对企业有多重要?听各国的DevOps研究所大使怎么说
**导语:**19位来自全球各国DevOps研究所大使的见解,值得细品。 正文 近日,DevOps研究所首席大使Helen Beal对DevOps大使组进行了投票以探讨企业Kubernetes为什么如此重要,进一步了解来自世界各地的DevOps从业人员的有见地贡献,下面就请查看各位DevOps研究所大使的见解。 ![](https://oscimg.o
Kubernetes 如何打赢容器之战?
![](https://oscimg.oschina.net/oscnet/e32673f39787123c39aa0be9e10731fbafc.jpg) Kubernetes 近几年很热门,在各大技术论坛上被炒的很火。它提供了强大的容器编排能力,与此同时 DevOps 的概念也来到大家身边,广大的开发同学也能简单地运维复杂的商业化分布式系统,打破了传统