阿里云代理商-阿里云服务器-阿里云数据库-重庆典名科技

云原生基础设施的未来趋势

发布时间: 2020-06-15 15:38:40文章作者: 网站编辑阅读量: 332
  云原生基础设施的未来趋势
  
  站在容器角度,我们看到未来云原生基础设施的一些技术趋势。
  无处不在的计算催生新一代容器实现
  趋势一:无处不在的计算催生新一代容器实现
  
  在 1988 年,当时施乐 PARC 的首席科学家 Mark Weiser 提出了“Ubiquitous Computing”的概念,“在未来,计算将无处不在”。随着互联网的发展和进化,5G, AIoT 等新技术的涌现,随处可见的计算需求已经成为现实,无处不在地计算正在改变我们的世界。
  

  针对不同计算场景,容器运行时有不同的需求。比如在传统数据中心,基于操作系统虚拟化的 RunC/Docker 容器可以很好地满足大部分业务需求。如何提升更好的安全隔离能力,KataContainer,Firecracker, gVisor, Unikernel 等新技术层出不穷。但是没有任何一款容器技术可以在安全隔离性、执行效率和通用性上都做到完美。我们在相当长的一个历史阶段,依然可以看到多种技术路线并存和多彩纷呈的竞争。OCI(Open Container Initiative)标准的出现,可以对不同的技术采用一致的方式进行容器生命周期管理,进一步促进了容器引擎技术的持续创新。

云原生基础设施的未来趋势7

  
  其中几个主要的趋势:
  
  基于 MicroVM 的安全容器的占比将逐渐增加,可以提供更高的安全隔离能力。虚拟化和容器技术的融合,已经成为了一个重要趋势。在公共云上,比如 AWS 的 Firecracker 已经成为 Lambda/Fargate 等 Serverless 云服务的基础设施。阿里云的袋鼠容器引擎,已经成为 ECI/ASK 的基础。
  
  基于软硬一体设计的机密计算容器开始展露头角。比如,阿里云安全、系统软件、容器服务团队和蚂蚁可信原生团队共同推出了面向机密计算场景的开源容器运行时技术栈 inclavare-containers 支持基于 Intel SGX 机密计算技术的机密容器实现,如蚂蚁的 Occlum,开源社区的 Graphene 等 Libary OS。降低机密计算的技术门槛,简化可信应用的开发、交付和管理。
  
  OS 的虚拟化创新也从未停步,从 Linux 4.5 内核开始 cgroup v2 接口在逐渐成熟,将进一步完善了资源隔离性。Docker 也发布了 rootless 模式,可以更好利用 Linux 操作系统的安全能力来提升容器的安全性。
  

  WebAssembly 是新一代可移植、轻量化、应用虚拟机,在 IoT,边缘计算,区块链等场景会有广泛的应用前景。在服务器端,WebAssembly 是容器的颠覆者还是同盟者?大家会有不同的观点。我个人倾向于后者,WASM/WASI 可以成为一个跨平台的容器实现技术。近期 Solo.io 推出的 WebAssembly Hub 就是将 WASM 应用通过 OCI 镜像标准进行统一的管理和分发,可以很好地应用在 Istio 服务网格生态中。

  
  趋势二:云原生操作系统开始浮现
  

  Kubernetes 已经成为云时代的操作系统。我们可以对比一下经典的 Linux 和 Kubernetes 的概念模型,他们都是定义了开放的、标准化的访问接口;向下封装资源,向上支撑应用。

云原生基础设施的未来趋势6

  
  它们都提供了对底层计算、存储、网络、异构计算设备的资源抽象和安全访问模型。可以根据应用需求进行资源调度和编排。Linux 的计算调度单元是进程,调度范围限制在一台计算节点。而 Kubernetes 的调度单位是 Pod,可以在分布式集群中进行资源调度,甚至跨越不同的云环境。
  云原生基础设施的未来趋势4
  在初期,Kubernetes 上主要运行着无状态的 Web 应用。随着技术的成熟和社区的发展,我们看到更多的有状态应用和大数据 /AI 应用负载逐渐迁移到 K8s 上。目前企业的大数据业务还是被 YARN 等调度技术主导,但是 K8s 已经在大数据社区得到更多的关注。Flink,Spark 等开源社区和一系列商业公司如 Cloudera、Databricks、星环都开始加大对 K8s 的支持力度。
  
  统一技术栈提升资源利用率:多种计算负载在 K8s 集群统一调度,可以有效提升资源利用率。Gartner 预测“未来 3 年,70% AI 任务运行在容器和 Serverless 上。” AI 模型训练和大数据计算类工作负载需要 K8s 提供更低的调度延迟、更大的并发调度吞吐和更高的异构资源利用率。针对这些挑战,华为推出了 Volcano 项目,提供了一个针对数据计算类任务的独立调度器。阿里云在和 K8s 上游社区共同合作,在 Scheduler V2 framework 上,通过扩展机制增强 K8s 调度器的规模、效率和能力,具备更好的兼容性,可以更好的支撑多种工作负载的统一调度。
  
  统一技能栈降低人力成本:K8s 可以在 IDC、云端、边缘等不同场景进行统一部署和交付。云原生提倡的 DevOps 文化和工具集可以有效提升技术迭代速度。整体上降低人力成本。
  
  加速数据服务的云原生化:由于计算存储分离具备巨大的灵活性和成本优势。数据服务的云原生化也逐渐成为趋势。容器和 Serverless 的弹性可以简化对计算任务的容量规划。结合分布式缓存加速(比如 Alluxio 或阿里云 Jindofs)和调度优化,也可以大大提升数据计算类和 AI 任务的计算效率。
  
  阿里云计算平台和容器服务团队已经在多个领域共同探索云原生大数据 /AI 场景的产品技术创新。
  
  趋势三:在云端,Serverless 技术逐渐融入主流
  
  除了 FaaS 的快速发展,Serverless 和容器技术也开始融合,尤其是得到了云厂商的高度关注。通过 Serverless 容器,一方面可以根本性解决 K8s 自身的复杂性,让用户无需受困于 K8s 集群容量规划、安全维护、故障诊断等运维工作;一方面进一步释放了云计算的能力,将安全、可用性、可伸缩性等需求下沉到基础设施实现,可以帮助云厂商形成差异化竞争力。
  
  阿里云在 2018 年 5 月推出 ECI(Elastic Container Instance 弹性容器实例),ASK (Alibaba Cloud Serverless Kubernetes) 等产品,并在 2019 年 2 月正式商业化。目前业界所有公有云厂商都推出了 Serverless 容器产品,除阿里云 ASK/ECI 外,还包括 AWS Fargate, Azure ACI,华为 CCI,腾讯 EKS, GCP CloudRun 等。
  
  在 AWS 的调研中,在 2019 年 40% 的 ECS(AWS 弹性容器服务)新客户采用 ECS on Fargate 的 Serverless Container 形态。
  
  Serverless 容器可以和 FaaS 形成良好的互补。Serverless 容器支持容器镜像作为应用载体,支持各种类型应用,比如无状态应用、有状态应用、计算任务类应用等。大量用户现有的应用无需修改即可部署在 Serverless Container 环境中。
  
  在 Gartner 在 2020 年 Public Cloud Container Service Market 评估报告中把 Serverless 容器作为云厂商容器服务平台的主要差异化之一,其中将产品能力划分为 Serverless 容器实例和 Serverless Kubernetes 两类。这与阿里云 ECI/ASK 的产品定位高度一致。Gartner 在报告中也谈到 Serverless 容器业界标准未定,云厂商有很多空间通过技术创新提供独特的增值能力,其对云厂商的建议是:
  
  扩展 Serverless 容器应用场景和产品组合,迁移更多普通容器 workload 到 serverless 容器服务。
  
  推进 Serverless 容器的标准化,减轻用户对云厂商锁定的担忧。
  
  趋势四:动态、混合、分布式的云环境将成为新常态
  
  上云已是大势所趋。但是对于企业客户而言,有些业务由于数据主权和安全隐私的考虑,会采用混合云架构。一些企业为了满足安全合规、成本优化、提升地域覆盖性和避免厂商锁等需求,会选择多个云供应商。混合云 / 多云架构已经成为企业上云的新常态。Gartner 指出,“到 2021,超过 75% 的大中型组织将采用多云或者混合 IT 战略。”
  
  此外,随着 5G 时代的临近,AIoT 应用快速发展,一个万物智联的时代开始到来。边缘计算可以更好地链接物理世界和数字世界,为应用提供更低的网络延迟,更高的网络带宽和更低的网络成本。边缘计算将成为企业云战略的重要组成部分,我们需要有能力将智能决策、实时处理能力从云延展到边缘和 IoT 设备端。
  
  在 Gartner 发布的《2020 年基础架构和运营的十大趋势》中提出了分布式云的趋势。随着云平台已经成为企业数字化转型的创新平台,一个变化随之产生——云正在靠近它们。在分布式云中,公有云的服务能力可以位于不同的物理位置,而公共云平台提供者会负责服务的运营、治理、更新和演变。
  
  然而不同环境的基础设施能力、安全架构的差异会造成企业 IT 架构和运维体系的割裂,加大云战略实施的复杂性,增加运维成本。在云原生时代,以 Kubernetes 为代表的云原生技术屏蔽了基础设施的差异性,推动了以应用为中心的混合云 / 分布式云架构的到来。可以更好地支持不同环境下应用统一生命周期管理和统一资源调度。Kubernetes 已经成为企业多云管理的事实基础。
  
  2019 年 Google 推出 Anthos 多云应用平台,其基础就是 GKE K8s 托管服务。 微软在的 Build 2020 会议上宣布了 Azure Arc 支持 Kubernetes 集群的预览版。微软 CEO 萨蒂亚·纳德拉将 Azure Arc 描述为混合云计算的控制平面,可以统一管理云上、边缘和 IDC 中运行的 Kubernetes 集群,以及 Windows 和 Linux 服务器实例。
  
  阿里云容器服务 ACK 去年 9 月份发布了混合云 2.0 架构,提供了完备的混合云 K8s 管理能力。
  云原生基础设施的未来趋势2
  首先 ACK 提供了统一集群管理能力,除了可以管理阿里云 K8s 集群之外,还可以纳管用户在 IDC 的自有 K8s 集群和其他云的 K8s 集群。利用统一的控制平面实现多个集群的统一的安全治理、可观测性、应用管理、备份恢复等能力。比如利用日志服务、托管 Prometheus 服务,可以无侵入的方式帮助用户对线上、线下集群有一个统一的可观测性大盘。利用云安全中心,AHAS 可以帮助客户在混合云的整体架构中发现并解决安全和稳定性风险。
  
  此外托管服务网格 ASM 提供统一的服务治理能力,结合阿里云云企业网 CEN、智能接入网关 SAG 提供的多地域、混合云网络能力,可以实现服务就近访问,故障转移,灰度发布等功能。
  
  ACK 也提供了统一的应用交付能力,通过 GitOps 方式可以将应用安全、一致、稳定地发布在多个不同的云环境中。配合网格 ASM 提供的流量管理能力,可以支持云容灾、异地多活等应用场景,提升业务连续性。
  云原生基础设施
  2019 年六月,阿里云 ACK@Edge 边缘容器发布。边缘 K8s 容器集群中可以同时管理云端 ECS 和边缘 ENS 节点、以及 IoT 设备。我们在 K8s 基础之上,针对边缘计算场景的特殊性,提供了单元化隔离和断连自治、自愈和安全等增强能力。借助 ACK@Edge,我们可以将一些需要低延迟处理的应用部署在边缘节点实现就近访问,比如,我们可以把 AI 模型预测和实时数据处理放置到边缘,进行实时智能决策;而将模型训练,大数据处理等需要海量算力应用放到云端。可以极大简化云边端一体应用协同。
  
  在 2020 年 5 月底,我们将 ACK@Edge 的核心组件开源 — OpenYurt,该项目的核心理念是『Extending your native Kubernetes to edge.』,在架构上保持了对原生 K8s 无侵入的设计,通过一系列组件和工具,提供了对边缘计算场景良好的支持能力。推出该开源项目,一方面可以把我们在云原生边缘计算领域的积累回馈社区,另一方面我们希望加速云计算向边缘延伸的进程,并和社区共同探讨未来云原生边缘计算架构的统一标准。
联系客服免费领取更多阿里云产品新购、续费升级折扣,叠加官网活动折上折更优惠