Jump to section

了解 DevOps

复制 URL

DevOps 是指对企业文化、业务自动化和平台设计等方面进行全方位变革,从而实现迅捷、优质的服务交付,提升企业价值和响应能力。只有通过快速迭代的 IT 服务交付,这一切才能实现。DevOps 可以将传统应用和最新的云原生应用与基础架构彼此相连。

DevOps transformation webinar cover

红帽培训助您开启 DevOps 转型之旅

从字面上来看,"DevOps"一词是由英文 Development(开发)和 Operations(运维)组合而成,但它所代表的理念和实践要比单独或组合的两个词广阔的多。DevOps 涵盖了安全、协作方式、数据分析等许多方面。但它是什么呢?

DevOps 旨在实现既快又稳的工作流程,使每个想法(比如一个新的软件功能,一个功能增强请求或者一个 bug 修复)在从开发到生产环境部署的整个流程中,都能不断地为用户带来价值。这种方式需要开发团队和运维团队密切交流、高效协作并且彼此体谅。此外,DevOps 还要能够方便扩展,灵活部署。有了 DevOps,需求最迫切的工作就能通过自助服务和自动化得到解决;通常在标准开发环境编写代码的开发人员也可与 IT 运维人员紧密合作,加速软件的构建、测试和发布,同时保障开发成果的稳定可靠。

当然,这意味着更改代码会更频繁,基础架构的使用也会更灵活。所以传统的管理策略无法满足这种需求。您也需要应势而变,赢得先机。

 

DevOps 可以加快一个想法从提出到部署的整个过程。DevOps 的核心在于,在应用的整个生命周期中,都要确保日常运维任务自动化和环境的标准化。容器可以提供标准化的环境,您需要一个平台来管理它们,同时提供内置的自动化功能并支持各种基础架构。红帽 OpenShift 4 就是一个支持 DevOps 倡议的企业就绪型 Kubernetes 平台。

DevOps 十分依赖协作文化,需要与开源原则和透明敏捷的工作方法协同一致。您可以通过为期 5 天的"DevOps 文化与实践支持(DO500)"大师班,探索 DevOps 与敏捷价值相辅相成的关系。

开源软件项目的文化几乎就是构建 DevOps 文化的范本。自由共享信息是开源社区默认的协作之道。这种方法有助于实施一系列文化变革,比如提高决策透明度、鼓励实验,战胜对失败的恐惧,或者实施奖励制度,鼓励彼此信任和协作。许多企业考虑在数字化转型咨询服务的帮助下支持此类行动。

有了正确的领导和激励计划,您的开发和运维团队将能更好地促进开放文化。当整个企业都贯行这种文化,DevOps 也就实现了最佳成效。固然 DevOps 字面上指的是开发和运维,但它需要每一个人的参与。

红帽的文化根植于开放和透明的基础上。在过去逾 25 年里,红帽人一直秉承着这一思想理念。协助客户采用开源技术策略时,我们始终遵循开放原则,热忱地帮助其逐步实现 DevOps 业务模式。

第 1 季第 4 集:DevOps,推倒那堵墙

在《代码英雄》播客的这一集中,Saron Yitbarek、Scott Hanselman 和 Gordon Haff 将为您介绍 DevOps 文化、流程、平台和工具

现代应用程序的开发流程不同于以往。许多团队都开始采用敏捷软件开发方法。在他们看来,DevOps 并不是什么新概念。事实上,"持续不断地尽早交付软件以满足客户需要"是《敏捷宣言》12 大原则中第一条原则。这就是为什么持续集成和持续部署(CI/CD)对 DevOps 团队至关重要。

但仅仅改变开发和运维流程还不够。您还需要系统化思考,找到办法真正地优化软件交付方式。也就是说,DevOps 既会为需要开发工作的业务部门带来改变,也会让支持终端用户的团队进行革新。关键是从终端用户到业务的持续反馈周期。

您的流程需要改变的不仅仅是工作方式。您的工作内容也不可避免地会发生变化。DevOps 不仅是为了加速创建原来的单体式应用,还要创建更适合这种持续交付节奏的新软件。

因此,DevOps 团队经常会使用微服务架构来构建软件,并通过 API 将这些服务彼此相连。通过构建较小的功能单元,开发团队就可以加速交付。因此,您必须关注如何管理这些服务和 API,并制定敏捷集成等策略,让它们能够协同工作。

这样的变革需要付出大量努力,但有了合适的技术,您就可以马上开始。自动化能够加快流程,并最终帮助你将 DevOps 工作负载迁移至云中。IDC 的一项研究1 表明,85% 的 IT 领导者认为自动化对于其 DevOps 战略至关重要。这是因为自动化使基础架构能够承受 DevOps 带来的代码频繁更改,并让环境能够轻松地连续扩展。自动化有助于减轻重复性单调任务的负担,让最聪明的员工做最重要的事情。

我们的专家可帮助您的组织开发所需的实践、工具和文化,以便更有效地现代化改造现有应用并构建新的应用。

1IDC。(2018 年 3 月)。自动化、DevOps 与多云世界的需求。检索自 https://www.redhat.com/cms/managed-files/cm-idc-automation-devops-demands-multicloud-world-f10589-201803-en.pdf

选择支持流程的工具对于 DevOps 的成功至关重要。运维团队要跟上快速开发周期,就需要利用高度灵活的平台,并像开发团队对待代码一样,对待平台的基础架构。手动部署不仅速度慢,而且可能出错。

因此,您也可通过自动化来简化平台置备和部署。站点可靠性工程(SRE)承担这些手动操作任务,并使用软件和自动化对其进行管理。SRE 方法可以进一步支持 DevOps 团队的目标。

容器可以方便地在开发、测试和生产环境之间移动应用。开发人员可以利用容器打包并隔离应用及其运行所需的一切,包括应用程序文件、运行时环境、依赖库和配置。

DevOps 方法加上 Linux® 容器,可为您的团队提供云原生开发所需的底层技术。容器支持集开发、交付、集成和自动化于一体的统一环境。

而 Kubernetes 是实现 Linux 容器操作自动化的现代方法。Kubernetes 可帮助您轻松高效地管理在公共云、私有云或混合云中运行 Linux 容器的集群。 

选择容器内外的可靠平台,如红帽® 企业 Linux红帽 OpenShift®,可以保障顺利可靠的扩展和自动化。选择好合适的平台后,您就可以充分利用已经实施的文化和流程变革。

 

 

 

持续集成和持续部署管道(CI/CD)是实施 DevOps 的一大重要成果。CI/CD 可帮助您频繁地向客户交付应用并检验软件质量,而且只需极少的人工干预。

具体而言,CI/CD 在整个应用生命周期内(从集成和测试阶段,到交付和部署)都引入了持续自动化和持续监控,让您能够快速发现并改正问题与缺陷。这些关联的事务通常被统称为"CI/CD 管道",由开发和运维团队以敏捷方式协同支持。

Icon-Red_Hat-Media_and_documents-Quotemark_Open-B-Red-RGB 我们主要使用 [红帽企业 Linux] 实现自动化。譬如,它可以帮助我部署应用。我们正在计划采用持续交付和持续集成方法,要用的就是这款产品。

Reviewer1779945

想要在当今的市场立于不败,您需要的不仅仅是技术。您需要评估自己企业的文化、流程和平台成熟度,了解数字化转型过程中需采取的对策。

 

正如我们前面所说,DevOps 不仅仅涉及开发和运维团队。为了充分利用 DevOps,企业还必须考虑安全防护如何在应用生命周期内发挥作用。所以,您从规划阶段开始就得要考虑核心安防问题。同时,您还应在一些安全功能方面采用自动化技术,防止 DevOps 工作流程阻滞变慢。选择合适的工具来集成安全功能,有助于您实现 DevOps 安全目标。

但是高效的 DevOps 安防需要的不仅是新工具。它更需要整个公司实现 DevOps 文化变革,从而在流程早期就集成进安全团队的工作。DevOps 通过紧密连接开发和运维之间来加速交付速度,但糟糕的安全规划则可能会拖慢速度。

从前,安全防护只是单个团队的责任,在开发的最后阶段才会介入。如今,在 DevOps 协作框架下,安全防护是整个 IT 团队的共同责任,需要贯穿至整个生命周期的每一个环节。

 

 

DevOps Culture and Practice with OpenShift e-book cover image

进一步了解"基于 OpenShift 的 DevOps 文化与实践"

扩展阅读

文章

什么是 DevSecOps?

如果您想要充分发挥出 DevOps 的敏捷性和响应力,则必须在应用的整个生命周期内兼顾 IT 安全性。

文章

什么是 CI/CD?

CI/CD 可让持续自动化和持续监控贯穿于应用的整个生命周期(从集成和测试阶段,到交付和部署)。

文章

什么是 DevOps 工程师?

DevOps 工程师身怀独特的技能和专业知识,可以在组织内实现协作、创新和文化转变。  

详细了解 DevOps

产品

在红帽专家的指导下参与高强度、富有针对性的驻留培训。帮助您的团队借助敏捷开发方法和开源工具,快速、高效解决当前业务难题。

红帽的战略顾问将从大局出发,以战略性视角审视企业发展,分析您当前面临的业务挑战,并提供全面、低成本、高效益的解决方案,帮助您轻松应对各项挑战。

相关资源