工具篇:云效云原生 DevOps 解决方案(一)|学习笔记

简介: 快速学习工具篇:云效云原生 DevOps 解决方案(一)

开发者学堂课程【ALPD 云架构师系列-云原生 DevOps36计工具篇:云效云原生 DevOps 解决方案(一)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/82/detail/1267


工具篇:云效云原生 DevOps 解决方案(一)

 

内容介绍:

一、云研发时代

二、云研发时代现状及问题

三、云原生持续交付实践

四、云原生持续交付实践解决方案

五、典型场景

六、总结

阿里云云原生 DevOps 解决方案云校联合云原生团队打造的云原生 DevOps 一站式解决方案,帮助各种规模和阶段的企业高质量低成本的享受技术升级带来的研发福利,接下来将带来阿里云云原生 DevOps 的解决方案。

 

一、云研发时代

现在是云研发的时代,什么叫作云研发时代?其又有哪些特点?首先,在云研发的时代,基础设施要可靠、低成本、高弹性。具体理解为:首先,基础设施的稳定性要高,成本要低,当遇到大诉这样的诉求时,可以很方便的扩缩容。其次,在云研发的时代提供的软件往往不再是包或是光盘,而是服务,其服务要做到稳定、安全和高性能。最后,在云研发的时代,整个软件交付应该是持续、快速、高质量和低风险。

 

二、云研发时代现状及问题

但是这只是目前美好的时代和愿景,实际情况如何?现状可能是这样:

第一个问题,基础设施的成本会越来越高,很多人创业都会有这样问题,业务规模的增长往往跟不上基础设施成本的增长。可能在刚开始,基本一台服务器就可以扛下整个的业务。但是随着业务的发展,就需要购买服务器,再过一段时间,就需要整个的机房来承载技术设施,而此成本的上升非常的快,远远超过业务规模的增长。

 image.png

第二个问题,随着业务的发展,发布出现问题,具体出现的问题为:发不了、老出错、时间长。这里关注下面两个真实的应用案例,A 应用近半年只发布了13次,其中7次是 hotfix 发布,发布时长从几分钟到十几个小时都有,发布时常差别较大。B 应用发布的频率高一点,但是发布成功率不到30%,每次发布几乎都超过24个小时,而且有时候连续多天没有发布。

 image.png

第三个问题,用于新功能开发的时间越来越少,这里根据团队的真实开发情况模拟,发现在项目刚开始时,开发时间几乎占据90%以上的时间,可以开发很多新功能,可是随着产品的引进,随着团队的引进,随着需求规模的引进,用于新功能开发的时间越来越少,到后期维护时间几乎达到90%,仅仅有10%的时间用于新功能的开发。

 image.png

那有这样的问题,显然还并不在云研发的时代,那应该如何迈向云研发的时代呢?


三、云原生持续交付实践

这里需要基于云原生的持续交付实践。所谓云原生的持续交付实践,有四个需要注意的地方:首先应该基于云原生基础设施,其次需要有一条端到端的持续交付流水线。然后需要建立高效的质量守护。最后需要低成本,高效率的服务治理体系。

1.云原生基础设施:

上个世纪五六十年代产业界发生革命,使集装箱诞生,集装箱是很简单的东西,就是一个标准化的箱子。但是随着集装箱的诞生,所有的运输、装配和物流都基于集装箱的标准去统一设计,其导致了整个的货运成本降低了95%,由此让原本不可能的全球货卖方式变成可能。从而达到了经济全球化,云原生其实正在扮演集装箱及其相关标准的角色。

其特点有两个:首先是不可变。

所有的集装箱质量都相同为不可变因素,而且一旦装箱之后,里面的内容是确定不可变因素,可以消除不一致带来的不确定性,减少不一致的风险,同时减少物质。

另一个是标准化。集装箱标准化,根据集装箱所诞生的各种物流体系也是标准化。这样的好处是可以简化部署,降低整个的环境的维护成本,降低工具链开发和学习成本。

 image.png

这里提到的集装箱对应云原生上的容器。这里基础设施对应云原生里的 K8S 及上面的云原生 CNCF 的一套标准。

2.端到端的持续交付流水线:

在云研发的时代,要做到基于云原生的持续交付,需要的是从需求开始一直到上线的持续交付流水线,此流水线应该包括代码提交、构建、计算、验证、预发和上线的整个流程。而且这条水线应该满足下面三个要求:

(1)可描述:研发模式的具象化表达、发布流程一致性、最佳实践可快速复制。

(2)可观测:开发以及发布过程可见、发布过程有保障。

(3)自动化:发布过程自动化、流程通过工具落地。

 image.png

3.高质量的质量守护:

软件的交付的生命周期,从需求开始到软件的上线运行,经历了很多阶段,在每个阶段都有质量的守护问题,刚开始存在需求质量问题,架构质量问题。

开发阶段存在代码质量问题,安全问题。在测试阶段存在稳定性质量问题,数据质量问题,测试质量问题,发动质量问题。到后来还存在整个性能质量和用户质量问题,同时需要一个全面的质量评估。那么基于这样的要求,下面会进行很多的测试的实践:例如自动化测试,稳定性测试,性能测试,安全测试。

为了承载这些测试,需要基础平台及流程支撑。同时为了知道测试实践的效果,需要整个的度量体系。

所以在云研发时代,整个软件交付周期都需要一个质量守护体系来保证,而其体系是端到端的。

 image.png

4.低成本、高效率的服务治理体系:

在云研发的时代,应用逐渐的往微服务化迁移,可以说微服务是诞生云原生的基础之一,那么在此情况下,微服务的治理就变成了非常紧迫的问题,这也是很多时候阻挠云研发时代迈进的主要问题。在云研发的时代,服务治理体系应该如何呢?

如下图所示,作为开放人员的理想情况下,仅仅需要编写代码,剩下的事情将由云效平台,或者其他平台和服务治理平台来维护。其包括很多方面,例如网关,服务的监控,容量的调整,以及收缩容,出错处理、计费等等。这些都应该由一整套服务治理体系来保证。

image.png

相关实践学习
流水线运行出错排查难?AI帮您智能排查
本实验将带您体验云效流水线Flow的智能排查能力,只需短短1-2分钟,即可体验AI智能排查建议。
ALPD云架构师系列 - 云原生DevOps36计
如何把握和运用云原生技术,撬动新技术红利,实现持续、安全、高效和高质量的应用交付,并提升业务的连续性和稳定性,这是云原生时代持续交付共同面对的机会和挑战。本课程由阿里云开发者学堂和阿里云云效共同出品,是ALPD方法学云架构师系列的核心课程之一,适合架构师、企业工程效能负责人、对DevOps感兴趣的研发、测试、运维。 课程目标 前沿技术:了解云原生下DevOps的正确姿势,享受云原生带来的技术红利 系统知识:全局视角看软件研发生命周期,系统学习DevOps实践技能 课程大纲: 云原生开发和交付:云研发时代软件交付的挑战与云原生工程实践 云原生开发、运行基础设施:无差别的开发、运行环境 自动部署:构建可靠高效的应用发布体系 持续交付:建立团队协同交付的流程和流水线 质量守护:构建和维护测试和质量守护体系 安全保障:打造可信交付的安全保障体系 建立持续反馈和持续改进闭环
相关文章
|
敏捷开发 安全 测试技术
阿里云云效产品使用合集之云效安全白皮书在什么地方可以查看
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
运维 Cloud Native Devops
一线实战:运维人少,我们从 0 到 1 实践 DevOps 和云原生
上海经证科技有限公司为有效推进软件项目管理和开发工作,选择了阿里云云效作为 DevOps 解决方案。通过云效,实现了从 0 开始,到现在近百个微服务、数百条流水线与应用交付的全面覆盖,有效支撑了敏捷开发流程。
19757 30
|
敏捷开发 Kubernetes Cloud Native
阿里云云原生技术为企业提供了一套高效、灵活的解决方案,支持跨云部署与管理
在多云环境中,阿里云云原生技术为企业提供了一套高效、灵活的解决方案,支持跨云部署与管理。通过容器化、服务网格等技术,实现了应用的一致性与可移植性,简化了多云环境下的资源管理和服务治理,帮助企业应对复杂的云环境挑战,加速数字化转型。
342 5
|
存储 Prometheus 运维
在云原生环境中,阿里云ARMS与Prometheus的集成提供了强大的应用实时监控解决方案
在云原生环境中,阿里云ARMS与Prometheus的集成提供了强大的应用实时监控解决方案。该集成结合了ARMS的基础设施监控能力和Prometheus的灵活配置及社区支持,实现了全面、精准的系统状态、性能和错误监控,提升了应用的稳定性和管理效率。通过统一的数据视图和高级查询功能,帮助企业有效应对云原生挑战,促进业务的持续发展。
348 3
|
消息中间件 监控 Cloud Native
云原生架构下的数据一致性挑战与解决方案####
在数字化转型加速的今天,云原生架构以其轻量级、弹性伸缩和高可用性成为企业IT架构的首选。然而,在享受其带来的灵活性的同时,数据一致性问题成为了不可忽视的挑战。本文探讨了云原生环境中数据一致性的复杂性,分析了导致数据不一致的根本原因,并提出了几种有效的解决策略,旨在为开发者和企业提供实践指南,确保在动态变化的云环境中保持数据的完整性和准确性。 ####
|
运维 Cloud Native Devops
云原生架构的崛起与实践云原生架构是一种通过容器化、微服务和DevOps等技术手段,帮助应用系统实现敏捷部署、弹性扩展和高效运维的技术理念。本文将探讨云原生的概念、核心技术以及其在企业中的应用实践,揭示云原生如何成为现代软件开发和运营的主流方式。##
云原生架构是现代IT领域的一场革命,它依托于容器化、微服务和DevOps等核心技术,旨在解决传统架构在应对复杂业务需求时的不足。通过采用云原生方法,企业可以实现敏捷部署、弹性扩展和高效运维,从而大幅提升开发效率和系统可靠性。本文详细阐述了云原生的核心概念、主要技术和实际应用案例,并探讨了企业在实施云原生过程中的挑战与解决方案。无论是正在转型的传统企业,还是寻求创新的互联网企业,云原生都提供了一条实现高效能、高灵活性和高可靠性的技术路径。 ##
903 30
|
人工智能 Serverless API
云原生应用开发平台CAP:一站式应用开发及生命周期管理解决方案
阿里云的云应用开发平台CAP(Cloud Application Platform)是一款一站式应用开发及应用生命周期管理平台。它提供丰富的Serverless与AI应用模板、高效的开发者工具链及企业级应用管理功能,帮助开发者快速构建、部署和管理云上应用,大幅提升研发、部署和运维效能。
1013 4
|
运维 Cloud Native Devops
云原生时代的DevOps实践:自动化、持续集成与持续部署
【9月更文挑战第3天】未来,随着人工智能、大数据等技术的不断融入,DevOps实践将更加智能化和自动化。我们将看到更多创新的技术和工具涌现出来,为软件开发和运维带来更多便利和效益。同时,跨团队协作和集成也将得到进一步加强,推动软件开发向更加高效、可靠和灵活的方向发展。
|
机器学习/深度学习 分布式计算 Cloud Native
云原生架构下的高性能计算解决方案:利用分布式计算资源加速机器学习训练
【8月更文第19天】随着大数据和人工智能技术的发展,机器学习模型的训练数据量和复杂度都在迅速增长。传统的单机训练方式已经无法满足日益增长的计算需求。云原生架构为高性能计算提供了新的可能性,通过利用分布式计算资源,可以在短时间内完成大规模数据集的训练任务。本文将探讨如何在云原生环境下搭建高性能计算平台,并展示如何使用 PyTorch 和 TensorFlow 这样的流行框架进行分布式训练。
401 2
|
敏捷开发 存储 测试技术
阿里云云效产品使用合集之如何查看云效管理员
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。

热门文章

最新文章