0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

DevOps工程师是干什么的

工程师人生 来源:网络整理 作者:工程师吴畏 2018-09-24 16:37 次阅读

我们之前已经听到很多谈论DevOps和DevOps世界的最新趋势的事情,但是就DevOps工程师本身,到底干些什么呢?

在最纯粹的存在形式上来说,DevOps工程师是为了加快开发和运营团队之间的

交付效率而存在的桥梁。

DevOps工程师在软件生命周期中能带来什么?

在传统的交付周期中,软件开发人员会在经年累月的编写代码后,将软件交给QA团队进行测试,然后将最终版本交给运营团队部署。这三个阶段,即开发,测试和部署之间是缺乏协作的。

开发编写的代码最终并交给运维团队,然后运维团队来解决代码部署过程中出现的问题,或者将代码交还给开发团队来解决遇到的问题。所有这些都导致了软件开发过程的放慢。

但是在DevOps模式下,这三个团队不再孤立。大多数时间内,从开发、测试、部署到运营,相关的工程师合并成一个团队并且贯穿整个软件生命周期,开发不再限制于某一个技能而是一整套技术解决方案。当然安全团队也因此有可能在这个软件生命周期中与开发和运营更紧密地工作,及早发现安全问题。

为什么DevOps工程师的角色各不相同呢?

DevOps工程师并不是什么新鲜事物。比如系统工程师,自动化工程师,软件工程师,Linux工程师等等工程师都能成为DevOps工程师。

但是,DevOps工程师的工作性质因组织而异。比如有些是在基础设施自动化和维护中发挥作用,而在另外一些组织中却是在整个交付链中发挥作用而已。

DevOps工程师的角色各不相同,因为他必须通过克服传统协作障碍与开发和运维人员进行协作。而不同的组织有不同的障碍,因此其扮演的角色自然不同。

DevOps工程师日常工作中最重要的两个方面

尽管DevOps工程师的角色各不相同,但几乎所有DevOps工程师每天都会触及两件事 - 自动化和持续集成。

自动化:

与维护基础设施有关的大部分任务仍然是手动的。公司更喜欢使用传统的经过验证的方法,而不是自动化相同的流程,因为他们不想冒任何风险。但事实是自动化任务将有助于更快速地开发和部署软件,这意味着能加快公司从客户处赚取利益的速度。

为了阐述清楚这一点,我们可以考虑下面这个情况,系统工程师如果每天按要求手动备份所有服务两次,那么他可以通过在云端设施上编写脚本来完成这项工作而不是浪费时间来完成这项工作。通过自动执行备份过程,您可以让系统工程师更专注于重要的事情,例如对由于某些因为虚拟机问题而需要关闭的服务进行故障排除。手动执行相同的操作会导致您的系统工程师的负担过重,而这些工程师的效率将大大降低。这只是一个非常简单的例子,通过不实施自动化来阐述资源浪费的概念。

DevOps因此可以作为敏捷的扩展,因为它可以降低由于开发人员、QA和运维团队之间的非协作而可能出现的风险。DevOps通过认识到高质量的软件开发要求包括质量保证和运营专家在内的所有利益相关方的持续参与和反馈,扩大了敏捷原则的范围。

有很多事情可以通过自动的方式来完成,比如在发布新的补丁的时候更新ApacheWeb服务器,更新部署在服务器上的开源软件的版本。

DevOps工程师可以通过创建脚本环境自动完成配置服务器的过程。您可以在一个节点上运行脚本,但如果在数千上百个节点上手工运行相同的脚本将变得不切实际。脚本在这里就变得不再是一个可扩展的解决方案了。

因此,需要以可扩展的方式跨大量节点自动化进行软件配置、配置管理和应用程序部署。这是配置管理工具(如Chef,Puppet和Ansible)在DevOps世界中派上用场的地方。

持续集成:

关于DevOps的另一个重要方面是在软件开发实践中实施持续集成(CI), CI允许开发人员不断更新自动化构建、测试使用到的资源库。

持续集成系统通常包含一个可以持续监控版本控制系统的工具。只要检测到对版本控制系统的更改,系统就会自动构建并测试您的应用程序。如果构建或测试没有通过的,系统会立即通知开发人员解决问题。

持续集成可确保持续交付,因为所有代码更改都会不断部署到构建阶段之后的测试和生产环境中。

通过持续集成,开发人员可以从人工任务中解脱出来,提高工作效率,因为现在在CI中以自动化方式完成自动构建任务,并且由于更加频繁的测试,错误和bug更容易找到和解决,从而最终用户的更新可以更快,更频繁地进行。

有不同的产品和工具可以帮助您在组织中实现持续集成。有些工具可让您将CI 服务器托管在您自己的网络基础架构中。最受欢迎的是从Sun的Hudson项目更名为Jenkins的工具。

还有一些其他托管的CI产品,如完全托管在云中的CircleCI和Travis CI。这些托管的CI产品越来越受到小组织的欢迎,因为它使工程团队能够尽快开始持续集成。

总结

DevOps工程师扮演的最重要角色是弥合软件开发和运营团队之间的差距,提高软件交付速度。

尽管DevOps工程师在组织中的角色各不相同,但有两个共同点:自动化和持续集成。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1566

    浏览量

    68445
  • devops
    +关注

    关注

    0

    文章

    112

    浏览量

    11998
收藏 人收藏

    评论

    相关推荐

    LM318 COMP管脚是什么引脚,干什么用的?

    LM318 COMP 管脚是什么引脚,干什么用的,PSPICEFORTI 里面没有318的COMP管脚在怎么应用
    发表于 07-31 07:45

    正是拼的年纪|65岁电子工程师上班VLOG #65岁退休 #电子工程师 #搞笑 #上班vlog

    电子工程师
    安泰小课堂
    发布于 :2024年07月25日 11:31:02

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试题

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    美国云服务器是干什么的

    美国云服务器主要用于提供计算资源、托管网站、应用程序以及存储数据等。很多用户想要了解美国云服务器具体是干什么的,rak部落小编为您整理发布美国云服务器是干什么的。 美国云服务器是一种**基于云
    的头像 发表于 04-10 10:16 407次阅读

    美国云服务器是干什么的

    对于美国服务器是干什么的,相信很多小白用户不是非常了解,接下来小编就为您整理发布美国云服务器是干什么的相关资讯,希望对您有帮助。
    的头像 发表于 02-19 09:53 414次阅读

    云服务器是干什么的

     云服务器是干什么的?很多小白用户会有疑惑,今天小编为您整理云服务器是干什么的相关资料,希望对您了解云服务器是干什么的有帮助。
    的头像 发表于 02-18 09:58 1450次阅读

    什么是温补晶振?温补晶振是干什么的

    什么是温补晶振?温补晶振是干什么的?  温补晶振是指对晶体振荡器进行温度补偿的一种技术。晶体振荡器是一种电子设备,通过驱动晶体谐振频率上的机械振动来产生稳定的电信号。它在现代电子设备中广泛应用,如
    的头像 发表于 01-23 16:42 1054次阅读

    云服务器是干什么的?服务器的主要功能有哪些?

    云服务器是干什么的,主要功能是什么?相信很多技术人员已经很了解,但是对于其他行业的人群云服务器又有什么用呢?拥有云服务器有什么用处呢,RAKsmart小编今天来为您做详细的解答。
    的头像 发表于 01-09 09:48 695次阅读

    LCR数字电桥的原理是什么?LCR数字电桥是用来干什么的

    LCR数字电桥的原理是什么?LCR数字电桥是用来干什么的? LCR数字电桥原理的详解 LCR数字电桥是一种测试电路中被称为LCR元件的电感、电容和电阻的值的仪器。通过测量该元件在不同频率下的电压
    的头像 发表于 12-21 15:37 2575次阅读

    请问AD2S1210中DOS失配指的是什么?

    工程师你好,请问AD2S1210中DOS失配指的是什么?手册上说是输入信号最大和最小幅度的差值超过失配阈值,这个差值是正弦或余弦信号在某一点的波动值吗还是峰峰值?还有,DOS复位最大阈值和为什么比
    发表于 12-08 08:24