Die grundlegende Idee, IT-Infrastrukturen virtualisiert und dezentral bereitzustellen, hat inzwischen bis in den Mittelstand hinein Fuß gefasst: Wir erleben den jahrelang heraufbeschworenen Paradigmenwechsel von der reinen On-Premise-Infrastruktur zu integrierten Cloud-Konzepten. Generalisierend vom Weg in die Cloud zu reden, greift allerdings zu kurz: Die Zahl möglicher Migrationsstrategien ist ebenso vielschichtig wie die Anforderungen, die jedes einzelne Unternehmen an seine IT-Systeme stellt. Die Frage, welche Migration sich wie auswirkt, kann nur ein gründliches Monitoring beantworten.

Die Spanne der Vorgehensweisen reicht vom radikalen Wechsel (Lift and Shift) bis hin zu dedizierten Migrationsstrategien. Letztere nehmen sich zunächst der Bestandssoftware auf den hauseigenen Servern an, bevor das Unternehmen entscheidet, was es in die Cloud mitnimmt. Ob schnelle Komplettmigration oder strategische Modernisierung, der Markt um die Cloud boomt, die Auswahl an Tools, Komponenten und Services wächst exponentiell. In dieser zunehmenden Angebotsdiversifizierung stecken enorme Chancen. IT-Planer können Cloud-Konzepte etablieren, die exakt auf die Anforderungen ihres Unternehmens passen – die gute, alte All-Inclusive-Suite scheint vor diesen Möglichkeiten kaum noch zeitgemäß.

Bei der Nutzung von Cloud-Services gilt es, die richtigen Kennzahlen im Blick zu behalten. Bild: Datadog

Die Heterogenität des Cloud-Universums zwingt CIOs allerdings zugleich zu strategischem Denken, in dem Interoperabilität, Verfügbarkeit und Investitionssicherheit oberste Priorität genießen. Vor diesem Hintergrund sehen inzwischen zahlreiche Unternehmen in Open-Source-Werkzeugen wie Terraform, Puppet oder Ansible adäquate Lösungen, um ihre komplexen Cloud-Umgebungen zu orchestrieren. Ob das auf Infrastructure as Code (IaC) basierende Management von Cloud-Ressourcen und -Services im Einzelfall wirklich hält, was sich Unternehmen versprechen, kann allerdings nur ein übergreifendes Monitoring beantworten.

Flexibler sein und sparen

Unternehmen erwarten vom Wechsel in die Cloud vornehmlich zweierlei: geringere Kosten bei größerer Flexibilität. Die Gewichtung dieser Vorteile fällt unterschiedlich aus: Die einen wollen durch die Abschaffung der eigenen Rechenzentren schnell und gut sichtbar Betriebskosten einsparen; andere versprechen sich durch die Nutzung von Cloud-Infrastrukturen eine agilere, reaktionsschnellere und obendrein besser skalierbare Umgebung, die im Zuge der digitalen Transformation die Entwicklung von Produkten und Services beschleunigen soll – und dies intern wie auch extern. Während sich reine Lift-and-Shift-Migrationen und damit die teilweise oder sogar vollständige Auflösung hauseigener Bare-Metal-Bestände augenscheinlich schnell rechnen, kann der Wirtschaftlichkeitsnachweis bei strategischer Modernisierung nicht innerhalb weniger Wochen erfolgen. Hier ist vielmehr eine langfristige Auswertung von Kennzahlen zur Betrachtung übergreifender Erfolgsfaktoren wie System-Performance oder Entwicklungsproduktivität gefragt.

Ein gemeinsamer Nenner sämtlicher Transformationsstrategien – ob mit Fokus auf schnelle Kosteneinsparung oder langfristige Effizienzsteigerung – liegt jedoch in der Ad-hoc-Betrachtung Open-Source-basierter, heterogener Cloud-Umgebungen: IT-Verantwortliche, die fehlerhafte Workflows und akute Auslastungsprobleme nicht erkennen, laufen Gefahr, statt Kosteneinsparungen zusätzliche Ressourcenaufwände zu generieren. Dieses Risiko ist nicht zu unterschätzen: Ist die Performance heterogener Cloud-Stacks erst einmal im Keller, geht es nicht mehr um das Erreichen von Geschäftszielen, sondern um Brandlöschaktionen – somit um Maßnahmen, die das IT-Team von ihrer eigentlichen Arbeit abhalten und wichtige Ressourcen binden, die ursprünglich zum Beispiel in die Entwicklung neuer Services fließen sollten. Hier kann die Kombination eines intelligenten Monitorings mit Infrastructure-as-Code-Lösungen viel dazu beitragen, Performance-Stolpersteine auszuschließen.

Automatisierte Cloud-Orchestrierung mit IaC

Die Popularität von Open-Source-Lösungen wie Terraform, Puppet, Ansible oder Chef ist leicht ergründet: Die offenen Werkzeuge bringen zahlreiche Vorteile mit sich, die das Management komplexer Cloud-Gefüge vor allem im Hinblick auf Systemtransparenz, Nachvollziehbarkeit und Skalierbarkeit vereinfachen. Eine weitere elementare Stärke dieser Anwendungen ist ihre Plattformunabhängigkeit. Diese hat maßgeblichen Einfluss auf die Interoperabilität der gesamten Cloud-Umgebung und die Portierbarkeit von Daten und Anwendungen.

Auf der Grundlage historischer Daten – im Bild des vergangenen Monats – erstellen ausgereifte Monitoring-Lösungen eine Prognose zum weiteren Verlauf. Bild: Datadog

Terraform und Co. orchestrieren IT-Infrastrukturen auf Basis maschinenlesbarer Sprachen. IaC-Umgebungen werden deshalb auch als programmierbare Infrastrukturen bezeichnet. Gängig ist die Verwendung von JSON und YAML zur Formulierung wiederverwendbarer Beschreibungen, es kommen aber auch Eigenentwicklungen wie beispielsweise HCL (HashiCorp Configuration Language) zum Einsatz.

Frameworks, die nach dem IaC-Prinzip arbeiten, ersparen Entwicklern und Administratoren aufwendige händische Systemeinstellungen, indem sie automatisiert Skripte oder Definitionsdateien zur Konfiguration einzelner Module und Maschinen ausbringen. Die programmierten Bereitstellungsprozesse spiegeln komplexe Abläufe wider und sind systemadaptiv – eine wichtige Eigenschaft, die IaC-Umgebungen so anpassungsfähig macht. Da IaC sowohl physische Hardware als auch virtualisierte Server unterstützt und integriert, setzen IT-Planer dieses Prinzip des Infrastruktur-Managements inzwischen auch gerne im Cloud-Umfeld ein: IaC-Tools passen sich unabhängig von der Zusammensetzung eines Cloud-Stacks oder von Services unterschiedlicher Cloud-Provider an die Umgebung an. Sie wachsen kontinuierlich mit der Infrastruktur und ihren einzelnen Modulen und schaffen damit große Flexibilität bei der Gestaltung individueller, bedarfsangepasster Cloud-Umgebungen.

Vielseitiges Monitoring ist gefragt

Die großen Cloud-Anbieter stellen ausnahmslos eigene Monitoring-Lösungen bereit, die allerdings in heterogenen und hybriden Umgebungen in Fragen der Anpassungsfähigkeit schnell an ihre Grenzen stoßen. Zum einen arbeiten native Anwendungen nicht ausreichend oder gar nicht mit Systemen zusammen, die nicht aus dem eigenen Haus kommen. Zum anderen weisen sie häufig eine geringere Granularität und eine kürzere Datenvorhaltung auf. Eine Monitoring-Lösung, der nichts entgehen soll, muss jedoch ebenso dynamisch und plattformunabhängig arbeiten wie das IaC-basierte Management der Cloud-Umgebung selbst. Deshalb funktioniert das Monitoring in diesem Umfeld nur dann wirklich gut, wenn die eingesetzte Lösung zahlreiche Cloud-Module integriert oder bei Bedarf den Einbau der erforderlichen APIs erlaubt.

Anwendungen, unterschiedliche Cloud-Provider, Internet-of-Things-Umgebungen, wechselnde Container-Technologien, mannigfaltige Endgeräte und Hardware – die Auslastung all dieser Elemente muss eine Monitoring-Lösung zu jeder Zeit erfassen und interpretieren können. Geschieht dies nicht, sind Prozessfehler, Schnittstellenprobleme oder die Einbindung falscher Komponenten nicht schnell genug zu erkennen. Das Ergebnis sind Performance-Einbrüche, Bereitstellungsprobleme oder im schlimmsten Fall Ausfallzeiten.

Systemgesundheit im Überblick

Ein kluges Monitoring sollte beides können: sowohl ad hoc Probleme erkennen als auch stichhaltige Vorhersagen treffen. Um diese Funktionsspanne abzudecken, ist die systematische Erfassung einer Reihe von Kennzahlen gefragt, die sich im Cloud-Kosmos grob in operative Kennzahlen (Work Metrics) und Ressourcenkennzahlen (Resource Metrics) nach ihrer Herkunft unterteilen lassen.

Eine Detailansicht führt operative Metriken auf, im Bild die Betriebskennzahlen eines Web-Servers. Bild: Datadog

Work Metrics kann man in vier weitere Unterkategorien ausdifferenzieren: Sie erfassen den Durchsatz (Throughput), den ein System über eine festgelegte Zeitspanne hinweg ausweist; sie zeigen den prozentualen Anteil der erfolgreichen Operationen (Success) an; sie ermitteln die Anzahl fehlerhafter Operationen (Errors); und sie quantifizieren die Performance der einzelnen Komponenten, beispielsweise durch die Ermittlung der Latenz- und Antwortzeiten. Work Metrics können zum Beispiel die Anzahl der Anfragen an einen Web-Server pro Sekunde, also den Durchsatz, oder die durchschnittliche Antwortzeit eines Datenspeichers und damit seine Performance beschreiben. In Summe erlauben all diese Kennzahlen wichtige, übergreifende Rückschlüsse auf den Status und Leistungsfähigkeit des gemessenen Systems. Darüber hinaus können IT-Verantwortliche anhand von Ressourcenkennzahlen die unterschiedlichen Bestandteile der Systeminfrastruktur detailliert betrachten und ihre Nutzung (Utilization), Sättigung (Saturation), Verfügbarkeit (Availability) sowie Fehler auswerten.

Diese Messgrößen lassen sich gut am Beispiel einer Datenbank erläutern: Die Nutzungskennzahl beschreibt die durchschnittliche Zeit, in der sämtliche Verbindungen aktiv waren. Die Sättigung zeigt an, wie viele Anfragen an die Datenbank über einen definierten Zeitraum in der Warteschlange verbleiben mussten. Die Verfügbarkeit zeigt den prozentualen Anteil der Zeit an, in der die Datenbank verfügbar war. Die Kennzahl Errors gibt Auskunft über interne Fehler wie beispielsweise Speicher- oder Replikationsprobleme.

Unerlässlich: Verständliche Visualisierung

Unabhängig von der Kennzahlkategorien sollten Cloud-Analysten darauf achten, mit der passenden Granularität zu arbeiten: Zu lang gemessene Durchschnittswerte mindern die Aussagekraft von Monitoring-Maßnahmen ebenso wie zu selten oder unregelmäßig erhobene Kennzahlen. Ebenso wichtig ist es, erfasste Rohdaten möglichst lange vorzuhalten. Um monatliche, saisonale oder jährliche Abweichungen klar herausarbeiten zu können, sollten sie mindestens ein Jahr lang gespeichert bleiben. Intelligente, selbstlernende Monitoring-Lösungen entwickeln diese Kennzahlen unter Einbindung von ML-Technologien (Machine Learning) kontinuierlich weiter, was die Genauigkeit der Kennzahlenauswertung weiter erhöht.

Wie bei allen Analyse-Tools, so darf auch bei der Betrachtung von Cloud-Umgebungen die Qualität der Reporting-Funktionen nicht ins Hintertreffen geraten. Damit IT-Entscheider schnell und zielgerichtet sowohl operative als auch strategische Weichen stellen können, müssen die fortlaufend erhobenen Daten nicht nur aktuell, granular und aussagekräftig, sondern auch auf verständliche Weise visualisiert sein. Monitoring-Lösungen, deren Ergebnisse der Anwender erst aufwändig in eine nachvollziehbare Form bringen muss, kosten das IT-Team unnötig Zeit und erlauben es unter Umständen nicht, Handlungsbedarf kurzfristig zu erkennen. Die Maxime einer ansprechenden Visualisierung gilt gleichermaßen für längerfristige Analyseergebnisse, die Vorhersagen über Tage, Wochen oder sogar Monate liefern.

Mit alle ihren Facetten bietet die Cloud unglaubliches Potenzial für Unternehmen, Innovationen voranzutreiben und flexibel auf Marktveränderungen zu reagieren. Zugleich ist sie allerdings auch ein Dschungel, der ohne durchdachte Strategie und die passenden Tools unüberschaubar sein kann. Bei der Entwicklung von Cloud-Management-Strategien gilt es deshalb, ein anpassungsfähiges Monitoring vom ersten Moment an mit einzuplanen.

Onur Aksoy ist Regional Vice President DACH bei Datadog, www.datadog.com.