- Dockerfile.embed 重命名为 Dockerfile(统一命名规范) - docker-compose.yml / run.sh 引用更新 - 全量文档(CLAUDE/AGENTS/README/docs)Dockerfile.embed → Dockerfile - fix: Login.tsx User 类型缺少 email/status 字段
125 lines
4.9 KiB
Markdown
125 lines
4.9 KiB
Markdown
# AIOps 智能运维平台 - 项目总结
|
||
|
||
> 最新目录结构见 [project-structure.md](./project-structure.md),部署见 [deployment.md](./deployment.md)。
|
||
|
||
## 项目概述
|
||
|
||
AIOps 是一个企业级云原生智能运维平台,包含完整的前后端代码与独立 Agent 模块。平台聚焦资产管理、Kubernetes 管理、应用发布、监控告警、自动化运维、审批流程和 AI 智能分析。
|
||
|
||
## 项目结构
|
||
|
||
```
|
||
aiops/
|
||
├── frontend/ # React 19 + TypeScript + Vite
|
||
│ ├── src/api/ # API 封装(按菜单域拆分)
|
||
│ ├── src/pages/ # 复杂域级页面
|
||
│ ├── src/components/ # 业务组件 + layout(PageShell 等)
|
||
│ ├── src/locales/ # i18n 翻译 (zh-CN / en-US)
|
||
│ └── src/i18n/ # i18next 初始化
|
||
│
|
||
├── backend/ # Go 1.24 + Gin + GORM
|
||
│ ├── main.go # 应用入口
|
||
│ ├── embed.go # go:embed 前端静态资源
|
||
│ ├── controller/ # HTTP 处理器(60+ 文件)
|
||
│ ├── model/ # GORM 数据模型(86+ 表)
|
||
│ ├── router/ # 路由注册
|
||
│ └── pkg/ # agentcli / remoteexec / kubernetesclient 等
|
||
│
|
||
├── agent/ # 监控 Agent(独立 Go module)
|
||
├── docs/ # 开发文档 + Agent CLI 设计文档集
|
||
├── deploy/kubernetes/ # K8s 部署清单
|
||
├── Dockerfile # 推荐生产镜像
|
||
├── docker-compose.yml # 3 容器部署
|
||
└── run.sh # 统一入口脚本
|
||
```
|
||
|
||
## 功能特性
|
||
|
||
### 1. 仪表盘
|
||
- 资源概览统计、成本费用分析
|
||
- Top5 CPU/内存/磁盘使用率
|
||
- 证书到期提醒、最近告警和发布记录
|
||
- 国际化支持(dashboard 命名空间)
|
||
|
||
### 2. 服务器资产管理
|
||
- 服务器列表 CRUD、批量导入(云主机 / Excel)
|
||
- 远程 WebShell(WebSocket + PTY)
|
||
- 云账号 / 域名 / 区域 / 云平台 / 账单管理
|
||
- 资源模型管理
|
||
|
||
### 3. Kubernetes 集群管理
|
||
- 多集群接入、节点 / Pod / Workload 管理
|
||
- Deployment 三模式编辑器(表单 / YAML / 可视化)
|
||
- Pod 终端 / 文件浏览、拓扑架构图
|
||
- 国际化支持(k8s 命名空间,184+ 翻译键)
|
||
|
||
### 4. 监控告警
|
||
- 告警规则 / 事件 / 通知渠道 / 静默规则
|
||
- 主机指标采集(Agent 双通道)、SNMP / 站点拨测
|
||
- **中间件监控**:Redis / MySQL 后端直连采集
|
||
- **日志中心**:Loki / ES 统一查询、日志告警引擎
|
||
- Prometheus / Zabbix / Grafana 数据源代理
|
||
|
||
### 5. 应用发布
|
||
- CI/CD 流水线(GitLab CI 风格可视化)
|
||
- 发布配置 / 环境 / 权限管理
|
||
- SSH + K8s 双路径部署
|
||
- 凭证管理(7 种统一类型)
|
||
|
||
### 6. 自动化运维
|
||
- 定时任务(CronJob)、脚本库管理
|
||
- **远程执行**(Go-native SSH,执行 / 上传)
|
||
- 任务执行记录
|
||
|
||
### 7. AIOps 智能
|
||
- AI 智能助手、告警分析、容量预测
|
||
- **Agent CLI**:ReAct 16 轮循环 + WebSocket 实时回传 + Evolver 自进化
|
||
- 大模型设置(OpenAI 兼容 + Anthropic Messages 双协议)
|
||
- 终端审计回放
|
||
|
||
### 8. 审批流程
|
||
- 审批模板 / 流程 / 分类 / 权限管理
|
||
- 云服务器 / 应用部署申请
|
||
- 国际化支持(approval 命名空间)
|
||
|
||
### 9. 系统管理
|
||
- 用户 / 角色 / RBAC 权限
|
||
- 操作审计 / 登录日志 / 终端会话审计
|
||
- LDAP 集成、凭证配置
|
||
- 7 套主题(CSS 变量驱动)
|
||
|
||
## UI 设计系统
|
||
|
||
- **PageShell**:全站统一页面骨架(标题 / 指标条 / 工具栏 / Tab / 内容区)
|
||
- **CSS 设计令牌**:`dg-page*` 类名 + `var(--dg-xxx)` 主题变量
|
||
- **7 套主题**:跟随系统、深海蓝、明亮白 + One Dark / Dracula / Tokyo Night / Catppuccin
|
||
|
||
## 技术亮点
|
||
|
||
| 特性 | 说明 |
|
||
|------|------|
|
||
| 单二进制部署 | go:embed 嵌入前端,零外部依赖 |
|
||
| 轻量 K8s 客户端 | 自研 HTTP 客户端,不引入 client-go |
|
||
| Go-native SSH | 替代 Ansible,零新增依赖 |
|
||
| Agent 双通道 | 指标 10s 上报 + 任务 5s 轮询 |
|
||
| 凭证驱动 | 7 种凭证类型统一加密存储 |
|
||
| 工具懒加载 | kubectl / maven / helm 首次使用自动下载 |
|
||
| 国际化 | i18next 中/英双语,按模块命名空间管理 |
|
||
|
||
## 部署方式
|
||
|
||
| 方式 | 命令 | 说明 |
|
||
|------|------|------|
|
||
| 本地开发 | `./run.sh dev` | 5173 + 8080 热重载 |
|
||
| 独立二进制 | `./run.sh build` | 产出 `./aiops` |
|
||
| Docker Compose | `./run.sh docker up` | MySQL + Redis + AIOps |
|
||
| Kubernetes | `./run.sh kubernetes deploy` | devops 命名空间 |
|
||
| 一键发版 | `./run.sh release v1.5.0` | tag + 镜像 + 推送 |
|
||
|
||
## 相关文档
|
||
|
||
- [开发文档索引](./README.md)
|
||
- [Agent CLI 设计集](./agent/00-README.md)
|
||
- [后端摘要](./BACKEND_SUMMARY.md)
|
||
- [API 接口](./api-reference.md)
|
||
- [数据库设计](./database-schema.md) |