In unserem ersten Beitrag widmen wir uns OpenStack. Wir klären im ersten Teil die Fragen: Was ist OpenStack? Welche Vorteile bietet OpenStack im Vergleich zu anderen Virtualisierungstechnologien (Teil I). Im folgenden zweiten Teil nennen wir typische Use Cases für OpenStack (Teil II).
Was ist OpenStack und wie wird die Technologie eingesetzt?
OpenStack ist das am weitesten verbreitete Open-Source Betriebssystem für Cloud Computing-Lösungen. OpenStack wurde 2010 Rackspace und der NASA für Standardhardware entwickelt und wurde in der Programmiersprache Python geschrieben, um virtuelle Pools von Rechenleistungs-, Speicher- und Netzwerkressourcen, sogenannte Infrastructure as a Service (IaaS) Komponenten, über ein Command Line Interface (CLI), eine API oder ein Web-basiertes Dashboard zu verwalten. OpenStack läuft auf gängigen Linux-Plattformen wie RHEL, SUSE oder Ubuntu. Das Cloud Betriebssystem ist kein in sich geschlossenes Programm, sondern eher eine Sammlung einzelner Komponenten, die zusammengestellt den Rahmen für die Automatisierung der Ressourcenzuteilung schaffen. Jede OpenStack-Komponente übernimmt eine konkrete Aufgabe innerhalb des Systems.
Einzelne Feature-Komponenten umfassen:
- Compute (VM Verwaltung, “Nova”)
- Netzwerkverwaltung (“Neutron”)
- Cloud Storage (“Swift”)
- Block Storage (“Cinder”)
- Rechte-/ Benutzerverwaltung („Keystone“)
- Image Server (“Glance”)
- Komponenten Orchestration und Autoscaling-Prozesse („Heat“)
- User Interface (OpenStack Dashboard „Horizon“)
[mk_image src=”/de/wp-content/uploads/2016/02/software_diagram_os.png” image_width=”800″ image_height=”350″ crop=”true” lightbox=”false” frame_style=”simple” target=”_self” caption_location=”inside-image” align=”left” margin_top=”25″ margin_bottom=”25″]
Es gibt jedoch noch weitere, optionale Komponenten, die in OpenStack Language „Projekte“ genannt werden. OpenStack ist eine Cloud-Umgebung. Das bedeutet, dass innerhalb der Umgebung, die verfügbaren Ressourcen On-Demand angepasst, erhöht oder verringert, werden können. Die Ressourcen-Zuteilung und die Mittel sind dabei nicht auf einen einzigen Ort beschränkt.
Welche Vorteile bietet OpenStack im Vergleich zu anderen Cloud- & Virtualisierungstools?
Cloud-Technolgien und Virtualisierungstools wie OpenStack abstrahieren die Ressource von der physischen Hardware und ermöglichen eine Automatisierung. Es entsteht eine virtuell-elastische Infrastruktur, in der RAM-, CPU- und andere Leistungsanforderungen flexibel verwaltet werden können. Dies reduziert Kosten im Bereich Hardware und in der Administration.
OpenStack deckt als eine von wenigen Lösungen mit seinen Komponenten alle Bereiche von IaaS (Compute, Storage, Network) ab. Es bietet eine sehr flexible und reiche Infrastruktur. Der Cloud-Architekt kann wie mit einem LEGO-Baukasten Infrastruktur-Ressourcen und Feature-Sets frei zusammenstellen, um das Setup an einen bestimmten Bereitstellungsbedarf anzupassen. Es sind in OpenStack also nicht nur die Ressourcen elastisch, sondern auch die verwendeten Feature-Sets, die flexibel, je nach Bedarf, hinzugefügt oder gelöscht werden können.
Alle verwendeten Elemente und ihre Beziehung werden visuell in einer Oberfläche als Pool verfügbarer Ressourcen dargestellt. Die Ressourcen, die OpenStack verwaltet, können sowohl physisch als auch virtuell sein und von verschiedenen Anbietern stammen. Die Verwaltung und das Monitoring werden zentralisiert. Abhängigkeiten werden so schneller erkannt und können besser gemanagt werden.
OpenStack ist eine OpenSource Software Lösung. Es wird kontinuierlich an der Optimierung und Dokumentation einzelner Komponenten innerhalb von derzeit 50 Projekt-Gruppen gearbeitet. Die Weiterentwicklung wird mittlerweile von diversen anderen Firmen, insgesamt über 150, darunter Hewlett-Packard, AT&T, Canonical, Intel, Red Hat, IBM, VMware und Dell unterstützt.
Durch eine OpenSource Cloud-Lösung macht man sich von einem einzelnen Anbieter unabhängig und vermeidet Lock-in Effekte eines bestimmten Betreibers. Ein Wechsel zu einem neuen Cloud-Anbieter wird so wesentlich leichter.
Die Konfiguration und das Deployment ist aufgrund der Größe des OpenStack Projekts und der Vielzahl an Funktionen recht komplex. Auf der anderen Seite existieren durch den weiten Entwicklungsstand und die Heterogenität der Verwender von OpenStack bereits viele Skripte und Vorlagen, die für die Konfiguration und Verwaltung verwendet werden können.
Ein genereller Vorteil von Cloud-Lösungen ist die effiziente Allokation von IT-Ressourcen nach dem On-Demand Prinzip. Die Anschaffung physischer Hardware entfällt. Kunden können über ein Web-Interface Dienste, die sie benötigen, auswählen und wieder abwählen. Unternehmen jeder Größe und Branche können von der Nutzung von Private und Public Clouds profitieren.
Wenn Sie weitere Informationen bezüglich OpenStack oder einer Cloud-basierten Setup-Lösung haben, können Sie sich jederzeit an unseren Lösungsmanager, Christoph Streit, wenden.