CTO Plus技术服务栈

资产配置管理系统(CMDB)

我们的 CMDB 不只是存 IP 和机柜号的静态台账,而是能自动发现、自动更新、自动关联的运维数据中枢,让资产信息和真实环境始终保持一致。

Created:

做运维的都踩过一个坑:CMDB 里的数据和实际环境对不上。服务器已经下线半年了,CMDB 里还显示在运行;IP 被偷偷改了,没人更新。我们的 CMDB 从设计之初就解决了这个问题。

1. 资产自动发现

  • Agent / Agentless 双模式:安装 Agent 获取深度信息,SNMP/SSH/WMI 无侵入采集
  • 支持物理机、虚拟机、容器、K8s Pod、云资源(阿里云/腾讯云/AWS)、网络设备
  • 定时自动扫描 + 事件触发(新机器上线自动发现)
  • 变更自动同步:云平台扩容了一台机器,CMDB 自动感知并入库

2. 配置项(CI)模型

  • 预置 50+ 种 CI 模型:服务器、数据库、中间件、应用、域名、证书、VIP
  • 自定义属性:每个 CI 类型都可以自由扩展字段
  • 父子关系:业务系统 → 应用集群 → 服务 → 实例 → 基础设施
  • 关联关系:运行在、依赖于、连接到、属于,六度关系任意定义

3. 可视化拓扑

  • 业务拓扑:从用户入口(域名/CDN)一路下钻到底层服务器
  • 网络拓扑:交换机、路由器、防火墙之间的物理连接关系
  • 应用拓扑:微服务之间的调用链路和依赖关系
  • 影响分析:这台服务器挂了,影响哪些业务?一目了然

4. 配置变更审计

  • 每一次属性修改都有记录:谁、什么时间、改了哪个字段、旧值、新值
  • 变更对比:修改前后的字段 Diff 视图
  • 配置合规检查:生产环境 MySQL 必须开启 binlog,不合规的自动标出
  • 配置漂移检测:实际运行配置和 CMDB 记录不一致时自动告警

5. 数据消费与联动

  • 监控系统从 CMDB 获取机器分组和标签,自动关联告警对象
  • 工单系统从 CMDB 获取 CI 信息,自动填充影响范围和关联资产
  • 自动化运维从 CMDB 获取目标机器列表,批量执行脚本
  • API + Webhook:第三方系统可以实时订阅 CMDB 变更事件

6. 资产全生命周期

  • 入库 → 上架 → 使用中 → 维修 → 报废,每个阶段都有状态追踪
  • 保修期管理:到期前 30 天自动提醒
  • 成本归属:每台机器按部门、按项目分摊成本
  • 资产报表:按机房、按业务线、按状态多维度统计