开发者社区> 问答> 正文

KubeVela 是如何快速构建用户使用界面的?

KubeVela 是如何快速构建用户使用界面的?

展开
收起
游客2k7fijmpxy3ik 2022-03-15 22:51:10 1841 0
1 条回答
写回答
取消 提交回答
  • 作为平台的最终用户,业务团队就可以通过某种方式使用这些抽象来交付和管理应用了。在这一层,KubeVela 不会做任何约束,相反,它的目标是让抽象能够被直接透出在用户的使用界面上,这样,当平台团队对这些抽象进行了调整之后,业务用户就可以立即使用到最新的抽象,不需要对系统做任何更新或者升级。

    在具体执行上,KubeVela 会给上述抽象自动生成 JSON schema,这个 JSON schema 的内容,就是该抽象允许用户填写的参数列表和类型。所以无论是图形界面,还是其他用户界面,就可以直接使用这个 JSON schema 渲染出用户表单,甚至生成使用文档。

    比如前面解耦 Sidecar 容器定义的例子,KubeVela 就会为用户暴露出两份 JSON schema:一个用来定义业务容器的参数列表,一个用来 Sidecar 容器的参数列表,前端就可以渲染成两个独立的表单来供用户填写。

    正是上述 IaC 抽象 + 自动生成 Schema 的机制,让基于 KubeVela 构建面向用户的使用界面不仅变得非常简单,而且还高度可扩展:这些抽象背后的模板只要被平台管理员修改,就会立刻体现在用户的图形界面表单上,根本不需要进行系统升级和重新上线。

    在 KubeVela 中,它内置了一个简化版的图形界面,叫做 Appfile,它其实就是把上述抽象的 schema 以 YAML 的方式展示了出来,从而允许用户进行修改和配置,在下面的例子中,我们可以形象的看到每一个“能力抽象”(route,autoscaler 等等)在 Appfile 如何体现为一个个可配置项的。

    2022-03-15 22:59:52
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
《基于 Kubernetes 与 OAM 构建统一、标准化的应用管理平台》 立即下载
如何创建一个成功的(在业务和开发中)开源项目 立即下载
京东JDOS2.0平台有状态服务编排实践 立即下载