自动化测试
2020年中国DevOps应用发展研究——艾瑞咨询报告总结
2020年12月,艾瑞咨询发布《DevOps应用发展研究》,对业内企业进行调研,梳理国内DevOps历史脉络、发展现状及展望,内容涵盖DevOps理念解析及行业应用、中国DevOps市场发展状况和中国DevOps应用发展展望。
DevOps概述
DevOps企业实践:由于DevOps的实践远不仅限于安装软件工具,其在企业内部的落地实践需要经历复杂的转型过程。我们认为DevOps的成功实践需要企业工程解耦化、流程协同化和管理颗粒化的改变,要走过从资源整合到自助服务的五个步骤。在这个过程中,企业和团队需要更多地关注管理方式和文化适应性,引入专业机构的咨询和培训服务能够有效减少DevOps转型过...
2021-01-05
2020DevOps状态报告——变更管理
如果你的公司还没有走向平台化,现在仍然是一个很大的飞跃。您仍然可以通过解决公司的变更管理流程来加快软件交付。在本章中,我们将研究我们在公司内部所学的变更管理模式。我们将向您展示什么是有效的,什么是无效的,以及如何利用DevOps原则将变更管理转化为有效的、使能的流程。
在过去的十年里,我们已经看到DevOps的实践颠覆了软件发布团队的工作方式。以下是最显著的变化。
“问题本身并不会改变,因为改变一直在发生;问题是在变化来临时无法应对。” Kent Beck《解析极限编程:拥抱变化》即使我们看到交付团队成功地转变了他们的思维和实践,但要在一个大型组织中改变根深蒂固的结构和流程仍然要困...
2020-12-28
2020DevOps状态报告——平台模型:扩展DevOps的新方法
平台模型是一种我们在这个领域看到越来越多的方法,它源于负责产品或服务的端到端交付的产品团队的理念。如果只应用于单一的产品,或者几个产品,这个效果很好。 但是,如果有数百种产品或服务,把一个产品团队用于这些产品,对每一个来说都是低效和昂贵的。想象10个团队,每个团队都有自己的技术栈、工具链和流程。 会一直重复解决类似的问题、花太多的时间来评估技术、集成、维护基础设施等等。 这些时间可以更好地花在建立和改进产品团队负责的实际产品上。
缺乏标准化的技术和流程也造成其他问题:
●管理变得昂贵,几乎不存在管理
●独立的堆栈减少了整个组织的知识共享●许多产品团队实际上没有能力来运行完整的基础设施...
2020-12-21
2020DevOps状态报告
这是puppet报告的走过的第九个年头,本次报告基于对2400名IT、开发、信息安全行业的技术人员的调研,着重勾画了DevOps状态的两大趋势:平台模型、需求变更的管理。多年来,我们已经证明了DevOps实践会带来更好的绩效和组织成果,也学习并分享了组织的发展,以及如何更快地发布更好的软件。看到显著进展的同时,我们也看到大多数组织都在努力超越他们进阶的中间阶段。这些团队可能是较难扩展DevOps工作方式的开发团队、运维团队和安全团队。然而,有些组织确实取得了成功。他们扩展了DevOps超出最初早期采用团队的实践,继续在整个组织内不断发展和改进。是什么造成了这种区别?成功的组织实施的更深层次结构...
2020-12-14
DevOps工具链在企业中扮演的关键角色
DevOps工具链是一组用于执行复杂软件交付任务的数字工具。工具链中的工具通常一个接一个地执行,其中一个工具的输出是下一个工具的输入。这就是为何这些工具的标准化如此重要。最重要的是,DevOps工具链应该改善开发人员之间的协作,自动化任何必要的任务,并支持更高质量的软件,同时提供对基础设施和应用程序的可观测性。工具之间的无缝集成确实很难实现。尤其是如果你在DevOps领域没有多年的经验。每个实例都有自己的语法和功能。解决工具之间的差距、重叠和依赖关系是一项繁琐的任务。这也被称为工具蔓延。使用大量的工具会给你的成本管理带来很大的负担。它会耗尽你用来解决企业创新机会的预算。
DevOps生命周期...
2020-12-08
GitOps—用于基础设施自动化的DevOps
GitOps提供了一种自动化和管理基础设施的方法。它通过许多团队已经应用的DevOps最佳实践来做到这一点,例如版本控制、代码评审和CI/CD管道。由于DevOps在提高生产率和软件质量方面的巨大潜力,许多公司一直采用DevOps。在这个过程中,我们已经找到了自动化软件开发生命周期的方法。然而,在基础设施设置和部署方面,它仍然主要是一个手动过程。使用GitOps,团队可以自动化基础设施配置过程。这是因为可以使用声明文件将基础结构编写为代码(IaC)。我们可以将它们存储在Git存储库中,就像存储应用程序开发代码一样。
GitOps是如何运作的?
GitOps的概念最初是由Kubernete...
2020-11-30
DevOps和它的朋友们——聊聊其他“Ops”(二)
上篇跟大家简单介绍了DevOps,以及与其概念相近的NoOps、DevSecOps和GitOps,“Ops家族”还包含其他形式,但归根结底,DevOps之所以更为流行,是因为其提供了改进工作流程的最全面的方法,因而被广泛应用。
DevOps vs. ITOps
接下来,我们将更仔细地了解一下ITOps。许多开发人员将ITOps视为DevOps更传统的版本,但实际上它不止于此。ITOps在许多方面与DevOps非常相似。该方法将软件开发和IT基础设施管理视为一个统一的管道,此外,它还试图改进该管道并推动更高的灵活性。
ITOps与DevOps的不同之处在于它如何管理IT基础设施。这正...
2020-11-23
DevOps和它的朋友们——聊聊其他 “Ops”(一)
DevOps不仅仅是将敏捷开发概念与IT运维相结合,还简化了在云环境中开发和部署应用程序的过程,从而使开发生命周期大大缩短。这就是DevOps作为一种开发方法流行的原因。即使在今天,DevOps仍然是大多数优化管道的核心。持续交付变成了规范,而不是要实现的目标。应用的开发是迭代的,新的更新被推送到云端,用zero down代替部分或整个环境。因为有了DevOps,即使是大型的多部分更新也更加易于管理。然而,就结合软件开发和IT运维而言,DevOps这个术语并非唯一。它有着许多变体和子类型——以及概念的修改——它们被不同的软件开发团队广泛采用。对于许多人来说,DevOps为跨团队的良好流程(包括...
2020-11-16
持续集成对IT团队和企业的好处
对于各行各业的公司而言,软件是关键的竞争优势。公司越快地将新的增强功能和特性推向市场,所获得的竞争优势就越大。为了获得这种领先优势,企业开发团队需要优化其工作流程以提高效率、质量和可靠性。
因此,开发团队采用持续集成(CI)来加速和自动化软件交付生命周期。CI是持续交付(CD)不可或缺的DevOps流程,它将代码提交到源代码管理中,并自动“持续”执行构建。持续集成代码以使IT团队及其业务同行都受益的方式改进了流程。
持续集成对IT团队的好处
CI持续处理、测试并上传对代码库所做的更改或添加。该代码保存在源代码管理管理系统中,所有开发人员都可以使用该系统进行测试和参考。任何使用该应用...
2020-11-10
可用性、可维护性、可靠性有什么区别?
我们生活在一个可靠性的时代,用户依赖于对服务的一致访问。在相互竞争的服务之间进行选择时,对用户来说,没有比可靠性更重要的特性了。但是可靠性是什么意思呢?为了回答这个问题,我们将根据可靠性工程中的其他度量来分解可靠性:可用性和可维护性。区分这些术语并不是语义问题。了解这些差异可以帮助您更好地将开发工作的优先级放在客户的满意度上。
可用性
可用性是可靠性最简单的组成部分。此度量描述服务运行的时间百分比,这也被称为服务的“正常运行时间”。可用性可以通过连续查询服务并以预期的速度和准确性确认返回的响应来监控。服务的可用性是用户感知可靠性的主要因素。考虑到这一点,设定一个100%正常运行时间的目标...
2020-11-02