DevOps面临的最大挑战

发布于:2021-02-16 00:00:17

0

69

0

持续开发 持续集成 devops

DevOps将协作和通信置于软件开发的最前沿。但是,尽管所有这些都强调和谐的工作流程,但是在整个行业中如何使用它却存在很多分歧。Ingineering.IT创始人,首席和思想挑战者Jeff Sussna(@jeffsussna)使我们可以洞悉人们在哪里出了问题,以及他对热门主题PaaS,CD和精益方法的看法。

JAX:您认为“ DevOps”文化中最大的挑战是什么,它们随着时间的变化如何?

Sussna:我认为DevOps面临的挑战与Design Thought面临的挑战相似。两者都是方法或思维方式,而不是方法论。它们都代表了从基于工业实践的组织的转变。我们所有人仍然希望将它们视为我们可以以流水线方式采用的说明性实践,而实际上,它们是改变我们思维方式的挑战。

我认为,围绕DevOps的挑战已经从仅仅理解它变成了理解如何应用而不是采用它。随着该术语变得越来越流行,来自供应商,专家和文献的压力越来越大,将其拉回到旧的概念模型中的压力越来越大。

您是否认为有人为DevOps团队培养了一种真正出色的工作文化?他们怎么做到的?

当我第一次听到“ DevOps”一词时,我是在一家SaaS创业公司工作。我最初的反应是“恩,du,你还能怎么做?” 在初创企业中,每个人都在乎客户,因为他们别无选择。每个人都在乎代码是否有效以及基础架构是否有效,因为他们别无选择。

开发人员和操作人员会面面俱到,有时会睡在彼此相邻的办公室地板上。一切始于共同的使命感和责任感。企业微服务架构可以帮助大型环境中的DevOps,因为它们将庞大的整体式孤岛分成了较小的,连贯的服务团队,这些团队的共同使命是支持客户(企业内的其他服务)。

另一方面,您认为IT组织在设置DevOps时犯的最大错误是什么?

不幸的是,这个问题很容易回答。IT组织在采用DevOps时犯的最大错误是试图使用一种规定性方法或一种大型,昂贵的多合一工具来解决问题。这种方法很容易错过关键任务,即共同的使命感和责任感。

您是否会推荐任何DevOps工具?

我建议每个希望采用DevOps的组织都从Vagrant开始。开发人员,测试人员和管理员都应使用它。这是一个非常简单的工具,具有强大的放大作用,可以使开发人员和管理员开始以相同的方式思考相同的问题。它还有助于在适当的时候启动自动化和持续交付过程:在每个人的桌面上。

什么代表了您的“精益方法”?

精益是一个广泛而深刻的话题,所以我不会尝试提供任何全面的答案。对我而言,精益意味着要不断努力,以最大限度地提高我们交付客户价值的能力,并最大程度地减少这种能力的障碍。障碍可能采取浪费过程的形式,例如需要数天才能完成的手动签核。他们还可以采取浪费时间和能源建设功能的形式,而无需验证其与客户的相关性。

您认为迄今为止,在帮助您塑造“精干心态”方面,最有意义的经历是什么?

我最有启发性的经验涉及将安全测试集成到持续集成过程中。无需进行3个月的编码,而是进入具有多个测试失败修复周期的冗长的安全测试阶段,我们对每个代码检入都进行了安全扫描。当需要进行治理规定的安全阶段门时,我们的应用程序有史以来第一次尝试。额外的前期工作量很小。下游利益是巨大的。也许更重要的是,我们的方法消除了InfoSec与Development之间的对抗关系。

您在博客上说过,您希望改变 PaaS提供商的话语。您想听些什么?

我长期以来一直是PaaS的忠实拥护者。不过,我认为话语需要成熟。当前的讨论倾向于有点“开发与运营”的语调:“ PaaS将开发人员从系统管理员中解放出来”。首先,使我进入PaaS的直觉是,根据我的经验,PaaS可以通过在安全可靠的操作环境中为开发人员提供自由来使双方受益。我想更具体地讨论PaaS如何使参与交付IT服务的所有人受益。

持续交付正在成为一种 新的“规范” -企业在这方面应如何做才能提高自己的能力?

他们应该确保他们了解连续交付的关键特征:小批量,快速失败和脱钩发布。持续交付并不是要用更少的控件将垃圾更快地推向产品。这是通过降低复杂性来提高质量。由于1行代码更改比1000行代码更改更容易进行代码审查,集成测试和诊断生产问题。

具有讽刺意味的是,持续交付会在生命周期的早期失效,从而提高了速度。您发现问题的时间越早,修复它们的速度就越快,更容易且更便宜。最后,由于功能标记之类的功能,IT可以在需要时进行技术发布,而营销则在需要时进行客户发布,因此,持续交付可为企业提供更大的控制权,而不是更少。