Files
getDomain/docs/ops_center_runtime/HANDOFF_20260419_2117.md
Your Name 7cbde2aa78 d
2026-04-22 14:13:21 +08:00

103 lines
2.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# HANDOFF_20260419_2117
更新时间2026-04-19 21:17 CST
## 本轮结论
`mainland-worker-01` 的最新正式 rollout 已完成根因收口:
- `release_id = 7`
- `rollout_id = 6`
- `job_id = 211`
执行结果:
- 发布包下载成功
- `/opt/domaincheck/downloads/domaincheck_release_20260419_205437.tar.gz`
- release 解压成功
- `/opt/domaincheck/releases/domaincheck_release_20260419_205437`
- `current` 软链切换成功
- `/opt/domaincheck/current -> /opt/domaincheck/releases/domaincheck_release_20260419_205437`
- 最终失败在:
- `systemctl restart domaincheck-worker`
控制面失败结果原文:
- `restart failed: domaincheck-worker`
- `Failed to restart domaincheck-worker.service: Interactive authentication required.`
## 真实根因
不是发布包问题,也不是目录权限问题了。
当前根因是:
- `domaincheck-node-agent` 运行身份仍是 `www`
- 它具备下载、解压、切换 `current` 的权限
- 但不具备执行 systemd 服务重启的权限
所以当前所有以下动作在 mainland 机器上都会有同类风险:
- `deploy.release`
- `service.restart`
- 任何依赖 node-agent 直接操作 systemd 的动作
## 本轮已做代码修正
已修改:
- `domain-api/deploy/systemd/domain-node-agent.service`
- `User=root`
- `Group=root`
- `domain-api/deploy/multi-region/fix_mainland_release_base.sh`
- 安装 node-agent drop-in 时补齐:
- `User=root`
- `Group=root`
已验证:
- `bash -n domain-api/deploy/multi-region/fix_mainland_release_base.sh`
## 现场下一步
下一步不要再重复发起新的 rollout先把 `mainland-worker-01` 的 node-agent 切到 root。
建议现场执行:
```bash
mkdir -p /etc/systemd/system/domaincheck-node-agent.service.d
cat >/etc/systemd/system/domaincheck-node-agent.service.d/runtime-user.conf <<'EOF'
[Service]
User=root
Group=root
EOF
systemctl daemon-reload
systemctl restart domaincheck-node-agent
systemctl status domaincheck-node-agent --no-pager -l
```
完成后应立即复查:
```bash
systemctl show domaincheck-node-agent -p User -p Group
journalctl -u domaincheck-node-agent -n 80 --no-pager -l
```
预期结果:
- `domaincheck-node-agent``root` 身份运行
- 心跳恢复,`mainland-worker-01` 不再是 `stale`
- 后续再发起 `deploy.release` 时,能够闭环到 `systemctl restart domaincheck-worker`
## 当前判断
当前主阻塞只剩一个:
- mainland node-agent 权限模型未切到 root
这个问题修完后,再重新发起 worker rollout才有资格继续看
- `domaincheck-worker` 是否切到新 PID
- health check 是否通过
- rollout 6 之后的 acceptance 是否可继续