Skip to content

Repository files navigation

ECMDB · 一体化运维管理平台

Version Go Version License

官方文档 在线演示


为什么选择 ECMDB?

在现代基础设施环境下,运维团队往往面临工具分散、数据孤岛、定制成本高的困扰。

ECMDB 不仅仅是配置管理,而是提供涵盖资产拓扑、工单流程、自动化作业与权限治理的一体化综合运维协同平台:

  • 协同联动,全链路微服务闭环
    覆盖资产、流程、任务与权限完整管控。各子系统职责明确、通信契约规范,通过标准 RPC 与事件驱动紧密协同,构建一体化运维中枢。

  • 动态模型,告别刚性结构
    基于 Schema-less 动态分表,零改表成本即可自由扩展模型属性与关联拓扑,让资产中枢随业务敏捷演进。

  • 契约清晰,核心功能灵活扩展
    资产不仅是静态账本,更是操作入口。支持通过 ECMDB Plugins 针对专有设备定制操作插件,同时 ETask 原生支持实现与接入自定义作业执行器。

  • 开箱即用,极速交付体验
    单套 Docker Compose 编排,5 分钟即可在本地或私有云完整拉起全套微服务套件,开箱即用。


系统架构

平台系统全景架构


界面展示

首页导航 CMDB
首页导航 全局搜索
权限配置 排班管理
权限配置 排班管理
工单列表 工单历史
工单列表 工单历史
工单模板 工单流程
工单模板 工单流程
脚本引擎 执行记录
脚本引擎 执行记录

快速开始

使用 Docker Compose 可以快速拉起全套服务进行体验:

# 1. 创建共享网络
docker network create ecmdb

# 2. 启动全套服务(包含 ECMDB、EIAM、EFlow、ETask、EAlert、Web 前端及基础中间件)
docker compose -p ecmdb -f deploy/docker-compose.yaml up -d

# 3. 初始化内置元数据与管理员权限
docker exec -it ecmdb ./ecmdb init

服务启动后,浏览器访问:

  • Web 控制台http://127.0.0.1:8888
  • 默认账号admin / 12345678

本地开发

1. 运行与初始化

本地启动前请先准备好依赖中间件

# 下载依赖
go mod download

# 初始化系统基础模型与数据
task init

# 启动 ECMDB API 服务端(默认读取 config/config.yaml)
task run

2. 开发指令集(基于 Taskfile.yaml

项目通过 task 统一规范化管理本地开发、代码生成与契约同步任务:

# --- 运行与初始化 ---
task init            # 初始化系统基础模型、属性分组与内置数据
task run             # 启动 ECMDB API 服务端

# --- 代码与契约生成 ---
task gen             # 全量代码与契约生成(一次性串联执行 wire + proto + perm)
task wire            # 生成 ioc 依赖注入代码 (wire ./ioc/)
task proto           # 基于 buf 生成 Protobuf / gRPC 桩代码 (buf generate)
task perm            # 运行 AST 权限扫描,生成强类型权限契约及文档 (permgen)
task swagger         # 生成 OpenAPI 3.0 / Swagger 接口文档与交互页面
task mock            # 执行单元测试 Mock 代码生成 (go generate ./...)
task arch            # 基于纯 Go 无头浏览器批量渲染系统架构图至 docs/img/

# --- 工具链安装 ---
task install:tools   # 一键安装生态工具链 (wire, permgen, swaggergen)

项目矩阵

ECMDB 采用模块化多仓库设计,各子系统分工明确、紧密协同联动:

模块 职责定位 稳定版本 仓库地址
ECMDB 配置管理中枢、资产拓扑与插件控制面(本仓库) v1.11.5 Duke1616/ecmdb
ECMDB Web 统一管理控制台前端(Vue 3 + TS 现代化交互) v1.11.0 Duke1616/ecmdb-web
ECMDB Plugins 资产操作扩展插件(含 WebSSH 在线终端、SFTP 文件管理等) v0.1.2 Duke1616/ecmdb-plugins
EFlow 企业级低代码工作流与工单审批引擎 v0.0.2 Duke1616/eflow
ETask 分布式自动化运维作业执行引擎 v1.14.1 Duke1616/etask
EIAM 企业级统一身份凭证与细粒度权限管理中心 v0.0.24 Duke1616/eiam

License

本项目遵循 MIT License 开源协议。

About

基于 CMDB、工单系统、告警中心和分布式任务调度构建的微服务智能运维平台

Topics

Resources

Stars

167 stars

Watchers

4 watching

Forks

Releases

Packages

Used by

Contributors

Languages