Dieter SteigerDieter Steiger HP uCMDB 7.0 Base Implementation Training

02.10.08 by Dieter Steiger

In beteo Projekten steht die Universal CMDB von HP als Konfigurationsmangement-Datenbank im Rahmen von Application Lifecycle Management-Projekten im Einsatz. Ich hatte nun die Gelegenheit in Helsinki bei HP an einem Kurs die UCMDB ganz allgemein kennen zu lernen. CMDBs (Configuration Management Databases) werden in Unternehmen immer konsequenter eingesetzt, um die immer komplexere Systemlandschaft abzubilden und zu überschauen. Es handelt sich dabei eigentlich um eine Bibliothek für die Infrastruktur. UCMDB (Universal CMDB) ist die CMDB-Implementierung von HP, welche einen klaren Fokus auf die Abbildbarkeit auch von grössten Business-Umgebungen legt.

Der Kurs dauerte fünf Tage und fand im Training Center bei Oracle statt. Die Teilnehmer kamen dabei aus Finnland, Polen, England und der Schweiz.

Ablauf des Kurses

Der Kurs startete mit einem Überblick, wie eine CMDB verwendet und eingesetzt wird. Weiter ging es Schritt-für-Schritt durch (fast) jedes Menu der UCMDB, mit vielen Erklärungen und guten Übungen. Im Einzelnen wurden folgende Themen behandelt.

CMDB

Die Basis-Einheit einer CMDB ist das sogenannte CI (Configuration Item), welches die Eigenschaften einer beliebigen Hard- oder Software, als auch die eines Business Prozesses beschreibt. Jedes CI ist eine Instanz eines CIT (Configuration Item Type), so wie bei der Objektorientierten Programmierung ein Objekt Instanz einer Klasse ist. Auf Basis eines geeigneten Designs, entsprechend festgelegten Vererbungen und Abhängigkeiten von CITs, kann die System- und Business-Landschaft eines Unternehmens modeliert werden. Jedes einzelne CI kann wiederum in Abhängigkeit zu anderen CIs stehen. Dies ermöglich sehr flexibel, Systeme zu beschreiben. Mit einer CMDB ist es somit auch möglich, Systeme nach ITIL-Standard zu erfassen.

Hauptbestandteile von UCMDB

Die Hauptbestandteile von UCMDB sind einerseits die Administrations-Oberfläche, wo neben Programm-Einstellungen und Benutzerrechten auch die eigentliche Configuration-Management-Datenbank selbst verwaltet und gesteuert wird. Der andere Hauptbestandteil ist die Ansicht der Configuration-Management-Datenbank, welches den IT-Verantwortlichen die Übersicht der aktuell vorhandenen Konfiguration darstellt. Im Kurs wurde hauptsächlich die Administrations-Oberfläche unter die Lupe genommen, also wie CIs und CITs erstellt, wie Abhängigkeiten und Vererbungen definiert und die "Views" erstellt werden, auf welche die Benutzer Zugriff haben. Des weiteren wurden Reports erstellt und Statistiken kennengelernt.

Funktionen von UCMDB

Die wichtigsten und mächtigsten Module von UCMDB sind die automatische Suche nach Änderungen in der Systemlandschaft mittels "Discovery", die "Impact-Analyse" und die verteilte Speicherung der CMDB über eine zentrale Verwaltung, im sogenannten "Federated" Datenmodell. Im übrigen erfolgen die gesamte CI-Verwaltung und die Konfiguration aller möglichen Ansichten von Teilmengen der CMDB graphisch, mittels sogenannter TQL (Topology Query Language).

Beispiel Topology Query Language (TQL)

Universe Manager

Im Universe Manager sind alle CIs abgebildet. Hier verwaltet CMDB-Administrator die eigentlichen CMDB-Daten. Dies beinhaltet die Erfassung und Änderung der CIs, sowie deren Beziehungen zueinander. Beim Löschen der CIs ist jedoch Vorsicht geboten. Diese werden in UCMDB Version 7.0 auch gleich komplett aus der Datenbank gelöscht. Eine Undo-Funktion gibt es nicht, obwohl alle CI-Änderungen in einer History-Datenbank gespeichert sind.

View Manager

Hier werden Ansichten von Teilmengen aus der CMDB definiert. Diese können von den verschiedenen CMDB-Benutzern eingesehen werden. Es kann eine beispielsweise eine "View" erstellt werden, mit allen Rechnern, die ein noch veraltetes Firewall verwenden und sich in einem bestimmten Netz befinden. Dieser kann dann dem Verantwortlichen dieses Netzes zur Verfügung gestellt werden. Die Definition der Ansichten erfolgt ebenfalls mittels TQL.

Discovery

Discovery funktioniert mittels Discovery-Probes, welche über Discovery-Gateways Aufgaben zur Erforschung der Landschaft erhalten. Diese selbst werden im CMDB-Hauptserver definiert. Die  grösste Herausforderung bei solchem "Scannen" von Server- und Netzwerkkomponenten stellt die Security. Das Auslesen der Eigenschaften der Komponenten benötigt eine Verbindung, welche nicht durch verschiedene Subnets oder Firewalls verunmöglicht werden darf. Daher müssen der UCMDB die notwendigen Administrations-Passwörter bekannt sein, um überhaupt die  System-Details überhaupt aufspüren zu können. Beim Auslesen der Eigenschaften kann beliebig ins Detail gegangen werden. Falls etwas in der Standardversion der UCMDB nicht unterstützt ist, schreibt man sein eigenes Jython-Script, welches die gewünschten Eigenschaften der Systeme ausliest. Wenn das Discovery einen gewissen Service nicht mehr findet, wird dessen Eintrag irgendwann aus der Datenbank gelöscht. Wie lange das dauert, kann für jeden CIT, oder auch für jedes einzelne CI, definiert werden.

Impact Analyse

Die UCMDB bietet gute Darstellungen und Analyse zu Systemausfällen. Das vorgängige Modellieren von Folgeprobleme ermöglicht die Analyse von Systemproblemen, auch in Systemen, welche über weite Distanzen verteilt, über viele Knoten vernetzt und kaum überschaubar sind.

Federated Database

Mittels Federated Database kann die unter Umständen enorm grosse UCMDB-Datenbank auf verschiedene physische Systeme verteilt werden. So können unterschiedliche Geschäftsstandorte jeweils ihre eigene Datenbank besitzen. Diese werden über eine zentrale UCMDB-Installation verwaltet. Abfragen über die Datenbank werden dadurch schneller, nichts desto trotz arbeiten die Benutzer mit den aktuellsten Daten. Der zentrale Server weiss diese zu finden. Hier gibt es jedoch noch die Einschränkung, dass ein CIT jeweils nur auf einer Datenbank gespeichert wird. Wenn CIs auf anderen Datenbanken liegen, werden vererbte Klassen bei der Suche nicht gefunden.

UCMDB-Einsatz im Application Change Management?

UCMDB kann im Prinzip alle möglichen Eigenschaften beliebiger Systeme speichern. Dennoch ist es komplex, die UCMDB im Bereich des Application Lifecycle Management (ALM) für die Verwaltung von Software-Komponenten und Versionsmanagements einzusetzen. Die UCMDB zielt nicht in erster Linie auf ein solches Umfeld geplant ist, oder wird zumindest nicht hierfür von HP positioniert. In Kombination mit HP Business Availablity Center (HP BAC) kann mit UCMDB ein Monitoring-System aufgesetzt werden, welches realtime alle System-Ausfälle anhand der Impact-Analyse-Funktion von UCMDB aufzeichnen, detailliert darstellen kann, sowie Auswertungen erlaubt. Ein anderer Anwendungsfall stellt die Durchforschung von Webservices in Kombination mit HP SOA Center dar. Die UCMDB bietet Schnittstellen, um einfach externe Tools anzubinden. Aber letztendlich definiert sich diese Grenze darüber, wie viel Daten in der CMDB überschaubar sind und vor die Datenbank noch performant funktionieren lassen. Geeignete „Views“ erlauben die Darstellung der Inhalte beliebig einfach zu halten. Das Discovery von Konfigurationsdateien erlaubt im weiteren, viel Information über das Customizing einzelner Software-Komponenten zu erfahren. Auf dieser Basis können Probleme bei Versions-Updates durch Analysen vorgängig erkannt, erörtert und umgangen werden. Dies gilt insbesondere auch für den Update von SAP-Modulen.

Fazit

Der Kurs hat aufgezeigt, dass die UCMDB trotz oder gerade wegen ihres eigentlich sehr simplen Prinzips äusserst mächtig ist. Die fünf Kurstage boten im wesentlichen eine Einführung in die Funktionsweise von UCMDB, ohne auf dabei auch auf alle wichtigen Details einzugehen, die allenfalls beim echten Einsatz in grossen Unternehmen und Institutionen Bedeutung haben. Die schöne graphische Umsetzung der UCMDB erlaubt aber schnell, relativ einfach, intuitiv mit dem Produkt zu arbeiten. UCMDB bietet eine API, wodurch die gesamte Applikation von aussen steuerbar ist und nichts unmöglich scheint.Denn och, oder auch deshalb kann der Aufwand, eine UCMDB sinnvoll einzusetzen, komplex werden. Heute wird das Produkt von HP in erster Linie als Infrastrukturbibliothek für ITIL verkauft, obwohl es im Prinzip zu viel mehr fähig wäre. Der Kurs gab leider viel zu wenig Einblick, wie gut UCMDB im Bereich von Application Lifecycle Management und Quality Management eingesetzt werden kann. Mit weiteren UCMDB Praxis-Blogs werden wir versuchen, diese Lücke bald zu schliessen. Der Kurs war noch auf UCMDB 7.0 basierend, obwohl bereits UCMDB 7.5 verfügbar ist. Das lässt sich damit begründen, dass der Unterschied der Versionen praktisch nur im Wizard für die Discovery-Konfiguration liegt. Dennoch wäre es motivierend gewesen, mit der neusten Version zu arbeiten. Alles in allem erlaubte mir der Kurs mein UCMDB Bild in für mich teilweise neuen Bereichen abzurunden. Er war lehrreich, auch wenn ich noch heute viele offene Fragen habe. Im Kurs konnten diese leider auch nicht beantwortet werden.

Sphere: Related Content

3 Kommentare

  • 1
    seb:

    Das klingt ja alles sehr interessant – vielen Dank für den Beitrag
    …mich würde interessieren, wieviel manuelle Arbeit tatsächlich noch nach der „Discovery“ anfällt (nämlich um alle unentdeckten CI/CIT einzupflegen).
    Gibt es dazu Aussagen?
    Auch werde ich mal TQL googlen. Klingt sehr vielversprechend. Ist das ein offner Standard?

  • 2
    Ruben Meier:

    Hi Seb, danke für den Kommentar.

    Die Discovery kann beliebig tief suchen und alles mögliche auslesen. Das Ziel ist es, keine bzw. möglichst wenig Daten manuell pflegen zu müssen. Es kommt also darauf an, wie weit die Discovery die Anforderungen abdeckt und ob dann nicht lieber die Discovery erweitert wird.

    Ein neues Element von Hand in die uCMDB einzutragen ist kein Problem (wobei es auch hier wieder auf die Komplexität ankommt). Ausserdem hat die uCMDB eine Webservice-Schnittstelle, wodurch das Einfügen eines neuen CIs aktiv von einer beliebigen Applikation ausgelöst werden kann.

    Die TQL der uCMDB ist leider kein offener Standart.

  • 3
    Richtiges Change Management stresst HP Service Manager /// beteo:

    […] -Requirements und -Defects zu verwalten und eine erweiterte Konfigurations-Datenbank, wie z.B. HPs UCMDB zu aktualisieren. Service Manager hat ausserdem im Vergleich zur ausgereiften Workflow-Steuerung […]

Kommentar schreiben

XHTML: Sie können diese Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>