DevOps革命准备就绪
如果您曾在软件行业工作过,您可能听说过DevOps现象。如果您从未在技术领域工作过,每当您看到或听到这个词时,您肯定都在想知道它的含义。
2009年,比利时的一组敏捷倡导者最初提出了DevOps的概念。“DevOps”一词最初由Patrick Debois使用,他经常被称为“DevOps之父”。当知识分子通过会议、讲座和Twitter讨论走到一起时,这种方法最终发展成为多种技术的融合体,包括运维管理、敏捷、精益、约束理论和IT服务管理。这最终导致了DevOps背后的理念。这个词来源于两种重要趋势的融合——
将精益和敏捷方法应用于运维任务,以创建敏捷运维或敏捷系统管理。
更好地了解运维人员和开发人员合作的优势。这在开发和运行服务的整个开发生命周期中都是必要的。这突出了运维在当今面向服务的社会中的重要性。
什么是DevOps?
DevOps是一套将软件开发(Dev)和IT运维(Ops)结合在一起的流程。它旨在缩短系统开发生命周期,并提供具有卓越软件质量的持续交付。
为什么企业需要DevOps?
DevOps有很多优势,超过了任何可能的缺点。这两个透明度有限的孤岛被整合在一起,以提供更快的系统交付、通过自动化和非功能性测试降低生产变更风险以及缩短开发周期。DevOps方法增强了对生产环境堆栈中各层的了解,同时自动化服务管理以满足运维目标。因此,这有助于预防和解决生产问题。组织还可以了解到差异更容易调和。
要使DevOps战略成功,您需要智能的业务管理、文化转变和合适的技能。换句话说,实施DevOps原则的企业只是在完成更多的事情。
技术优势——
修复问题更简单更容易。软件交付成为一个持续的过程。
更快地解决问题
业务优势
更快地交付功能
运行状况稳定性得到改善
腾出时间来创造价值,而不是修复或维护。
其他可衡量的优势包括——
缩短开发时间
DevOps方法鼓励在开发团队和运维团队之间建立更好的沟通和协作的文化。当他们从工程代码过渡到可执行的生产代码时,这导致了更短的时间范围。
增强的发布速度
由于开发周期缩短,用于生产的发布代码的频率得到提高。从规范到发布的平均时间范围为三到六个月。但是,使用DevOps只需要每天或每小时的发布构建周期。因此,由于培养了持续部署和开发的文化,IT对公司的价值得到了提高。因此,更快的发布速度使公司具有竞争优势。
改进的缺陷检测
敏捷编程风格是DevOps方法的基础,可以将其视为扩展的敏捷编程。通过将大型代码库分解成更小、更易于管理的组件,并遵循许多敏捷概念(如迭代开发、协作和模块化编程),可以更容易地发现代码中的错误。
减少部署失败和回滚
部署失败通常会抵消更快部署和开发的优势。但是,使用DevOps方法创建的软件也会考虑运维因素。当与增强的缺陷检测条款相结合时,它可以显著降低部署之前或之后的问题数量,从而减少回滚次数。
减少故障后的恢复时间
即使其可能性很小,故障也是不可避免的。当故障发生时,使用DevOps的恢复时间比传统IT系统快得多。团队的整合是造成这种情况的主要原因。
从CMMI和敏捷阶段过渡到DevOps时代
事实证明,DevOps可以提高员工士气和积极性,同时还可以加快、优化和改进软件交付。
实施DevOps方法和文化的主要优势之一是它消除了组织中的孤岛(团队之间的沟通障碍),消除了软件交付依赖于单个人员或团队可用性的需求。
自动化软件的开发消除了繁琐、单调的任务,进一步提高了工作质量。
与人工相比,自动化服务的持续运营成本要低得多。
使用DevOps方法进行软件交付过程所带来的便利性和可靠性,增强了定期发布的信心。这使得软件交付能够真正实现敏捷,并使后续版本能够快速集成持续的输入。
结论
DevOps令人震惊的结果标志着DevOps时代在科技行业、组织和其他商业实体中的开始。自动化软件提供商Puppet和DevOps Group合作伙伴对4600多名技术专家进行了调查,以收集他们年度DevOps现状报告的信息。
使用DevOps可以找到以下统计数据——
高绩效IT组织的部署频率是低绩效组织的200倍,交付周期缩短了2555倍。
他们的恢复速度快24倍,变更失败率低3倍。
使用持续交付和精益管理技术,可以更快、更可持续地交付价值。
高绩效IT团队解决安全问题的时间减少了50%。
此外,他们在计划外工作和返工上花费的时间减少了约22%。
无论应用程序是绿地、棕地还是遗留应用程序,都可以实现高性能。
IT经理是培养多样性和防止倦怠的重要资源。
使用精益的产品开发方法(例如,将工作分解成较小的批次并纳入用户反馈),可以预测更高的IT性能和更轻松的部署。