AI / Automation 2026年4月14日

2026 租用云 Mac 生产环境 OpenClaw 健康探测与就绪检查

MacXCode 技术团队 2026年4月14日 约11分钟阅读

香港、日本、韩国、新加坡或美国 租用 Mac mini M4 上 7×24 运行 OpenClaw 时,监听于 127.0.0.1:18789 的网关已成为生产基础设施的一部分。Kubernetes 团队早已区分 livenessreadiness;纯 macOS + launchd 的交付形态也需要同等纪律,只是没有 kubelet。本 2026 指南说明应抓取哪些信号、提供探测类型对照表六步运行手册,以及既能避免静默失败又不会把值班拖垮的告警阈值。若故障跨越网络与进程层次,请结合 网关排障结构化日志Webhook 的 Nginx 反向代理Tailscale 网关安全访问 一并阅读。

为什么“进程在跑”不算健康检查

launchd 可能仍以退出码 0 报告成功,而网关已卡死:TLS 上下文陈旧、模型供应商 DNS 抖动,或 ~/.openclaw 下配置写入不完整。优秀的探测应走与用户流量相同的代码路径——HTTP 处理、鉴权中间件、可选的下游模型探测——同时避免狂打计费 API。

  • Liveness(存活)回答“要不要重启网关?”——成本低,建议每 60 秒
  • Readiness(就绪)回答“负载均衡该不该切流量?”——更严格,可包含依赖检查。
  • Canary(金丝雀)15 分钟发送一条合成用户消息以捕获细微回归;务必单独预算 token。
黄金法则:永远不要把公网监控直接指向互联网上的 18789——应在 nginx 侧终结 TLS,或按 Tailscale ACL 将检查限制在 tailnet 内。

值班周之前运维应画出的最小仪表盘

对在生产环境运行 Agent 的 MacXCode 客户,建议至少具备:

  • 反向代理前置网关时,来自 nginx $request_time请求速率 + p95 延迟
  • 错误率——5xx 计数除以总量;在排除已知维护窗口后,若连续 5 分钟高于 2% 则告警。
  • CPU 持续 > 85%10 分钟——小规格实例常是热节流前兆;M4 很少热限流,但突发 embedding 仍会尖峰。
  • 根 APFS 卷可用空间 < 12 GB——~/.openclaw/logs 下日志轮转在磁盘紧张时会停滞。

探测类型:各自证明什么

探测 证明 成本 / 风险
127.0.0.1:18789 的 TCP 连接 accept 循环仍存活 信号弱;无法发现鉴权失败
HTTP GET /health(路径依构建版本文档) HTTP 栈 + 配置加载 推荐的基线 liveness
带鉴权的合成对话 模型路由 + 凭据 消耗 token;作为 canary 低频运行
磁盘 inode + 剩余空间 日志轮转健康 廉价的主机级护栏

六步运行手册:从零到可接 PagerDuty

  1. 基线——干净启动后捕获 openclaw gateway status 输出并存入 git。
  2. 编写探测脚本——curl 使用 --fail,连接超时 3 秒;失败时非零退出。
  3. launchd plist——StartInterval 60;配置 ThrottleInterval 避免风暴;日志写入统一文件。
  4. 关联 ID——每次检查向日志写入 ISO8601 时间戳,便于与 nginx 交叉检索。
  5. 接线告警——连续三次失败才 pager;单次失败仅发 Slack。
  6. 演练日——每季度故意 kill 网关,对照 15 分钟 SLO 测量 MTTR。

curl -fsS --max-time 3 http://127.0.0.1:18789/health || exit 1

探测如何与 Nginx 和 Tailscale 组合

当 nginx 终结 TLS 时,对内网 URL 跑 liveness,以便把边缘误配与网关缺陷隔离。纯 tailnet 部署时,从 Tailscale 中打了 probe 标签的设备跑合成检查,避免 ACL 变更悄悄让监控失效。

减少噪音的告警阈值

条件 建议窗口 严重级别
连续 3 次探测失败 若间隔 60s 约 3 分钟 呼叫值班
内网一跳 p95 延迟 > 800 ms 持续 10 分钟 警告工单
Canary LLM 失败 1 次 Slack + 自动开 bridge issue
Token 预算:将 canary 提示的补全 token 上限设为 400,并选用仍能演练路由的最便宜模型配置——旗舰模型留给真实用户。

FAQ:macOS 云 Mac 上的探测

问题 回答
探测应以 root 运行吗? 不要——使用与 ~/.openclaw 属主相同的服务用户,才能捕获权限回归。
次要观察者放在哪里? 使用另一区域的 MacXCode 节点或现有可观测 VPC;小型见证机可对比 定价
打开 debug 后日志暴涨怎么办? 遵循 结构化日志 指引——仅在支持窗口内开 debug。

为何 Mac mini M4 裸金属仍有助于探测保真度

若主机因超售而抖动,合成检查毫无意义。裸金属 Mac mini M4curl + JSON 解析提供稳定 CPU,为日志追加提供可预期 NVMe,并与开发环境网关所见的 Apple Silicon 行为一致。MacXCode 在 HK / JP / KR / SG / US 的区域布局让用户群体附近的观察者仍能保持相同的 SSH 应急入口,详见 帮助

结论:把 OpenClaw 当作任意生产 API——定义 SLO,用探测证明,在营销承诺“永远在线”之前演练故障。金丝雀开始每周扑腾时,通过 定价 扩容。

以生产级可观测性运行 OpenClaw

租用 M4 节点 · HK · JP · KR · SG · US · SSH / VNC