阿里云云原生 DevOps - DevOps 核心组成

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
MSE Nacos/ZooKeeper 企业版试用,1600元额度,限量50份
简介: 阿里云云原生 DevOps - DevOps 核心组成

开发者学习笔记【阿里云云原生助理工程师认证(ACA)课程:阿里云云原生 DevOps - DevOps 核心组成】

课程地址:https://edu.aliyun.com/course/3112075/lesson/19058


阿里云云原生 DevOps - DevOps 核心组成

 

内容介绍:

一、 DevOps 核心组成部分简述

二、 DevOps 组织层面

三、 DevOps 自动化工作流水线

四、 DevOps 企业实践全景视图

 

 

一、DevOps 核心组成部分简述

image.png

1、组织、文化

落实 DevOps 思想,首先要有与之匹配的组织架构,能够把敏捷、精益这种开发的思想传递到组织中的每一个人,包括产品经理、开发、测试、运维在内的每一个人,都需要理解这种文化,并且按照这种文化完成自己的工作。

2、自动化流水线

为企业提供了一个高度自动化的持续集成、持续交付、持续部署的能力。流水线能够自动化的完成软件的打包、集成、测试再到交付、部署全过程。

3、DevOps 工具集

自动化流水线需要有相应的 IT 技术和工具做支撑,团队需要掌握这些工具以简化自己的工作,更好的提升效率。

 

二、DevOps 组织层面

DevOps 强调的组织架构和企业文化理念需要自上而下的设计,首先在顶层需要认可敏捷开发的文化及开发方式,更好的促进开发部门、运维部门和质量保障部门之间的沟通、协作与整合,组织形式是一种顶层的设计,应自上而下的考虑清楚,需要有怎样的团队、角色、具体做怎样的工作。
image.png

DevOps 提出一个团队的规模大概是10-12人,其中包含产品研发、测试、运维等全部角色,控制团队规模的好处有以下几点,一是小团队的工作效率高,团队成员少的好处是当有问题需要解决时,能够很快的找到对应的人,以人为部门主体比以部门为主体效率提高很多;二是小团队更容易形成共同的目标,因为人数不多,想法容易沟通,思想上容易碰撞火花,当想法达成一致时很容易在旧的思想和新的计划中进行取舍,执行和落实的速度快,如创业公司往往早创业初期是产出最大的时期,而发展到一定规模后,由于团队人员越来越多,反而会出现产品交付效率变低,产品创新能力下降的问题。谷歌提出五个 DevOps 原则,一是精简的组织架构,二是愿意承担一部分试错带来的损失,三是分阶段的一小步进行转型,四是最大化的利用工具的最大化流程,五是对所有的过程和结果进行记录和分析。因此得出, DevOps 不是简单的开发软件化,而是企业的学历能力不断提升的结果,将企业改造成敏捷型、学习型的组织,运用新的工具优化组织架构和流程,不断的进行自我革命和创新,具体到每一个企业,组织的设计要根据自身的文化和企业对 DevOps 的理解去构建,并不是某个企业做的很好直接去照搬。

符合 DevOps 里的团队是具有一致性理念,高效沟通,敏捷型,学习型团队,具体是具有统一的思维、目标、技术及工具链,有良好的协作机制和沟通机制,并且具有一定敏捷度,能够快速的响应变化,具备一定软件架构设计的能力,同时要能够不断的快速试错,持续学习和创新。

 

三、DevOps 自动化工作流水线

自动化流水线能够高度自动化持续集成,持续交付和持续部署。
image.png

持续集成覆盖了从开发、构建、集成到测试四个阶段,是指软件个人研发的部分向软件整体进行交付,频繁的进行集成,以便更快的发现其中错误。持续交付是指在集成的基础上增加交付环节,将集成后的代码部署在贴近真实环境的内生产环境中进行运行,从而实现自动化的交付。持续部署是持续交付的延续,是指代码评审通过后能够自动的部署到生产环境中。

1、持续集成

持续集成强调开发人员提交新代码之后,立刻进行构建、单元测试,根据测试结果,我们可以确定新代码和原有代码能否正确地集成在一起。

image.png

在此流程图中,开发人员提交代码到代码仓库,并通过代码仓库的审核和验证,触发 CL 的流程,及先构建版本,再做单元测试,最后得到输出的结果,开发人员对输出的结果进行反馈(如是否通过测试,是否以及完成集成),此时开发人员能够很清楚整个过程,一旦出现问题,也能够快速定位错误,明确代码在哪个环节产生的问题,能够更好的控制开发流程,采用自动化的 CI 工具,将开发人员从大量的手工创作中解放出来,使得工作人员更能专注于代码的开发工作。

2、持续交付

持续交付指开发人员对应用的更改会自动进行错误测试并上传到存储库(如 GitHub 或容器注册表),由运维团队将其部署到实时生产环境中,其目的是解决开发和运维团队之间可见性及沟通较差的问题,确保尽可能减少部署新代码时所需的工作量。

image.png

此流程图,在持续集成之后会进入交付的环节,首先进行整体的测试,测试通过后将其发送到类生产环境中,到此为止都是由自动化完成的,从类生产环境在部署到生产环境是手工完成,需要运维人员根据实际的业务情况进行部署,此过程称为持续交付。

3、持续部署

持续部署,自动将开发人员的更改从存储库发布到生产环境,以供客户使用,其目的是解决因手动流程降低应用交付速度,从而使运维团队超负荷的问题,以持续交付的优势为根基,实现了管道后续阶段的自动化

image.png

从流程图看到,持续部署是持续交付的延申,可以自动将应用发布到生产环境,持续部署意味着开发人员对应用的更改,在编写后的几分钟就能生效,前提是通过了自动化的测试,这样就便于持续接收和整合后的反馈。持续部署加快了代码提交的速度,使得新功能能够在第一时间部署到生产环境中。

高度自动化的持续集成,持续交付和持续部署构成了整个 DevOps 流水线,这种流水线需要大量灵活和敏捷的工具来支撑每一个环节,团队需要掌握庞大的工具链,使之能够形成一个统一的工作台,这就是要搭建的 DevOps 技术平台,图中将整个开发流程分成了不同的环节,

image.png

每个环节由不同技术链的工具,整个 DevOps 技术生态工具链涉及的工具达上百个,随着开源技术的不断发展,技术工具集也在不断地推崇出新,大致分为需求管理、项目管理、代码管理、构建工具、持续集成、持续部署、自动化发布、配置管理、运营监控、容器及容器编排等。
工具链中的各种工具,通常一个接一个串行执行,一个工具的输出是另外一个工具的输入,工具之间的标准化尤为重要,如果选择开源工具,就需要具备很强的底层整合能力,并将这套工具链打造成一个可用型的服务型产品。
工具间的无缝集成往往很难实现,尤其是对 DevOps 没有深刻的理解和多年实践经验的企业,大量的整合开源工具会带来很多成本,给企业带来沉重的负担,对于多数企业而言,应该考虑第三方已经完成集成的一站式 DevOps 平台以用来节约成本,将更多的时间经历专注于业务的开发。

 

四、DevOps 企业实践全景视图

image.png

上图从组织文化、技术、流程三个维度进行实践。

1、组织及文化

文化上需要存在信任,协助精神,主人翁意识,能够持续的优化,不断学习。在组织上实现敏捷技术,强调的是全站团队而非全站员工,按照原则组建团队,团队的分组需要基于特性而非基于技术特性划分,确保每一个团队开发出的都为可用型,特性团队是指在大型的项目中根据功能特性进行团队的划分与组合,而非技术特性,根据功能特性组建的团队每次的交付都为用户的可用型,可提前进行确认,避免项目结束时发现交付的产品不可用,通过全站和特性团队的磨炼,逐渐形成自制的、自交付的团队组织。

2、技术

实施了基础设施编码的能力,将基础环境可编程化,项目团队成员可自助获取形成持续编译、自动化测试、持续部署的能力。

3、流程

流程上实施看板文化,看板通常被当作任务协调和沟通的机制,将看板做成自制管控的平台,量化组织生产的能力,在产品交付上采用 MVP 模式,快速交付产品原型,通过市场来验证和修正产品,最终适应市场的需求。每个项目必须建立持续发布的机制,形成自助化、自动化的两种能力,建立度量体系,建立组织各种数据基线,一方面可以掌控组织的生产力水平,另一方面可以通过度量数据反向优化组织的评定点。

以下为对本小结内容总结,首先,什么是 DevOps ,它是一套集组织文化、团队协作、工程实践和自动化工具为一身的工作方式,可以帮助企业快速高效、高质量的交付应用程序和服务为目的,从而更好的实现客户的价值。
DevOps 由三种核心组成,组织架构与企业文化是最重要的一部分;其次是自动化的流水线,它能够为企业提供高效的持续集成、持续部署的能力; DevOps 的技术工具链可以轻松的实现企业自动化的 DevOps 流水线,提供企业所需要的灵活的、敏捷的 DevOps 工具及其服务。
本节课还介绍了什么是 DevOps 自动化工作流水线即高度自动化的持续集成、持续部署和持续交付。

相关文章
|
28天前
|
弹性计算 Devops Shell
用阿里云 DevOps Flow 实现 ECS 部署自动化:从准备到落地的完整指南
阿里云 DevOps Flow 是一款助力开发者实现自动化部署的高效工具,支持代码流水线构建、测试与部署至ECS实例,显著提升交付效率与稳定性。本文详解如何通过 Flow 自动部署 Bash 脚本至 ECS,涵盖环境准备、流水线搭建、源码接入、部署流程设计及结果验证,助你快速上手云上自动化运维。
125 0
|
4月前
|
Kubernetes Cloud Native 安全
云原生机密计算新范式 PeerPods技术方案在阿里云上的落地和实践
PeerPods 技术价值已在阿里云实际场景中深度落地。
|
2月前
|
消息中间件 人工智能 监控
【云故事探索 | NO.15】:阿里云云原生加速鸣鸣很忙数字化
【云故事探索 | NO.15】:阿里云云原生加速鸣鸣很忙数字化
|
3月前
|
消息中间件 人工智能 监控
【云故事探索】NO.15:阿里云云原生加速鸣鸣很忙数字化
鸣鸣很忙集团作为中国最大休闲食品饮料连锁零售商,通过数字化与云原生技术实现快速扩张,4年完成其他企业10年的数字化进程。其采用阿里云全栈云原生方案,实现弹性扩容、智能补货、模块化开店等创新实践,支撑日均超430万交易数据稳定运行。未来将深化AI应用,推动供应链智能化与业务全面升级。
|
4月前
|
Cloud Native 关系型数据库 分布式数据库
客户说|知乎基于阿里云PolarDB,实现最大数据库集群云原生升级
近日,知乎最大的风控业务数据库集群,基于阿里云瑶池数据库完成了云原生技术架构的升级。此次升级不仅显著提升了系统的高可用性和性能上限,还大幅降低了底层资源成本。
|
5月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 API 网关 2025 年 4 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要
阿里云微服务引擎 MSE 及 API 网关 2025 年 4 月产品动态
|
6月前
|
人工智能 运维 监控
阿里云携手神州灵云打造云内网络性能监测标杆 斩获中国信通院高质量数字化转型十大案例——金保信“云内网络可观测”方案树立云原生运维新范式
2025年,金保信社保卡有限公司联合阿里云与神州灵云申报的《云内网络性能可观测解决方案》入选高质量数字化转型典型案例。该方案基于阿里云飞天企业版,融合云原生引流技术和流量“染色”专利,解决云内运维难题,实现主动预警和精准观测,将故障排查时间从数小时缩短至15分钟,助力企业降本增效,形成可跨行业复制的数字化转型方法论。
295 6
|
6月前
|
Cloud Native Serverless 流计算
云原生时代的应用架构演进:从微服务到 Serverless 的阿里云实践
云原生技术正重塑企业数字化转型路径。阿里云作为亚太领先云服务商,提供完整云原生产品矩阵:容器服务ACK优化启动速度与镜像分发效率;MSE微服务引擎保障高可用性;ASM服务网格降低资源消耗;函数计算FC突破冷启动瓶颈;SAE重新定义PaaS边界;PolarDB数据库实现存储计算分离;DataWorks简化数据湖构建;Flink实时计算助力风控系统。这些技术已在多行业落地,推动效率提升与商业模式创新,助力企业在数字化浪潮中占据先机。
362 12
|
7月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 云原生 API 网关 2025 年 2 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要
642 11
阿里云微服务引擎 MSE 及 云原生 API 网关 2025 年 2 月产品动态
|
6月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 云原生 API 网关 2025 年 3 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要