【重磅】Serverless Devs 进入 CNCF 沙箱,成首个入选的 Serverless 工具项目!

本文涉及的产品
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
容器镜像服务 ACR,镜像仓库100个 不限时长
应用实时监控服务-应用监控,每月50GB免费额度
简介: Serverless Devs 是 CNCF 首个 Serverless Tool 项目。未来,Serverless Devs 社区将与更多开发者和用户共建,持续致力于打造无厂商锁定的 Serverless 应用全生命周期管理工具,让 Serverless 更简单,更好用。

近日,经过云原生计算基金会(CNCF)TOC 例会上投票决议,Serverless Devs 正式成为 CNCF 官方沙箱项目。开源开放的 Serverless 开发者平台 —— Serverless Devs 由阿里云开源,致力于为开发者提供强大的工具链体系。通过该平台,开发者不仅可以一键体验多云 Serverless 产品,极速部署 Serverless 项目,还可以在 Serverless 应用全生命周期进行项目的管理,并且非常简单快速地将 Serverless Devs 与其他工具/平台进行结合,进一步提升研发、运维效能。


1.jpeg


Serverless Devs 是 CNCF 首个  Serverless Tool 项目。未来,Serverless Devs 社区将与更多开发者和用户共建,持续致力于打造无厂商锁定的 Serverless 应用全生命周期管理工具,让 Serverless 更简单,更好用。


CNCF TOC 在会议上对 Serverless Devs 作出如下评价:


Davanum Srinivas (CNCF TOC ) 表示如果你是一位普通的开发者,你有很多 Serverless 应用需要运行,你一定希望自主选择去哪个平台运行,这个平台最好有基于不同语言的模版,你可以基于此快速开始。Serverless Devs 就是这样一个平台,它已经准备好了很多模版,帮助开发者在一个Serverless 运行时中进行部署。它让开发者可以轻松开启 Serverless 之旅。

Emily Fox (CNCF TOC ) 认为 Serverless Devs 非常关注开发者的体验体验,同时也非常关注 Serverless 应用在不同云平台的部署。

Serverless Devs 项目地址: https://github.com/serverless-devs/serverless-devs


Serverless Devs 的六个优势


2.png


  • 无厂商锁定:得益于功能的可插拔特性,可以非常简单的支持不同云厂商的项目部署,或者一键部署到不同云平台。目前 Serverless Devs 已经支持了阿里云函数计算 、AWS Lambda 、百度智能云函数计算 、华为云函数工作流 、腾讯云云函数等多云的 FaaS 产品; 


  • 开源形式建设:项目通过开源代码,开放生态进行建设的,开发者可以随时查看和参与 Serverless Devs 开发者工具的贡献,也可以随时随地进行相关组件和应用的贡献。当然,除了这种开源开放的形态,我们也鼓励一些企业级团队,通过 Serverless Registry Model 建设自己的私有 Registry 以定制化某些不便公开的自定义组件; 


  • 功能灵活可插拔:Serverless Devs 开发者工具本身,不具备任何业务能力,所有的业务能力均是通过组件化的形式,进行可插拔式使用,并且每个组件可以根据需要,自定义相对应的命令和功能;开发者可以在一个应用中,选择不同的组件完成对应的业务能力,以满足对不同模块的诉求; 


  • 简单快速上手:通过开放 Serverless Registry 的模型/规范,该项目可以通过应用的模式,为开发者提供多种形式,多种领域以及多种场景的上手案例,帮助开发者快速了解、学习、深入、上手 Serverless 架构; 


  • 应用全生命周期管理:通过组件化的支持,Serverless Devs 可以在应用的全生命周期发挥重要的作用,以 阿里云函数计算的 FC 组件 为例,开发者可以在项目创建、项目的开发、调试、可观测性等多个层面进行项目的建设和管理; 


  • 良好的集成与被集成性:项目具有非常好的集成性与被集成性,可以通过组件化的支持,非常简单的与传统的生态进行有机结合。同时,Serverless Devs 开发者工具也可以非常简单的被集成到海量的自动化流程中; 


设计哲学


Serverless Devs 是一个开源开放的 Serverless 领域的工具链项目,他不仅仅表示单纯的某个命令行工具,在一定程度上指的是一个完整的工具链体系。


3.png


在 Serverless Devs 中,拥有两个角色:


  • 开源贡献者:开源贡献者将按照 Serverless Package Model 进行组件/应用的开发 ,并将内容发布到Serverless Regsitry 中,既可以被更多人所使用; 


  • Serverless 开发者:通过开发者工具(包括命令行工具以及桌面端等工具),进行应用的初始化,以及组件的使用;通过开发者工具,将业务按照预期部署到线上;  


除此之外,在 Serverless Registry 中,有两种形态的 Package(组件和应用):Component 和 Application:


  • Component:指的是组件;是由 Package developer 开发并发布的符合 Serverless Package Model 规范的一段代码,通常这段代码会在应用中被引用,并在 Serverless Devs 开发者工具 中被加载,并按照预定的规则进行执行某些动作。例如,将用户的代码部署到 Serverless 平台;将 Serverless 应用进行构建和打包;对 Serverless 应用进行调试等;  


  • Application:指的是应用;可以由 Package developer 公开发布到 Registry,以供更多人学习和使用,例如某位贡献者贡献了一个猫狗识别的案例到 Registry;也可以由 Serverless developer 开发,例如某人开发了一个 人脸识别的应用;通常情况下一个应用可以引用一个或者多个组件,并通过 Serverless Devs 开发者工具部署到 Serverless 平台,例如我开发了一个猫狗识别的应用,在这个应用中引用了 Lambda 组件帮助我将部分业务逻辑部署到 FaaS 平台,同时我也引用了 Website 组件帮助我把前端业务代码部署到对象存储中; 


Serverless Devs 的模型设计原则,是希望可以通过更加简单、科学、规范的 Serverless 工具链体系,让开发者更专注于业务逻辑,提升 Serverless 应用开发、部署、运维效率,通过该模型。开发者可以通过一种更灵活、更通用的方法使用不同云厂商以及开源的 Serverless 产品,进而更高效、更简洁、更便利的实现 Serverless 应用管理。


成长历史


4.png


如果说 Serverless 提升了传统应用的开发效能,那么 Serverless Devs 开发者工具就是提升了 Serverless 应用开发的效能。随着时间的发展,Serverless Devs 更是从简单的单纯的效能提升,变成了更加规范、更加科学的效能提升。我们真切希望可以通过 Serverless Devs 的工具链模式和思路,为应用的开发,传统项目上 Serverless 架构提供巨大的便利和更科学的管理:


  • 2020 年 10 月 23 日,Serverless 开发者平台 Serverless Devs 正式开源;
  • 2020 年 11 月,Serverless Devs 被 CNCF Landsacpe 收录, 成为国内首个进驻的 Serverless 工具;
  • 2020 年 11 月,Serverless Developer Meetup 首召开,成 Serverless 开发者技术新渠道;
  • 2020 年 11 月,入围 InfoQ 评选 2020 年度十大开源新锐项目;
  • 2021 年 4 月,Serverless Developer Meetup 在上海召开,并正式发布 Serverless Devs 2.0;
  • 2021 年 7 月,Serverless Developer Meetup 在杭州召开,阿里云函数计算团队在会上正式发布端云联调、桌面客户端等功能;
  • 2021 年 10 月,在 2021 OpenInfra Days China 会议上,Serverless Devs 带来了《Serverless Devs:Serverless 全生命周期的工具链建设》的主题演讲;
  • 2021 年 12 月,Serverless Developer Meetup 在深圳召开,并尝试性的对外展示了 Serverless Devs Model;
  • 2022 年 5 月,Serverless Devs Model 作为 Serverless 工具链模型最佳实践,亮相信通院云原生产业大会;
  • 2022 年 9 月,Serverless Developer Meetup 在杭州召开;Serverless Devs 在云原生计算基金会(CNCF)的 TOC 例会上投票决议通过,正式成为 CNCF 官方沙箱项目;


未来展望


Serverless Devs 将会在未来支持:


  • 支持更多的云厂商,云产品;
  • Hosted:Azure,Google Cloud Platform
  • Installable:Knative,OpenWhisk,Kubeless,Laf 


  • 功能支持:
  • Serverless Devs K8s Controller
  • 编辑器插件(VScode Plugin)
  • Logs 能力完善(Serverless Devs Logs)
  • 云执行环境(Serverless Devs Cloud)
  • 全局行为能力(Global Actions) 


  • 其他规划:
  • 更多形式的 Serverless 服务支持,如 Serverless Application Hosting 模型;
  • 支持更多 BaaS 产品;
  • 探索 IaC 方向;
  • 与 Terraform 结合;


欢迎参与贡献


  • Serverless Devs Repo:

https://github.com/Serverless-Devs/Serverless-Devs


  • Serverless Devs 官网:

https://www.serverless-devs.com/


  • Serverless Devs 文档:

https://docs.serverless-devs.com/


  • Serverless Regsitry:

https://registry.serverless-devs.com/


  • Serverless Devs Model:

https://docs.serverless-devs.com/sdm/readme


5.png

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
6月前
|
缓存 Serverless 开发者
serverless devs部署问题之push image失败如何解决
Serverless部署是指将应用程序部署到无服务器架构中,该架构允许开发者专注于代码而无需关心底层服务器的运行和维护;针对Serverless部署过程中可能遇到的挑战,本合集提供全面的指南和最佳实践,帮助开发者顺利实现应用的无服务器化部署。
120 1
|
3月前
|
Serverless 对象存储
现代化 Web 应用构建问题之配置Serverless Devs的秘钥信息如何解决
现代化 Web 应用构建问题之配置Serverless Devs的秘钥信息如何解决
40 1
|
3月前
|
缓存 JavaScript Serverless
阿里云云效产品使用合集之如何在Serverless Devs阶段指定Node.js版本
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
4月前
|
人工智能 运维 机器人
函数计算产品使用问题之怎么使用Serverless Devs创建GPU函数
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
6月前
|
JavaScript 前端开发 Cloud Native
报名开启!2024 开源之夏丨Serverless Devs 课题已上线!
2024 年,Serverless Devs 再次加入中国科学院软件研究所开源软件供应链点亮计划支持下的系列高校开源活动——开源之夏 2024。
|
JavaScript jenkins Serverless
Serverless Devs 命令行新玩法
Serverless Devs 命令行新玩法
|
6月前
|
人工智能 JavaScript 小程序
Serverless 应用引擎常见问题之函数计算安装serverless devs成功了但是配置密钥这步一直不成功如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
|
6月前
|
监控 Serverless API
Serverless Devs是一个开源的Serverless应用全生命周期管理工具
Serverless Devs是一个开源的Serverless应用全生命周期管理工具
200 1
|
6月前
|
JavaScript Serverless 测试技术
函数计算怎么实现本地部署?如何本地部署Serverless Devs?
函数计算怎么实现本地部署?如何本地部署Serverless Devs?
408 1
|
Serverless
使用Serverless Devs部署函数计算时
使用Serverless Devs部署函数计算时
173 1

相关产品

  • 函数计算