企业级云原生架构:技术、服务与实践
上QQ阅读APP看书,第一时间看更新

1.2 云原生架构

云原生架构是“原生为云”而设计的应用架构,因此技术部分依赖于在传统云计算的3层概念:基础设施即服务(Infrastructure as a Service,IaaS)、平台即服务(Platform as a Service,PaaS)和软件即服务(Software as a Service,SaaS),如图1-1所示。云原生架构意味着更快的迭代速度、持续可用的服务、弹性伸缩及其他一些非功能特性,包括快速试错以支持产品创新的技术挑战、以用户体验为中心的交互模式挑战、移动互联网时代的流量激增挑战等。

“架构”作为软件行业中一直存在的一个名称被普遍使用。架构一词原本来源于建筑行业,包括过程和产品,并且包括计划、设计、构建等全生命周期的过程。云原生架构包括一系列过程和方法,充分利用了云计算的弹性和分布式协同,使用开源软件技术栈将应用程序部署为微服务。通常,云原生应用程序构建为在Docker容器中运行的一组微服务,在Kubernetes中编排,并使用DevOps和Git Ops工作流进行部署和管理。使用Docker容器的优点是能够将执行所需的所有软件打包到一个可执行包中。容器在虚拟化环境中运行,从而将包含的应用程序与其环境隔离。云原生架构是一种包含技术实现与管理(组织流程)的软件开发方法论。技术实现部分主要包括敏捷基础设施、云公共基础服务和微服务;组织流程部分主要包括持续交付和DevOps。云原生应用架构包含3个特征:容器化、微服务和DevOps。

▲图1-1 云原生架构的内容