fix: 收敛 NC01 内存与 Tekton 留存

This commit is contained in:
Codex
2026-07-16 05:09:50 +02:00
parent db928b6b00
commit 26ac36c320
17 changed files with 1953 additions and 34 deletions
+26
View File
@@ -120,6 +120,32 @@ rm -rf -- /tmp/unidesk-cli-output
- provider host 统一使用 `bun scripts/cli.ts gc remote <providerId> ...`
- 远端长任务必须异步执行,并用 `status --job-id` 短查询,不得维持长 SSH 会话。
### 内存分布与 Kubernetes 留存
先用紧凑 overview 归因真实内存压力:
```bash
bun scripts/cli.ts gc remote <providerId> memory-distribution
```
- 默认输出物理内存、PSS、cgroup、zombie 和 Kubernetes 对象分布;
- swap 单独披露,不能计入 WebProbe 启动资格;
- 需要完整明细时才使用 `--full`
Kubernetes 历史对象手动回收固定使用:
```bash
bun scripts/cli.ts gc remote <providerId> retention plan --limit 500
bun scripts/cli.ts gc remote <providerId> retention run --confirm --limit 500
bun scripts/cli.ts gc remote <providerId> status --job-id <id>
```
- 筛选、保留窗口、分组、批量和级联策略只来自目标节点的 `kubernetesObjectRetention` YAML
- 手动入口与 `policyTimer.includeKubernetesObjectRetention` 自动阶段必须复用同一筛选器;
- 活跃、过新、未知分组、时间不可解析、扫描截断和 Table 形状漂移全部保护;
- 只删除 YAML 指定的根对象,通过 ownerRef 级联,不直接删除下游 TaskRun、Pod、Secret 或 Event
- 自动回收由 `gc remote <providerId> policy plan|install --confirm|status` 管理,周期和单批上限由 YAML 控制。
## WebProbe 低内存人工处置
- 唯一资格指标: