动手搓一个kubernetes管理平台(1)-需求和框架
发布时间:2024年01月16日
先拍个脑袋
市面上对于kubernetes集群的管理平台其实不算少,但常用的就那么几个,比如厚重的rancher,比如老而弥坚的kube-dashboard,以及集成了很多其他功能的kubeSphere等,但和其他开源项目一样,为了满足大多数使用场景,所以会做的相对较重,导致了对其进行二次开发会比较困难,所以在阅读了一些优秀的k8s管理平台的源码后,为什么不自己手搓 一个呢?
1. 需求
在考虑深度需求的时候 ,不妨先想想基础的需求,一个最简单的kubernetes 管理平台,需要哪些功能?
- 全类型资源展示
- 监控数据展示
- 容器TTY
- 容器日志
- 权限管理和审计
- yaml的编辑
- 基本的控制封装(扩容/缩容,排水,打污点等)
上述可以说是对集群管理最基本的功能了,在满足上述功能后,可以再根据业务实际需求进行新需求的封装,比如报表等,这个后面再说。
2. 框架和语言
还是使用常见的MVVM的设计模式,前端使用vue3,后端考虑到需要调用k8s,考虑到client-go的便捷性,所以使用golang作为后端语言,大致的框架如下:
- 前端: Arco Design(字节框架,基于Vue3 + Vite + TS进行封装)
- 后端: Golang+Iris
个人公众号, 分享一些日常开发,运维工作中的日常以及一些学习感悟,欢迎大家互相学习,交流
文章来源:https://blog.csdn.net/zyxpaomian/article/details/135617092
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!