Back to Basic CMDB

Basic CMDB Quick Start Guide

Your minimum viable Configuration Management Database - perfect for small teams getting started with IT asset tracking. With just 3 object types (Person, Server, Application), you can establish foundational visibility into your infrastructure without complexity overhead.

πŸ“– 15 min read πŸ“Š Basic CMDB v1.0 πŸ†“ Free Tier πŸ• Time to value: Under 1 hour

Overview

The Basic CMDB Schema is your minimum viable Configuration Management Database - perfect for small teams getting started with IT asset tracking. With just 3 object types (Person, Server, Application), you can establish foundational visibility into your infrastructure without complexity overhead.

Who Is This For?

  • Small IT teams (1-10 people)
  • Startups building their first CMDB
  • Organizations piloting JSM Assets
  • Teams transitioning from spreadsheets

What You Get

  • Track servers and who owns them
  • Document applications and where they run
  • See who is responsible for what
  • Foundation for future growth

Schema Overview

Why Start Basic

Benefit Description
Fast Implementation Deploy in under an hour
Low Maintenance Minimal ongoing data entry
Easy Adoption Team learns quickly
Clear Value Immediate visibility gains
Smooth Growth Natural upgrade path

Object Type Summary

Object Type Purpose Record Count Target
Person IT team members and stakeholders 5-50 records
Server Physical and virtual servers 10-100 records
Application Business applications 5-50 records

Relationship Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚   Person    │◄──────│   Server    │◄──────│ Application β”‚
β”‚             β”‚Managedβ”‚             β”‚Runs Onβ”‚             β”‚
β”‚  (IT Team)  β”‚  By   β”‚(Infrastructure)     β”‚ (Software)  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜       β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜       β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Key Relationships:

  • Server β†’ Person (Managed By): "Who manages this server?"
  • Application β†’ Server (Runs On): "Where does this app run?"
  • Application β†’ Person (Managed By): "Who manages this application?"

Object Type 1: Person

The Person object type represents individuals who own, manage, or are responsible for IT assets. Start with your IT team members, then expand to include application owners from the business.

Attribute Reference

Attribute Type Required Description
Full Name Text Yes Full name of the person
Email Text Yes Work email address
Department Text No Department or team name
Active Select Yes Active, Inactive

Active Values

Value Meaning When to Use
Active Currently employed/engaged Default for all active team members
Inactive No longer with organization When person leaves or role ends

Best Practices

Do:

  • Use official work email addresses
  • Keep Department consistent across records
  • Update Active status when people leave - don't delete records

Don't:

  • Use personal email addresses
  • Create multiple records for the same person
  • Delete records when people leave (set to Inactive instead)

Real-World Example

Full Name: Sarah Chen
Email: sarah.chen@acme.com
Department: IT Operations
Active: Active

Object Type 2: Server

The Server object type represents physical servers, virtual machines, and cloud instances that host your applications. This is the core of your infrastructure inventory.

Attribute Reference

Attribute Type Required Description
Hostname Text Yes Server hostname (unique identifier)
IP Address Text No Primary IP address
Server Type Select Yes Physical, Virtual, Cloud
Operating System Text No OS name and version
Environment Select Yes Production, Test, Development
Status Select Yes Operational, Non-Operational, Maintenance
Managed By Object (Person) No Person responsible for this server

Server Type Values

Type Description Examples
Physical Bare metal hardware Dell PowerEdge, HP ProLiant
Virtual VM on hypervisor VMware VM, Hyper-V VM
Cloud Cloud provider instance AWS EC2, Azure VM, GCP Compute

Environment Values

Environment Description Typical Use
Production Live business systems Customer-facing apps
Test Pre-production testing QA and UAT
Development Developer workloads Dev and test

Hostname Naming Convention

Use a consistent naming pattern:

Format: [purpose]-[environment]-[number]

Examples:
web-prod-01      Web server, production, first
db-prod-01       Database server, production
app-dev-01       Application server, development

Best Practices

Do:

  • Use consistent hostname naming conventions
  • Assign Managed By for every Production server
  • Keep Operating System current (e.g., "Ubuntu 22.04 LTS")
  • Update Status when servers are retired

Don't:

  • Use spaces in hostnames
  • Leave Production servers without a manager
  • Keep non-operational servers as Operational

Real-World Example

Hostname: web-prod-01
IP Address: 10.0.1.50
Server Type: Cloud
Operating System: Ubuntu 22.04 LTS
Environment: Production
Status: Operational
Managed By: Sarah Chen

Object Type 3: Application

The Application object type represents business applications that run on your servers. This connects your infrastructure to business value.

Attribute Reference

Attribute Type Required Description
Application Name Text Yes Application identifier
Version Text No Current version number
Environment Select Yes Production, Test, Development
Status Select Yes Operational, Non-Operational
Managed By Object (Person) No Business owner of the application
Runs On Object (Server) No Server(s) where app runs

Environment Values

Environment Description
Production Live application serving users
Test Testing environment
Development Development version

Status Values

Status Meaning
Operational Application is running and available
Non-Operational Application is offline or unavailable

Naming Applications

Use business-friendly names that users recognize:

Good: Customer Portal, Inventory System, HR Platform
Bad: app1, legacy_system_v2, test123

Best Practices

Do:

  • Use names that business users recognize
  • Link every Production app to at least one server via Runs On
  • Assign business owners via Managed By
  • Track version numbers for change management

Don't:

  • Use technical project codes as names
  • Leave Production apps without a manager
  • Keep non-operational applications as Operational

Real-World Example

Application Name: Customer Portal
Version: 2.4.1
Environment: Production
Status: Operational
Managed By: Mike Johnson
Runs On: web-prod-01

Getting Started

Step 1: Plan Your Data (15 minutes)

Before creating records, make a quick inventory:

People to add:

  • IT team members
  • Key application owners from the business
  • Start with 5-10 people

Servers to add:

  • Production servers first
  • Development/staging later
  • Start with 10-20 servers

Applications to add:

  • Business-critical applications
  • Customer-facing systems
  • Start with 5-10 applications

Step 2: Create Person Records (10 minutes)

Start with your IT team:

  1. Navigate to Assets β†’ Basic CMDB β†’ Person
  2. Click "Create"
  3. Enter Full Name, Email, Department
  4. Set Active to "Active"
  5. Save

Tip: Do IT team first, then add business application owners.

Step 3: Create Server Records (20 minutes)

Add your production servers:

  1. Navigate to Assets β†’ Basic CMDB β†’ Server
  2. Click "Create"
  3. Enter Hostname, Server Type, OS, IP Address
  4. Select Environment = "Production"
  5. Link Managed By to a Person
  6. Set Status to "Operational"
  7. Save

Tip: Start with production, add test/dev later.

Step 4: Create Application Records (15 minutes)

Document your key applications:

  1. Navigate to Assets β†’ Basic CMDB β†’ Application
  2. Click "Create"
  3. Enter Application Name, Version
  4. Link Managed By to a Person
  5. Link Runs On to Server(s)
  6. Select Environment
  7. Set Status to "Operational"
  8. Save

Tip: Link applications to servers to enable impact analysis.

Step 5: Verify Relationships (5 minutes)

Check that your data is connected:

  1. Open a Server record
  2. View the "References" section
  3. Confirm Managed By is linked
  4. Confirm Applications are linked

Quick Verification Query:

objectType = "Application" AND "Runs On" IS EMPTY AND Status = "Operational"

This should return zero results for a well-linked CMDB.

Relationship Patterns

Pattern 1: Single Server, Single Application

The simplest setup - one application on one server.

Customer Portal (App) β†’ web-prod-01 (Server) β†’ Sarah Chen (Owner)

Pattern 2: Single Server, Multiple Applications

Multiple lightweight apps sharing a server.

Inventory System (App)  ─┐
Order Tracker (App)     ─┼→ app-prod-01 (Server) β†’ Sarah Chen (Owner)
Reporting Tool (App)    β”€β”˜

Pattern 3: Load-Balanced Application

Application running on multiple servers.

                        β”Œβ†’ web-prod-01 (Server)
Customer Portal (App) ──┼→ web-prod-02 (Server)
                        β””β†’ web-prod-03 (Server)

Pattern 4: Environment Separation

Same application in different environments.

Customer Portal (Production) β†’ web-prod-01
Customer Portal (Staging)    β†’ web-stg-01
Customer Portal (Development)β†’ web-dev-01

Growing Beyond Basic

When to Upgrade

Consider upgrading to a larger schema when:

Trigger Upgrade To
More than 100 servers Standard CMDB
Need database tracking Standard CMDB
Compliance requirements Enterprise IT CMDB
Multiple teams/locations Standard CMDB
Cloud resource tracking Cloud Native CMDB
Service desk integration Standard CMDB

Upgrade Path

  1. Export your data - CSV export of all objects
  2. Deploy new schema - Standard or Enterprise CMDB
  3. Import existing data - Map to new object types
  4. Add new object types - Database, Location, Team, etc.
  5. Extend relationships - More detailed dependency mapping

What Carries Forward

Your Basic CMDB data maps directly to larger schemas:

  • Person β†’ Person (with additional attributes)
  • Server β†’ Server (with additional attributes)
  • Application β†’ Application (with additional attributes)

Troubleshooting

Common Issues

Issue Cause Resolution
Can't find a server Hostname typo Search with partial match
Owner not appearing Person not created Create Person record first
Application has no server Relationship not set Edit app, link to server
Duplicate records Multiple entries Merge or delete duplicate

Useful AQL Queries

Find all operational servers:

objectType = "Server" AND Status = "Operational"

Find servers without managers:

objectType = "Server" AND "Managed By" IS EMPTY AND Environment = "Production"

Find applications without servers:

objectType = "Application" AND "Runs On" IS EMPTY AND Status = "Operational"

Find inactive people who still manage assets:

objectType = "Person" AND Active = "Inactive"

Then check if they're still referenced by servers or applications.

Quick Reference

Essential AQL Queries

Purpose Query
All production servers objectType = "Server" AND Environment = "Production"
Servers by manager objectType = "Server" AND "Managed By" = "Sarah Chen"
Operational applications objectType = "Application" AND Status = "Operational"
Apps on specific server objectType = "Application" AND "Runs On" = "web-prod-01"

Health Check

Run these weekly:

  • All production servers have managers assigned
  • All operational apps link to servers
  • No inactive people manage active assets
  • No duplicate hostnames or app names