Jump to content

Configuration management database: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Pukerua (talk | contribs)
External link to open source project
don't link titles, move DMTF content/ref to target article
 
(469 intermediate revisions by more than 100 users not shown)
Line 1: Line 1:
{{Short description|ITIL database used by an organization to store information about hardware and software assets}}
A '''[[configuration management]] database''' (CMDB) is a unified or federated repository of information related to all the components of an [[information system]]. It helps an organization to understand the relationships between these components and track their configuration. The CMDB is a fundamental component of the [[ITIL]] framework's [[Configuration Management (ITSM)|Configuration Management]] process .
{{More citations needed|date=July 2024}}
A '''configuration management database''' ('''CMDB''') is an [[ITIL]] term for a [[database]] used by an organization to store information about hardware and software assets (commonly referred to as [[configuration item]]s). It is useful to break down configuration items into logical layers.<ref>{{Cite web
| url=https://doc.objectgears.cz/vcd/en-US/a_models_it
| title=Configuration items layers}}</ref> This database acts as a [[data warehouse]] for the organization and also stores information regarding the relationships among its assets.<ref>{{Cite web
| url=https://searchdatacenter.techtarget.com/definition/configuration-management-database
| title=What is CMDB (configuration management database)?
| date=July 2017
| publisher=[[TechTarget]]
| accessdate=2019-01-14}}</ref> The CMDB provides a means of understanding the organization's critical assets and their relationships, such as [[information system]]s, upstream sources or dependencies of assets, and the downstream targets of assets.<ref>{{Cite web
| url=https://info.axiossystems.com/cmdb-improvement-whitepaper
| title=IT: disconnected from the business?
| date=2015-11-10
| work=[[Axios Systems]]
| url-access=registration
| accessdate=2019-01-14
| archive-date=2019-12-06
| archive-url=https://web.archive.org/web/20191206124426/https://info.axiossystems.com/cmdb-improvement-whitepaper
| url-status=dead
}}</ref>


== Purpose and benefits ==
The CMDB records [[configuration item]]s (CI) and details about the important attributes and relationships between CIs. Configuration managers usually describe CIs using three configurable attributes:
The CMDB is a fundamental component of [[ITIL]] framework's Configuration Management process. CMDBs are used to keep track of the state of assets such as products, systems, software, facilities, people as they exist at specific points in time, and the relationship between all assets. A CMDB helps an organization understand the relationship between the components of a system and to track their configurations. The maintenance of this information allows for certain actions, such as the reconstruction of assets, to occur at any point in time. CMDBs can also be used for things like [[impact evaluation|impact analysis]], root cause analysis, or [[change management (ITSM)|change management]].
# Technical
# Ownership
# Relationship


CMDB implementations often involve federation – the inclusion of data into the CMDB from other sources – such as asset management, in such a way that the source of the data retains control of the data. Federation is usually distinguished from ETL (extract, transform, load) solutions in which data is copied into the CMDB.
A key success factor in implementing a CMDB is the ability to automatically discover information about the CIs (auto-discovery), and track changes as they happen.


CMDBs can be used for many things, including but not limited to: business intelligence, software and hardware builds, inventory,<ref>{{cite web
CMDBs contain metadata, and thus the concept overlaps with that of a [[metadata]] repository—both are used in running large IT organizations. Configuration management addresses how the data is to be kept up to date, which has historically been a weakness of metadata repositories.
| url=https://www.ansible.com/resources/whitepapers/ansible-in-depth
| title=Whitepaper: Ansible in Depth
| quote=There are many points of integration that can be used to extend Ansible, including: (...) inventory data retrieved from CMDB systems or cloud sources.
|url-access=registration
| publisher=[[Ansible (software)]]
| accessdate=2019-01-14}}</ref> impact analysis for change management,<ref>{{cite book
| last1=Sauvé
| first1=Jacques
| last2=Rebouças
| first2=Rodrigo
| last3=Moura
| first3=Antão
| last4=Bartolini
| first4=Claudio
| last5=Boulmakoul
| first5=Abdel
| last6=Trastour
| first6=David
| title=Business-Driven Decision Support for Change Management: Planning and Scheduling of Changes
| date=2006
| publisher=Springer Berlin Heidelberg
| pages=173–184
| isbn=978-3-540-47662-7| doi=10.1007/11907466_15
}}</ref> and [[incident management]].


In the context of [[ITIL]], the use of CMDBs is as part of infrastructure operations and support. The CMDB represents the authorized configuration of the significant components of the IT environment.
== References ==
* Office of Government Commerce (OGC), ed.: Service Support. IT Infrastructure Library (ITIL). The Stationary Office, Norwich, UK (2000)
* OGC, ed.: Introduction to ITIL. IT Infrastructure Library. The Stationary Office (2005)
<references />


==See also==
== Contents ==
{{Main|Configuration item}}
*[[ITIL]]
The CMDB contains and records data that are also called '''configuration items''' ('''CI'''). It also provides details about the important attributes of CIs and the relationships between them.
*[[COBIT]]
== External links ==
*[http://www.trendmapper.com/charts/pages/cmdb-07072005-2991.html Trendmap] for CMDB
*[http://del.icio.us/tag/cmdb Del.icio.us community bookmarks tagged] with CMDB
*[http://www.google.com/trends?q=cmdb+ Level of interest] about CMDB on the internet according to Google
*[http://www.cmdb.info/pd1/html/modules.php?op=modload&name=Sections&file=index&req=viewarticle&artid=2&page=1 How to build a CMDB] with open source software


=== CI attributes and data ===
==Components for software/hardware/network configuration management==
Attributes captured by a CMDB vary based on CI category, and can number up to the hundreds. Some examples include:
*[http://www.413technologies.co.uk ZENmetrics], an agentless software component for collecting and integrating CMDB data with 3rd party and bespoke applications.


* CI [[Unique identifier|Unique Identifier]] or Identification Code
==CMDB vendors==
* CI Name or Label (often, both [[Full name|long names]] and [[short name]]s)
*[http://aixpertsoft.de/index.php?lang=us AixpertSoft GmbH - AixBOMS] Advanced CMDB incl. Business Rule concept and Workflow Engine
* CI Abbreviations or Acronyms
*[http://www.planetassoc.com/ Planet IRM] a comprehensive visual CMDB for government and enterprise applications
* CI Description
*[http://www.bpmspace.org/ BPMspace for ITIL] an open-source CMDB written in Java with Browser Frontend including ITIL Processes like Incident, Problem, SLM, Configuration and Change Management
* CI Ownership (organizations and people)
*[http://www.infra.com.au/ infra Corporation, Federated CMDB within infraEnterprise]
* CI Importance
*[http://www.bmc.com/BMC/Common/Templates/hou_generic_tab/0,3846,19052_34830539,00.html BMC Software - Atrium CMDB 2.0]
*[http://www.frontrange.com/ProductsSolutions/Detail.aspx?id=48 FrontRange Configuration Management]
*[http://www.easycmdb.com/ easy CMDB]
*[http://www.mercury.com/us/products/business-availability-center/universal-cmdb/ Mercury Universal CMDB]
*[http://www.managedobjects.com Managed Objects] CMDB 360
*[http://www.tideway.com Tideway Foundation] Application Dependency Mapping for CMDB
*[http://www.nlayers.com EMC CMDB - Smarts ADM]
*[http://www.netdirector.org NetDirector] An Open Source CMDB using Java and Ajax
*[http://www3.ca.com/Solutions/Product.aspx?ID=5786 CA CMDB Product Solution]
*[http://www.interlinksoftware.com Interlink Software]
*[http://www.onecmdb.org OneCMDB] an open-source CMDB implementation in Java
*[http://www-306.ibm.com/software/tivoli/products/ccmdb/ IBM Tivoli Change & Configuration Management Database]
*[http://www.escapek.org/ Escape-K] an open-source CMDB written in Java using the [[Eclipse (software)|Eclipse]] platform
*[http://www.service-now.com/ Service-now.com] On-Demand CMDB and integrated asset and service management
*[http://www.altiris.com/Products/AssetCMDB.aspx Altiris CMDB] Advanced CMDB for repository and configuration management
*[http://juice.altiris.com/article/423/links-asset-cmdb Altiris CMDB User Community] A Community for Altiris CMDB Users


Because attributes are defined by metadata, CMDBs also contain metadata, and thus the concept overlaps with that of a [[metadata]] repository, which is also used to more effectively run IT organizations. Configuration management addresses how the data is to be kept up to date. This has historically been a weakness of metadata repositories.
[[Category:Information technology management]]


=== Relationships between CIs ===
[[de:Configuration Management Database]]
At a minimum, relationships are often composed of a Source CI that is related to a Target CI. In the case of more advanced relationships, such as [[semantic relationship]]s, it is desirable to have a descriptor between the Source CI and Target CI that helps provide context. For example, "database" is related as a "Component" of "Application Y". The descriptor is also known as a Predicate.
[[fr:CMDB]]

[[ja:CMDB]]
=== Configuration item types ===
A [[configuration item type]] (or CI type) is the [[data type]] of the element or [[configuration item]] an enterprise wishes to store within the CMDB. At a minimum, all software, hardware, network, and storage CI types are stored and tracked in a CMDB. As enterprises mature, they start to track business CI types in their CMDB, such as people, markets, products, and 3rd party entities such as vendors and partners. This allows the relationships between CIs to become more meaningful and the CMDB to become a stronger source for knowledge management.

CI types are:
* [[Electronic hardware|Hardware]]
* [[Software]]
* Communications/Networks
* Location
* Documentation
* People (staff and contractors)

A key success factor in implementing a CMDB is the ability to automatically discover information about the CIs (auto-discovery) and track changes as they happen.

==Schematic representations==
CMDB schematic structures, also known as [[database schema]]s, take on multiple forms. Two of the most common forms are those of a [[relational model|relational data model]] and a [[semantic data model]].

[[Relational model|Relational data models]] are based on first-order predicate logic and all data is represented in terms of tuples that are grouped into relations. In the relational model, related records are linked together with a "key", where the key is unique to an entry's data type definition. Such relational models provide declarative methods for specifying data and queries. In other words, users directly state what information the database contains and what information they want from it, and let the database system take care of describing data structures for storing the data and retrieval procedures for answering queries.

[[Semantic data model]]s typically rely on the [[resource description framework]] that maps the relation between a number of things through the use of relationship descriptors, giving context to how things are related to each other.

== Challenges ==
{{unreferenced section|date=July 2024}}
There are three specific core challenges to creating and maintaining a Configuration Management Database:

* '''Relevance''': Collecting data throughout each record's or CI's life cycle is necessary.{{whom|date=July 2024}} This means putting in processes and tools to collect the most recent changes to data as they occur.
* '''Maintenance''': Companies face constant change. Data about CIs and the relationships between them are constantly changing. This maintenance is a significant undertaking that is often not planned for or expected.{{or|date=July 2024}} Organisations often find this the greatest challenge.{{fact|date=July 2024}}
* '''Usability''': Most CMDBs are just databases. This means they have no traits, features, or benefits of more complex applications. They lack tools to view data via complex visualizations or tools for advanced discovery. This means that most companies need to invest in an application layer that adds such constructs to their CMDB, which adds a layer of complexity and cost that most companies do not plan for or expect.{{or|date=July 2024}} However, implementing features that ensure the database is up to date or allow it to interact with systems to run commands, apply updates, or deploy new applications extends the functionality and usefulness of the CMDB.

Because of the above reasons, companies usually choose to purchase their CMDBs, rather than designing, building, delivering, and supporting them themselves.{{fact|date=July 2024}}

== See also ==
* [[Distributed Management Task Force]] (DMTF) – CMDBf

== References ==
<references />

==External links==
* [https://tumblr.github.io/collins/ Collins: Infrastructure management for engineers]
* [https://www.objectgears.cz/files/guide-to-cmdb-solution-design Guide to CMDB solution design]

[[Category:Information technology management]]
[[Category:ITIL]]

Latest revision as of 09:36, 14 October 2024

A configuration management database (CMDB) is an ITIL term for a database used by an organization to store information about hardware and software assets (commonly referred to as configuration items). It is useful to break down configuration items into logical layers.[1] This database acts as a data warehouse for the organization and also stores information regarding the relationships among its assets.[2] The CMDB provides a means of understanding the organization's critical assets and their relationships, such as information systems, upstream sources or dependencies of assets, and the downstream targets of assets.[3]

Purpose and benefits

[edit]

The CMDB is a fundamental component of ITIL framework's Configuration Management process. CMDBs are used to keep track of the state of assets such as products, systems, software, facilities, people as they exist at specific points in time, and the relationship between all assets. A CMDB helps an organization understand the relationship between the components of a system and to track their configurations. The maintenance of this information allows for certain actions, such as the reconstruction of assets, to occur at any point in time. CMDBs can also be used for things like impact analysis, root cause analysis, or change management.

CMDB implementations often involve federation – the inclusion of data into the CMDB from other sources – such as asset management, in such a way that the source of the data retains control of the data. Federation is usually distinguished from ETL (extract, transform, load) solutions in which data is copied into the CMDB.

CMDBs can be used for many things, including but not limited to: business intelligence, software and hardware builds, inventory,[4] impact analysis for change management,[5] and incident management.

In the context of ITIL, the use of CMDBs is as part of infrastructure operations and support. The CMDB represents the authorized configuration of the significant components of the IT environment.

Contents

[edit]

The CMDB contains and records data that are also called configuration items (CI). It also provides details about the important attributes of CIs and the relationships between them.

CI attributes and data

[edit]

Attributes captured by a CMDB vary based on CI category, and can number up to the hundreds. Some examples include:

  • CI Unique Identifier or Identification Code
  • CI Name or Label (often, both long names and short names)
  • CI Abbreviations or Acronyms
  • CI Description
  • CI Ownership (organizations and people)
  • CI Importance

Because attributes are defined by metadata, CMDBs also contain metadata, and thus the concept overlaps with that of a metadata repository, which is also used to more effectively run IT organizations. Configuration management addresses how the data is to be kept up to date. This has historically been a weakness of metadata repositories.

Relationships between CIs

[edit]

At a minimum, relationships are often composed of a Source CI that is related to a Target CI. In the case of more advanced relationships, such as semantic relationships, it is desirable to have a descriptor between the Source CI and Target CI that helps provide context. For example, "database" is related as a "Component" of "Application Y". The descriptor is also known as a Predicate.

Configuration item types

[edit]

A configuration item type (or CI type) is the data type of the element or configuration item an enterprise wishes to store within the CMDB. At a minimum, all software, hardware, network, and storage CI types are stored and tracked in a CMDB. As enterprises mature, they start to track business CI types in their CMDB, such as people, markets, products, and 3rd party entities such as vendors and partners. This allows the relationships between CIs to become more meaningful and the CMDB to become a stronger source for knowledge management.

CI types are:

  • Hardware
  • Software
  • Communications/Networks
  • Location
  • Documentation
  • People (staff and contractors)

A key success factor in implementing a CMDB is the ability to automatically discover information about the CIs (auto-discovery) and track changes as they happen.

Schematic representations

[edit]

CMDB schematic structures, also known as database schemas, take on multiple forms. Two of the most common forms are those of a relational data model and a semantic data model.

Relational data models are based on first-order predicate logic and all data is represented in terms of tuples that are grouped into relations. In the relational model, related records are linked together with a "key", where the key is unique to an entry's data type definition. Such relational models provide declarative methods for specifying data and queries. In other words, users directly state what information the database contains and what information they want from it, and let the database system take care of describing data structures for storing the data and retrieval procedures for answering queries.

Semantic data models typically rely on the resource description framework that maps the relation between a number of things through the use of relationship descriptors, giving context to how things are related to each other.

Challenges

[edit]

There are three specific core challenges to creating and maintaining a Configuration Management Database:

  • Relevance: Collecting data throughout each record's or CI's life cycle is necessary.[according to whom?] This means putting in processes and tools to collect the most recent changes to data as they occur.
  • Maintenance: Companies face constant change. Data about CIs and the relationships between them are constantly changing. This maintenance is a significant undertaking that is often not planned for or expected.[original research?] Organisations often find this the greatest challenge.[citation needed]
  • Usability: Most CMDBs are just databases. This means they have no traits, features, or benefits of more complex applications. They lack tools to view data via complex visualizations or tools for advanced discovery. This means that most companies need to invest in an application layer that adds such constructs to their CMDB, which adds a layer of complexity and cost that most companies do not plan for or expect.[original research?] However, implementing features that ensure the database is up to date or allow it to interact with systems to run commands, apply updates, or deploy new applications extends the functionality and usefulness of the CMDB.

Because of the above reasons, companies usually choose to purchase their CMDBs, rather than designing, building, delivering, and supporting them themselves.[citation needed]

See also

[edit]

References

[edit]
  1. ^ "Configuration items layers".
  2. ^ "What is CMDB (configuration management database)?". TechTarget. July 2017. Retrieved 2019-01-14.
  3. ^ "IT: disconnected from the business?". Axios Systems. 2015-11-10. Archived from the original on 2019-12-06. Retrieved 2019-01-14.
  4. ^ "Whitepaper: Ansible in Depth". Ansible (software). Retrieved 2019-01-14. There are many points of integration that can be used to extend Ansible, including: (...) inventory data retrieved from CMDB systems or cloud sources.
  5. ^ Sauvé, Jacques; Rebouças, Rodrigo; Moura, Antão; Bartolini, Claudio; Boulmakoul, Abdel; Trastour, David (2006). Business-Driven Decision Support for Change Management: Planning and Scheduling of Changes. Springer Berlin Heidelberg. pp. 173–184. doi:10.1007/11907466_15. ISBN 978-3-540-47662-7.
[edit]