正确认识DevOps

2023-03-13  微不足道 

什么是DevOps?
DevOps(development和operations的组合词)是一组过程,方法与系统的统称,用于促进软件开发(应用程序或软件工程)部门,技术运营部门和质量保障(Quailty Assurance,QA)部门的相互沟通,协作与整合。从事软件行业的同事慢慢认识到:为了按时交付软件产品或服务,开发人员和运营人员必须紧密合作。企业必须要重视起开发人员和运维人员的沟通,并通过自动化流程使得软件的构建,测试和发布更加快捷和可靠。

这些年来,DevOps在不同的行业和不同领域/规模的企业实施落地,取得了还不错的实践效果。对于企业的运营和IT运行来说,DevOps最早提出的一些理念已经不能满足需求,颠覆式的发展和变革应运而生。提升组织级的效能和质量已经成为DevOps发展阶段中能力输出的新路线。所以,DevOps的发展除了较早的促进了部门沟通以外,还将应用的全部生命周期管理提升到了一个更加全新的高度。同时,相对应的流程驱动也随着数据的衍生能力向前推进,实现了技术运营和价值交付的高度协同目标。
相对于企业级的用户,什么是DevOps,DevOps的核心目标又是什么,又应该具备什么样的能力这三个问题必须讲明白,这的确关系着企业级实践及落地。通过向专业人士咨询和经过讨论之后,得出了不同的反馈,但是核心价值基本不会变,那就是如何通过DevOps实现最终的价值交付和更优的输出。
DevOps的发展路径

DevOps工具的选择
在工具的选择方面,经过大量的实践和调研,提出了工具选择的方法论。
主要包含四个方面:
1.工具的驾驭
在DevOps选择工具过程中,一直存在一个误区,认为工具的选择和实践是两个事情,导致一种后果就是工具和DevOps实践的分离。在DevOps文化中,通过沟通和交流有利于价值的输出,更好的输出优质的产品和服务。
我们在选择工具的同事,工具的驾驭主要体现在现有团队的规模及团队成员的技术能力;在DevOps不同的阶段,选择不同的工具做好衔接的准备;就工具而言,倾向于使用自动化程度较高的工具这样有利于掌握工具的使用。
2.工具的价值
工具的价值和软件开发的价值是互相依赖的,只把DevOps当成一种开发模式的话,那么DevOps在价值输出时只是一个不可缺的载体。当交付风险管理,需求管理,复盘和监控成为价值输出的一部分时,就该考虑工具的选择和价值是不是成正比。
1.工具的赋能
对于工具的赋能来说,这是一个崭新的命题。IT团队应具备相应的职能。运维的核心职能是维护系统的稳定,更加精确一些是保证产品的稳定。然而项目管理的核心职能是推进产品尽快上线,准确的说是识别产品交付过程中的风险。
2.功能的本质
从工具的本质来理解为是迭代。所以在选择工具的时候,注重团队负责产品交付生命周期到多个团队共同负责多个产品的交付生命周期,通过这种转变可以带来新问题,高度的自动化,敏捷的工具支撑和无缝衔接的协作方式来考验工具的迭代能力和解耦方式。
我们可以使用一款工具https://www.eolink.com/?utm_source=ceshiwo&utm_content=ceshiwo017来实现在线解决方案:
DevOps与企业和IT团队的关系
与企业紧密关联
企业的发展目标可以分解为以下4个方面进行说明:
1.企业对社会的贡献目标:主要体现在产品效应和产品效益上;
2.企业的市场目标:企业产品的创新水平和产品快速上线能力,以及市场的占有率是成成市场目标的重要手段;
3.企业的开发目标:通过扩大规模,增加资产,流动资金,提高生产能力,产量及销售量,以及提高自动化程度来实现;
4.企业的利益目标:在经营过程中,可以通过“降本增效”实现企业的利益目标的最大化;
DevOps在企业发展过程中的更偏向于“锦上添花”,而不是“绝处逢生”。通过对DevOps的方案实施落地过程中,管理者首先要注意,企业不管是在经历业态转型还是数字化转型,都需要先进的信息技术来提升自身的管理水平,增加企业的核心竞争水平,才是DevOps提供的价值和能力的体现。
与IT团队紧密关联
IT团队可以理解为是DevOps企业级实践的载体。相对于企业来说,日常经营离不开IT团队的配合和支持。简单来说,IT团队是企业实现是否持续经营的一种必要的手段;在企业日常经营中,IT团队需要具备两种核心能力:
1.需要以企业的战略目标为导向,通过信息化和数字化手段对企业战略进行支撑;
2.需要以信息化为指导,建设信息和数字化的基础设施,应用系统为企业提供技术保障;
IT团队与DevOps的紧密关联来自于IT团队的自我改革。在大多数企业中,IT团队的压力来自于两种情况:内部压力和外部压力;内部压力主要为:内部管理和协调,外部压力主要为:业务部分的服务需求。当外部压力需要内部管理来释放时,DevOps的原生能力不能覆盖所有。直到今天,越来越多的企业将目光锁定DevOps,利用它来提高效能,这方面的主要实践来自于大型互联网企业。
伴随着规模和能力的不断变化,就出现了职责的分工和工作流的衔接,比如:需求管理,产品管理,架构管理,开发管理,测试管理,运维管理,安全管理,和交付管理等。在交付的链路上,往往在跨部门配合的同时也存在职责以外的矛盾。
所以在IT团队的内部,DevOps就需要实现IT服务流程的贯通,有能力解决各种矛盾。这可以简单的理解为对DevOps原生理念的一个拓展。这里的重点主要体现在跨部门和跨团队的线上协作,同队对DevOps的理念,实现交付流水线的信息传递。
使用Eolink工具来举例说明一下:
使用传统的方法进行系统上线部署的时候,可以需要一个很长的说明文档,而在DevOps的方法进行系统上线部署的时候,通过标准运行环境的选择以及一些相关配置,部署流程的编排就可以实现自动化部署。另外,对于这样的部署方法,操作人员里可以很简单的理解,机器可以快速执行,部署的过程可以被追溯和审计。
![]


DevOps总结来说?
DevOps到底是什么?浅显来分析,DevOps是指“开发和运维一体化”,这也是DevOps最基本的一种能力,可以通过工具辅助开发人员和运维人员的一部分工作从而减少成本。但是通过我们在深入的了解了DevOps与企业和IT团队的密切关系之后,我们很快发现,DevOps其实是一种方法,通俗理解为面向团队效能和质量管理的一套方法论。在项目和需求之间,DevOps可以精确的实现过程控制和风险管理,在软件开发和测试之间,DevOps帮助开发团队和测试团队在保证质量的前提下提高交付效率,在运维领域,DevOps提高了产品发布的效率和线上质量反馈的速度。
同时,利用交付链路工具可以是数据实时快速落地,通过度量来管理过程,通过反馈来优化结果,最终才能实现组织级的效能和质量的提升。

92°/921 人阅读/0 条评论 发表评论

登录 后发表评论