可以根据应用类型指定对应的yaml模板,通过制作前端页面调用k8s api动态更新资源描述并使其生效,
至于图形编排, 可以自己做个UI, 在前端开发拖拽组合功能并对应到后端需要调用哪些api
以上仅是个人经验
收起以下仅代表个人观点:
大多数初次接触YAML的人都会觉得这类文档模板体验极差,感觉太反人类了,各种对齐、格式,一不小心就语法报错,通常又不能准确定位错误点,对新手来说,这种YAML文本确实很头疼,但是又没法,K8S里面尽是YAML,奈何????
即使真有图形编排解决思路,感觉也是换汤不换药。
解决问题的根本办法,通常就是釜底抽薪。目前,已有大牛发起noYAML运动,虽然还未成气候,但是至少说明确实有很多人不喜欢YAML,而且在使用实际行动来不喜欢。
细数YAML“十宗罪”:
https://arp242.net/weblog/yaml_probably_not_so_great_after_all.html
https://news.ycombinator.com/item?id=17358103
如果希望在K8S上运行微服务,那么有必要了解一些云原生编程语言,如:
Pulumi(https://www.pulumi.com/)
Ballerina(https://ballerina.io/)
对于终端用户而言,或许平台才是你最终需要的。设想你有一个平台引擎,这个平台引擎集成了Docker及其调度引擎K8S,然后你只需要编写业务逻辑代码,然后镜像封装、容器部署调度全部交由平台处理,当然这个过程中各种YAML文件也由平台自动生成,何乐而不为?
那问题就是:有没有这样的平台?
以前就有,但是确实不怎么好用,但是OpenShift V3出来之后,个人认为它就是我们要找的平台。作为终端用户,我个人并不建议直接搞K8S,对K8S有些概念术语上的理解,就可直接上OpenShift V3。K8s和Docker仅是Openshift的kernel,除此之外,OpenShift还集成了很多应用程序编译、部署、交付和生命周期管理的生态圈软件,因此,比起硬上K8S,OpenShift也许才是很多人需要寻找的东西!