Ein Ansatz für die Infrastruktur
Artikel erschienen in Swiss IT Magazine 2007/12
IT-Organisationen stehen heute unter dem permanenten Zwang, Kosten zu sparen und zugleich immer grössere Aufgaben wahrzunehmen. Mittlerweile haben sich zwei grundlegende Strategien herausgebildet, um diese Anforderungen besser zu erfüllen: SOA und SOI.
Der erste Weg beinhaltet den klassischen Ansatz der Service Oriented Architecture (SOA) – das Aufbrechen monolithischer Applikationen in kleine, unabhängige Blöcke, die über Schnittstellen gekoppelt werden. Dieser Ansatz ermöglicht es den Unternehmen, Applikationen mit geringerem Aufwand zu implementieren und effizienter zu nutzen. Der zweite Ansatz besteht darin, die Infrastruktur-Ressourcen als Dienste zur Verfügung zu stellen, die über standardisierte Schnittstellen kommunizieren. Analog dem SOA-Ansatz erlaubt diese Methodik die effizientere Nutzung von Infrastrukturressourcen. Dieser zweite Ansatz wird auch als SOI (Service Oriented Infrastructure) bezeichnet.
Prinzipiell bringt der Ansatz einen Paradigmenwechsel für die zugrundeliegende Infrastruktur mit sich. Dabei ist es unerheblich, ob SOI als Abstraktion für eine optimierte Betriebsplattform oder umfassender als eine lose Kopplung von Diensten im Sinne einer Gesamtlösung gesehen wird. Für die unterliegende Infrastruktur stellt sich in beiden Fällen die Aufgabe, die elementaren Grundlagen bereitzustellen.
Historisch bedingt findet man in Firmen heute meist eine Vielzahl von Infrastrukturkomponenten, oft implementiert für spezifische Funktionen. So werden dedizierte Lösungen für E-Mail, File-Services oder Datenbanken eingesetzt; heterogene Umgebungen sind ebenso Standard wie isolierte Lösungen. Typisch dabei ist eine mangelnde Auslastung von Kapazitäten – teilweise werden laut einer Forrester-Studie nicht einmal 15 Prozent der möglichen Leistung der Systeme abgerufen. Gegenüber den neuen Anforderungen des Business an die IT ergeben sich somit mehrere Punkte, die diesen «klassischen» Ansatz zu einem Problem werden lassen:
- Die Unterstützung neuer Business-Anforderungen erfordert die immer neue Implementierung von Systemen.
Analog dem Ansatz von SOA, der zwischen den grundlegenden Elementen Prozess und Interaktion unterscheidet, basiert auch der SOI-Ansatz auf zwei Elementen:
- Infrastruktur-Dienste
- gemeinsame Ressourcen.
Um dabei eine der Hauptanforderungen zu erfüllen, nämlich die höhere Auslastung der Kapazitäten, ist es notwendig, die Hardware-Ressourcen zu bündeln und dynamisch verfügbar zu machen.
Die Elemente des SOI-Ansatzes
Aktuelle Hardware scheint der Forderung nach besserer Auslastung jedoch entgegenzuwirken – selbst kleine Server haben Leistungsmerkmale, die weit über die Anforderungen einzelner Services hinausgehen. Aber gerade hier greift der Ansatz von SOI. Aktuelle Techniken ermöglichen es, den nächsten konsequenten Schritt in Richtung SOI zu gehen: Standardisierung und Virtualisierung der Infrastruktur. Diese erlauben es, Applikationen genau so zu implementieren, wie es erforderlich ist – durch Zuordnung der Ressourcen, die wirklich nötig sind. Techniken wie Vanderpool & Co. auf der einen und Lösungen wie Vmware, Virtual Server oder Xen auf der anderen Seite unterstützen diese Anforderungen direkt und ermöglichen es, ein Multi-Core-System zur Lösung verschiedener Aufgaben gleichzeitig einzusetzen. Ausserdem lässt sich mit Virtualisierung aus einer Menge kleiner Geräte wie Blades genau die Leistung bündeln, die benötigt wird.
Es stellt sich die Frage, ab welcher Grössenordnung der Schritt zu einer SOI sinnvoll wird. Sicher ist eine solche Umgebung nicht unbedingt für ein kleines Unternehmen geeignet, das die gesamte Unternehmens-IT auf einem Microsoft Small Business Server und mittels einer Sage-Lösung abdeckt. Doch bereits bei der Betrachtung mittelständischer Unternehmen ergibt sich eine Vielzahl von Ansätzen. Die Abbildung soll illustrieren, wie deren IT-Landschaft heute typischerweise aussieht (S. 54 oben).
Selbst bei einem Mittelständler mit einer Zentrale und einer Filiale häufen sich unterschiedlichste Systeme an, die prinzipiell ihre eigene Hardware mitbringen. Geht man dabei davon aus, dass ein Active Directory mehr als nur eines Servers bedarf, ein System wie Navision hoch verfügbare Server benötigt, die Webserver ausfallsicher sein und über einen Loadbalancer verfügen sollen, so hat man bald die stattliche Summe von 50 und mehr dedizierten Servern implementiert. Dabei kann davon ausgegangen werden, dass Webserver mit geringer Last auskommen oder AD-Domänencontroller sich im Betrieb eher langweilen. Hier sind also Voraussetzungen gegeben, um über die Betrachtung der Services und der daraus resultierenden Anforderungen die Infrastruktur im Sinne einer SOI zu optimieren. So besteht durchaus die Möglichkeit, die Logon-Services zu virtualisieren; Webserver und LDAP sind ebenso geeignete Kandidaten wie File- oder Print-Services. Dabei wird nicht der Ansatz des Multi-Function-Servers verfolgt – vielmehr werden die einzelnen Services durch dedizierte virtuelle Systeme abgebildet.
Der Vorteil einer solchen Lösung liegt auf der Hand: Durch die Entkopplung der einzelnen Services lässt sich schneller auf Änderungen reagieren, da Abhängigkeiten zwischen den Lösungen (wie bei einem multifunktionalen Server) minimiert werden. Gleichzeitig ist es möglich, die Kapazität der Systeme auszunutzen und dabei die Gesamtkapazität nach Leistung zu planen und nicht nach Stückzahl. Die Anzahl physischer Systeme sinkt und die Wartungskosten werden optimiert. Zugleich verbessern sich die Möglichkeiten der Infrastruktur zur Implementierung neuer Lösungen oder auch zum Desaster Recovery; die direkte Abhängigkeit von dedizierter Hardware wird insgesamt deutlich geringer.
Selbstverständlich ist es in Enterprise-Umgebungen möglich, durch Implementierung einer SOI noch grössere Einsparungen zu erreichen. Analog dem Ansatz der SOA, wo eine Optimierung durch die Kopplung von Services angestrebt wird, kann hier durch das Entkoppeln von Lösungen eine bessere Flexibilität erreicht werden.
Oft ist die Implementierung durchaus mit Kosten verbunden. So kann eine SOI etwa erfordern, dass die Messaging-Services als dedizierte Lösung betrachtet werden. Bei Einsatz von Exchange kann das bedeuten, dass für dieses System ein eigenes AD als Ressource Forest zu implementieren ist. Das wiederum erfordert eine Provisioning-Lösung, die ebenfalls Aufwendungen verursacht. Allerdings ist gerade im Enterprise-Umfeld der erreichbare Nutzen unübersehbar: Durch Entkoppeln der Umgebung besteht die Möglichkeit, den Service auszulagern. Die Kosten des Services sind klar bestimmbar und können entsprechend abgerechnet werden. Und: Die Integration ist aufgrund geringer Abhängigkeiten wesentlich einfacher möglich als bei einer Lösung, die andere Prozesse mit beeinflusst (z.B. Logon Directory). Zudem darf nicht übersehen werden, dass das Provisioning-System Synergien für viele andere Services mit sich bringt.
SOI hilft der IT, die an sie gestellten Anforderungen überhaupt noch kosten- und zeitgerecht umsetzen zu können. Applikationen und Dienste lassen sich schneller implementieren und anpassen, Ressourcen können bei Bedarf einfacher zur Verfügung gestellt werden, und auch grössere Änderungen wie Restrukturierungen, Auslagerungen oder Merger sind kostengünstiger zu realisieren. Standardisierung und Konsolidierung schliesslich ermöglichen eine bessere Kostenkontrolle, Service Levels sind klarer definier- und implementierbar, Compliances besser zu implementieren und zu kontrollieren.
Typische IT-Landschaft eines mittelständischen Betriebes
Warum ist es sinnvoll, sich bei der Implementierung einer SOA auch mit dem Problem der SOI zu befassen? Als wesentliche Elemente, die den Aufbau einer SOA beeinflussen, lassen sich die Schwerpunkte Kosten, Organisation und Technologie definieren. Alle drei sind auch eng mit der Implementierung einer SOI verbunden. So lassen sich die Einsparpotentiale einer SOA besser ausnutzen, wenn bereits vorhandene Kapazitäten und Systeme verwendet werden können. Eine zentralisierte und standardisierte IT-Infrastruktur unterstützt die Implementierung einer SOA wesentlich besser. Und die hohe Komplexität, die mit einer grossen Granularität und Vielfalt verschiedenster Services kommt, ist mit einer SOI leichter in den Griff zu bekommen als mit einer Infrastruktur aus Insellösungen.
Auch wenn SOA und SOI unabhängige Lösungsansätze verkörpern, so sind die Synergien zwischen den beiden unverkennbar. Und gerade durch die Verbindung beider lässt sich der grösste Nutzen generieren.
Jens Tolkmitt ist Architect Systems Engineering bei Avanade.