DevOps:软件架构师行动指南3.5 运维和DevOps

简介:

3.5 运维和DevOps


讨论完ITIL的核心概念和阶段后,现在我们强调将来传统IT运维和DevOps之间将形成什么样的交互。我们想要传达的信息是,如果认为ITIL是过于“重量级”而不适合DevOps过程,那么这个观点是短视的,并且这个观点将导致要再走过那些ITIL框架中所试图解决的“坑”。

运维的职责是供给硬件和软件、拥有特殊技能的人员、服务级别协议的规格说明和监控、容量规划、业务连续性和信息安全。这些职责的大部分包含在DevOps过程中和过程外。任何关于运维的哪些工作应该纳入DevOps实践的讨论,都必须考虑运维现在正在开展的所有活动,包括功能性活动、个体技能和可用性。影响运维的所有活动是:

硬件供给。虚拟化的硬件可以由开发团队分配或者由更自动化的应用来分配。

软件供给。内部开发的软件将由开发团队进行部署,其他软件则由运维提供。

IT功能供给。就开发团队将负责事故管理和部署工具来说,必须有拥有专业知识的人来执行这些任务。

服务级别协议的规格说明和监控。对于那些特定于某个应用的服务级别协议来说,开发团队将负责监控、评估和响应事故。

容量规划。开发团队负责单个应用的容量规划,而运维团队则负责整体的容量规划。

业务连续性。开发团队负责与应用架构有关的业务连续性的那些方面,而运维团队则负责其他的部分。运维可以为业务连续性提供服务和策略,反过来它们又提供给开发团队使用。

信息安全。开发团队负责涉及某个特定应用的信息安全的那些方面,运维团队负责其余部分。

涉及DevOps工作的人数取决于组织采用了哪些过程。一个组织估算运维团队的20%和开发团队的20%参与DevOps过程。影响不同团队参与度的因素有:

在事故发生时,开发团队作为第一事故响应责任人的范围。

是否有专门的DevOps团队对持续部署流水线的工具负责。

两个团队成员的技能和可用性。

ITIL服务移交和DevOps方法之间的一个差别在于ITIL假设非常大的发布包(需要小心计划、变更管理等)是可行的——与典型的DevOps场景中遇到的高频率的小的发布包相比。Rob Spencer在他发表的一篇博客中建议,将DevOps发布视为“更小规模交付物的并发流”,并给出了表3-3中的示例。

表3-3 发布包示例(改编自R.Spencer的博客)

流 频率 ITIL角色/流程

代码对象的检查、测试和部署 每日 研究和开发管理(R&DM)、服务资产和配置管理(SACM)

针对新的功能需求,知识库更新的创建和测试 每隔1天 SACM、服务验证和测试(SV&T)、知识管理

正式可操作的验收测试 1星期2次 SV&T、服务等级管理(SLM)、业务关系经理(BRM)、应用/技术功能经理

硬件交付物 按需的 R&DM、技术管理

早期生命支持和持续服务改进 每日 持续服务改进(CSI)、SLM、BRM、服务所有者

 

表3-3中的大部分行现在包含在开发流程的生命周期中都可以看作不变量的标准。在DevOps中,这些不变量通常频率远高于ITIL。然而,右边列中的流程和角色来自ITIL,因此将使用那些已证明的方法和流程。尤其是,最后一行包含“早期生命支持和持续服务改进”的即时连接流。假设发布是每天进行的,则早期生命支持阶段实际上是永无止境的。

虽然很多初创公司会认为这种方法太复杂,而更大规模和更成熟的组织则会发现定义DevOps和ITIL之间的关系是有用的,并且这种方法可以提高DevOps接受度和对DevOps的支持。

相关文章
|
4月前
|
运维 Cloud Native Devops
云原生 DevOps 自动化运维 概述
【1月更文挑战第7天】云原生 DevOps 自动化运维 概述
|
2月前
|
人工智能 运维 监控
构建高性能微服务架构:现代后端开发的挑战与策略构建高效自动化运维系统的关键策略
【2月更文挑战第30天】 随着企业应用的复杂性增加,传统的单体应用架构已经难以满足快速迭代和高可用性的需求。微服务架构作为解决方案,以其服务的细粒度、独立性和弹性而受到青睐。本文将深入探讨如何构建一个高性能的微服务系统,包括关键的设计原则、常用的技术栈选择以及性能优化的最佳实践。我们将分析微服务在处理分布式事务、数据一致性以及服务发现等方面的挑战,并提出相应的解决策略。通过实例分析和案例研究,我们的目标是为后端开发人员提供一套实用的指南,帮助他们构建出既能快速响应市场变化,又能保持高效率和稳定性的微服务系统。 【2月更文挑战第30天】随着信息技术的飞速发展,企业对于信息系统的稳定性和效率要求
|
5天前
|
运维 Kubernetes Devops
构建高效自动化运维体系:DevOps与容器化技术融合实践
【5月更文挑战第6天】随着企业IT架构的复杂化以及快速迭代的市场需求,传统的运维模式已难以满足高效率和高质量的交付标准。本文将探讨如何通过结合DevOps理念和容器化技术来构建一个高效的自动化运维体系,旨在实现持续集成、持续部署和自动化管理,提升系统的可靠性、可维护性和敏捷性。
|
11天前
|
人工智能 运维 自然语言处理
构建高效自动化运维体系:DevOps与AI的融合之路
【4月更文挑战第30天】在数字化转型的大潮中,企业IT基础设施的复杂性日益增加,传统的运维模式已难以满足快速变化的业务需求。本文深入探讨了如何通过融合DevOps和人工智能(AI)技术构建一个高效、自动化的运维体系。文章首先概述了现代运维面临的挑战,接着分析了DevOps的核心理念以及AI如何在故障预测、智能决策支持等方面提升运维效率。最后,本文提出了一个具体的实施框架,并讨论了在推进过程中可能遇到的挑战及应对策略。
|
11天前
|
人工智能 运维 监控
构建高效自动化运维体系:DevOps与AI的融合实践
【4月更文挑战第30天】 在当今快速迭代的软件开发环境中,高效的自动化运维体系成为确保交付速度和服务质量的关键。本文探讨了如何通过整合DevOps理念和人工智能(AI)技术来构建一个更加智能、高效的运维体系。文章将详细阐述自动化运维的核心组件,以及如何利用AI技术优化这些组件的性能和决策过程。通过实际案例分析,本文展示了这种融合实践在提高运维效率、降低错误率以及提升系统稳定性方面的显著成效。
|
11天前
|
运维 安全 Devops
构建高效稳定的云基础设施:DevOps在运维中的应用
【4月更文挑战第30天】 随着云计算的普及和企业数字化转型的加速,构建一个高效、稳定且可扩展的云基础设施变得至关重要。本文将深入探讨如何通过融合DevOps文化与实践来提升传统IT运维的效率和响应速度,同时确保系统的可靠性和安全性。我们将讨论DevOps的核心原则、自动化工具的应用以及持续集成/持续部署(CI/CD)流程的实施,旨在为读者提供一个清晰的指导框架,帮助他们在动态变化的市场环境中保持竞争力。
|
14天前
|
敏捷开发 运维 监控
【专栏】微服务架构,以敏捷、灵活著称,通过拆分大型应用为小型自治服务,简化开发运维
【4月更文挑战第27天】微服务架构,以敏捷、灵活著称,通过拆分大型应用为小型自治服务,简化开发运维。本文探讨其基本概念、起源,核心优势(如敏捷开发、高可伸缩性)及挑战(系统复杂度、数据一致性),并分享实施策略(服务划分、技术选型、CI/CD)与实践案例(Netflix、Uber、Spotify),展示微服务如何重塑软件开发,并成为未来复杂应用系统的基础。
|
26天前
|
运维 Kubernetes Devops
构建高效自动化运维体系:DevOps与容器技术融合实践
【4月更文挑战第15天】 在当今快速发展的信息技术时代,传统的IT运维模式已难以满足业务敏捷性的需求。本文旨在探讨如何通过整合DevOps理念和容器技术来构建一个高效的自动化运维体系。文章将详细阐述DevOps的核心原则、容器技术的基础知识,以及两者结合的优势。此外,文中还将分享一系列实践经验,包括持续集成/持续部署(CI/CD)流程的搭建、微服务架构的应用,以及监控和日志管理策略的优化,以期帮助企业实现快速、可靠且安全的软件交付过程。
|
1月前
|
运维 Kubernetes Devops
构建高效自动化运维体系:基于容器技术的DevOps实践
【4月更文挑战第2天】随着云计算和微服务架构的兴起,传统的IT运维模式正逐渐向DevOps转型。本文将探讨如何通过容器技术实现自动化运维,提高系统部署效率与稳定性。首先,分析了当前企业面临的运维挑战及DevOps的优势;其次,详细介绍了容器技术的核心组件以及在自动化运维中的应用;最后,结合实际案例,展示了基于容器的DevOps流程设计与实施步骤,旨在为企业构建高效、可靠的自动化运维体系提供参考。
17 2
|
8月前
|
缓存 运维 Linux
Linux(CentOS)运维脚本工具集合
Linux(CentOS)运维脚本工具集合
155 2