zl程序教程

您现在的位置是:首页 >  其他

当前栏目

k8sailor - 用 go 写一个 k8s 后台(第一季完结)

2023-02-18 16:39:37 时间

要写好一个前端, 确实不容易, 开篇牛皮吹大了。以后有缘再回来搞前端吧。

后端中, 关于 deployment 的常见工作基本都覆盖了。其他 workloads 套路类似, 就没搞了。

  1. informer 订阅到本地保存。
    1. 结合 ws 可以实现主动推送, vue3 页面监控到数据变化, 自动重新渲染页面, 不刷新也可以更新数据。(当然,这块没做)
  2. deployment 的创建删除。
  3. service 抽象
  4. ingress 抽象

目录结构

.
├── cmd
│   └── k8sailor  // 启动命令
├── demo  // 没用
├── docs   // 所有文档
│   └── assets
├── internal  
│   ├── apis   // api 层, 和前端交互
│   ├── biz   // service / Biz 层, 业务逻辑c处理
│   ├── k8sdao  // dao 层, 数据处理
│   └── k8scache  // 通过 informer 订阅回来的数据保存到这里。 整理应该算  数据库+dao 层
├── pkg
│   ├── confgin   // 简单封装了 gin 的启动
│   └── confk8s    // 简单封装了 k8s 的连接
└── webapp   // 前端代码

丑爆了的前端

基于 ns 下的所有 deployment 列表

deployment 详情页面

还算将就的后端

github 项目地址在: https://github.com/tangx/k8sailor

为了方便回顾和复现。 已经严格按照章节进行了 tag 。

公众号所有文章在这里, 后期有一些前端的文章没发出来, 确实太low, 不知所言。但 github 上有所有的操作和思考记录,包括前后端。