其他
OAM 与 KubeVela 项目整体捐赠进入 CNCF,让云端应用交付更加简单
项目背景
Aliware
什么是 KubeVela
Aliware
以应用程序为中心- KubeVela 引入了开放应用程序模型(OAM)来作为更高级别的 API,通过高度一致的工作流来捕获面向混合环境的微服务交付的所有信息。包括多集群分发策略、流量调配和滚动更新等运维特征,都声明在应用级别。用户无需关心任何基础设施细节,只需要定义和部署应用即可。
可编程式交付工作流- KubeVela 的模型层是利用 CUE 来实现的。它使得你可以轻松地将应用交付工作流声明为一个 DAG,并将所有步骤和应用部署需求以可编程的方式粘合在一起。这里没有任何限制,原生可扩展。
运行时无关- KubeVela 是一个完全与运行时无关的应用交付与管理控制平面。它可以按照你定义的工作流与策略,面向混合环境交付和管理任何应用组件:包括容器、云函数、数据库甚至 AWS EC2 实例。
项目架构
Aliware
1
控制平面(Control Plane)
控制平面是 KubeVela 本身所运行的位置。正如项目名称所暗示的那样,KubeVela 在实现上利用 Kubernetes 作为控制平面,从而通过控制循环机制来保证大规模应用交付过程的高度自动化和强确定性。在控制平面,用户通过以应用为中心的 API 同 KubeVela 交互来对应用部署进行定义,然后 KubeVela 则根据用户声明的策略和工作流将应用分发到具体的运行时基础设施中去运行。
2
运行时基础设施(Runtime Infrastructure)
运行时基础设施是应用程序实际运行的地方。KubeVela 允许您同时面向基于 Kubernetes 的基础设施(包括本地、托管产品、物联网/边缘/裸机等)和非 Kubernetes 环境(例如公共/私有云)以完全一致的工作流交付和管理应用。注意:KubeVela 本身不工作在运行时基础设施当中。
KubeVela 的使用场景
Aliware
KubeVela 的典型应用场景包括:
KubeVela 的近期 Roadmap
Aliware
Helm、Kustomize 和 Terraform 组件的进一步完善,模型层进一步升级从而在设计和实现上确保 KubeVela 可以“交付一切”。 新增部署环境初始化 (Initializer) 能力,比如 Kubernetes 集群、系统插件、公共服务 (Load Balancer, VPC, DB) 等部署环境的拉起和维护。 进一步完善应用发布过程的 Workflow 能力,让用户可以定义面向过程的运维命令。部分运维能力也将配合 Workflow 方向改造,包括灰度升级、流量管理、多集群分发策略等。 新增配置差异化、数据传递等面向跨环境部署的功能。 完善 Workflow 可插拔能力,用户可以使用自己的能力(比如:灰度发布)来添加或替换 Workflow 中的任何步骤。 KubeVela 安装的 standalone 模式,即可以在单个 Docker 容器/VM 里面运行 KubeVela。 更多同 CI/CD 系统的集成案例等
OAM/KubeVela 社区与生态
Aliware
KubeVela 项目日前已经发布了 v1.0 稳定版,拥有 85 位活跃的社区贡献者,已经被Springer Nature、Salesforce、Agoda、SHEIN、网易游戏、滴普、谐云和风变科技等国内外超过 11 家领先企业开始应用在实际生产环境,Oracle Cloud 已经对外提供了基于OAM 的企业级应用平台。
2021 年 5 月,由中国信息通信研究院等 10 余家单位联合发起的《云计算开放应用架构》标准文件在“云原生产业大会”现场发布。该架构以阿里云、微软云联合发起的开源项目“开放应用架构模型(Open Application Model,以下简称 OAM)”为实现基础,旨在为云端应用管理者提供统一的应用描述规范及开放应用程序能力管理框架,以期推动简洁、高效、可控的云原生应用管理与交付方式在更多行业和企业中的大规模落地。
KubeVela 社区欢迎所有对云原生应用管理与交付感兴趣的开发者一起加入进来!
欢迎访问官网 kubevela.io,加入社区群组,学习/Star/使用 KubeVela; 如果您已经在使用 OAM/KubeVela,欢迎在社区案例登记 issue(https://github.com/oam-dev/kubevela/issues/1662)留下您的信息,让社区知道您最真实的需求。
在捐赠进入 CNCF 之后,我们相信一个透明、开放、中立的 KubeVela,将持续致力于打造统一、标准、跨云的应用管理和交付体验,让云端应用交付更加简单!
﹀
﹀
﹀