KubeVela 为 CNCF 孵化器带来软件交付控制平面能力

简介: KubeVela 为 CNCF 孵化器带来软件交付控制平面能力

CNCF TOC(Technical Oversight Committee,技术监督委员会)已经投票接受 KubeVela 作为 CNCF 的孵化项目。

image.png

KubeVela[1]是一个应用交付引擎,也是基于 Kubernetes 的扩展插件,它可以让你的应用交付在当今流行的混合、多云环境中变得更加简单、高效、可靠。KubeVela 可以通过基于工作流的应用交付模型来编排、部署和操作工作负载和云资源。KubeVela 的应用交付抽象由 OAM[2](Open Application Model,开放应用模型)提供支持。

image.png

KubeVela 项目的前身是 oam-kubernetes-runtime[3]项目,它由来自八家不同组织的开发者一同在社区发起[4],包括阿里云、微软、Upbound 等。它于 2020 年 11 月发布正式对外开源,2021 年 4 月发布了 v1.0,2021 年 6 月加入 CNCF 成为沙箱项目。该项目目前的贡献者来自世界各地,有超过 260 多名贡献者[5],包括招商银行、滴滴、京东、极狐 GitLab、SHEIN 等。


“KubeVela 开创了一条跨多云/多集群环境交付应用程序的道路,具有统一且可扩展的抽象。”CNCF TOC Sponsor 张磊表示:“这项创新开启了下一代软件交付体验,填补了现有社区生态应用交付的‘最后一公里’,该实践专注于更简单的‘部署’而不是复杂‘编排’。我们很高兴在 CNCF 社区中能涌现出更多以应用为中心的工具/平台,并期待看到 KubeVela 的采用在快速发展的应用交付生态系统中发展到一个新的水平。”


KubeVela 目前已被多家公司所采纳,被用于大部分的公共云以及内部部署的生产中。大多数用户采用 KubeVela 作为他们的内部“PaaS ”,作为 CI/CD 流水线的一部分,或者作为一个可扩展的 DevOps 内核来构建他们自己的 IDP。公开采用者[6]包括阿里巴巴,使用 KubeVela 作为核心,进行跨混合环境交付和管理应用;字节跳动,使用 KubeVela 和 Crossplane 提供进阶的游戏 PaaS 能力;招商银行,利用 KubeVela 搭建混合云应用平台,统一从搭建、发布、运行的全流程;以及其他更多行业的公司。


“我们发现现在运维、安全、可观测等能力,随着对应开源工具和云服务的出现,逐渐走向标准化。”阿里云 aPaaS & Serverless 团队的负责人司徒放说,“这些能力可以被集成到应用开发工具链上,也可以融入到应用交付流程里。这样开发人员可以自助使用、轻松配置、自动触发。并且他能从流程里得到更快的反馈,从而大幅提升迭代效率。KubeVela 非常适合做这类应用交付流程的整合和定制,是平台工程的最佳实践。”


“KubeVela 使招商银行能够快速建立大规模统一的 OAM 云原生应用管理平台,降低金融科技云的复杂性,加快现代应用的标准化开发和交付,”招商银行高级架构师兼 KubeVela 维护者徐佳航表示。“KubeVela 提供了应用模型和可编程 CRD、基于工作流程编排的应用交付、可观测性和配置功能,能够更好地赋能云原生应用和 CNCF 生态系统。”

image.png

主要组件

  • 是 KubeVela 的主要组成部分,也称为 KubeVela 控制平面。它为创建、编排和交付 OAM 应用程序提供了控制器(operator)和 webhook。7][Vela Core
  • Vela Workflow[8]引擎基于 CUE 编写的步骤完成编排和执行。这是一个公共库,可以作为独立的引擎工作,也可以在 KubeVela 应用程序中运行。
  • KubeVela CLI提供了各种命令来帮助你操作应用程序,例如管理定义、查看资源、重新启动工作流和滚动版本。
  • VelaUX[9]是 KubeVela 的 Web UI。它将业务逻辑合并到基础 API 中,并为不懂 K8s 的用户提供开箱即用的用户体验。
  • KubeVela 的 Terraform Controller[10]允许用户使用 Terraform 通过 Kubernetes 自定义资源来管理云资源。
  • Cluster Gateway[11]提供统一的多集群访问接口。
  • KubeVela 还拥有一个不断增长的Catalog[12],其中包含 50 多个用于集成的社区插件,包括 ArgoCD、FluxCD、Backstage、OpenKruise、Dapr、Crossplane、Terraform、OpenYurt 等。


显著的里程碑

  • 超过 4.8k GitHub 星星
  • 超过 3.5k 拉取请求
  • 超过 1.6k 提问
  • 超过 290 名贡献者
  • 超过 150 个版本


自从加入 CNCF 沙箱以来,到 v1.7 为止,KubeVela 发布了 7 个小版本,增加了 5 个新组件,包括独立工作流、VelaUX、ClusterGateway、VelaD 和 Vela Prism。贡献者数量从 90+ 增长到 290+,GitHub 星星从 1900+ 增长到 4700+,贡献组织从 20+ 增长到 70+。


“KubeVela 凭借其现代化的开源软件交付控制平台,改善了开发人员在复杂多云环境中的体验。”CNCF 首席技术官 Chris Aniszczyk 表示:"我们期待能支持社区朝着毕业项目的方向不断成长和成熟。"


展望未来, KubeVela 社区计划通过交付工作流改善云资源创建和消费的用户体验,增强混合/多集群场景中整个 CI/CD 交付流程的安全,支持用户使用 KubeVela Dynamic API 轻松与第三方 API 集成,等等。请访问 RoadMap[13]了解更多信息。


“对于用户和贡献者的信任和支持,我们深感谦卑和感激,”阿里云高级技术专家、KubeVela 维护者孙健波说。“KubeVela 高度可扩展的设计非常适合社区多样化的用户场景,为我们的应用交付生态系统带来了强大的引擎。感谢 CNCF 的支持和认可,我相信达到孵化阶段是该项目的一个重要里程碑。KubeVela 维护人员期待与 CNCF 合作,共同实现我们的目标,让在当今的混合环境中部署和运行应用程序变得更容易、更快速、更可靠。”


“多亏了 Kubevela,我们在 Kubernetes 中部署和管理应用程序的方式现在变得更加便捷。”Napptive 首席技术官、KubeVela 维护者 Daniel Higuero 表示:“使用 Application(应用程序)和 Workflow(工作流)作为 顶层概念极大地简化了 Kubernetes 上的常见流程。这种方法的优势,在于它能够简化基本用例,同时通过多租户和多集群支持实现复杂用例。同时,通过与社区插件的可扩展系统相结合,允许它与其他工具集成并添加自定义定义,以根据你的使用案例定制体验。”


“CNCF 社区孵化了大量的云原生操作和原子管理能力,”阿里云技术专家、KubeVela 维护者曾庆国表示。“我们希望通过一个统一的、以应用为中心的概念来整合各种能力,并帮助越来越多的平台开发者,在企业中轻松实现标准化的应用。KubeVela 正在成长为企业践行平台工程的有力帮手。”


“KubeVela 旨在为各行各业提供丰富的云原生基础设施的便利和进步,”阿里云高级工程师、KubeVela 维护者殷达表示。“为了满足现代应用交付需求,KubeVela 一直在探索可扩展和灵活的架构,并添加开创性的想法,包括多集群交付、可编程工作流和自动化可观测能力。KubeVela 还持续关注控制平面的安全性和稳定性,这为社区采用者树立了生产信心。我们预计 KubeVela 的开放性可以使其成为云原生时代的前沿探索者。”


作为 CNCF 托管的项目,KubeVela 是一个中立基金会的一部分,该基金会与其技术利益和更大的 Linux 基金会保持一致,提供治理、营销支持和社区拓展。该项目与其他 35 个项目,包括 Backstage、Cilium、Istio、Knative、OpenTelemetry 等,同样进入孵化阶段[14]。关于每个级别的成熟度要求,请访问 CNCF 毕业标准[15]


写在最后

您可以通过如下材料了解更多关于 KubeVela 以及 OAM 项目的细节:

  • 项目代码库:
    github.com/oam-dev/kubevela
    欢迎 Star/Watch/Fork!
  • 项目官方主页与文档:kubevela.io
    从 1.1 版本开始,已提供中文、英文文档,更多语言文档欢迎开发者进行翻译。
  • 项目钉钉群:23310022;Slack:CNCF #kubevela Channel
  • 加入微信群:请先添加以下 maintainer 微信号,表明进入KubeVela用户群:


image.png

参考资料


[1] KubeVela

https://kubevela.io/

[2] OAM

https://oam.dev/

[3] oam-kubernetes-runtime

https://github.com/crossplane/oam-kubernetes-runtime

[4] 一同在社区发起

https://github.com/kubevela/community/blob/main/OWNERS.md#bootstrap-contributors

[5] 260 多名贡献者

https://kubevela.devstats.cncf.io/d/22/prs-authors-table?orgId=1

[6] 采用者

https://github.com/kubevela/community/blob/main/ADOPTERS.md

[7] Vela Core

https://github.com/kubevela/kubevela

[8] Vela Workflow

https://github.com/kubevela/workflow

[9] VelaUX

https://github.com/kubevela/velaux

[10] Terraform Controller

https://github.com/kubevela/terraform-controller

[11] Cluster Gateway

https://github.com/oam-dev/cluster-gateway

[12] Catalog

https://github.com/kubevela/catalog

[13] RoadMap

https://kubevela.io/docs/roadmap/

[14] 孵化阶段

https://www.cncf.io/projects/

[15] CNCF 毕业标准

https://github.com/cncf/toc/blob/main/process/graduation_criteria.md


点击此处查看 KubeVela项目官网

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
鲁棒优化入门(三)——鲁棒优化工具箱RSOME快速上手与应用实例
本文主要参考RSOME工具箱的用户手册《Users Guide for RSOME》 RSOME的用户手册并不是很长,但一些地方可能不是特别好理解,在这里我主要是通过写博客分享一下我的使用方法,和大家一起学习,也能加深自己的理解。
|
SQL 存储 监控
深入可观测底层:OpenTelemetry 链路传递核心原理
本文会系统讲解链路传递一些基本概念,同时结合案例讲解链路传递的过程。
3457 1
深入可观测底层:OpenTelemetry 链路传递核心原理
|
JavaScript 前端开发 开发者
探索 DrissionPage: 强大的Python网页自动化工具
DrissionPage 是一个基于 Python 的网页自动化工具,结合了浏览器自动化的便利性和 requests 库的高效率。它提供三种页面对象:ChromiumPage、WebPage 和 SessionPage,分别适用于不同的使用场景,帮助开发者高效完成网页自动化任务。
1165 4
|
Arthas 监控 Java
拥抱 OpenTelemetry:阿里云 Java Agent 演进实践
本文介绍了阿里云 Java Agent 4.x 版本在基于 OTel Java Agent 二次开发过程中的实践与思考,并重点从功能、性能、稳定性、兼容性四个方面介绍了所做的工作。同时也介绍了阿里云可观测团队积极参与开源建设取得的丰厚成果。
1172 110
拥抱 OpenTelemetry:阿里云 Java Agent 演进实践
|
存储 搜索推荐 API
探究:Elasticsearch 文档的 _id 是 Lucene 的 docid 吗?
【8月更文挑战第31天】在深入探索Elasticsearch(简称ES)这一强大的搜索引擎时,了解其底层存储机制——特别是与Lucene的关系,对于优化查询性能、设计高效的数据模型至关重要。其中,一个常见且容易引发误解的问题便是:Elasticsearch中文档的_id字段是否直接等同于Lucene的docid?本文将通过图文并茂的方式,详细剖析这一问题,帮助读者理解两者之间的微妙关系。
398 0
|
缓存 算法 Java
Java本地高性能缓存实践
本篇博文将首先介绍常见的本地缓存技术,对本地缓存有个大概的了解;其次介绍本地缓存中号称性能最好的Cache,可以探讨看看到底有多好?怎么做到这么好?最后通过几个实战样例,在日常工作中应用高性能的本地缓存。
|
tengine 自然语言处理 Kubernetes
Nacos2.0的K8s服务发现生态应用及规划
Nacos 是阿里巴巴于 2018 年开源的注册中心及配置中心产品,帮助用户的分布式微服务应用进行服务发现和配置管理功能。随着 Nacos2.0 版本的发布,在性能和扩展性上取得较大突破后,社区开始考虑如何提供更加云原生方向的功能和用法。本次分享主要介绍 Nacos 在 2.0 版本在Kubernetes 环境下对服务发现生态的应用探索成果及后续探索方向的规划。
Nacos2.0的K8s服务发现生态应用及规划
|
存储 测试技术 Apache
阿里云实时计算企业级状态存储引擎 Gemini 技术解读
本文整理自阿里云 Flink 存储引擎团队李晋忠,兰兆千,梅源关于阿里云实时计算企业级状态存储引擎 Gemini 的研究。
127197 4
阿里云实时计算企业级状态存储引擎 Gemini 技术解读
|
消息中间件 存储 监控
RocketMQ x OpenTelemetry 分布式全链路追踪最佳实践
RocketMQ x OpenTelemetry 分布式全链路追踪最佳实践
RocketMQ x OpenTelemetry 分布式全链路追踪最佳实践
|
存储 云安全 监控
12个保护敏感数据的安全解决方案和数据访问最佳实践
数据安全管理是一种维护数据完整性的方法,并确保数据不会被未经授权的人访问或容易受影响的人破坏。
12个保护敏感数据的安全解决方案和数据访问最佳实践