企业级 CMDB + 工单一体化平台 开源!
源代码
https://www.gitpp.com/feature/project-dpqq-itcmdb
开源系统的深度解析,围绕其核心功能、技术架构、场景价值及部署运维展开,突出其作为企业级一体化管理平台的差异化优势:
一、系统定位与核心价值
系统名称:企业级一体化运维管理平台(基于CMDB的智能运维中枢)
核心价值:
通过整合CMDB资产管理、工单流程自动化、精细化权限控制、智能排班调度四大模块,解决企业IT运维中资产分散、流程低效、权限混乱、调度不智能等痛点,实现从资产发现到运维闭环的全链路数字化管理。
适用场景:
- IT运维管理
:服务器、网络设备、应用系统的全生命周期管理 - 跨部门协作
:工单流转、审批流程、任务调度 - 安全合规
:权限审计、操作留痕、资产变更追踪 - 资源调度
:排班管理、自动化任务执行、智能负载均衡
二、核心功能模块详解
📊 1. CMDB 资产管理:动态资产图谱
- 模型驱动设计
: -
自定义模型属性:支持字符串、多行文本、列表、文件等10+数据类型,满足多样化资产描述需求(如服务器配置、软件许可证信息)。 -
加密属性:对敏感字段(如密码、密钥)进行AES加密存储,确保数据安全。 -
关联关系:定义资产间的依赖关系(如“应用→依赖数据库→运行在服务器”),生成可视化关系图谱。 - 全文检索能力
: -
基于Percona MongoDB的ngram分词引擎,支持中文模糊搜索(如搜索“阿里云ECS”可匹配“阿里云弹性计算服务ECS”)。 -
搜索场景:资产快速定位、影响分析(如某服务器宕机时,快速查找关联的应用和业务线)。 - Web终端集成
: -
通过SSH/SFTP协议直接操作远程资产,无需跳板机,支持命令执行、文件传输等操作,审计日志记录完整操作轨迹。
示例场景:
当某数据库服务器故障时,运维人员可通过CMDB快速定位:
-
搜索“数据库”关键词,找到关联服务器资产。 -
查看服务器详情中的“依赖应用”列表,通知相关业务方。 -
通过Web终端直接登录服务器排查问题。
📋 2. 工单流程中心:自动化运维闭环
- 可视化流程设计器
: -
拖拽式配置流程节点,支持或签(任一审批通过)、并签(全部审批通过)、会签(多人投票)、抄送等复杂逻辑。 -
流程模板库:预置常见流程(如变更审批、故障申报),降低配置成本。 - 动态表单引擎
: -
基于form-create实现表单字段动态渲染,根据流程阶段显示不同字段(如“故障申报”流程需填写影响范围,“变更审批”需填写回滚方案)。 - 自动化任务集成
: -
定时任务:如每日自动备份数据库、每周生成运维报告。 -
重试机制:任务失败后自动重试,支持设置最大重试次数和间隔时间。 -
变量篡改:在流程执行中动态修改任务参数(如根据审批结果调整服务器配置)。 - 飞书深度集成
: -
消息通知:工单状态变更(如“待审批”→“已通过”)实时推送至飞书群组。 -
移动审批:在飞书工作台直接完成审批操作,无需登录系统。
示例场景:
服务器扩容流程:
-
提交工单时填写新服务器规格、部署应用等信息。 -
流程自动触发以下任务: -
调用CMDB API检查资源配额是否充足。 -
通过Ansible自动化脚本部署服务器。 -
更新CMDB资产信息并发送通知至相关团队。
👥 3. 权限管理系统:零信任安全架构
- 多认证方式
: -
支持LDAP集成,与企业AD域同步用户信息。 -
本地账号密码认证,配合图形验证码防止暴力破解。 - 细粒度权限控制
: -
菜单级权限:不同角色看到不同的菜单入口(如管理员可见“系统配置”,普通用户仅可见“我的工单”)。 -
按钮级权限:控制操作按钮的显示(如仅允许管理员删除资产)。 -
API级权限:通过JWT Token中的角色信息校验接口访问权限。 - 动态权限策略
: -
基于Casbin的RBAC+ABAC混合模型,支持自定义权限规则(如“仅允许用户A在工作时间访问生产环境服务器”)。
示例场景:
-
开发人员:仅能查看和操作测试环境的资产,且工单审批需经过测试负责人。 -
运维主管:拥有所有环境的管理权限,但删除关键资产需二次确认。
📅 4. 排班管理系统:智能人力资源调度
- 灵活排班规则
: -
支持按日、小时排班,适应不同工作制(如996、轮班制)。 -
临时调班:员工可申请调班,审批通过后自动更新排班表。 - 智能调度算法
: -
基于RRULE(RFC 5545标准)计算排班周期,支持复杂规则(如“每周末值班,但节假日除外”)。 - 可视化排班表
: -
以日历形式展示排班信息,支持按部门、人员筛选查看。
当前状态:
排班模块已独立开发完成,计划通过API与主系统集成(如工单自动分配给当前值班人员)。
三、技术架构解析
🏗️ 后端技术栈
- 语言框架
:Go 1.21+(高并发、低延迟) + Gin(轻量级Web框架) + GORM(ORM工具)。 - 数据库
: -
Percona MongoDB:存储CMDB资产数据,支持灵活的文档模型和全文检索。 -
MySQL:存储工单、权限等结构化数据。 -
Redis Stack:缓存热点数据(如权限策略)、实现分布式锁。 - 消息队列
: -
Kafka:处理高并发工单事件(如工单状态变更通知)。 -
Etcd:存储服务发现和配置信息。 - 流程引擎
:Easy-Workflow(轻量级流程引擎,支持复杂流程逻辑)。 - 依赖注入
:Google Wire(编译时依赖注入,提升代码可测试性)。
🎨 前端技术栈
- 框架
:Vue 3 + TypeScript(类型安全、组件化开发)。 - UI组件
:Element Plus(企业级组件库,支持暗黑模式)。 - 状态管理
:Pinia(替代Vuex,更简洁的响应式状态管理)。 - 构建工具
:Vite(极速启动与热更新)。
🚀 部署运维
- 容器化
:Docker + Docker Compose,支持一键部署开发/测试环境。 - CI/CD
:Github Action自动构建镜像并推送至私有仓库。 - 监控告警
:Prometheus + Grafana监控服务指标(如API响应时间、数据库连接数)。
四、竞品对比与差异化优势
| 维度 | 本系统 | 传统CMDB工具(如ServiceNow) | 开源替代方案(如OpendTick) |
|---|---|---|---|
| 功能完整性 |
|
|
|
| 技术架构 |
|
|
|
| 扩展性 |
|
|
|
| 成本 |
|
|
|
五、总结与建议
推荐场景:
-
中大型企业:需要一体化运维平台,替代多个独立系统(如CMDB+Jira+Active Directory)。 -
初创团队:低成本搭建运维管理体系,避免被商业软件锁定。
优化建议:
- 排班集成
:尽快完成排班模块与主系统的API对接,实现工单自动分配。 - 移动端支持
:开发微信小程序或飞书应用,支持移动端工单处理和资产查询。 - AI增强
:集成LLM实现工单自动分类、智能推荐解决方案。
开源价值:
该项目通过模块化设计和完善的文档,降低了企业自建运维平台的门槛,尤其适合作为以下场景的基础框架:
-
定制化IT服务管理(ITSM) -
智能运维(AIOps)数据中台 -
行业垂直解决方案(如金融、医疗的合规运维平台)

企业级 CMDB + 工单一体化平台 开源!
源代码
https://www.gitpp.com/feature/project-dpqq-itcmdb
本篇文章来源于微信公众号: GitHubFun网站
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
















暂无评论内容