Open-Source-Cloud-Plattform Openstack

Modularer Aufbau fördert hohe Flexibilität

9. November 2015, 6:00 Uhr | Matthias Pfützer, Solution Architect Cloud bei Red Hat, www.redhat.de./pf

Wenn es um den Aufbau von Cloud-Infrastrukturen geht, kommen Unternehmen kaum an einer Evaluation der Open-Source-Cloud-Plattform Openstack vorbei. Durch den modularen Aufbau in den Kernbereichen Compute, Storage und Networking lässt sich Openstack in vielfältigen Anwendungsszenarien einsetzen.

Openstack ist ein gutes Beispiel dafür, wie viel Innovationskraft in einem Open-Source-Projekt steckt. Seit dem Projektstart 2010 hat sich Openstack zu einem der größten Open-Source-Projekte entwickelt. Beginnend als Experimentierplattform für Cloud-Provider und Forschungseinrichtungen setzt sich Openstack inzwischen immer stärker als Cloud-Plattform in Unternehmen durch. Ursprünglich als Alternative zu proprietären Cloud-Angeboten ins Leben gerufen, verfügt Openstack heute über eine weltweite Basis an Software-Entwicklern und Cloud-Experten, die allgemein verfügbare Open-Source-Techniken für unterschiedliche Anwendungsszenarien bereithalten.
Potenzielle Anwender sehen in Openstack ein herstellerübergreifendes Angebot, das viele der großen IT-Unternehmen unterstützen und vorantreiben, darunter Cisco, Dell, Intel, VMware, IBM, HP und Red Hat. Vereinfacht ausgedrückt lässt sich Openstack als Cloud-Betriebssystem - bestehend aus Rechenleistung, Speicherplatz und Netzwerkkapazitäten - charak- terisieren, mit dem Unternehmen oder Service-Provider eine Cloud in einer Rechenzentrumsumgebung aufbauen können. Openstack zeichnet sich dadurch aus, dass es innerhalb der großen Funktionsblöcke Compute, Storage und Networking weitere Module definiert hat, die sich über Plug-in-Funktionen mit unterschiedlichen Techniken unterfüttern lassen. Entwickler können alle Module von Openstack über eine gut dokumentierte REST-API (Representational State Transfer) steuern.
 
Openstack Nova stellt Rechenleistung bereit
Openstack umfasst eine Reihe eng verzahnter Module beziehungsweise Infrastrukturdienste, die auf einem einzelnen Server oder verteilt über mehrere Rechnerknoten zum Einsatz kommen können. Der Bereich Compute läuft bei Openstack unter dem Namen "Nova". Aufgabe von Nova sind der Aufbau, die Bereitstellung und die Verwaltung von virtualisierten Systemen, einschließlich umfangreicher Cluster, die als Basis für redundante und skalierbare Cloud-Computing-Plattformen dienen.
Openstack Nova unterstützt eine große Auswahl von Hardwarekonfigurationen plus den Linux-Container LXC, Docker sowie die Hypervisoren KVM von Red Hat, Xen von Citrix, VMware Vcenter und Microsoft Hyper-V. In der Praxis kommt überwiegend KVM zum Einsatz. Der Kern von Openstack ist die für Open-Source-Lösungen charakteristische Offenheit. Über die Kombinationsmöglichkeit der Komponenten sind Unternehmen weniger stark an einzelne Hersteller gebunden.
Mit der Openstack-Version "Juno" - verfügbar seit Oktober 2014 - haben Entwickler mit der Umsetzung von Network Functions Virtualization (NFV) begonnen. NFV kommt aus der Telekommunikationsindustrie und bildet die dort herkömmlich eher als integrierte Appliance gelieferte Kombination aus Hardware und spezifischer Software nun generisch in Software nach. Diese Entwicklung wird vor allem für Anbieter von Netzwerkdiensten interessant, denn damit ist die Weiterentwicklung von Netzwerkdiensten nicht mehr an eine bestimmte Hardware gekoppelt. Seit Mai 2015 steht nun auch die nächste Openstack-Version "Kilo" zur Verfügung, die unter anderem den Fokus auf Lifecycle-Management sowie auf die automatisierte Installation der Openstack-Umgebung selbst mit den Modulen "Ironic" und "Triple-O" legt.
 
Openstack unterstützt Block- und Object-Speicher
Im Storage-Bereich bringt Openstack drei Module mit: "Glance", "Swift" und "Cinder". Der Image-Service Glance verwaltet Disk Images, beispielsweise Virtual-Machine-Vorlagen für virtuelle Maschinen. Glance verwaltet somit Disks als Objekte und kann dafür zum Beispiel auch das Openstack-Modul Swift nutzen. Glance ist also derjenige Dienst, der die Verbindung von Disk-Objekt zur virtuellen Maschine herstellt und dies auf verschiedene Arten und Weisen umsetzen kann. Traditionell stellt Openstack im Modul Nova sogenannten "Ephemeral Storage" zur Verfügung: Dies ist ein flüchtiger Speicherbereich auf dem jeweiligen Host der virtuellen Maschinen, in den hinein die Disk Images kopiert werden. Um auch Funktionen wie Livemigration unterstützen zu können, wurde es notwendig, zusätzlich andere Anschlussmöglichkeiten für die virtuellen Disks zur Verfügung zu stellen. So unterstützt Glance nun auch Techniken wie NFS oder auch iSCSI.
Mit Swift können Entwickler redundante und skalierbare Object-Storage-Cluster aufbauen. Allerding ist Swift nicht für die Speicherung von Echtzeitdaten gedacht, sondern für die langfristige Ablage statischer Informationen. Anders ausgedrückt: Swift ist nicht direkt für den Betrieb virtueller Maschinen nötig, sondern bietet eine Speichermöglichkeit für Objektdaten.
Die Openstack-Komponente Cinder wie-derum ermöglicht den Einsatz von Blockspeicher zusammen mit Openstack-Compute-Instanzen. Erforderlich ist Blockspeicher in allen Anwendungsszenarien, in denen Performance eine entscheidende Rolle spielt, oder wo weitere Platten an virtuellen Maschinen benötigt werden. Cinder ist für das Erstellen, Zuweisen, und Lösen eines Blockspeichers von einer virtuellen Maschine zuständig. Die Festplatten oder Solid-State Drives (SSDs) befinden sich als physische Speichermedien direkt in den Cinder-Server-Knoten oder sind direkt angebunden.
Als Backend-Pfad von den externen Storage-Systemen zu den entsprechenden Server-Knoten nutzt Cinder iSCSI oder Fiber Channel. Alternativ zu Cinder können Unternehmen beispielsweise auch die Software-Defined-Storage-(SDS-)Lösungen Nexentaedge oder Red Hat Inktank Ceph Enterprise einsetzen. Ceph ist bei nahezu jeder zweiten Openstack-Implementierung vorhanden.
 
Openstack und Netzwerkeinbindung
Openstack bietet zwei Optionen im Networking-Bereich: "Nova" und die Netzwerkdienste von "Neutron". Ein Nova-Netzwerk ist ohne weitere externe Hilfe in der Regel einfacher zu installieren beziehungsweise zu konfigurieren und bietet alle grundlegenden Netzwerkfunktionen. Neutron erweist sich als komplexer und erfordert bei der Einrichtung sowie dem Tuning fachmännischen Rat und Unterstützung.
Der Openstack-Netzwerkdienst Neutron basiert auf "Open Vswitch", einem Software-Switch, der den Netzwerkverkehr zwischen verschiedenen virtuellen Maschinen auf demselben physischen Host sowie zwischen virtuellen Maschinen und dem physischen Netz weiterleitet. Beginnend mit der Openstack-Version Juno kommt nun primär Neutron zum Einsatz und ist dem älteren Konzept Nova-Network vorzuziehen.
Zusätzlich zu Standard-Netzwerktopologien können Unternehmen auch VLANs für eine logische Trennung von Servern und Datenverkehr aufbauen. Das Openstack Networking Framework unterstützt darüber hinaus Netzwerk-Services wie Load Balancer, Firewalls, Virtual Private Networks und Intrusion Detection Systems (IDS).
Bei Neutron kommen virtualisierte Netzwerktechniken zum Einsatz, die zuverlässig und sicher zu verwalten sind. Dazu ist oft eine Absprache mit den für IT-Security zuständigen Einheiten in einem Rechenzentrum erforderlich. In diesem Umfeld entsteht ein nicht zu unterschätzender Planungs- und Abstimmungsaufwand, den Unternehmen vor einem Proof of Concept von Openstack berücksichtigen sollten.
 
Anwendungsszenarien für Openstack
Openstack nimmt auch in Deutschland langsam an Fahrt auf. Viele Unternehmen evaluieren die Cloud-Betriebssystemplattform und führen einen Proof of Concept durch. Einer der Grunde dafür: Immer mehr Unternehmen stehen vor der Entscheidung, ob Openstack ein fester Bestandteil der Cloud-Integrationsstrategie wird und damit bei der Planung und Umsetzung offener, hybrider Cloud-Infrastrukturen Berücksichtigung finden sollte. Den Ausgangspunkt bildet immer eine Ermittlung von Anwendungsszenarien, die sich für einen Betrieb in der Cloud eignen. Wer Know-how aufbauen will, dem empfiehlt Red Hat beispielsweise, dies nicht unbedingt mit einer Migration bereits vorhandener, produktiv genutzter Workloads zu tun. Im Fall eines Scheiterns ist die Gefahr zu groß, dass Cloud-Projekte um etliche Zeit zurückgeworfen werden.
Damit die Einführung gelingt, sollten Unternehmen sich zunächst auf Anwendungsszenarien für neue Cloud-Applikationen konzentrieren, die Services für bestimmte Benutzergruppen bereitstellen. Solche zeichnen sich dadurch aus, dass sie - im Unterschied beispielsweise zu ERP-Systemen - sehr häufig Änderungen und Anpassungen erfahren. Eine steigende Benutzerzahl lässt sich nicht durch einen größeren Server, sondern durch die weitere Ausbringung auf mehr virtuelle Maschinen versorgen. In offenen, hybriden Umgebungen ist es auch denkbar, dass die Datenbank einen bereits vorhandenen Server nutzt und die Web-Frontend- und Applikationskomponenten in einer Openstack-Cloud-Umgebung laufen. Nach dieser Architektur arbeiten sowohl Unternehmen als auch Internet-Service-Provider, die eine Openstack-Umgebung beispielsweise als kosteneffiziente Alternative zu einer VMware-Umgebung anbieten.
Zur Unterstützung ihrer Projekte greifen Unternehmen oft auf externe Openstack-Spezialisten zurück, mit denen sie bereits gute Erfahrungen gesammelt haben. Dabei geht es etwa um Themen wie die Installation, Konfiguration und Erarbeitung von Betriebskonzepten für Openstack. Wichtige Auswahlkriterium sind darüber hinaus die Zertifizierung der Hard- und Softwarekomponenten, die in einem Projekt zum Einsatz kommen, Referenzarchitekturen und die Frage von Service und Support, das heißt, ob es im Idealfall einen einzigen Ansprechpartner bei Problemen gibt.

Auf einen Blick: die wichtigsten Komponenten von Openstack - für alle existieren mehrere Alternativen aus der Open-Source-Community. Bild: Red Hat

Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Yes Telecom Germany GmbH

Weitere Artikel zu Boeing

Weitere Artikel zu Business Objects Deutschland GmbH

Matchmaker+