Configuration Management Database Design


A Configuration Management Database (CMDB) is a repository of data that describes the components of an information system.  It records data and metadata for managed resources, process artifacts and the relationships between them.  Managed resources are typically computer systems and software.  Process artifacts describe incidents, problems and changes.

The primary goal of a CMDB is to facilitate the management of computer resources by more than one person.  A medium sized data center with 20 racks 500 servers will need to be managed by a team of people.  Each with a different role and specialist skills.  For example, the database administrator who implements the disaster recovery plan after a disk failure might not be the best person to diagnose the hardware fault that caused it.

The machines in the data center have an infinite number of potential configurations.   Each server could be running a different combination of operating system and application software.  Their patch levels could be different.  One server might be using virtualization software to emulate multiple machines.  A number of others might be combined together in a cluster to emulate a single machine.  

Most organizations implement standards to manage this complexity.  These standards describe the process to follow for incidents, problems and changes to the systems.