组织内的头衔几乎与技术本身一样发展得快。长期以来,DevOps 的名称被认为是“开发”和“运营”的字面解释——混合角色的包罗万象的术语,封装了从本地、云和混合基础设施到代码执行和生命周期管理的所有内容。听起来很多?这是。输入“ITOps”——这个组织部门不仅仅为“信息技术”和“运营”提供服务。在我们分解两个团队之间的一些关键职责和差异之前,让我们就一些事情达成一致。
什么是 IT 运营 (ITOps)?
为了理解团队,我们需要定义他们所服务的组织概念。信息技术运营提供并维护组织运作所需的所有本地、混合和云基础设施。简而言之,ITOps 是如何在组织内处理 IT 需求的传统实践。
什么是 IOps 团队?
IOps 团队是最常关心维护 IT 系统的日常结构完整性和功能的内部技术团队。团队必须了解 IT 基础架构某个部分的每一项更改如何影响应用程序性能。随着组织的发展,IT 结构变得更加复杂,技术服务器端和客户端的职责也随之增加。
ITOps 团队职责
除了研究网络如何支持应用程序之外,ITOps 团队还经常处理安全、硬件和网络扩展等实际问题。 共同职责包括:
- IT 基础设施管理– 维护企业网络的各个方面,包括 LAN 和远程连接
- 调整基础设施– 随着新设备和应用程序上线,测试和调整网络以最大程度地减少中断
- 设备管理– 确保所有设备均已正确配置和更新
- 网络安全– 处理管理问题,例如基于角色的访问和安全审核
- 事件响应– 诊断和解决网络问题
- 数据安全和恢复——除了保持网络安全外,还通过定期备份保护数据免受人为错误的影响
此表是 IT 运营职位名称与其职责的通用映射。
ITOps 团队角色 | 主要负责… |
数据库管理员 | 确保数据库安全性、可用性和最佳性能 |
应用程序管理员 | 配置、安装和维护业务应用程序 |
安全管理员 | 部署、监控安全措施,保护 IT 基础设施免受威胁和不良行为者的侵害 |
网络管理员 | 确保网络基础设施的可靠性、性能和安全性 |
IT支持专家 | 为最终用户提供技术支持、硬件/软件问题以及解决 IT 相关问题 |
云管理员 | 与可扩展性、安全性和成本节约相关的基于云的服务和资源的性能 |
IT安全分析师 | 分析和响应安全事件,进行漏洞评估并降低资产风险 |
信息技术项目经理 | 确保 IT 项目按时、按预算交付并满足质量或监管标准 |
开发运营工程师 | 协调开发和 IT 团队之间的协作以简化交付 |
什么是“ITOps文化”?
鉴于 IT 运营团队将考虑一个网络变更如何影响整个系统,ITOps 奉行一种谨慎的文化。例如,ITOps 成员可能会在推送大型应用程序更新之前检查必要的更改以避免网络崩溃。这使他们能够避免造成安全薄弱环节,并防止其他灾难。
什么是 DevOps?
DevOps(或开发运营团队)的主要重点是为企业更新和开发新的应用程序。他们还负责提供自动化部署并将基础设施粘合到后端的代码。DevOps 团队以任务为导向,并且焦点通常很狭窄。他们的运作方法通常是接收问题或项目,然后制定解决方案。
DevOps 团队职责
DevOps 团队的职责根据组织的规模而有所不同。例如,在中型科技公司中,他们可能会花费更多时间处理网络管理等传统 IT 问题。该群体的期望可以但并不总是包括:
- 应用程序开发:开发、监控和更新由公司软件开发人员编写的面向用户的应用程序
- 部署:使用 IT 资源来启动并运行应用程序
- 自动化:寻求通过集成和自动化来简化部署流程
- 事件响应:解决应用程序问题并监控性能
- 测试和更新:观察应用程序并应用修复和改进
正如您在有关 ITOps 团队的表格中看到的,DevOps 工程师弥合了开发和信息技术之间的差距,防止出现孤岛并减少工作流程冗余。 此表是 DevOps 职位与其职责的通用映射。
DevOps 团队角色 | 主要负责… |
开发运营工程师 | 协调开发和 IT 团队之间的协作以简化交付 |
发布经理 | 通过与开发、测试和运营团队协调来进行软件发布和部署的物流 |
建造工程师 | 软件项目的构建流程,确保代码编译和可靠的打包 |
配置管理器 | 软件和基础设施的版本控制和配置,确保不同环境之间的一致性 |
持续集成专家 | 用于自动化代码集成、测试和部署的 CI 工具和流程 |
持续部署专家 | 用于自动将代码部署到生产环境的 CD 工具和流程 |
自动化工程师 | 适用于各种任务的自动化解决方案,例如测试、监控和基础设施配置 |
站点可靠性工程师 | 结合软件工程和操作技能,确保系统和应用程序的可靠性、性能和可用性 |
开发安全运营工程师 | 将安全实践纳入 DevOps 工作流程,确保在整个软件开发和部署生命周期中应用安全措施 |
敏捷大师 | 促进开发团队内的敏捷/Scrum 实践,消除障碍,促进协作和效率 |
什么是 DevOps 文化?
DevOps 文化和理念深受敏捷开发运动的影响。这种环境或文化重视频繁测试和持续改进。开发人员不是创建一个完整的项目并在最后对其进行测试,而是在整个过程中建立质量保证并对其进行测试。这一理念加快了基于灵活性和创新的DevOps 战略,使团队能够突破基础设施的限制,知道他们的假设将在发布之前得到证明或消除。
共同的担忧
IOps 和 DevOps 通常都关心整体 IT 性能。 例如,DevOps 团队成员可能正在寻找部署新平台或软件解决方案的最佳方法。然而,这种方法可能会进一步产生意想不到的后果。考虑当前服务器只能处理新软件流量的场景的影响,而牺牲了其他应用程序的性能。ITops 团队可能会将新应用程序视为基础架构总体图景的一部分。他们可能会寻求改进网络以适应新软件。另一方面,他们可能会调整应用程序的性能以防止干扰其他进程。为了保持最佳性能,两个团队都必须采用监控和可观察性策略。在监控中,他们将收到有关系统或应用程序当前状态的信息。在观察的同时,他们会制定解决方案来表明何时出现问题。我们将在后面的部分进一步讨论这个问题。
可观察性:ITOps 和 DevOps 之间的共同责任
可观察性是开发和 IT 关注点重叠的地方。当应用程序失败时,可能是由于编码错误或基础设施问题造成的。无论哪种情况,双方强有力的观察策略都将有助于诊断和解决问题。可观察性是技术领域中一个日益重要的概念。研究表明,IT 可观察性(全面了解应用程序、服务或系统的运行状况、性能和可用性)已成为 ITOps 和 DevOps 团队的共同责任。可观察性是通过对指标、日志、配置和应用程序跟踪数据的全面监控来实现的。
实现统一 IT 可观察性的主要好处是什么?
根据 ITops 和 DevOps 专业人士的说法,可观察性的主要好处如下:
- 跨业务流程、应用程序和基础设施的全面可见性 (19%)
- 绩效可见性 (18%)
- 能够更快地排除故障 (15%)
- 减少断电/限电 (15%)
- 能够自动化某些工作流程 (12%)
长话短说:
DevOps 专注于改进软件开发和交付的流程,重点是协作和自动化。ITops 专注于技术基础设施和服务的日常运营和维护,重点是监控和故障排除。DevOps 旨在使组织能够更快、更少错误地发布软件,而 IOps 旨在确保技术服务可用、稳定和安全。虽然 DevOps 和 IOps 之间存在一些重叠,但它们通常是不同的,并且在组织内服务于不同的目的。