Am 23.04.2013 fand in Frankfurt eine Veranstaltung des itSMF mit dem Titel “Next Generation IT Service Management” statt. Dort waren wir, Christian Mötzing und Stefan Kahlhöfer, mit dem Kurzvortrag “Zwischen den Fronten – IT-Automatisierung als Chance zum Dialog vertreten. In diesem Vortrag haben wir die täglichen Probleme im Betrieb eines Rechenzentrums aufgezeigt und skizziert wie man diesen begegnen kann. Dies ist eine kurze Zusammenfassung des Vortrags inklusive audio-visueller Aufzeichnung.

Ausgangslage

Anwendungsumgebungen werden meist manuell und nicht standardisiert eingerichtet. Die Folge sind regelmäßige Fehler bei der Inbetriebnahme der Anwendung in der jeweiligen Betriebsumgebung. Die Korrektur derartiger Fehlersituationen ist in der Regel zeitaufwändig und ressourcenintensiv.

Fehler bei der Verbindung zur Datenbank

Fehler bei der Verbindung zur Datenbank

Um dem Problem Herr zu werden automatisiert man im Betrieb stets wiederkehrende Aufgaben bereits durch individuell angefertigte Skripte. Doch es gestaltet sich schwierig die Skripte aller Mitarbeiter (inklusive ihrer jeweiligen Versionen) unter Kontrolle zu halten. Mangelnde Dokumentation, fehlende Namenskonventionen und unzureichende Disziplin bei der Ablage der Dateien an einer für alle zugänglichen Stelle machen einen vollständigen Überblick über die bestehenden Helfer schier unmöglich. Im schlimmsten Fall verwenden verschiedene Mitarbeiter ihre persönlich favorisierte Skriptsprache, wodurch die Programme für andere Kollegen schwer lesbar und damit nicht verwendbar werden.

Ansammlung von Skripten unterschiedlicher Art ohne klare Namesstruktur

Ansammlung von Skripten unterschiedlicher Art ohne klare Namesstruktur

Ein Skript kann zudem nur lokal agieren und kann sich keinen Zustand einer Installations- oder Konfigurationsaktivität merken, wenn es einmal beendet wurde. Längerfristig gespeicherte Protokollierung ist in Form von Log-Dateien vielleicht vorhanden aber nur schwer lesbar und ohne Verknüpfungen zu anderen Aktionen. Der Zusammenhang zwischen den Bereitstellungen einzelner Komponenten einer Umgebung geht verloren.

Ein großer und oft unterschätzter Schwachpunkt sind zudem die Übergabepunkte von Einstellungsparametern. Ist eine Datenbank eingerichtet braucht die Anwendung trotzdem noch einmal den Benutzer und den Datenbankport. Sind die Verantwortlichkeiten für Datenbank und Anwendung in unterschiedlichen Abteilungen angesiedelt werden die Parameter per Laufzettel oder per E-Mail an den Verantwortlichen weitergegeben. Übertragungs- oder Tippfehler sind vorprogrammiert.

Fehler bei der Übertragung des Benutzernamens.

Fehler bei der Übertragung des Benutzernamens.

Am Ende sind alle nur noch damit beschäftigt Fehler zu suchen und zu beheben anstatt die IT fit zu machen für das, was morgen kommen wird.

Lösungsansatz

Aus unserer Sicht gibt es nur eine Lösung dem Problem Herr zu werden: Die Bereitstellung einer Umgebung muss mit einem Werkzeug automatisiert werden. Idealerweise deckt das Werkzeug alle Bereiche der IT ab und standardisiert somit den Umgang mit neuen und bestehenden Anwendungsumgebungen.

Natürlich gibt es entsprechende Werkzeuge bereits am Markt, die sich aber in ihren Ansätzen grundlegend unterscheiden. Unabhängig der konkreten Problemstellung sollte ein Automatisierungswerkzeug immer folgende Eigenschaften aufweisen.

Plattformunabhängigkeit

Systemlandschaften sind über die Jahre gewachsen um den sich ständig ändernden Anforderungen eines Marktes oder Unternehmens zu genügen. Aus diesem Grunde sind sie sehr heterogen aufgebaut, was die verwendeten Betriebssysteme und Plattformen mit einschließt. Für den konsequenten Einsatz in allen Unternehmensbereichen muss das Automatisierungswerkzeug entsprechend plattformunabhängig sein und die gängigsten Betriebssysteme unterstützen.

Nachvollziehbarkeit

Bei der Identifizierung von Konfigurationsfehlern ist die Nachvollziehbarkeit besonders entscheidend. Zudem achten viele Unternehmen (z.B. im Bankensektor) stark auf die Einhaltung der Compliance-Anforderungen. Durch die Protokollierung aller im Werkzeug ausgeführten Aktionen ist stets sichtbar, welcher Mitarbeiter wann und auf welchem System eine Änderung durchgeführt hat. Darüber hinaus werden die Text- und Fehlerausgaben der einzelnen Programmaufrufe zentral und direkt am jeweiligen Aufruf protokolliert. Hierdurch entfällt die mühsame Suche nach den benötigten Informationen in verteilten und von mehreren Prozessen gemeinsam genutzten Logdateien.

Rechtemanagement

Ein fein justierbares Rechtemanagement sichert das System gegen unbefugte Verwendung der Automatisierungslogik ab. Bestehende Abteilungs- und Kompetenzstrukturen müssen abbildbar sein. So kann beispielsweise ein Auszubildender trotz besonders eingeschränkter Zugriffsrechte Hilfsaufgaben auf einem System ausführen jedoch keine neue Umgebung bereitstellen.

Objektorientierung

Konfigurationsparameter der Installation oder Abhängigkeiten zwischen den Softwarekomponenten sollen im Werkzeug objektorientiert gespeichert werden. Dies ermöglicht das Wiederverwenden von Konfigurationsparametern bei der späteren Installation um Übertragungsfehler zu vermeiden. Auch die Ausführung von Aktionen auf bereits bestehenden Umgebungskomponenten wird durch die Objektorientierung möglich. Das Starten oder Stoppen eines Anwendungsservers oder das Leeren von Logdateien einer Anwendung können somit ebenfalls über das Werkzeug erfolgen.

Reproduzierbarkeit und Flexiblität

Die werkzeuggestützte Automatisierung erlaubt es, gleichartige Anwendungsumgebungen reproduzieren zu können. Für die gewollten Unterschiede zwischen Entwicklungs- und Produktivumgebung (Loglevel, Cluster, Loadbalancer) muss jedoch gleichzeitig eine entsprechende Flexibilität in der Ausführung bzw. Parametrisierung möglich sein.

Benachrichtigung

In den Installationsablauf integrierte Benachrichtigungen ermöglichen zeitnahe Mitteilungen über abgeschlossene Umgebungsinstallationen und Konfigurationsänderungen für betroffene Mitarbeiter. Darüber hinaus gehende Events erlauben zudem die Einbindung von Drittsystemen für weiterführende Prozessaktivitäten.

Next Generation IT Service Management – Live

Leider ist das Video nicht von einer optimalen Position aus aufgenommen (der Saal war gut gefüllt) und Ausleuchtung/Lautstärke ist dementsprechend keine Studioqualität.

Fazit

Wir haben unseren Vortrag bewusst unter das Schlagwort ‘Dialog’ gestellt. Der Kern der DevOps-Bewegung besteht aus Kommunikation. Unsere Erfahrungen zeigen, dass gerade die Kommunikation zwischen den Domänen Betrieb und Entwicklung ausgebaut werden kann. An vielen Stellen profitieren beide Parteien vom Dialog mit der ‘Gegenseite’. Denn nur wer die Probleme des jeweils Anderen versteht kann mit neuen Ideen den Weg zu einem reibungslosen Betrieb einer Anwendung ebnen.

Leave a Comment

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close