Serverless 终结 Kubernetes?

戳蓝字“CSDN云计算”关注我们哦!

Kubernetes 是基础架构管理的终极解决方案吗?还是说我们更加需要 Serverless?究竟哪种技术能够解救运维团队?不要忘记,NoOps 的世界即将到来。

作者 | Daniele Fontani

译者 | 弯月

封图 | CSDN 下载自 VCG

出品 | CSDN 云计算(ID:CSDNcloud)

以下为译文:

你觉得 Kubernetes 是 DevOps 世界里最好的技术吗?它是终极解决方案吗?当然,这个世界上没有终极解决方案,以前没有今后也不会有,技术都是瞬息万变的,我们需要时刻做好准备。我很喜欢 Kubernetes,很高兴再次讨论这个话题。Kubernetes 是当前 DevOps 世界里最热门的技术。在本文中,我们将共同探讨这样一个问题:

Kubernetes 是基础架构管理的终极解决方案吗?还是说我们更加需要 Serverless?究竟哪种技术能够解救运维团队?不要忘记,NoOps 的世界即将到来。

我认为变革是技术世界里的常态。我们的祖先出门骑马,而我们乘坐飞机。这就是技术进步的象征。

在过去的几年中,技术世界发生了一次小小的革命,越来越多的应用程序从虚拟机移到了容器中,这主要归功于 Kubernetes 部署。 

在这场革命发生期间,还有一个虽小却很强大的技术流行了起来,那就是“Serverless ”。大多数人将其视为恶魔,而有些人则认为它是拯救开发人员于运维噩梦的“白马王子”。下面就让我们一起来看一看这究竟是机遇还是麻烦。

Kubernetes 和 Serverless 之间有什么区别?

Serverless 是一种云模型,可以帮助你摆脱服务器和基础架构的束缚。其目的是省却一定的成本,缩短产品上市的时间,减少运维与开发团队之间的摩擦。具体来说,你可以想象有一堵墙能够吸收你的代码,并负责执行代码,这堵墙就是 Serverless。

最常见的 Serverless 实现是带有 SDK 的无状态容器,负责将你的代码集成到系统中,并根据资源的使用情况向你收费。在大多数情况下,我们只需将我们的函数上传到云(函数即服务,Functions as a Service,即 FaaS),然后通过 HTTP 调用这些函数。主流云提供商都提供了类似的云体验:

  • 亚马逊:AWS Lambda

  • 微软 Azure:Azure Functions

  • 谷歌云:Cloud Functions

当然并不是真的没有服务器。只不过你看不到它们,因为它们被供应商藏了起来,并用它们来提供服务。服务器仍在运行,但是你看不到内存、CPU 或磁盘空间。你只需关注代码,将精力放在真正需要的地方。

那么,什么是 Kubernetes?你可以将 Kubernetes 视为运行分布式系统的框架,这些系统源自 Docker 镜像。Kubernetes 能够满足规模扩展的需求,还能够管理好部署以及负载平衡。Kubernetes 利用简洁且可重复使用的 YAML 文件来书写配置,部署出来的环境可轻松复制。

你只需要更改一些配置文件,就可以全权掌控容器实例(服务和 Pod)、网络以及部署。Kubernetes 的功能包括扩展规模、故障转移以及部署模式等等。

与 Serverless 一样,Kubernetes 可以帮助系统管理员轻松地完成复杂的体系结构。这项技术可以将费时费力的传统部署转变成智能快捷的方式。NoOps 的时代就要来了!

Kubernetes 有哪些优点?

Kubernetes 最大的优势在于,你可以像处理常规服务器一样处理集群,同时还无需管理物理机器。从逻辑上讲,服务器和集群组件是对等的关系。你可以把 Pod 和服务当成虚拟机来实例化。此外,你还拥有网络、存储等等。因此,你可以通过操控底层的集群来深入控制所有组件。

与 Serverless 平台相比,Kubernetes 的优势如下:

  • 与过往技术有良好的兼容性。如果你正在使用容器,那么毫不费力就可以移动到 Kubernetes 上;如果你没有使用容器,那么也只需将应用程序组件容器化。

  • 良好的控制。

  • 供应商的限制较少,Kubernetes 就是单纯的 Kubernetes,而 Docker 容器也只是 Docker 容器而已。从理论来讲,你只需点一下鼠标即可将基础架构移动到其他地方。

  • 可以微调每个组件的功能。

  • 可在自建的基础设施上运行(比如可以用于开发环境,或者极端情况,或者只是你想尝试些疯狂的东西)。

  • 成本预测。你只需支付集群资源的费用,比 Serverless 更好预测。

Serverless 的优点是什么?

Kubernetes 在减少系统管理员工作方面迈出了一大步,但还没有减少到零。Serverless 可以从根本上避免所有系统管理组件,你唯一需要关心的就是源代码。就好像一组乐高积木,将它们拼在一起。每一块都可以单独运行,你只需要让积木块之间正确沟通即可,仅此而已。由于 FaaS 解决方案需要思想上的转变,因此似乎很难实施。在这种情况下,你可以采用一些“软”Serverless 解决方案——无需更改即可直接托管你的应用程序。Heroku 就是这类的一个解决方案,它从服务器和传统的 DevOps 中进行了抽象,提供了无运维、Serverless 的体验,可以促进应用程序的开发,减轻所有托管负担。

Serverless 会终结 Kubernetes 吗?

现如今,Serverless 还是一项很新的技术,第一版的 AWS Lambda 于 2014 年发布。同年,Docker 也迈出了第一步(第一版于 2013 年发布,但我不确定发布时是否可以投入生产环境)。而 Kubernetes 诞生于 2014 年。

因此,我们可以说,Serverless 与容器几乎同时问世,不分伯仲。从这个角度来看,Serverless 并非诞生于 Kubernetes 之后,因此我们不能认为 Serverless 将取代容器。二者只是 Web 应用程序中实现托管的两种不同的方法。也许在某些情况下,你可能更喜欢 Serverless ,而有些时候则会更喜欢 Kubernetes。那么具体选择哪个呢?不得不说这要视具体情况而定。普通的咨询师与优秀的咨询师之间的区别就在于,优秀的咨询师了解许多互补的解决方案,并能够根据实际情况找到最佳解决方案。

总结

在本文中,我们分别讨论了这两种解决方案的优点,你可以根据对这两项技术的了解找到适合自身的最佳解决方案。你可以使用 Google Cloud 等大型云服务,实现任何解决方案。你需要花点时间尝试一下这些工具,并了解它们的优点和缺点。

英文:Is Serverless The End Of Kubernetes?

链接:https://towardsdatascience.com/kubernetes-serverless-differences-84699f370609

作者:Daniele Fontani

译者 :弯月



福利扫描添加小编微信,备注“姓名+公司职位”,入驻【CSDN博客】,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!
推荐阅读:微服务架构何去何从?
疫情肆虐下,程序员用代码告诉你为什么千万不要出门!
终于!孙宇晨和巴菲特吃上 3153 万元的晚餐,还送了一个比特币!
2020年AI如何走?Jeff Dean和其他四位“大神”已做预测!
为什么说 Julia 更优于 Python?
AI 医生“战疫”在前线
真香,朕在看了!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Packt.Kubernetes.for.Serverless.Applications.1788620372.PDF Chapter 1, The Serverless Landscape, explains what is meant by serverless. Also, we will get some practical experience of running serverless functions on public clouds using AWS Lambda and Azure Functions. Chapter 2, An Introduction to Kubernetes, discusses what Kubernetes is, what problems it solves, and also takes a look at its backstory, from internal engineering tool at Google to an open source powerhouse. Chapter 3, Installing Kubernetes Locally, explains how to get hands-on experience with Kubernetes. We will install a local single node Kubernetes cluster using Minikube and interact with it using the command-line client. Chapter 4, Introducing Kubeless Functioning, explains how to launch your first serverless function using Kubeless once the Kubernetes is up and running locally. Chapter 5, Using Funktion for Serverless Applications, explains the use of Funktion for a slightly different take on calling serverless functions. Chapter 6, Installing Kubernetes in the Cloud, covers launching a cluster in DigitalOcean, AWS, Google Cloud, and Microsoft Azure after getting some hands-on experience using Kubernetes locally. Chapter 7, Apache OpenWhisk and Kubernetes, explains how to launch, configure, and use Apache OpenWhisk, the serverless platform originally developed by IBM, using our newly launched cloud Kubernetes cluster. Chapter 8, Launching Applications Using Fission, covers the deploying of Fission, the popular serverless framework for Kubernetes, along with a few example functions. Chapter 9, Looking at OpenFaaS, covers OpenFaaS. While it's, first and foremost, a Functions as a Service framework for Docker, it is also possible to deploy it on top of Kubernetes. Chapter 10, Serverless Considerations, discusses security best practices along with how you can monitor your Kubernetes cluster. Chapter 11, Running Serverless Workloads, explains how quickly the Kubernetes ecosystem is evolving and how you can keep up. We also discuss which tools you should use, and why you would want your serverless functions on Kubernetes.

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值