Konfigurationsmanagement
Konfigurationsmanagement (Englisch: Configuration Management, CM) ist ein steuerungs- und regeltechnischer Prozess, der die korrekte Zuordnung von Konfigurationselemente (Englisch: Configuration Items, CI) eines Unternehmens ebenso sicherstellt wie deren Beziehung in einer Betriebsumgebung. Konfigurationselemente sind zum Beispiel Geräte, Hardware und Software eines Konzerns ebenso wie die notwendigen Fähigkeiten zur Lieferung von Dienstleistungen für ein Unternehmen.
Der Vorgang der Konfigurationsmanagement besteht in der Identifizierung und Nachverfolgung der einzelnen Konfigurationselemente, einschließlich ihrer Eigenschaften und Funktionen. Dazu gehören auch deren Beziehungen zu den Diensten, die sie während ihrer Betriebszeit versorgen.
Solche Informationen umfassen üblicherweise die Versionen und Updates eines installierten Softwarepakets und die örtliche Unterbringung sowie Netzwerkadressen von Hardwaregeräten. Mit Hilfe eines Tools für Netzwerkkonfiguration kann ein Techniker die komplette Sammlung verknüpfter Systeme überblicken und die Auswirkungen von Änderungen in einem oder mehreren Systemen auswerten.
Konfigurationsmanagement ist einer der operativen Prozesse, die im Service Management Framework der Information Technology Infrastructure Library (ITIL) festgelegt sind. Allerdings müssen Unternehmen nicht zwingend das ITIL-Framework umsetzen, um Konfigurationsmanagement zu betreiben. Konfigurationsmanagement wird in ITIL V3 als Service Asset and Configuration Management bezeichnet.
Für den Betrieb eines Konfigurationsmanagementsystems ist ein Speichermechanismus notwendig, in dem die Informationen aufbewahrt werden, mit denen das System arbeiten soll.
Ursprünglich wurde dieser Mechanismus Configuration Management Database (CMDB) genannt, mit ITIL V3 wurde dieses Konzept aber abgelöst durch das Configuration Management System (CMS). Das CMDB orientiert sich an einem einzelnen, monolithischen Repository, während das CMS konzeptionell eher wie mehrere CMDBs arbeitet, die gemeinsam die Notwendigkeiten des Steuerungsprozesses umsetzen.
Beide Modelle haben Vorteile gegenüber einer statischen Konfigurationsmanagementtabelle oder Textdatei, die eine erhebliche manuelle Pflege erfordert und keine Basis-Workflows und Best Practices integrieren kann.
Jedes Tool für Konfigurationsmanagement wird mit einem zugehörigen Daten-Repository ausgerollt. Ohne den Governance-Prozess des Konfigurationsmanagements, der seinen Inhalt validiert, ist das Repository lediglich eine operative Datenbank mit nicht verifizierten Daten, kein CMDB oder CMS.
Automatisierte Konfigurationsaudit- und Verifizierungskomponenten berechtigen ein Repository dazu, als autorisierte Quelle für Assets genutzt zu werden. Ein manuelles Audit ist ebenfalls möglich. Es existieren einige spezielle Konfigurationsmanagement-Tools, wie zum Beispiel Atrium von BMC Software und Universal Configuration Management Database von Hewlett Packard Enterprise.
Ein Konfigurationsmanagementprozess und das unterstützende Repository - CMDB oder CMS - stehen vor der Herausforderung, dass sich Daten in Unternehmen überlappen und widersprechen. Der Konfigurationsmanagementplan muss eine Möglichkeit zur Zusammenführung und Abstimmung von Konfigurationselementen beinhalten, um einen einzigen Bezugspunkt oder eine Single Source of Truth zu präsentieren.
Hauptvorteile des Konfigurationsmanagements
Ein Tool für das Konfigurationsmanagement kann die Analyse eines Unternehmens unterstützen, welche Auswirkungen Veränderungen haben. Damit werden Ausfallzeiten reduziert, die durch Änderungen in der Produktion verursacht werden.
Konfigurationsmanagement verbindet gültige Servicemodelle, Zuordnung der Abhängigkeiten und Korrelationen zwischen Konfigurationselementen sowie Änderungsanforderungen. Es unterstützt damit die schnellere Wiederherstellbarkeit der Dienste während eines Ausfalls.
Ein Unternehmen kann eine verbesserte Serviceerbringung erreichen, gemessen an der mittleren Reparaturdauer und der mittleren Zeit zwischen den Ausfällen. Andere Metriken können sich ebenfalls verbessern, wie zum Beispiel die Zeit für die Suche nach Daten, die Datenqualität und die genaue Berichterstattung über das IT-Equipment.
Ein Konfigurationsmanagementsystem bietet Unterstützung bei Audit und Compliance für die dauerhafte betriebliche Inventarisierung und Verwaltung von Geräten, deren Nutzung und Anpassung.
Einen Konfigurationsmanagementplan zu etablieren, bietet Unternehmen mehrere Vorteile. Das bessere Verständnis der Total Cost of Ownership (TCO) des aktuellen IT-Servicemodells führt zu geringeren Betriebskosten. Durch die Möglichkeit, unautorisierte Änderungen zu erkennen, verbessert sich die Security im Unternehmen. Die Korrelation zwischen Konfigurationselementen und betrieblichen Prozessen (und wie diese die operativen Dienste unterstützen oder Key Performance Indikatoren beeinflussen) ermöglicht Entscheidungen auf Basis einer besseren Informationslage.
Change Management und Asset Management
Change Management und Konfigurationsmanagement ergänzen sich, sind aber keine identischen Prozesse. Change Management dient dem Zweck, dass bei minimiertem Risiko und Einfluss auf das Gesamtbild nur autorisierte Veränderungen an einer Sache vorgenommen werden. Change Management wird als etablierter Geschäftsprozess implementiert, etwa als Beratungsgremium, das Änderungsanforderungen evaluiert. Konfigurationsmanagement hingegen beschäftigt sich mit der Identifikation, Wartung, Berichtserstellung und Verifikation von Dingen und deren Beziehung untereinander.
Die intensivste Nutzung von Konfigurationsmanagement ist im Militär und der technischen Entwicklung zu finden, wo es Teil eines umfassenden Change-Management-Lebenszyklus ist. Solche Umgebungen erfordern einen hohen Grad an Überprüfung, Audits und Verifikation, wie sie Konfigurationsmanagement bietet. Das gilt insbesondere für Vorgänge im Bereich der Informationssicherheit.
Konfigurationsmanagement unterscheidet sich auch vom Asset Management, denn Konfigurationsmanagement beschäftigt sich nicht mit den finanzbuchhalterischen Aspekten der Konfigurationselemente. Asset Management und Konfigurationsmanagement teilen sich zwar Informationen über Dinge und Geräte, nutzen diese aber zu unterschiedlichen Zwecken und mit unterschiedlichem Ziel. Ein Konfigurationselement kann zwar ein Asset sein, muss es aber nicht. Das gibt auch für ein Asset: Es kann ein Konfigurationselement sein, oder auch nicht.
Konfigurationsmanagement und Asset Management arbeiten mit unterschiedlichen Lebenszyklen. Asset Management zum Beispiel betrifft einen Server von der Beschaffung bis zur Entsorgung. Konfigurationsmanagement hingegen hat mit dem Server nur zu tun, solange dieser mit einem oder mehreren Diensten verknüpft ist. Wird der Dienst eingestellt, bleibt das Asset Management mit den finanziellen Aspekten des Servers beschäftigt, während sich das Konfigurationsmanagement nicht weiter aktiv um das Gerät kümmert.
Das Konfigurationsmanagementsystem archiviert allerdings Betriebsdaten zum Konfigurationselement und des von ihm unterstützten Dienstes. Ein Server kann über seine ganze Lebenszeit hinweg verschiedenste Dienste unterstützen, wobei jede neue Implementierung des exakt identischen Servers für das Konfigurationsmanagement als neues Konfigurationselement gilt.
Softwarekonfigurationsmanagement
Konfigurationsmanagement wird auch in der Softwareentwicklung und -verteilung genutzt. Dort ist es unter dem Namen Software oder Unified Configuration Management (SCM oder UCM) bekannt. Entwickler und andere Projektbeteiligte können SCM verwenden, um Artefakte zu verwalten, seien es Quellcode, Dokumentation, Probleme, Änderungsanforderungen oder durchgeführte Änderungen.
Softwarekonfigurationsmanagement bieten eine Struktur für die einzelnen Entwicklungsschritte, zum Beispiel die Etablierung einer gemeinsamen Richtung oder die Berichterstattung zum Entwicklungsfortschritt.
Entwickler nutzen Softwarekonfigurationsmanagement, sobald eine Idee zu einem funktionierenden Softwaresystem geworden ist, zur Überwachung neuer Versionen wie auch für die Verteilung der Softwarekonfiguration an zusätzliche Hosts. In dieser Hinsicht überschneidet sich Softwarekonfigurationsmanagement mit dem breiter gefassten Konfigurationsmanagement und belegt Konfigurationselemente wie physische Server oder Betriebssysteminstanzen.
Tools zum Softwarekonfigurationsmanagement wie Chef und Puppet können im Zusammenspiel mit Versionskontrollwerkzeugen für die Quellcodeverwaltung eingesetzt werden, etwa mit Apache Subversion oder Git.