“云原生”已成为一个成为技术圈广泛传播的流行词了。那么什么是云原生?云原生能给我们带来什么?怎么将云原生架构落地?应该是每个关心云计算新技术的技术人都关心的吧,我也不例外,当在群里得知阿里云要出品《云原生架构白皮书》时,第一时间就预约了试读。
PS:做个小广告,如果你也想拥有这样的“特权”,欢迎加入阿里云MVP😜
7月17号就收到第一部分内容,看了编委组成员,满满的大神列表。从结构来看“白皮书”总共分为七章,主要从云原生的架构定义和相关技术栈、阿里云自身的产品和案例实践、未来发展趋势三大部分全面介绍了云原生架构。
从架构设计看云原生的价值核心
云原生的概念很多,之前我写过一篇关于《什么是云原生》的博客里面就有说到云原生的各种定义。“白皮书”则从架构和设计模式上对云原生做描述:旨在将云应用中的非业务代码部分进行最大化的剥离,从而让云设施接管应用中原有的大量非功能特性(如弹性、韧性、安全、可观测性、灰度等),使业务不再有非功能性业务中断困扰的同时,具备轻量、敏捷、高度自动化的特点。
这种从架构和模式上的定义比CNCF和十二因素更清晰和具象化,也更清晰地体现云原生的价值核心:架构设计的指导和研发效能的提高。
- 架构设计主要体现在云原生架构提供了高可用和可扩展能力。非功能特性的建设在实际业务中并不会带来直接业务价值,但又是必不可少的。记得在10年微服务刚出来的时候,需要构建一个高可用和具备可扩展能力的系统是一件很困难的事情,缺乏服务注册中心,需要自行解决上下游寻址、通讯,以及容错等问题。现在这些能力被抽象成云原生的基础设施,我们可以专注于核心业务代码的同时,轻松获得高可用和可扩展能力。
- 云原生另一方面价值体现是在提高团队和组织的研发效能上。从敏捷交付到DevOps,本质上是对交付和运维效率的追求。自动化让研发变得更高效,非功能性特性和核心代码分离可以让我们更专注于核心业务逻辑。
从4+1看阿里云云原生架构设计
阿里巴巴云原生架构ACNA「4+1」的架构设计流程,「4」 代表架构设计的关键视角,包括企业战略视角、业务发展视角、组织能力视角和云原生技术架构视角;「1」 表示云原生架构的架构持续演进闭环。
企业战略视角来看,任何架构都必须服务于企业战略,云原生架构不仅是一个技术升级,更是一个对企业核心业务生产流程的重构,即通过软件开发和运营构建数字化业务。这样从顶层的战略上就需要设计技术赋能业务创新的重要角色。
从业务发展视角看,数字化业务对技术架构的主要诉求是业务连续性、
业务快速上线、成本以及科技赋能业务创新,云计算作为新的技术必须为企业释放成本红利,帮助企业从原来的 CAPEX 模式转变为 OPEX 模式。
从组织能力视角看,最重要是需要理性看待技术架构,需要满足“康威定律”原则——让技术架构与企业沟通架构需要保持一致。
从云原生技术视角来看,从服务化能力、弹性能力、无服务化程度、可观察性、韧性和自动化都需要逐步迭代,配合企业战略和业务诉求。
云原生架构的发展演变和新技术的展望
云原生技术的发展经历了自行解决各种分布式问题的初代,到服务注册、服务发现、服务通讯及容错机制逐渐模块化的中生代,再到逐渐采用服务网格(service mesh)管理微服务架构的新生代,云原生架构对底层和分布式事务的抽象程度越来越高,让工程师们更专注核心业务,Serverless、混合云逐渐成为技术选型的新常态。随着云原生应用快速铺开,云原生生态逐渐操作系统化,类似 OAM 这种标准化云原生应用框架的完善未来会催生新一代应用分发云市场。一次开发,所有云厂商发布和使用,让技术服务化和商业赋能变得像手机APP安装使用一样简单顺畅,打通生态模式最后一环。