Files

70 lines
1.8 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.
# SystemTest-Agent
P0-02 被控端最小可用实现,首次启动向主控注册并保存 token,后续启动使用本地 token 发送 Bearer 心跳并轮询任务。
## 一键启动
PowerShell:
```powershell
.\start_agent.ps1
```
CMD:
```bat
start_agent.bat
```
默认会在局域网内自动发现 `8001/8000` 端口上的主控。也可以手工指定主控地址:
```powershell
.\start_agent.ps1 -ControllerUrl http://<controller-lan-ip>:8001
```
```bat
start_agent.bat http://<controller-lan-ip>:8001
```
如果在另一台局域网设备上双击后窗口闪退,常见原因是:
- 该设备访问不到主控机的 `8001` 端口,需放行主控机防火墙或手工传入 `http://<主控机局域网IP>:8001`
- 该设备没有安装 Python 3,或 `python/py` 不在 PATH
- 被控本地服务端口 `18081` 已被占用
新版 `start_agent.bat` 遇到这些错误会暂停并显示原因。
默认被控本地服务端口与 `Agent-S-main/bridge_config.yaml` 的 `log_web_port` 保持一致:
- Local health: `http://127.0.0.1:18081/health`
- 环境变量:`AGENT_LOCAL_SERVICE_PORT=18081`
## 状态持久化
首次注册成功后写入 `data/agent_state.json`:
- `agent_id`
- `public_id`
- `token`
- `registered_at`
- `controller_url`
重启时如果该文件存在且机器标识一致,被控端不会重复注册,会直接用 Bearer token 发送心跳和领任务请求。
## 部署形态
`AGENT_DEPLOYMENT_TYPE=auto` 时自动判断物理机/虚拟机;也可显式设置:
- `physical_machine`
- `virtual_machine`
- `box_physical`
- `box_virtual`
## 已完成的 P0-02 验收点
- 首次启动自动注册
- token 保存到本地状态文件
- 后续启动不重复注册
- 心跳和领任务请求使用 `Authorization: Bearer <token>`
- 注册与心跳上报物理机/虚拟机部署形态