Tipps zum Einsatz von Storage unter OpenStack

München, Starnberg, 28. April 2017 - Object Storage mit Swift, Block Storage mit Cinder oder File Storage mit Manila betreiben...

Zum Hintergrund: OpenStack erfreut sich zunehmender Beliebtheit, um offene Cloud-Infrastrukturen aufzubauen. Die am 20. April 2017 veröffentlichte und inzwischen neunte Benutzerumfrage (1) der OpenStack Foundation zeigt das deutlich: 44 % mehr Implementierungen sowie Rückläufer-/Antworten zur Befragung von 22 % mehr Organisationen als beim OpenStack User Survey von 2016. Die Analyse zeigt den wachsenden Einsatz, eine höhere Skalierung und eine vielfältigere Nutzerbasis auf, die mit Hilfe von OpenStack Innovationen beschleunigen und die Bindung an nur einen Lieferanten verhindern möchten (32 % der Nutzer sind danach Unternehmen mit mindestens 10.000 Mitarbeitern und 25 % sind Organisationen mit weniger als 100 Mitarbeitern. 61 % der Nutzer und 74 % der Implementierungen sind geografisch außerhalb der USA lokalisiert).

Data- und Storage Management Spezialist NetApp SolidFire gibt nachfolgend einige Hinweise, wie und in welcher Form Storagelösungen am besten im Rahmen von OpenStack - Implementierungen einzusetzen sind:


Hinweis: Diesen und weitere Beiträge als Podcast hören


OpenStack bietet eine frei verfügbare Architektur und setzt sich aus einer Vielzahl von Modulen zusammen. Diese stellen zum Beispiel virtuelle Maschinen, virtuelle Netzwerke oder Speicher bereit und dienen deren Verwaltung. Für den Storage haben Anwender die Wahl zwischen drei Modulen: Object Storage mit Swift, Block Storage mit Cinder und File Storage mit Manila. Welche Lösung die richtige ist, hängt dabei vom Anwendungsfall ab, meist ist aber eine Kombination der drei Varianten empfehlenswert. Jedes Modul hat seine Vorteile und eignet sich damit für bestimmte Anwendungsszenarien. Grundsätzlich ist bei OpenStack-Projekten zu beachten, dass sich die Storage-Komponenten komplett und mit wenig Aufwand integrieren lassen.

1. Swift für Backup und Archivierung

  • Swift stellt Object Storage unter OpenStack zur Verfügung: Die Daten werden in Objekte gepackt und über verschiedene Speicherknoten im Cluster verteilt. Anhand von Metadaten, die zusammen mit den Objekten gespeichert werden, lassen sich diese eindeutig zuordnen. Dadurch können Anwender auch Daten aufrufen, ohne ihren Standort zu kennen. Object Storage ist horizontal skalierbar und lässt sich gut mit Standard-Hardware umsetzen. Damit ist die Lösung preiswert und ermöglicht sehr große Repositories bei geringem Platzbedarf. Sie unterstützt jedoch keine virtuellen Maschinen; außerdem ist sie langsamer als Block Storage oder File Storage. Deshalb eignet sich Swift vor allem für Daten, die kaum oder auch gar nicht aktualisiert werden müssen. Die Lösung ist ideal für Backups und Archive.

2. Cinder für Performance-orientierte Anwendungen

  • Das OpenStack-Modul Cinder ermöglicht Block Storage für virtuelle Maschinen. Das Speichern der Daten erfolgt dabei in virtuellen Volumes, die jeweils wie eine Festplatte behandelt werden. Eine virtuelle Maschine kann allerdings immer nur auf das Volume zugreifen, das ihr zugewiesen ist. Geteilte Volumes sind nicht möglich. Block Storage ist sehr schnell und eignet sich daher ideal für performancekritische Primärworkloads wie SQL- oder NoSQL-Datenbanken oder Anwendungen der Datenanalyse oder Transaktionsverarbeitung. Als Backend lassen sich unterschiedliche Speichermedien einsetzen.

3. Manila Fileservices für gemeinsam genutzte Daten und Ressourcen

  • Manche Cloud-Anwendungen erfordern es, dass viele Nutzer und virtuelle Maschinen gleichzeitig auf dieselben Daten zugreifen können. Das ist zum Beispiel bei großen Content-Management-Systemen oder Entwicklungs- und Testumgebungen der Fall. Für solche Einsatzfelder ist Manila konzipiert. Das OpenStack-Modul bietet einen automatisierten, skalierbaren On-Demand-Service für die Bereitstellung von gemeinsamen und verteilten Dateisystemen. Manila ist performant und ermöglicht Dateioperationen mit niedriger Latenz. Daher empfiehlt sich die Lösung auch für Big-Data-Anwendungen. Sie ermöglicht es außerdem, Daten über verschiedene Public-, Hybrid- oder Private Clouds hinweg zu bewegen. Dadurch gewinnen Anwender mehr Flexibilität.

Fazit: Die richtige Mischung macht’s

Folgt man der Meinung von NetApp, gibt es nicht eine Storage-Lösung, die alle Anwendungsszenarien abdeckt. Meist ist eine schlaue Kombination aus verschiedenen Modulen gefragt, um die bestmögliche Infrastruktur und ein Maximum an Flexibilität zu erreichen. Swift, Cinder und Manila schließen sich nicht gegenseitig aus, sondern können sich ergänzen. Entscheidend dabei ist, die eigenen Anforderungen in den unterschiedlichen Einsatzfeldern zu analysieren und die Storage-Architektur entsprechend aufzubauen. Dabei ist es von zentraler Bedeutung, dass sich die Storage-Komponenten – wie z.B. beim Zero-Touch-Ansatz von NetApp SolidFire – mit möglichst wenig Aufwand in die OpenStack-Umgebung integrieren sowie langfristig effizient betreiben und verwalten lassen. Beispielsweise soll damit laut Anbieter eine Einbettung in das Open-Source-Konstrukt durch die Eingabe von nur vier Zeilen Code realisiert werden können... damit übertragen sich die Kostenvorteile des Open-Source-Konzepts auf den Betrieb der IT-Infrastruktur insgesamt.


(1) Quellenangabe: OpenStack User Survey 2017 Übersicht

Abb. 1: OpenStack Architekturübersicht (Bildquelle: http://www.openstack.org)