IT der Zukunft oder Buzzword

Software Defined Environments - Realitäts-Check und Nutzenanalyse

25.04.2014 von Frank Eisenhardt
Software Defined Environments (SDE) erweitern die Virtualisierungskonzepte auf die gesamte IT-Infrastruktur, inklusive Speicher und Netzwerkressourcen. Somit kann man die gesamte Infrastruktur als "IT-as-a-Service" bereitstellen.

Was versteht man unter Software Defined Environments (SDE)? Diese IT-Infrastruktur beinhaltet nicht nur virtualisierte Server, sondern umfasst auch den Speicher und die Netzwerkressourcen. Das Pooling, die hohe Automation und die Abstraktion werden durch einheitliche Schnittstellen (APIs) ermöglicht, so dass die gesamte Infrastruktur als "IT-as-a-Service" (IaaS) verfügbar ist.

Der Ruf der Geschäftsbereiche nach immer neuen, dynamischen Workloads kann nur mithilfe einer serviceorientierten IT umgesetzt werden. Neben Technologieaspekten geht es auch um eine Prozess- und um eine organisatorische Transformation. Zusammengefasst versteht man unter Software Defined Environments Folgendes:

Für große Cloud-Provider wie Amazon oder IBM Softlayer bieten diese Technologiekonzepte die Basis für effizientes Management ihrer riesigen Rechenzentren. Nicht umsonst sind diese Provider in den Open-Source-Communities wie OpenDaylight oder OpenStack aktiv. Platform-as-a-Service-Anbieter (PaaS) wie Cloudfoundry, Heroku oder IBM Bluemix nutzen "Software-Defined"-Technologien, um Entwicklungsumgebungen für neue Anwendungen bereitzustellen.

Checkliste Cloud-SLAs -
Checkliste Cloud-SLAs
Um zu beurteilen, ob ein Cloud-Provider kundenfreundliche SLAs anbietet, lassen sich folgende Kriterien anlegen und überprüfen:
Punkt 1:
Kurze und klare Gestaltung von Inhalt, Struktur und Formulierung.
Punkt 2:
Version in der Landessprache des Kunden.
Punkt 3:
Klare Definitionen von Fach- und Produktbegriffen zu Beginn.
Punkt 4:
Detaillierte Ankündigung und Planung der Wartungsfenster (Beispiel: "Viermal im Jahr an vorangemeldeten Wochenenden").
Punkt 5:
Leistungsbeschreibung in Tabellenform (Übersicht!).
Punkt 6:
Klar definierte Bereitstellungszeiträume für neue Ressourcen (Beispiele: Bereitstellung virtueller Server bei Managed Cloud in maximal vier Stunden; Bereitstellung kompletter Umgebungen oder dedizierter Server in fünf bis zehn Tagen).
Punkt 7:
Bereitstellung von klar abgegrenzten Konfigurationsoptionen für Ressourcen (Beispiel: Konfiguration von Servern nach Gigahertz, Gigabyte).
Punkt 8:
Einfach unterscheidbare Service-Levels (Beispiel: Silber, Gold, Platin); Abgrenzungskriterien können sein: Verfügbarkeit, Bereitstellungszeiten, fest reservierte Kapazitäten ja/nein, Support-Level (Telefon, E-Mail).
Punkt 9:
Bei IaaS-Angeboten unbedingt auf Netzwerk-Konfigurationsmöglichkeiten und Bandbreite achten (Volumen? Im Preis inkludiert ja/nein?).
Punkt 10:
Kundenfreundlicher Reporting- beziehungsweise Gutschriftenprozess (am besten aktive Gutschriften auf Kundenkonto; kein bürokratischer, schriftlicher Prozess; möglichst einfache Beweis- und Nachweispflicht für Kunden).
Punkt 11:
Reaktionszeiten und Serviceverfügbarkeit klar beschreiben (zentrale Hotline; Reaktionszeiten auf Incidents in Stunden).
Punkt 12:
Nennung der Rechenzentrumsstandorte mit Adresse und sonstigen Informationen wie Zertifizierungen und Tier.
Punkt 13:
Definition der Verfügbarkeiten: Unterschiede hinsichtlich Verfügbarkeit Server/VM und Verfügbarkeit Admin-Konsole definieren.
Punkt 14:
Erläuterung zu Möglichkeiten der SLA-Überwachung beziehungsweise des Incident-Reportings für den Anwender (Beispiel: Link auf Monitoring-Dashboard).

Welchen Nutzen bietet Software Defined Environments?

Eine effiziente und flexible IT ermöglicht klare Kostenvorteile in Bezug auf TCO (Total Cost of Ownership). Sicherheitsoptimierungen durch bessere Governance und Compliance sowie Schnelligkeit und kürzere "Time to Market" sind weitere wichtige Nutzenaspekte.

Jede Branche hat wachsende und drängende Anforderungen an die IT. Auf neue Marktgegebenheiten muss schneller reagiert werden, sei es zum Beispiel der Ausbau der IT im Fahrzeug, Stichwort Connected Car, Car Sharing Ecosysteme und der heftige Konkurrenzdruck nicht nur in diesem Segment. Diese neuen Anforderungen lassen sich durch Technologien wie Big Data, Mobile, Social und eine dynamische, zugrunde liegende Infrastruktur erst umsetzen. Damit ergeben sich eine Reihe von Vorteilen:

Das hat natürlich Auswirkungen und Anforderungen an die zugrunde liegende Infrastruktur. Als Vergleich können beispielsweise die Hausnetz-Bussysteme oder generell das SmartHome-Thema dienen. Ohne eine flexible, programmierbare und über definierte APIs ansprechbare Infrastruktur werden sich neue, innovative Technologien nur schwer einführen lassen. Das "Internet of things" beziehungsweise Industrie 4.0 wird den Druck auf diese neue Art von Infrastrukturservice ebenfalls erhöhen.

Diese neuen Technologien, egal ob im Fahrzeug, im Hausnetz oder im Rechenzentrum, bedeuten auch zusätzliche Komplexität. Diese neue Komplexität oberhalb der Virtualisierungsebene kann nur mit höher integrierten, intelligenteren Ansätzen administriert werden. Diese Ansätze sollen im Folgenden erläutert werden.

Was können IT Anbieter in Bezug auf SDE heute bereits bieten?

Zunächst gibt es von den großen Anbietern recht ähnliche Architekturansätze, die zumeist auf offenen Standards wie Cloudfoundry und OpenStack basieren. Das vermeidet Abhängigkeit und bietet Flexibilität bei der Anbieterauswahl.

Auch wenn die Begriffe teilweise ein wenig unterschiedlich sind, geht es primär um die obere Ebene von Anwendungscharakteristika oder um die Workload-bezogene Definition mithilfe von Mustern. Diese Muster oder Patterns sind ein wichtiger Baustein für die Standardisierung und Portierbarkeit von Systemen. Aus Katalogen können vielfältige vorgefertigte Mustersysteme wiederverwendet werden. Diese definieren, wie die Anwendungstopologien aufgebaut werden, wie sie skalieren und wie sie administriert und optimiert werden können. Darüber hinaus sind Analysetechnologien wichtig, die die Infrastruktur kontinuierlich optimieren.

Da dies alles sehr anwendungsbezogen ist und man die Schnelligkeit nur über flexible Entwicklungsmethoden erreicht, ist an dieser Stelle auch das Thema DevOps zu erwähnen. Kurze Release-Zyklen sind nur mit DevOps-Technologien und -Tools möglich. Das Anwendungs-Deployment, die Konfiguration über mehrere Staging-Umgebungen hinweg, muss und kann optimiert werden.

Details: der prinzipielle Aufbau einer Software-Defined-Environments-Architektur.
Foto: IBM

Die darunterliegende Ebene der IT-Ressourcen, die sich auf Speicher, Netzwerk und Rechner beziehen, muss mithilfe von Orchestrierungs- und Management-Tools hoch automatisiert werden. Das Thema Automation ist nicht neu, aber in dieser geforderten Ende-zu-Ende-Qualität auf einer neuen Ebene zu sehen.

Software-Defined-Network-Controller (SDN) sind nur einer der wichtigen Bausteine. Ebenfalls von zentraler Bedeutung sind hier wieder offene Standards wie OpenDaylight oder Openstack für eine herstellerneutrale Umsetzung.

Eine intelligente Platzierung der Ressourcen aufgrund vielfältiger, unterschiedlicher Richtlinien ist zwingend notwendig. Hierbei kommen oftmals Technologien aus dem High Performance Computing (HPC) zum Einsatz.

Fazit: Wie stellt sich die Situation derzeit dar?

Unternehmen müssen auf Marktgegebenheiten schneller und flexibler reagieren. Die IT hat dafür neue Grundlagen zu schaffen und ist wichtiger denn je. Sie wird sich den neuen Herausforderungen stellen müssen, da diverse SaaS- und PaaS-Anbieter um die Gunst der Fachbereiche buhlen und sehr flexibel reagieren können.

Cloud-Technologien kommen mehr und mehr zum Einsatz, reichen alleine aber nicht aus. Daher ermöglicht ein Software-Defined-Ansatz den neuen Anwendungsszenarien, optimal die vorhandenen IT-Ressourcen zu nutzen, sowohl im traditionellen Rechenzentrum als auch in Cloud-Umgebungen. Dafür sind zudem moderne Management- und Orchestrierungs-Tools notwendig und verfügbar. Zusätzlich müssen Prozesse und Silo-Organisationen angepasst werden.

Im Software-Defined-Computing-Bereich sind die Standards wie OpenStack gesetzt. Im Netzwerkbereich ist noch nicht alles ausdiskutiert.

Sie können sich heute bereits mit Technologien wie OpenStack vertraut machen oder diverse End-to-End-Orchestrierungs-Tools testen. Darüber hinaus ist es notwendig, die Entwickler mithilfe verfügbarer DevOps-Lösungen enger mit dem Betrieb zu verbinden. In den meisten Fällen besteht die Möglichkeit, Systems-Management-SaaS-Lösungen genauso wie Cloudfoundry-PaaS-Lösungen vor der Integration in den Produktivbetrieb auszuprobieren. Der Aufwand dafür ist sehr überschaubar. (hal)