IT der Zukunft oder Buzzword

Software Defined Environments - Realitätscheck und Nutzenanalyse

10.05.2015 von Frank Eisenhardt
Software Defined Environments (SDE) erweitern die Virtualisierungskonzepte auf die ganze 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)? Software Defined Environments beinhaltet nicht nur virtualisierte Server sondern beinhaltet auch den Speicher und die Netzwerkressourcen. Das Pooling, die hohe Automation und die Abstraktion wird durch einheitliche Schnittstellen (APIs) ermöglicht, so dass die gesamte Infrastruktur als "IT as a Service" (IaaS) verfügbar ist.

Die Anforderungen der Geschäftsbereiche nach immer neuen, dynamischen Workloads kann nur mit Hilfe einer Service orientierten IT umgesetzt werden. Neben Technolgieaspekten geht es auch um eine Prozess und organisatorische Transformation. Zusammengefasst versteht man unter Software Defined Environments folgendes:

Für große Cloud Provider, wie Amazon oder IBM Softlayer, bieten diese Technologie-Konzepte 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, zugrundeliegende Infrastruktur erst umsetzen. Damit ergeben sich eine Reihe von Vorteilen:

Das hat natürlich Auswirkungen und Anforderungen an die zugrundeliegende Infrastruktur. Als Vergleich können vielleicht 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 eine Abhängigkeit und bietet die Flexibilität bei der Anbieterauswahl.

Auch wenn die Begriffe teilweise etwas unterschiedlich sind, geht es primär um die obere Ebene von Anwendungscharakteristika-, oder Workload bezogener Definition mit Hilfe 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 Analysetechnolgien 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 Releasezyklen 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-Archtektur.
Foto: IBM

Die darunter liegende Ebene der IT-Ressourcen, die sich auf Speicher, Netzwerk und Rechner beziehen, muss mit Hilfe von Orchestrierungs- und Managementtools 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 (SDE) sind nur einer der wichtigen Bausteine. Ebenfalls von zentraler Bedeutung sind hier wieder offene Standards wie OpenDaylight oder Openstack für eine herstellerneutrale Umsetzung.

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 muss dafür neue Grundlagen 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.

IT der Zukunft oder Buzzword?
Foto: Citrix

Cloud-Technologien werden mehr und mehr verwendet, 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 auch moderne Management und Orchestrierungstools notwendig und verfügbar. Zusätzlich müssen Prozesse und Silo-Organisationen angepasst werden.

Im Software Defined Compute Bereich sind die Standards wie OpenStack gesetzt. Im Netzwerk Bereich ist noch nicht alles ausdiskutiert.

Sie können sich heute bereits mit Technologien wie OpenStack vertraut machen oder diverse End-to-end-Orchestrierungstools testen. Darüber hinaus ist es notwendig, die Entwickler mit Hilfe 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. Die Aufwände dafür sind sehr überschaubar. (hal)