Files
ProjectAGiPrompt/8-CMII-RMDC/1-rmdc-system/1-system-overview-prompt.md
2026-01-21 16:15:49 +08:00

4.6 KiB
Raw Permalink Blame History

RMDC系统架构提示词

本文档为大模型(AI助手)提供RMDC系统的全面上下文帮助AI理解系统架构并协助开发工作。


系统定位

RMDC (Runtime Management & DevOps Center) 是一个以项目(K8s Namespace)为核心维度的统一运维与交付平台。通过"边缘代理(Watchdog) + 消息总线(Exchange-Hub)"架构打通内外网,提供从代码构建、分支权限控制、自动化部署到实时监控日志的全生命周期管理。


核心模块清单

模块 职责 关键技术
rmdc-core API Gateway、鉴权、路由 Go + Gin
rmdc-jenkins-branch-dac Jenkins分支权限(DAC)、构建管理 Jenkins API, MinIO
rmdc-exchange-hub MQTT消息网关、指令生命周期 MQTT, PostgreSQL
rmdc-watchdog 边缘代理、K8S操作、二级授权 K8S API, TOTP
rmdc-project-management 项目管理、一级授权中心 PostgreSQL
rmdc-audit-log 审计日志 PostgreSQL
rmdc-user-auth 用户认证、权限管理 JWT, RBAC

系统架构图

graph TB
    subgraph "RMDC平台 (内网)"
        Portal[前端门户<br/>Vue3+Vuetify3]
        Core[rmdc-core<br/>API Gateway]
        
        subgraph "业务模块"
            Jenkins[jenkins-branch-dac]
            Project[project-management]
            Audit[audit-log]
            UserAuth[user-auth]
        end
        
        ExHub[exchange-hub<br/>消息网关]
        MQTT[(MQTT Broker)]
    end
    
    subgraph "外部项目环境"
        WD[rmdc-watchdog<br/>边缘代理]
        Node[watchdog-node]
        Agent[watchdog-agent]
    end
    
    Portal --> Core --> Jenkins & Project & Audit & UserAuth
    Project --> ExHub <--> MQTT <-.公网.-> WD <--> Node & Agent

通信架构

MQTT Topic设计

方向 Topic 用途
上行 wdd/RDMC/command/up Watchdog发送指令
上行 wdd/RDMC/message/up Watchdog发送数据
下行 wdd/RDMC/command/down/{project_id} 下发指令
下行 wdd/RDMC/message/down/{project_id} 下发数据

安全机制

一级授权: rmdc-project-management ↔ rmdc-watchdog (8位码, 30分钟有效)
二级授权: rmdc-watchdog ↔ watchdog-agent/node (6位码, 30秒有效)

API设计规范

重要: RMDC API遵循以下规范

  1. RESTful风格使用标准HTTP方法语义
  2. 优先POST+RequestBody复杂查询和所有写操作使用POST
  3. 避免PathVariables资源标识放入RequestBody
  4. 避免RequestParams查询参数放入RequestBody
  5. 统一响应格式
{
    "code": 0,
    "message": "success",
    "data": {...}
}

开发规范

后端规范(Go)

项目结构:
├── cmd/            # 入口
├── configs/        # 配置
├── internal/
│   ├── config/     # 配置结构
│   ├── dao/        # 数据访问层
│   ├── handler/    # HTTP处理器
│   ├── model/
│   │   ├── dto/    # 请求/响应DTO
│   │   └── entity/ # 数据库实体
│   └── service/    # 业务逻辑层
└── pkg/            # 公共包

关键约束:

  • 禁止在Handler层写业务逻辑
  • 所有SQL在DAO层
  • 使用GORM进行ORM操作

前端规范(Vue3)

  • 技术栈: Vue3 + TypeScript + Vuetify3
  • 使用Composition API
  • 组件销毁时断开WebSocket连接

核心业务流程

项目注册流程

1. project-management创建项目 → 生成密钥
2. 部署watchdog(携带配置文件)
3. watchdog连接MQTT → 发送注册请求(含TOTP)
4. exchange-hub验证 → 发送挑战码
5. watchdog回复挑战码 → 注册成功

构建触发流程

1. 用户调用 POST /builds/trigger
2. jenkins-branch-dac 调用 Jenkins API
3. BuildTracker开始追踪构建状态
4. 前端轮询构建详情
5. 构建完成 → 可触发DCU打包镜像

文档索引

文档路径 内容
1-基本框架/2-rmdc-DDS.md 系统PRD/DDS
2-Jenkins模块/1-jenkins-branch-dac-DDS.md Jenkins模块DDS
3-rmdc-exchange-hub/1-rmdc-exchange-hub-DDS.md Exchange-Hub DDS
4-rmdc-project-management/1-rmdc-project-management-DDS.md 项目管理DDS
6-rmdc-watchdog/1-rmdc-watchdog-DDS.md Watchdog DDS

如何使用本提示词

  1. 理解系统: 阅读架构说明和业务流程
  2. 定位模块: 确定涉及的模块
  3. 查阅详细文档: 参考模块DDS
  4. 遵循规范: 按照API和开发规范编码