1. What Is a Configuration Item?
A Configuration Item (CI) is any component of IT infrastructure or service worth tracking individually and managing the lifecycle of — a server, a network switch, a software installation, a business service itself. The Configuration Management Database (CMDB) is the collection of CI records and the relationships between them; it's the answer to "what do we actually have, and how does it all connect" that every other ITSM process quietly depends on.
2. The cmdb_ci Table Hierarchy
Like task in Week 2, cmdb_ci is a base table that
specific CI types extend — a server, a database instance, and a load balancer
all extend cmdb_ci (through their own intermediate tables) rather
than being unrelated table designs, which is what lets generic CI-level
features (like the incident form's Configuration Item reference field) work
uniformly across every kind of CI.
cmdb_ci
├── cmdb_ci_hardware
│ └── cmdb_ci_server
├── cmdb_ci_appl (business applications)
└── cmdb_ci_service (business services)
3. Relationships & Dependency Views
CIs connect to each other through typed Relationships
(cmdb_rel_ci) — "Runs on::Runs," "Depends on::Used by," and
similar pairs describing how one CI relates to another. The
dependency view (available from any CI's form) renders this
relationship graph visually, which is often the fastest way to answer "if this
server goes down, what business services does that actually affect" — exactly
the kind of question that turns an incident's blast radius from a guess into
something you can see.
4. How Discovery Populates the CMDB
Manually creating every CI record by hand doesn't scale past a small environment — Discovery is ServiceNow's mechanism for automatically finding infrastructure on a network and populating (and continuously refreshing) CMDB records for it, typically via a MID Server (a small on-premises agent, covered again in Week 20) that can reach into a private network the cloud instance itself can't directly probe. This course won't configure Discovery hands-on — it requires real network infrastructure to be meaningful — but knowing conceptually that "the CMDB doesn't populate itself by magic; something has to either scan for it or a human has to enter it" is enough to reason correctly about CMDB data quality issues later.
A stale or incomplete CMDB — CIs that no longer exist, relationships nobody maintained — is one of the most common real-world ServiceNow pain points, precisely because keeping it accurate requires either reliable automated discovery or real organizational discipline about manual updates. It's worth knowing this going in, rather than assuming CMDB data is always trustworthy by default.
5. Hands-on Exercise
Model a small dependency chain by hand
Requirements:
- Create three CI records: a
cmdb_ci_servernamed "APP-SRV-01," acmdb_ci_applnamed "Order Processing App," and acmdb_ci_servicenamed "Order Fulfillment Service." - Create relationships: the application "Runs on" the server, and the service "Depends on" the application.
- Open the server's dependency view and confirm you can see the full chain up to the business service.
- Create a test incident, set its Configuration Item to the server, and note how quickly you could now identify the affected business service just from the incident form.
6. Knowledge Check
Four quick questions. Expand each to check your answer.
Q1
What is a Configuration Item, and what is the CMDB?
What is a Configuration Item, and what is the CMDB?
A Configuration Item is any component of IT infrastructure or service worth tracking and managing individually — a server, an application, a business service. The CMDB is the collection of CI records plus the relationships between them, forming the underlying "what do we have and how does it connect" data model that other ITSM processes depend on.
Q2
Why does it matter that specific CI types like cmdb_ci_server extend a common cmdb_ci base table?
Why does it matter that specific CI types like cmdb_ci_server extend a common cmdb_ci base table?
It's the same extension pattern as task in Week 2 — it lets generic, CI-level features (like an incident form's Configuration Item reference field, which can point at any kind of CI) work uniformly across every specific CI type, instead of needing separate handling for servers, applications, and services.
Q3
What does a dependency view let you answer that a single CI record on its own can't?
What does a dependency view let you answer that a single CI record on its own can't?
It renders the graph of typed relationships between CIs visually, making it possible to answer questions like "if this server goes down, what business services does that affect" by tracing the relationship chain outward from one CI, rather than manually cross-referencing separate records.
Q4
Why doesn't the CMDB populate itself automatically without any tooling or process?
Why doesn't the CMDB populate itself automatically without any tooling or process?
CI records and their relationships have to come from somewhere — either automated Discovery scanning the network (typically via a MID Server reaching into infrastructure the cloud instance can't directly probe) or manual entry with real organizational discipline to keep it current. Without one of those, CMDB data drifts stale or incomplete, which is a common real-world pain point.