fix(cluster): 以宁波专用节点替换深圳 Worker

移除深圳节点及中继拓扑,新增第二台宁波 K3s agent 的全互联 WireGuard 接入和严格 UFW 门禁。\n\nWorker Deployment 与容量控制器仅选择 easyai.io/worker=true 节点,使原宁波混部节点退出 Worker 资源预算,生产基线恢复为宁波专用节点与香港节点各一实例。\n\n已通过 Go 全量测试、go vet、gofmt、迁移安全检查、bash -n、ShellCheck、发布脚本测试和 Kubernetes 清单渲染。
This commit is contained in:
2026-08-01 10:47:01 +08:00
parent d3b36cf63d
commit 53589fe3ef
12 changed files with 119 additions and 155 deletions
+10 -9
View File
@@ -89,21 +89,22 @@ AI_GATEWAY_WORKER_REPLICAS_HONGKONG
各一个 2 GiB Worker,再按实时内存、CPU 和 PostgreSQL 预算验证 `1+2`、条件允许时的
`2+2`,以及安全 drain 回到 `1+1`
宁波因正式混部不具备 Worker 余量时,验收可改用 `0+2` 基线:
生产基线使用两个独立物理 Worker 节点:第二台宁波服务器承载 `easyai-worker-ningbo`
香港服务器承载 `easyai-worker-hongkong`。两个 Deployment 都要求节点带
`easyai.io/worker=true`,原宁波混部节点不再承载 Worker。默认验收配置为:
```bash
AI_GATEWAY_ACCEPTANCE_BASE_REPLICAS_NINGBO=0
AI_GATEWAY_ACCEPTANCE_BASE_REPLICAS_HONGKONG=2
AI_GATEWAY_ACCEPTANCE_AUTOSCALING_MIN_REPLICAS_NINGBO=0
AI_GATEWAY_ACCEPTANCE_BASE_REPLICAS_NINGBO=1
AI_GATEWAY_ACCEPTANCE_BASE_REPLICAS_HONGKONG=1
AI_GATEWAY_ACCEPTANCE_AUTOSCALING_MIN_REPLICAS_NINGBO=1
AI_GATEWAY_ACCEPTANCE_AUTOSCALING_MIN_REPLICAS_HONGKONG=1
AI_GATEWAY_ACCEPTANCE_AUTOSCALING_MAX_REPLICAS_NINGBO=0
AI_GATEWAY_ACCEPTANCE_AUTOSCALING_MAX_REPLICAS_NINGBO=2
AI_GATEWAY_ACCEPTANCE_AUTOSCALING_MAX_REPLICAS_HONGKONG=2
```
此时香港逻辑池的两个 Worker 必须通过 hostname topology spread 分布在香港和深圳物理节点
固定容量仍是两个实例,自动伸缩阶段验证 `0+1 → 0+2 → 0+1`,最终 certified profile
恢复 `0+2` 最小副本以保留双物理节点容灾。资源前置门禁采样实际启用的 Worker 站点节点,
宁波仍受运行时 80% 目标和 85% 硬门禁约束。
资源前置门禁和容量控制器只采样 `easyai.io/worker=true` 节点,避免把原宁波混部节点
可分配资源错误计入弹性上限。每站点能否升到两个副本仍由实测 RSS、CPU 和 PostgreSQL
连接预算决定,不因新增节点而预先承诺。
| 档位 | 单实例执行槽 | 数据库池 | 媒体并发 | 全局执行槽 |
|---|---:|---:|---:|---:|