K8S 资源到 Rainbond 应用模型的转换原理
核心概念
Rainbond 从 V5.8 版本开始支持直接将原生 Kubernetes 的 YAML 文件或 Helm Chart 部署到平台中。本文档阐述 Rainbond 为何需要进行应用模型转换,以及转换的技术原理和意义。
为什么需要模型转换
Rainbond 和 Kubernetes 在设计理念上存在以下关键差异:
-
应用中心化 vs 资源中心化:Rainbond 围绕"应用"这一核心概念设计,将相关联的多个服务视为一个整体;而 Kubernetes 采用资源中心化的设计,各类资源(Deployment、Service等)相对独立。
-
抽象层次不同:Rainbond 提供了比 Kubernetes 更高层次的抽象,通过扩展 RAM(Rainbond Application Model)模型,在保持易用性的同时提供了必要的灵活性。
-
管理模式差异:Kubernetes 注重全面、精细的资源定义能力,而 Rainbond 优化了常用操作的使用体验,将复杂的资源规格定义转化为直观的界面操作。
这些差异决定了在导入 Kubernetes 资源时必须进行模型转换,以确保两种系统的兼容性和功能完整性。