[Open Source] A Universal, Flexible, and Extensible CMDB for IT Operations Resource Data Configuration and Management
![[Open Source] A Universal, Flexible, and Extensible CMDB for IT Operations Resource Data Configuration and Management](https://yy123.ink/api/img/1782591636697-6mle6r.jpg)
1. Project Overview

CMDB stands for Configuration Management Database. This CMDB focuses exclusively on storing IT operations-related resource data, distinguishing it from configuration management in application systems. In practice, enterprises generally design and build their own CMDBs through internal IT operations teams according to their specific operational scenarios and requirements. This is because few open-source products can fully meet their needs, and secondary development for customized requirements can be difficult to implement. Therefore, they usually choose independent development rather than adopting open-source solutions.
Therefore, to implement a configuration and management system for IT operations resource data that is as universal, flexible, and extensible as possible, the system must meet the following requirements:
- IT operations personnel must be able to build their own data models and relationships between models according to enterprise IT operations scenarios and requirements.
- Provide comprehensive APIs, especially standardized data and relationship retrieval, to facilitate secondary development.
- Users should be able to easily subscribe to the data they care about, with a rich selection of chart visualizations.
- Automatic data discovery and fine-grained access control.
Based on these principles, we designed and implemented an open-source CMDB. We hope to receive active feedback from the community, and the system will continue to evolve and improve.
2. Open Source License
Licensed under GPL-3.0
3. Screenshots
System Overview
- Service Tree

- Resource View

- Subscription Page

- Model Configuration

- Attribute Settings

- Resource Search

- Custom Dashboard

4. Feature Overview
Features
- Flexibility: Standardized management of complex data assets, automatic discovery and registration of IT assets.
- Security: Fine-grained access control and comprehensive operation logs.
- Multiple applications, rich visualization dimensions, RESTful APIs, custom fields, and triggers.
Main Functions
- Model attributes support indexing, multiple values, default sorting, font colors, and computed attributes.
- Supports automatic discovery, scheduled inspections, and file imports.
- Supports resource, tree, and relationship views.
- Supports configuring and displaying relationships between models.
- Fine-grained access control and comprehensive operation logs.
- Supports cross-model searches.
CMDB Highlights
Dynamic Model Configuration
Customize models online and dynamically add attributes and model relationships.
Powerful Query Capabilities
Only two interfaces, CI and CI Relationship, are needed to cover all resource queries.
Traceable Data
Manage the entire lifecycle of IT resources.
Resource Subscriptions
Customize CI type subscriptions and flexibly configure hierarchical views for CI display.
Custom Business Views
For example, create an application-centric service tree from a customized business perspective.
Deep Business Integration
Enable scenario integration through APIs and support secondary development based on APIs.
Resource Visualization
Provides standard visualization templates and supports custom large-screen dashboards.
Fine-Grained Permission Management
Implement access control with fine-grained permissions for CIs, CI relationships, and other resources.
5. Tech Stack
Overall architecture

Installation
One-Click Docker Deployment
- Navigate to the project root directory (install Docker first).
docker-compose up -d
- Open the following URL in your browser: [http://127.0.0.1:8000](http://127.0.0.1:8000)
- username: demo or admin
- password: 123456
Local Setup: Environment and Dependencies
- Storage: MySQL, Redis
- Python version: >=python3.