Files
aiops/ROADMAP.md
T
attacker b3d2011243 feat(k8s): M1 SyncCluster 增加 metrics 采集
后端:
- SyncCluster 中调 GetNodeMetrics() 获取 metrics-server 数据
- 节点 INSERT 增加 cpu_usage/memory_usage 百分比字段
- 新增 parseCpuNanoToMilli / parseMemKiToMi 辅助函数
- 采集 Pod metrics(为 M2 准备)

前端:
- KubernetesClusterDetail 删除硬编码 resourceData mock
- 改为从节点 metrics 实时计算集群 CPU/内存使用率
- 图表 Y 轴固定 0-100 域,底部显示百分比数值

新增文档:
- ROADMAP.md / TDD_PLAN.md / PROJECT_EVALUATION.md
2026-06-21 21:45:42 +08:00

3.1 KiB
Raw Blame History

K8s 管理功能演进路线图

每个模块 = 1 个 cron 周期(6h)可完成的中等粒度功能。完成后更新状态。

当前冲刺:P0 — Metrics 数据贯通

M1: SyncCluster 增加 metrics 采集 [in_progress]

目标: 同步时采集 node/pod metrics,写入 DB 的 cpu_usage/memory_usage 字段

后端改动:

  • SyncCluster handler 中,client.ListNodes() 之后调 client.GetNodeMetrics()
  • 将 CPU(nanocores→m) / Memory(Ki→Mi) 换算后写入 kubernetes_nodes.cpu_usage / memory_usage(百分比)
  • 同理调 client.GetPodMetrics() 写入 Pod 的资源使用

前端改动:

  • KubernetesClusterDetail.tsx: 删除 resourceData 硬编码,改为从 API 获取真实数据(或展示当前 metrics 快照)
  • 资源分布卡片读取 cluster 实际计数(node_count/pod_count 已有)

验收标准:

  • SyncCluster 后 DB kubernetes_nodes 表 cpu_usage/memory_usage 非零
  • 节点列表页 CPU/内存百分比非零
  • 集群详情页无硬编码 mock 数据
  • curl /kubernetes-clusters/:id 返回的 node_count/pod_count 正确

M2: Pod Metrics 详情页接入 [pending]

目标: Deployment 详情页和 Pod 列表展示真实 CPU/内存使用

改动:

  • 后端 ListPods handler 注入 GetPodMetrics()(类似 ListNodes 已有逻辑)
  • 前端 Pod 列表表格增加 CPU/内存列
  • DeploymentView 容器详情区域读取 metrics

验收标准:

  • Pod 列表有 CPU/内存使用量列
  • Deployment 详情页容器 CPU/内存非 mock

M3: Pod 文件上传 [pending]

目标: PodFileBrowser 增加上传能力

改动:

  • 后端新增 POST .../pods/:pod/files/upload — 用 exec tar 解包写入
  • 前端 PodFileBrowser 增加上传按钮 + 拖拽上传

验收标准:

  • 可上传文件到 Pod 容器内
  • 上传后文件列表刷新可见

M4: ConfigMap/Secret 编辑 [pending]

目标: 目前只读,增加在线编辑能力

改动:

  • 复用已有 UpdateResourceYAMLNS 端点
  • 前端 ConfigMap/Secret 列表增加编辑弹窗(YAML 编辑器)

验收标准:

  • 可在线编辑 ConfigMap 并保存
  • 保存后 K8s 中实际生效

M5: Deployment 暂停更新 + CI/CD 集成 [pending]

目标: 接通顶部菜单的暂停更新和 CI/CD 按钮

改动:

  • 后端 POST .../deployments/:name/pause 和 /resume
  • CI/CD 按钮跳转到已有 Pipeline 页面(传递 namespace+deployment 上下文)

验收标准:

  • 可暂停/恢复 Deployment 滚动更新
  • CI/CD 按钮可跳转到流水线页面

后续规划(P2+)

模块 描述
M6 Node 详情页(PID/容器运行时/分配率)
M7 Service/Ingress 在线编辑
M8 StatefulSet/DaemonSet 详情页(对标 Deployment)
M9 事件聚合 + 告警联动
M10 多集群资源对比看板

状态标记规则

pending → in_progress → done / blocked

每个模块完成后:

  1. 更新本文件状态
  2. 更新 PROJECT_EVALUATION.md 对应行
  3. git commit message 格式: feat(k8s): M1 SyncCluster metrics 采集