Kubernetes vs. Serverless并非零和游戏?

本文涉及的产品
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
函数计算FC,每月15万CU 3个月
简介: 作为令人兴奋和强大的平台,Kubernetes和Serverless完全配得上现在的地位。它们可以通过多种方式为组织提供敏捷性、可扩展性和计算性能方面的巨大提升。

云栖号资讯:【点击查看更多行业资讯
在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来!

作为令人兴奋和强大的平台,Kubernetes和Serverless完全配得上现在的地位。它们可以通过多种方式为组织提供敏捷性、可扩展性和计算性能方面的巨大提升。但是,我们很容易忘记Kubernetes提供了Serverless所没有的优势,反之亦然。成功部署两者的关键是知道何时以及如何确定Kubernetes或Serverless是否提供最佳匹配。

Kubernetes

Kubernetes本身就是为云规模的计算而设计的 ,就像谷歌那样的大规模部署。它已被改编为可以小规模使用,现在大多数大型云提供商都提供该服务——这可以解释Kubernetes在过去几年中的爆炸性增长。根据CNCF的用户调查,Kubernetes的增长远远超过了所有其他形式的编排软件。

image

Kubernetes已成为主流。但正如从大型机转移到客户端服务器一样痛苦,采用完全基于容器的架构仍然存在重大痛点,即使是由Kubernetes编排的架构。扩展不是即时的——你必须等待容器上线,而且仍然存在重大的管理问题。根据CNCF,存储、安全和网络问题是通过Kubernetes部署其架构的人们最关注的问题。

image

Serverless

Serverless架构(在很多方面只是对微服务架构的重新打包和重新镜像),正在与Kubernetes竞争,因为它允许扩展应用程序和部署,而不会出现Kubernetes甚至容器的复杂性和配置问题。

功能即服务(FaaS)Serverless架构仍然需要服务器来运行,更是事件驱动的架构,而容器化应用程序本质上仍然是相当传统的应用程序,只是分成许多较小的部分或服务。使用容器化应用程序,它永远不会完全关闭。即使没有人访问它,容器仍然需要存在并运行。你可以将它们缩小到单个实例,但它们仍然存在并仍然需要成本。

Serverless应用程序,如果没有任何功能请求,可以将成本降低到零。除非明确访问它们,否则它们基本上不再存在。这可以显著降低成本,并且缩放速度也更快。对Serverless应用程序的访问越多,它就扩展得越大。

但Serverless架构将取代容器化应用程序的想法并不合理。并非一切都可以简化为短暂的功能。某些应用程序总是需要能够在一个应用程序运行时保持数据和状态,而这不是Serverless架构的设计目的。

不过,对Serverless的兴趣却在快速增长。根据MarketsandMarkets Research的数据,FaaS市场预计将从2016年的1.88美元飙升至2021年的77.2亿美元。

然而,这不是一场零和游戏,Serverless的增长并不一定预示着Kubernetes和容器的死亡。实际上,它甚至可能扩展Kubernetes的使用,至少可以成为主要的FaaS提供商扩展其Serverless产品的方法。

Serverless架构很可能通过仅仅支付使用的服务而不支付运行一个容器或一组容器所需的开销来进一步降低成本,但是就像所有事情一样,需要进行权衡。不经常访问的Serverless代码虽然运行成本不高,但在运行时(如Java)或底层容器用于服务请求的情况下,可能会遇到延迟增加的问题。这些额外的延迟可能令人无法接受。

然而,从开发人员的角度来看,FaaS可以提高生产力和开发人员的幸福感。开发人员可以更快地将代码分成更小的部分推送到生产中,而无需配置和管理开销,从而提高生产力。

结论

应用程序开发和部署策略,都在不断发展。通常,从一个架构到另一个架构的转移标志着第一个实现的结束,但并非总是如此。至少目前,还没有一个通用的解决方案可以解决在廉价和大规模交付应用程序时遇到的所有问题。与任何部署模型一样,需要在成本、性能和可管理性之间进行权衡。

Kubernetes 以及一般的容器化有其优势,Kubernetes市场的迅速普及和发展证明了它正在满足市场需求。容器化和容器编排需求不会很快消失,但它并不总是正确的解决方案。

Serverless的FaaS填补了市场的需求,并且整体上呈现出显著增长。当然,增长并不一定意味着满足了目的,但市场倾向于自我纠正以弥补这。

Kubernetes vs.Serverless不是零和游戏。Serverless的增长并不表示Kubernetes的死亡。它们在现代应用程序的开发和部署中都发挥着重要作用。在过去的20年中,应用程序部署一直朝着更小、更易管理、更具成本效益和更开发人员友好的架构迈进,没有理由怀疑这种趋势不会持续下去。虽然Serverless可能是将应用程序抽象到其最基本组件的逻辑结论,但并非所有应用程序都能以这种方式提供。与此同时,由于持久性或可扩展性的原因,某些应用程序需要容器,需要编排和管理。

所以说,这两种技术都没有理由不继续显著增长。

【云栖号在线课堂】每天都有产品技术专家分享!
课程地址:https://yqh.aliyun.com/live

立即加入社群,与专家面对面,及时了解课程最新动态!
【云栖号在线课堂 社群】https://c.tb.cn/F3.Z8gvnK

原文发布时间:2020-05-27
本文来自:“51CTO”,了解相关信息可以关注“51CTO

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
5月前
|
SQL 分布式计算 Serverless
鹰角网络:EMR Serverless Spark 在《明日方舟》游戏业务的应用
鹰角网络为应对游戏业务高频活动带来的数据潮汐、资源弹性及稳定性需求,采用阿里云 EMR Serverless Spark 替代原有架构。迁移后实现研发效率提升,支持业务快速发展、计算效率提升,增强SLA保障,稳定性提升,降低运维成本,并支撑全球化数据架构部署。
465 56
鹰角网络:EMR Serverless Spark 在《明日方舟》游戏业务的应用
|
9月前
|
消息中间件 运维 安全
C5GAME 游戏饰品交易平台借助 RocketMQ Serverless 保障千万级玩家流畅体验
游戏行业蓬勃发展,作为国内领先的 STEAM 游戏饰品交易的服务平台,看 C5GAME 如何利用 RocketMQ Serverless 技术,为千万级玩家提供流畅的游戏体验,同时降低成本并提升运维效率。
526 137
C5GAME 游戏饰品交易平台借助 RocketMQ Serverless 保障千万级玩家流畅体验
|
5月前
|
人工智能 Serverless 调度
突破地域限制,实现算力无限供给 —阿里云ACK One注册集群开启多地域Serverless算力调度
本文介绍了阿里云ACK One注册集群多地域Serverless算力调度解决方案,解决传统数据中心在AI时代面临的算力不足问题。方案通过分钟级接入、100%兼容Kubernetes操作及云上Serverless弹性,实现跨地域弹性算力供给,支持高并发请求与模型快速迭代。文中详细描述了快速接入步骤、指定地域调度及动态调度方法,并提供了相关代码示例。该方案助力企业实现AI推理服务的规模化部署,提升商业落地效率。
|
5月前
|
人工智能 Serverless 调度
突破地域限制,实现算力无限供给 -- 阿里云ACK One注册集群开启多地域Serverless算力调度
传统单地域算力难以支撑AI推理场景的高并发实时响应、突发高流量的要求,阿里云容器服务ACK One注册集群推出多地域Serverless算力调度方案完美解决此问题。
|
7月前
|
Kubernetes 监控 Serverless
基于阿里云Serverless Kubernetes(ASK)的无服务器架构设计与实践
无服务器架构(Serverless Architecture)在云原生技术中备受关注,开发者只需专注于业务逻辑,无需管理服务器。阿里云Serverless Kubernetes(ASK)是基于Kubernetes的托管服务,提供极致弹性和按需付费能力。本文深入探讨如何使用ASK设计和实现无服务器架构,涵盖事件驱动、自动扩展、无状态设计、监控与日志及成本优化等方面,并通过图片处理服务案例展示具体实践,帮助构建高效可靠的无服务器应用。
|
弹性计算 Kubernetes 安全
Kubernetes 的架构问题之在Serverless Container中保障应用的安全防护如何解决
Kubernetes 的架构问题之在Serverless Container中保障应用的安全防护如何解决
219 9
|
运维 Kubernetes 大数据
Kubernetes 的架构问题之在Serverless Container场景下尚不支持资源超售如何解决
Kubernetes 的架构问题之在Serverless Container场景下尚不支持资源超售如何解决
123 2
|
4月前
|
资源调度 Kubernetes 调度
从单集群到多集群的快速无损转型:ACK One 多集群应用分发
ACK One 的多集群应用分发,可以最小成本地结合您已有的单集群 CD 系统,无需对原先应用资源 YAML 进行修改,即可快速构建成多集群的 CD 系统,并同时获得强大的多集群资源调度和分发的能力。
142 9
|
4月前
|
资源调度 Kubernetes 调度
从单集群到多集群的快速无损转型:ACK One 多集群应用分发
本文介绍如何利用阿里云的分布式云容器平台ACK One的多集群应用分发功能,结合云效CD能力,快速将单集群CD系统升级为多集群CD系统。通过增加分发策略(PropagationPolicy)和差异化策略(OverridePolicy),并修改单集群kubeconfig为舰队kubeconfig,可实现无损改造。该方案具备多地域多集群智能资源调度、重调度及故障迁移等能力,帮助用户提升业务效率与可靠性。
|
6月前
|
存储 Kubernetes 监控
K8s集群实战:使用kubeadm和kuboard部署Kubernetes集群
总之,使用kubeadm和kuboard部署K8s集群就像回归童年一样,简单又有趣。不要忘记,技术是为人服务的,用K8s集群操控云端资源,我们不过是想在复杂的世界找寻简单。尽管部署过程可能遇到困难,但朝着简化复杂的目标,我们就能找到意义和乐趣。希望你也能利用这些工具,找到你的乐趣,满足你的需求。
570 33

相关产品

  • 函数计算
  • 推荐镜像

    更多