基于OAM与Kubernetes的开放Serverless平台构建
需积分: 5 98 浏览量
更新于2024-06-21
收藏 2.84MB PDF 举报
“藏经阁-基于OAM和Kubernetes 快速构建开放Serverless平台,由阿里云云原生应用平台团队的孙健波撰写,主要探讨了Serverless架构的背景、挑战以及如何利用OAM(Observability, Abstraction, and Management)和Kubernetes构建开放的Serverless平台。”
在当今数字化转型的时代,Serverless架构因其独特的优点逐渐成为云计算领域的热门话题。Serverless的核心理念是以开发者为中心,提供零运维或轻运维的服务,使开发者能够专注于业务逻辑,而无需关心底层基础设施。它还具有极致的弹性,能够快速响应服务负载变化,实现按需扩缩容,甚至能缩容到零,从而降低成本。此外,Serverless简化了部署和更新流程,支持灰度发布和流量管理,使得服务快速上线和迭代成为可能。
阿里云选择基于Kubernetes构建Serverless平台,主要是看中了Kubernetes的几大优势。首先,Kubernetes具备大规模集群管理能力,支持上万个节点和百万Pod,能够满足大型企业的高并发需求。其次,Kubernetes的秒级扩容和智能伸缩确保了高性能,配合如神龙架构和安全容器等技术,提升了服务的稳定性和安全性。再者,Kubernetes支持分钟级资源调度,构建了一个无限的资源池,这为Serverless的弹性提供了坚实的基础。同时,社区围绕Kubernetes已经发展出了一系列Serverless相关的功能,如Istio的流量治理,OpenFaaS的函数即服务,Knative Serving和KEDA的弹性伸缩,以及Argo和Tekton的工作流管理,这些都为构建Serverless平台提供了必要的条件。
目前,社区中的Serverless框架如Knative,是建立在Kubernetes之上的。Knative提供了一套完整的Serverless服务模型,包括Eventing、Building和Serving三个主要部分。Eventing用于处理事件驱动,包括事件注册、订阅和外部系统的接入。Building则关注从源代码到可执行镜像的构建过程。Serving部分则负责服务的生命周期管理,Service作为应用的抽象,通过Configuration来定义期望状态,每次更新都会创建新的Revision,而Route则负责将请求分配到不同的Revision,实现流量的灰度管理和分发。
Knative Serving的资源模型进一步细化了这一过程,Service代表应用的实例,Configuration保存了当前的配置状态,Revision则是Service每次更新的快照,记录了服务的不同版本。Route则是一个策略工具,它可以将流量根据预设规则路由到不同的Revision,便于进行灰度测试和流量控制。
基于OAM和Kubernetes构建的Serverless平台旨在解决传统架构中的运维难题,提升服务的弹性和效率,降低运营成本。OAM作为一种设计原则,可以帮助我们更好地观察、抽象和管理应用,而Kubernetes作为强大的容器编排系统,为Serverless架构提供了强大的基础设施支持。通过结合这两者,开发者可以更加便捷地构建和运行Serverless应用程序,推动企业向云原生时代迈进。
2021-10-16 上传
2021-10-16 上传
2021-02-05 上传
2023-04-02 上传
2024-10-18 上传
2024-11-04 上传
2024-11-04 上传
2023-12-29 上传
2023-08-24 上传
weixin_40191861_zj
- 粉丝: 86
- 资源: 1万+
最新资源
- USB通信结构详细介绍
- 数据导出excel数据导出excel
- 嵌入式WEB服务器及远程测控应用详解V0.1
- 采用RF芯片组的下一代RFID阅读器.doc
- dos常用命令.txt
- Java 3D Programming.pdf
- 多读写器环境下的UHF RFID系统的抗干扰研究.doc
- Linux上安装无线网卡完美方案.doc
- 10款超值价笔记本易PC爆1499
- Jmail组件PDF文档(中文翻译)
- 移植wifi无线网卡到mini2440上全过程.doc
- ModelSim SE中Xilinx仿真库的建立
- 单片机 c语言教程 pdf
- 数据仓库技术综述 数据库
- DWR中文实例讲述文档(从基础到进阶)
- usb 1 协议中文版