将知识融入您的DevOps实践中

发布于:2021-01-07 10:23:08

0

166

0

DevOps 开发运维 DevOps管道

您如何建立DevOps管道?从DevOps从业人员的角度来看,许多组件都是显而易见的:您需要诸如持续集成服务器,测试自动化框架,自动化部署平台和生产监控工具之类的工具。这些工具可帮助您在连续交付管道中移动和管理代码。

但是有效地处理代码只是DevOps挑战的一部分。设置DevOps管道时,还有一个容易忽略的要求:知识管理。如果没有解决方案来交流和管理团队使用代码所需的信息,则整个DevOps策略将失败。

毕竟,由于持续交付和无缝协作是DevOps的核心目标,因此只有有效地管理知识,您才能实现DevOp的全部承诺。

让我们看看将知识构建到DevOps中意味着什么。

知识与开发运维

首先,让我定义在DevOps上下文中知识的含义。

知识是指组织内部某人可能需要了解的所有内容,才能在DevOps交付链中发挥作用。其中包括诸如如何配置软件环境以及如何部署工具(通常在文档中找到的数据类型)之类的信息。

但是,DevOps知识包括其他类型的信息,这些信息很难集成到常规文档数据库中。就像是谁负责执行哪些任务,您的组织优先处理哪些工作负载(例如,如果您缺乏资源,应该优先考虑哪些应用程序)以及未来部署或扩展的计划之类的事情。

这些知识不是严格的技术知识;它具有社会和文化元素,对于保持DevOps管道顺畅运行至关重要。

将知识整合到DevOps中

您如何确保组织的所有知识都包含在DevOps管道中?考虑以下策略和解决方案。

超越文档思考

常规的文档数据库(例如Linux手册页)非常适合记录具体的技术细节,例如哪些命令行标志对特定工具起作用。

但是,文档数据库并不是将知识纳入您的整体DevOps实践中的整体解决方案。它们并非旨在记录社会或文化信息,并且缺乏协作元素。它们的搜索也不是特别容易,特别是如果您要查找有关广泛主题的信息(例如,要优先考虑哪些工作负荷),而不是如何配置或使用特定工具。

专注于合作

为了建立在我之前关于协作的观点的基础上,您利用任何在DevOps实践中积累知识的解决方案都应该允许您的团队成员进行协作。换句话说,您的团队应该能够交流和提出问题,因为他们共享知识。知识不应被视为静态实体。

即时消息工具和论坛是实现协作知识共享的一种方法,但请注意其缺点。即时消息缺乏永久性,一旦线程增长了几条以上的消息,就很难在传统论坛上进行协作和关注。

更好的解决方案是让您的DevOps团队以一种总是在其中的最佳答案始终是最佳答案的方式来提问和分享答案,甚至在讨论进行数月或数年后也很容易找到。

汇集不同的团队

有效地进行DevOps需要结合许多不同类型的知识和专长。开发人员需要能够与QA团队,IT团队甚至可能是非技术人员(例如营销人员(他们可能会帮助销售您的DevOps团队提供的软件))和律师(需要咨询的人)有效地共享信息。与合规性相关的问题)。

因此,您的DevOps知识管理实践必须使所有这些小组都易于记录和共享信息。他们一定不需要特殊的专业知识,并且应该使您的团队中的任何人都容易找到信息。由于这些原因,像Git这样的技术知识共享和协作工具(如果您是开发人员,那会很好,但对于大多数其他人则更难使用)通常不是DevOps的良好知识管理解决方案

使知识连续不断

连续性(即代码和信息的不断流动)是DevOps的关键要素。任何会中断连续性的事情都会削弱DevOps流程的速度和敏捷性。

因此,您的知识共享和协作工具也必须是连续的。它们必须允许您的团队保持最新知识(毕竟,您今天选择遵循的优先级或最佳实践明天可能会发生变化),并在出现问题时迅速进行沟通。难以更新的工具,或仅某些团队成员具有使用技能的工具,不能保证持续的知识共享。

结论

有效的知识管理与进行有效的代码管理一样,对于进行DevOps至关重要。尽管传统知识管理工具通常不适用于瞬息万变的DevOps世界,但使团队中的每个人都易于持续高效协作的工具将有助于填补这一空白,从而使您能够将知识融入所有DevOps实践。