开发人员的备忘单

发布于:2021-01-31 00:00:13

0

36

0

开发人员 备忘单 devops

改变从来都不容易。然而,越来越多的公司对采用DevOps模型感兴趣。在这篇文章中整理了一些工具和实践,这些工具和实践可以帮助你的团队成为一个精简、高效的DevOps机器。

随着软件组织交付创新产品和快速更新产品的压力不断增加,在我们的软件开发生态系统中,越来越多的人采用DevOps模型来提高效率和敏捷性。DevOps承诺将帮助团队按时完成计划,而不会影响质量,即使绕开传统上会在流程结束时进行的较慢的手动测试和错误修复。

对于组织而言,改变绝非易事,将DevOps纳入开发生命周期需要在多个层次上进行重大过渡,挑战团队以使其适应新的组织结构。需要采用新流程,开发新技能,并且必须集成新工具。

正如敏捷管理部门的业内资深人士所说,DevOps是“一个跨学科的实践社区,致力于研究大规模构建,发展和运行快速变化的弹性系统”,这需要整个组织进行真正的改变,而不是令人惊讶的是,大多数人都反对这样做。但是,如果我们忽略了“组织文化”或“突破壁垒”的大肆宣传,那么开发团队中的DevOps实际上就是实现我们大多数人已经开始采用的方法和实践。

我们整理了一些工具和实践的备忘单,这些工具和实践可帮助您的团队成为精简的DevOps机器。

持续集成

持续集成(CI)已成为软件开发环境中的基本过程,这是至关重要的关守,它可以帮助软件团队防止代码错误被集成到其项目中并管理代码质量,以防在生产结束前成本上升。撕毁并更换Ops飙升。这就是为什么选择正确的CI服务器以最好地支持您的团队流程如此重要的原因。

任何开发人员都会告诉您,有一个CI服务器要比其他所有服务器都要好,并且市场上的各种工具证明有很多选择可供选择:

它应该是开源的还是专有的?它的可配置性如何?有没有可用的文档?支持的程度如何?

问题还在继续。

Jenkins将向一些经验丰富的CI Server用户发誓,而其他一些用户已经部署了VSTS,再也不会高兴了。然后是Travis-安装起来应该很容易!或Atlassian-它与Jira集成!到目前为止,还没有一种工具能够选中所有复选框。为组织选择正确的CI工具的最佳方法是根据平台,工具,组件,基础结构和流程以及已制定的策略,确定组织的特定需求,并找到CI满足这些要求的服务器。

软件组成分析

对于我们大多数人来说,第三方和开源组件是不断赠送的礼物。数据显示,当今大多数应用程序仅包含10%– 20%的专有代码,以及80%-90%的开源和第三方组件。我们倾向于忽略的是所涉及的风险:每16个开源下载请求中就有一个是具有已知漏洞的组件。DevOps完全是关于测试自动化的,但是创新的应用程序安全性工具(如SAST,DAST和IAST)可用于专有软件,不能涵盖开源和第三方组件。

这些要求我们采用一套新的安全工具和实践,与专有代码所用的不同。这就是软件组成分析(SCA)工具的用处。除非您使用自动化工具,否则即使不是不可能跟踪,开源软件中的漏洞也很难解决。SCA工具可以连续自动地分析应用程序的源代码,模块,框架和库,以审核开源和第三方软件组件。SCA使团队能够在将产品和库存发布到生产中很久之前就发现它们中的已知安全漏洞或许可问题。

团队合作使梦想成真

好消息是,除工具和流程外,DevOps还与人有关。当团队找到一种汇集他们的经验和技能的方法时,结果通常与任何神奇的自动化部署工具一样有价值。在过去,开发和运营团队坚持自己的职责,拥有不同的优先级和目标集。不再。采用DevOps方法要求不习惯团队合作的团队找到一种合作方式,以便他们能够成功创建和维护开发生命周期,以快速,安全地交付创新的高质量产品。

这意味着所有参与者(我们正在寻找开发人员,运营和安全专家)都需要尊重其同行带来的专业知识,并学习如何共同努力以确保流程和最终产品能够满足每个人的需求标准。XebiaLabs客户成功副总裁TJ Randall警告公司,成功采用DevOps的最常见障碍之一是接受“发展不仅是一个团队,而是很多团队”。他说,根据他的经验,当团队不进行沟通和合作时,“运营部门努力将活动统一成一个一致的,可重复的过程。很难弄清楚如何获得不同的孤岛,以同意看别人在做什么,并向他们解释为什么值得他们花时间去做。”

DevOps和软件团队

当您考虑一下时,开发人员和DevOps的态度并不是真的相去甚远。开发人员四面楚歌,渴望创新,可以快速学习新语言并在必要时采用新方法。尽管没有人希望他们的日常工作被打乱,但我们在这里建议的更改已帮助开发团队迅速交付,同时消除了繁琐的手动测试和最新的通宵修复。最后要记住的一个重要提示是,改变不是一overnight而就的,而是一个过程。不要被流行词吓倒。

查看您的团队和正在使用的实践,并查看正在使您减速的因素。不要追随每一个新奇的趋势,而要与您信任公司和专业社区的专家交谈。了解哪些安全和操作方法可以升级您的项目,并且最容易采用和从那里开始工作。坚持这些课程,您可以成为DevOps忍者,然后才能说出自动化的软件交付管道。