编辑推荐: |
本文介绍了云原生应用架构的三个特征以及容器PaaS的特点及优势接着对如何实施云原生简单给大家做一些参考,希望对您能有所帮助。
本文来自于Kubernetes中文社区,由火龙果软件Alice编辑、推荐。 |
|
某成功人士认为:企业采用基于云原生的技术和管理方法,可以更好地把业务迁移到云平台,从而享受云的高效和资源按需供给能力。容器云
PaaS 平台作为云原生在企业的主要落地形态,解决了应用完整生命周期的管理问题。未来,容器云 PaaS
将进一步深入行业应用场景,更好地支持企业数字化转型。
云原生既包含技术(微服务,敏捷基础设施),也包含管理(DevOps,持续交付等),是一系列 Cloud
技术、企业管理方法的集合。企业采用基于云原生的技术和管理方法,可以更好的把业务迁移到云平台,从而享受云的高效和按需资源能力,而容器云
PaaS 平台则是云原生应用重要的落地形态之一。
企业在数字化转型中普遍面临IT系统架构缺乏弹性,业务交付周期长,运维效率低,高可靠性低等痛点。企业可以通过云原生的一系列技术,例如基于容器的敏捷基础设施,微服务架构等解决企业面临的这些IT痛点。
云原生的三大特征
云原生应用架构包含三个特征:容器化、微服务和 DevOps。
容器其实已有10来年的历史,2013年开源的 Docker 容器引擎,被开发者所广泛熟悉,到如今发展成为包含容器云
PaaS 等一系列商业化应用实践。
容器技术具有占用资源少、部署快、易迁移等特点,容器可以理解为隔离环境的“运行时”,这也很好诠释了
Docker 集装箱的理念 — Build, Ship and Run。容器看做是一个简易版的 Linux
环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。
云原生价值的最大体现之一在于对企业 DevOps 的支持,它将企业开发运维部门很好地结合起来,以前企业的开发、测试、运维是相互割裂的状态。我们所提倡的
DevOps 理念将打破开发、测试、运维部门之间的隔阂,让整体的应用交付变得更快速。从技术角度看,DevOps
涵盖了应用的开发、编译、构建、测试、打包、发布的自动化流程,并包含了很多 DevOps 工具链。
云原生的第三个特征是微服务,微服务是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful
API)。以往企业应用主要是面向服务的架构(SOA),SOA 是一种粗粒度、松耦合服务架构,服务之间通过简单、精确定义接口进行通讯,不涉及底层编程接口和通讯模型。它的缺点是架构重,难以利用云的一些特点和优势。微服务倡导细粒度的轻量级应用架构,每一个服务相对独立的,具有轻量级、易迁移、更高效等特性。
容器PaaS的特点及优势
容器云 PaaS 平台是云原生在企业重要的落地形态之一,它包含了 PaaS 本身,以及 DevOps、微服务等。
在 IDC 的时代,用户需要管机房、物理机、包括网络、业务应用。上云之后,我们简化了这种资源的交付流程,用户获取计算、存储、网络资源变的更简单。
发展到 PaaS 的时候,用户不需要去关心底层的基础设施,只需要专注业务应用本身,容器 PaaS
以应用为中心,标准化、自动化应用的构建(Build)、交付(Ship)、部署运行(Run)流程,支撑应用的完整生命周期管理。通过容器云
PaaS 提供的丰富基础服务及之上的 SaaS 服务,提高 IT 设施自服务能力以及新业务的交付效率。
PaaS 最早其实是跟 IaaS 同步发展的,2011年时,国内出现了很多 PaaS 平台,包括
SAE、BAE等。第一代 PaaS 侧重提供支撑应用运行的应用引擎,我们现在所说的容器云 PaaS,则是基于云原生理念,融入
DevOps、微服务,解决了应用的完整生命周期管理问题。
Kubernetes 是容器云 PaaS 平台的基石,它是承载整个 PaaS 的核心。Kubernetes
是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。Kubernetes
未来将会成为企业的云基础设施的重要组成部分,它的目标是让用户快速、简单的开发适合自己的 PaaS 或者
DevOps 平台;随着容器技术的普及,将会有越来越多的企业基于 Kubernetes 作为大规模容器的调度管理引擎,并结合自身的优势打造适合企业的
PaaS 平台。
云原生应用的趋势
关于如何实施云原生,这里简单给大家做一些参考,首先需要对企业 IT 内部有清晰的规划,结合企业自身的
IT 业务体量。很多互联网公司通过开源的 K8S 也能简单支持一些非核心业务,构建容器 PaaS 还需要考虑一些流程,包括前期的无状态服务迁移,后期有状态、重状态的服务。
最先得到商业验证的是 IaaS 和 SaaS,这符合市场客观规律。在云计算进入商业成熟期时,竞争将回归到效率和成本。PaaS
本质上是云计算模型中的能力层,让客户以更高的几率赢得竞争。PaaS 把构建上层应用场景的能力抽象化,降低重复造轮子的风险和成本。基于
K8S 的 PaaS 以应用为中心,容器技术大放异彩,将会成为未来 IT 基础设施的重要组成部分。
根据 Gartner 数据显示,在 IaaS 和 SaaS 逐步成熟的时候,企业越来越强调效率提升,而
PaaS 属于云计算的能力层,已迎来了一个非常好的发展时机。
根据 Google Trand,我们可以看到在去年7月份的时候,PaaS 和 IaaS两大代表性的开源项目的活跃度对比,Kubernetes
的活跃度已经超过了 OpenStack,目前仍处于快速发展阶段。
接下来,随着 DevOps 的深化、普及,将会形成更加标准化的应用交付流程。PaaS 会逐步弱化
IaaS 层的一些概念,在某些需求场景下甚至舍弃 IaaS,在物理资源上直接部署 PaaS。微服务、服务网格、APM
等应用侧工具逐步繁荣,用户的重心向业务架构及其治理方向转移。
随着云的类型增多及其复杂性的增加,多云管理、云管平台也会出现强烈需求,另外用户对“云原生”的更多理解,会带动新的开发模式、开发框架的产生,比如
Serverless 等。 |