docs(ops): 同步 103 生产 goosed 扩容为 9 实例
确认 goosed-prod-1..9 映射 18006-18014,更新 topology、发包必看、 发布 skill 与 release 脚本的动态 pool 校验。 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -688,7 +688,7 @@ Data boundary:
|
||||
- LaunchAgent 参数包含 `--prune --retention-days 30`
|
||||
- 只清理 `reports/runtime-slo` 顶层过期 `.json/.md`
|
||||
- 最新报告 `reportPrune.errors=[]`
|
||||
- P5.14 已给四个 goosed worker 增加常驻 sidecar heartbeat:
|
||||
- P5.14 已给全部 goosed worker(当前 9 个,`18006..18014`)增加常驻 sidecar heartbeat:
|
||||
- `goosed-1`: `statusCode=200`, `latencyMs=62`
|
||||
- `goosed-2`: `statusCode=200`, `latencyMs=46`
|
||||
- `goosed-3`: `statusCode=200`, `latencyMs=46`
|
||||
|
||||
@@ -54,8 +54,8 @@
|
||||
|
||||
- Memind Portal: `/Users/john/Project/Memind/server.mjs`,本机 `:8081`。
|
||||
- H5 public base: `https://mm.tkmind.cn`;`m.tkmind.cn` 暂时不再作为 H5 public base。
|
||||
- goosed worker pool: Docker/Colima 内 `goosed-prod-1..4`,宿主机 `18006..18009`,当前健康。
|
||||
- H5 上游配置: `TKMIND_API_TARGETS=https://127.0.0.1:18006,...,18009`。
|
||||
- goosed worker pool: Docker/Colima 内 `goosed-prod-1..9`,宿主机 `18006..18014`(2026-07-07 确认 9 个 healthy)。
|
||||
- H5 上游配置: `TKMIND_API_TARGETS=https://127.0.0.1:18006,...,18014`(须与 compose 容器数一致)。
|
||||
- 当前已有 session affinity: start 时分配 worker,后续 reply/events 回到同一 worker。
|
||||
- imgproxy: 原生 `127.0.0.1:20082`,兼容代理 `10.10.0.2:20081`。
|
||||
- 风险点: SSE 代理尚未完整处理 `flushHeaders`、`X-Accel-Buffering`、客户端断开 abort、写入 backpressure 和统一 pipeline 收尾。
|
||||
@@ -113,7 +113,7 @@ flowchart LR
|
||||
|
||||
- `node --check /Users/john/Project/Memind/server.mjs` 通过。
|
||||
- 本机 `http://127.0.0.1:8081/api/status` 仍返回 `ok`。
|
||||
- 四个 `https://127.0.0.1:18006..18009/status` 仍返回 `ok`。
|
||||
- 全部 `https://127.0.0.1:18006..18014/status` 仍返回 `ok`。
|
||||
|
||||
### P1: Gateway SSE 配置
|
||||
|
||||
@@ -296,7 +296,7 @@ docker exec memind-runtime-redis redis-cli DEL memind:runtime:worker:goosed-3:dr
|
||||
- Portal 新 PID: `94324`,监听 `*:8081`。
|
||||
- 运行环境确认: `H5_PUBLIC_BASE_URL=https://mm.tkmind.cn`,`VITE_MINDSPACE_BASE=https://mm.tkmind.cn`。
|
||||
- 本机 `http://127.0.0.1:8081/api/status` 返回 `ok`。
|
||||
- 四个 goosed worker `18006..18009` 均返回 `ok`。
|
||||
- 九个 goosed worker `18006..18014` 均返回 `ok`。
|
||||
- 公网 `https://mm.tkmind.cn/api/status` 当前返回 nginx `502 Bad Gateway`,说明域名侧入口尚未接到当前 Portal;该问题纳入 P1 新入口修复,不再回到 105 转发链路处理。
|
||||
|
||||
### 2026-07-02 P1 Gateway SSE 配置
|
||||
@@ -376,7 +376,7 @@ docker exec memind-runtime-redis redis-cli DEL memind:runtime:worker:goosed-3:dr
|
||||
- `memind:runtime:worker:goosed-3:heartbeat=<timestamp>`
|
||||
- `memind:runtime:stream:20260701_24:status=active`
|
||||
- `https://mm.tkmind.cn/api/status` 返回 `ok`。
|
||||
- 四个 goosed worker `18006..18009` 均返回 `ok`。
|
||||
- 九个 goosed worker `18006..18014` 均返回 `ok`。
|
||||
|
||||
### 2026-07-02 P3 Observability v1
|
||||
|
||||
@@ -400,7 +400,7 @@ docker exec memind-runtime-redis redis-cli DEL memind:runtime:worker:goosed-3:dr
|
||||
- `/opt/homebrew/opt/node@24/bin/node --check /Users/john/Project/Memind/server.mjs` 通过。
|
||||
- `https://mm.tkmind.cn/api/runtime/status` 返回 `ok: true`。
|
||||
- 返回中 `router.enabled=true`,namespace 为 `memind:runtime`。
|
||||
- 返回中四个目标 `18006..18009` 均 `healthy: true`。
|
||||
- 返回中九个目标 `18006..18014` 均 `healthy: true`。
|
||||
- `https://mm.tkmind.cn/api/status` 返回 `ok`。
|
||||
- 未登录访问 `https://mm.tkmind.cn/api/sessions/test-session/events` 返回 `401`,且响应头包含 `x-accel-buffering: no`。
|
||||
|
||||
@@ -577,7 +577,7 @@ docker exec memind-runtime-redis redis-cli DEL memind:runtime:worker:goosed-3:dr
|
||||
生产验证:
|
||||
|
||||
- `https://mm.tkmind.cn/api/status` 返回 `ok`。
|
||||
- `https://mm.tkmind.cn/api/runtime/status` 返回 router enabled,四个 goosed target healthy。
|
||||
- `https://mm.tkmind.cn/api/runtime/status` 返回 router enabled,全部 goosed target healthy。
|
||||
- `scripts/check-stream-runtime.mjs` 返回 `ok=true`。
|
||||
- `scripts/check-tool-runtime.mjs` 返回 `ok=true`,普通 chat 不注入 Aider/OpenHands,code mode 对白名单用户可注入。
|
||||
- `scripts/runtime-worker-drain.mjs status` 返回 `ok=true`,四个 worker drain=false。
|
||||
@@ -678,7 +678,7 @@ docker exec memind-runtime-redis redis-cli DEL memind:runtime:worker:goosed-3:dr
|
||||
|
||||
- `https://mm.tkmind.cn/api/status` 返回 `ok`。
|
||||
- `/api/runtime/status.toolRuntime.codeRunsEnabled=false`。
|
||||
- 四个 goosed target healthy。
|
||||
- 全部 goosed target healthy。
|
||||
- `scripts/check-agent-code-run-entry.mjs` 返回 `ok=true`。
|
||||
- `scripts/check-stream-runtime.mjs` 返回 `ok=true`。
|
||||
- `scripts/runtime-worker-drain.mjs status` 返回 `ok=true`,四个 worker drain=false。
|
||||
@@ -752,7 +752,7 @@ docker exec memind-runtime-redis redis-cli DEL memind:runtime:worker:goosed-3:dr
|
||||
- `status`:采样但不写 Redis。
|
||||
- `sample`:采样并写入 Redis。
|
||||
- `--dry-run`:强制只读。
|
||||
- 对 Docker worker `goosed-prod-1..4` 采集:
|
||||
- 对 Docker worker `goosed-prod-1..9` 采集:
|
||||
- `cpuLoad`
|
||||
- `memoryPressure`
|
||||
- `fdPressure`
|
||||
@@ -789,7 +789,7 @@ docker exec memind-runtime-redis redis-cli DEL memind:runtime:worker:goosed-3:dr
|
||||
|
||||
生产验证:
|
||||
|
||||
- `node scripts/runtime-worker-metrics.mjs sample` 返回 `ok=true`,四个 `goosed-prod-*` 均 `healthy`。
|
||||
- `node scripts/runtime-worker-metrics.mjs sample` 返回 `ok=true`,全部 `goosed-prod-*` 均 `healthy`。
|
||||
- `/api/runtime/status.router.workers[]` 已显示:
|
||||
- `cpuLoad`
|
||||
- `memoryPressure`
|
||||
|
||||
Reference in New Issue
Block a user