- 支持 Windows Agent 构建、安装脚本和统一上报协议 - 增强 RDP 剪贴板、虚拟盘和文件传输能力 - 新增 AIOps 上下文工具、告警 RCA trace 落库和回放接口 - 重构 docs 模块文档并补充终端、堡垒机、监控、AI Agent 设计
3.9 KiB
3.9 KiB
自动化运维与发布设计说明
更新:2026-07-05 范围:脚本库、定时任务、远程执行、Agent 任务、流水线、发布管理、Workspace 终端、审批联动。// Logan.Li
定位
自动化运维与发布模块负责把人工操作固化为可追踪、可复用、可审批的执行流程。它与堡垒机、资产凭证、AI Agent 关系紧密:
- 堡垒机保障访问和审计。
- 资产凭证提供执行目标。
- 自动化沉淀操作流程。
- AI Agent 可把成功排障过程转成脚本或 Runbook。
能力矩阵
| 能力 | 当前状态 | 说明 |
|---|---|---|
| 脚本库 | 已完成 | 脚本 CRUD、查看、执行记录 |
| 定时任务 | 已完成 | Cron 表达式、启停、立即执行 |
| 远程执行 | 已完成 | SSH 执行、上传、结果查看 |
| Agent 任务 | 已完成 | Agent 轮询 command/script |
| Pipeline | 已完成 | 流水线定义、阶段、执行日志 |
| 发布管理 | 已完成 | 发布单、环境、审批、详情 |
| Workspace 文件 | 已完成 | 构建目录文件浏览 |
| Workspace 终端 | 已完成 | xterm 进入构建目录 |
| 工具配置 | 已完成 | kubectl、maven、node、helm 等工具 |
主要代码落点
| 模块 | 后端 | 前端 |
|---|---|---|
| 脚本库 | automation_script.go |
ScriptManager.tsx |
| 定时任务 | automation_cron.go |
CronJobManager.tsx |
| 自动化总入口 | automation.go |
frontend/src/components/task/ |
| 远程执行 | remote_exec.go |
RemoteExecPage.tsx |
| Agent 任务 | agent_task.go |
Agent 监控相关页面 |
| Pipeline | pipeline*.go |
PipelineManager.tsx、PipelineEditor.tsx |
| 发布 | pipeline_release.go、deploy*.go |
ReleaseManager.tsx、AppRelease.tsx |
| Workspace | workspace_files.go |
FileBrowserDialog.tsx、WorkspaceTermDialog.tsx |
| 审批 | approval*.go |
ApprovalFlow.tsx |
执行链路
User
├── choose script / task / pipeline / release
├── select target assets or environment
├── confirm / approval if needed
└── execute
│
▼
Backend
├── resolve credential and target
├── run SSH / local tool / pipeline step / Agent task
├── stream logs
├── save execution record
└── write audit
日志与输出
| 类型 | 存储/通道 | 说明 |
|---|---|---|
| 脚本执行输出 | 任务执行记录 | 可展开查看 |
| 定时任务输出 | 执行历史 | 保留最近执行 |
| Pipeline 日志 | Redis pub/sub + DB 回查 | 实时推送和历史查看 |
| Workspace 终端 | xterm / PTY | 见终端体系 |
| Agent 任务结果 | agent_tasks |
command/script 回传 |
缓存策略见 platform/redis-caching-strategy。
安全与审批
高风险场景:
- 批量主机执行。
- 生产环境发布。
- 删除文件、重启服务、修改配置。
- kubectl apply/delete/scale。
- 非工作时间变更。
建议策略:
- 执行前展示计划、目标和命令摘要。
- 生产环境强制审批。
- 执行输出写入审计。
- 支持失败重试和回滚说明。
- AI Agent 生成脚本只能保存草稿,用户确认后执行。
与 AI Agent 联动
| 场景 | 建议 |
|---|---|
| AI 排障成功 | 一键沉淀为脚本库草稿 |
| Pipeline 失败 | AI 读取日志并解释失败原因 |
| 定时任务失败 | AI 分析最近输出和目标状态 |
| 远程执行输出过长 | AI 调用 analyze_output 总结 |
验收清单
- 脚本能保存、执行、查看输出。
- 定时任务能启停、立即执行、记录历史。
- 远程执行能选择资产和凭证,输出完整。
- Pipeline 日志实时推送,刷新后可回看。
- 发布审批状态正确流转。
- Workspace 文件和终端不能路径逃逸。
- 高危操作能进入审批或确认流程。