Effektives Datenmanagement mit IBM Software Defined Storage

Die Anforderungen an die Leistungsfähigkeit von Speicherinfrastrukturen für Unternehmen und Organisationen wachsen rasant. Um die 15 Petabytes neuer Daten werden jeden Tag weltweit generiert, der Gesamtbestand an Daten verdoppelt sich in etwa alle 2 Jahre. Diese Datenmengen müssen wirtschaftlich gespeichert und den unterschiedlichsten Anwendungen bei Bedarf immer schneller, in höheren Bandbreiten und geringeren Latenzen verfügbar gemacht werden.
Um diesen Anforderungen gerecht werden zu können, stehen derzeit zwei Technologien im Focus der Entwicklungen im Bereich der Datenspeicherung – Flash und Software Defined Storage (SDS). Während Einsatzbereich und Nutzen von Flash klar umrissen ist (im Kern dramatisch höhere Bandbreiten und geringere Latenzen bei deutlich geringerem Infrastrukturaufwand), zeigt sich diese Klarheit im Umfeld von SDS nicht. Hier findet sich eine große Vielfalt von Definitionen, die sich von Hersteller zu Hersteller oft deutlich unterscheiden. Wir wollen in diesem Artikel versuchen, diese Begriffsvielfalt zu ordnen und einige bereits heute verfügbare Lösungen in diesem Umfeld am Beispiel des SDS-Portfolios der IBM aufzeigen.
Die 3. Plattform
Die gesamte IT-Industrie befindet sich im Umbruch. Dieser Umbruch ist gekennzeichnet durch die Entwicklungen im Bereich der sogenannten "3. Plattform" – ein Begriff, den IDC geprägt hat. Er meint ein Computing-Modell, das die neuen und extrem leistungs- und kapazitätshungrigen Anwendungen aus dem Umfeld Cloud-Computing, Advanced Analytics, Mobile Computing, Social Computing, Internet of Things etc. bedient. Diese Anwendungen zeichnen sich durch extreme Leistungs- und Kapazitäts-Anforderungen, vor allem aber durch schlechte Planbarkeit und Vorhersagbarkeit und damit höchsten Bedarf an Flexibilität aus. Die Daten dieser Anwendungen sind meist unstrukturiert und liegen in Dateien, Objekten und NoSQL-Datenbanken vor.
Bereits für dieses Jahr wird erwartet, dass das gesamte Wachstum im IT-Markt in diese neuen Umgebungen fließen wird und die Ausgaben für traditionelle Client Server-basierte Technologien ("2. Plattform") beginnen werden zu schrumpfen. Auf Seite der Infrastruktur ist der Speichermarkt von diesen Entwicklungen besonders betroffen, weil den Storage-Technologien auf Grund des Datenwachstums und den zunehmenden Leistungsanforderungen natürlich eine ganz besondere Rolle zukommt. Das große Problem an dieser Stelle ist, dass traditionelle Speicherinfrastrukturen oftmals schlicht nicht in der Lage sind, den Anforderungen dieser neuen Anwendungswelten gerecht zu werden.
Die Realität in den Unternehmen und Organisationen
Während in Unternehmen und Organisationen die Anforderungen für neuartige Speicherlösungen aus dem Umfeld dieser 3. Plattform ständig steigen, rücken aber auch Wirtschaftlichkeit und Kosten der etablierten Speicher-Infrastrukturen mehr und mehr in den Mittelpunkt. Diese Speicher-Infrastrukturen bedienen die traditionellen – meist Client-Server-basierten, transaktionsorientierten – Anwendungen, die zwar oft ein nicht ganz so rasantes Datenwachstum aufweisen, dafür aber durch ständig steigende Leistungs- und Verfügbarkeits-Anforderungen gekennzeichnet sind.
Bei vielen Unternehmen und Organisationen gilt es nun, die Wirtschaftlichkeit und Effizienz dieser bestehenden, eher traditionellen Speicher-Infrastrukturen so zu erhöhen, dass bei flachen Budgets die zusätzlichen Anforderungen in diesem Umfeld erfüllt werden und gleichzeitig die notwendigen Investitionen in Speicherlösungen für die 3. Plattform bedient werden können.
Das befeuert auch die Nachfrage nach neuartigen – eben wesentlich wirtschaftlicheren – Speicher-Infrastruktur-Lösungen im traditionellen Bereich.
SDS und die beiden zentralen Herausforderungen im Speicherbereich
CIOs und Speicherverantwortliche sehen sich also zwei – zunächst unterschiedlichen – Aufgabenstellungen gegenüber:
- Erhöhung der Wirtschaftlichkeit und Effizienz der bestehenden, traditionellen Speicher-Infrastrukturen der 2. Plattform.
- Aufbau von ganz neuartigen, extrem flexiblen, skalierbaren, leistungsfähigen und vor allem kostengünstigen Speicherinfrastrukturen für die neu entstehenden Anwendungs-Anforderungen der 3. Plattform.
Um sich dem ersten Ziel zu nähern, stehen im Wesentlichen zwei Ansätze zur Verfügung: Der möglichst breite Einsatz von Datenreduktions-Technologien wie Daten-Deduplizierung und Kompression und Automatisierung.
Der erste Ansatz: Automatisierung
Der Automatisierungsgedanke ist dabei nicht nur auf den Speicherbereich beschränkt sondern findet sich in Konzepten wie "Software Defined Infrastructure", "Software Defined Data Center" oder "Software Defined Environments" in ganzheitlichen IT-Infrastruktur-Ansätzen wieder.
Die grundlegende Idee dabei ist, eine IT-Infrastruktur zu schaffen, die in der Lage ist, Anwendungen auf Basis von Service-Level-Vorgaben völlig automatisch in eine individuelle, maßgeschneiderte IT-Infrastruktur zu provisionieren und die Einhaltung dieser Service-Levels dann während des kompletten Lifecycles überwachen und bei Bedarf nachsteuern kann.
Eine solche "Software Defined"-Infrastruktur setzt sich dabei immer aus den Bestandteilen Netzwerk, Compute und Storage zusammen, wobei die einzelnen Bestandteile – zunächst unabhängig von Ihrem inneren Aufbau – bestimmte Eigenschaften aufweisen und bestimmten Anforderungen genügen müssen, damit sie in einem solchen Konzept mitwirken können. Man spricht dann von "Software Defined Networking", "Software Defined Compute", "Software Defined Storage".
Die wichtigste Eigenschaft in diesem Zusammenhang ist die, dass diese Bestandteile von außen, also von einem übergeordneten Framework (z. B. Openstack, das die Orchestrierung von Netzwerk, Compute und Storage steuert) über APIs steuerbar sind. Eine weitere wichtige – wenn auch nicht zwingend notwendige – Eigenschaft ist die Virtualisierung der jeweiligen physikalischen Hardware-Ressourcen, da normalerweise nur so eine entsprechende Flexibilität und Granularität der Hardware erreicht werden kann.
Aus diesem Blickwinkel können wir also eine erste Definition von SDS ableiten: SDS ist danach eine Software-Lösung, die es ermöglicht, eine Speicher-Infrastruktur aufzubauen, oder bestehende Speicher-Infrastrukturen dahingehend umzubauen und zu optimieren, dass sie über APIs steuerbar ("programmierbar") sind und Speicherkapazitäten völlig automatisch, anhand von granularen Service-Level-Zielen zur Verfügung stellen kann. Dabei ist wichtig, dass dieses Konzept der Automatisierung idealerweise das gesamte Speichermanagement (Storage-Ressource-Management, Performance-Management, Archivierung, Backup-/Restore etc.) mit umfasst.
Logischerweise sind solche Systeme meist hierarchisch gegliedert in eine übergeordnete "Control Plane" und eine nachgeordnete "Data Plane". Die Control Plane ist dabei der Software-Layer, der Funktionen wie Service-Level-Management mit regelbasierter Automatisierung, Storage-Ressource-Management, Snapshot- und Replication Management, Backup-/Restore-Services und die API- und GUI-basierten Schnittstellen nach außen zur Verfügung stellt. In der Data Plane erfolgt dann nur noch die reine Speicherung der Daten, wobei in der Regel der Datenzugriff an der Control Plane vorbei direkt in die Data Plane erfolgt.
SDS in diesem Sinne fokussiert also hauptsächlich auf die Services und Schnittstellen, die eine Speicher-Infrastruktur nach außen hin (Anwendungen/Workloads und übergeordnete Automatisierungs-Frameworks wie z. B. Openstack) zur Verfügung stellt. Der innere Aufbau einer solchen SDS-Infrastruktur ist zunächst einmal nicht näher bestimmt. Das ermöglicht es, solche Konzepte auch mit bestehenden, traditionellen Infrastrukturen umzusetzen. Ein erster Schritt in diese Richtung ist dabei üblicherweise eine Virtualisierung der bestehenden Speicher-Infrastruktur, um diese leichter in eine SDS-Umgebung überführen zu können.
Der Nutzen dieses SDS-Ansatzes liegt auf der Hand: erhöhte, verbesserte Ausnutzung der bestehenden Speicherressourcen (da eine "Softwarelösung" normalerweise stets besser optimieren kann als jeder Administrator) bei gleichzeitig deutlich geringerem Administrations- und Management-Aufwand. Er richtet sich vor allem an die erste der beiden oben beschriebenen zentralen Herausforderungen im Speicherbereich.
Der zweite Ansatz: Speicher-Infrastruktur mit Commodity Hardware

Wenden wir uns nun einer zweiten Sichtweise auf SDS zu. Diese zweite Sichtweise befasst sich mit dem inneren Aufbau der Speicher-Infrastruktur selbst und zielt vor allem auf die zweite oben beschriebene zentrale Herausforderung im Speicherbereich: den Aufbau neuartiger Speicherinfrastrukturen für Anwendungs-Anforderungen der 3. Plattform.
Die geforderten Eigenschaften solcher Speicher-Infrastrukturen – wie höchste Flexibilität und Dynamik, Skalierbarkeit, Leistungsfähigkeit, vor allem aber Wirtschaftlichkeit – lassen sich nur sehr schwer mit spezialisierter, eigens entwickelter, monolithischer Hardware und den damit verbundenen langen Entwicklungs- und Beschaffungszyklen realisieren. In diesem Bereich setzen sich daher mehr und mehr intelligente Storage-Softwarelösungen durch, die in der Lage sind, solche Speicher-Infrastrukturen unter Verwendung von Standard-, Off-the-Shelf-Hardware (meist Standardserver mit direkt angeschlossenem internem oder externem Speicher) aufzubauen.
In diesem Umfeld gibt es eine Vielzahl an Lösungen sowohl für Block-Storage als auch für File- und Objekt-Storage. Dabei werden die Hardware-Building-Blocks (Server mit oder auch ohne eigene Speicherressourcen) in einem Scale-Out-Ansatz zu einem Clusterverbund zusammengeschaltet und die an den einzelnen Nodes verfügbaren Speicherkapazitäten allen beteiligten System unmittelbar und dritten Systemen über Standardprotokolle wie FC, iSCSI, CIFS/SMB, NFS oder auch S3, Swift o. ä. verfügbar gemacht.
Dieser Ansatz verspricht eine ganze Reihe von Vorteilen, die vor allem im Umfeld von Anwendungen der 3. Plattform unverzichtbar sind:
- Kurze Innovationszyklen bei der Entwicklung solcher Software-Lösungen, schnelles Umsetzen von funktionalen Anforderungen
- Sehr gutes Preis-/Leistungsverhältnis und schnelle, einfache, meist standardisierte Beschaffungsprozesse der erforderlichen Standard-Hardware für hohe Wirtschaftlichkeit und schnelles Deployment solcher Lösungen
- Hardware kann auch außerhalb von Speicher-Infrastrukturen eingesetzt werden (falls z. B. Kapazitäten nicht mehr benötigt werden)
- Höchste Skalierbarkeit durch Scale-Out-Ansatz
Auch wenn hier der innere Aufbau der Speicher-Infrastruktur selbst im Focus steht, sollten im Idealfall natürlich auch diese Lösungen die notwendigen Möglichkeiten bieten, um an dem weiter oben beschriebenen Automatisierungs-Ansatz teilnehmen zu können und damit unter Kontrolle der jeweils eingesetzten "Control Plane" betrieben werden zu können.
Große Vielfalt im Markt
Schon diese beiden – doch sehr unterschiedlichen – Sichtweisen auf SDS führen zu einem sehr vielfältigen Lösungsangebot im Markt, wobei ein Schwerpunkt im Bereich des zweiten Ansatzes liegt. Hier sehen wir neben einigen etablierten Lösungen (die sich meist unter anderem Namen bereits seit Jahren im Markt bewährt haben) eine Vielzahl neuer Player entstehen, die den Storage-Markt sicherlich nachhaltig verändern dürften.
Im Umfeld des ersten Ansatzes – also der Erhöhung von Effizienz und Wirtschaftlichkeit bestehender Speicher-Infrastrukturen durch Virtualisierung und Automatisierung – ist das Angebot überschaubarer. Hier gibt es nur relativ wenige, wirklich leistungsfähige Lösungen im Markt.
Die IBM Spectrum Storage- Familie
Als einer der wenigen Hersteller hat IBM die gesamte Bandbreite der oben beschriebenen Ausprägungen von SDS im Focus und bietet mit IBM Spectrum Storage eine Produktfamilie an, mit der diese Konzepte bereits heute in vollem Umfang umsetzbar sind. Die einzelnen Lösungen des IBM Spectrum Storage Frameworks sind logischerweise – wie im SDS-Umfeld üblich – einer Control Plane- und einer Data Plane-Ebene zuzuordnen. Dreh- und Angelpunkt der Control Plane und damit zentrale Instanz für Storage-Management und Automatisierung ist IBM Spectrum Control.
IBM Spectrum Control (Storage and Data Control)
IBM Spectrum Control stellt umfangreiche Storage-Ressource- und Performance-Management-Funktionen, einen Storage-Service-Katalog mit regelbasierter Automatisierungs-Engine, Funktionen zur Optimierung der Storage-Nutzung und des Storage-Tiering, ein Self-Service-Portal und die erforderlichen Schnittstellen in übergeordneten Frameworks wie Openstack und VMware zur Verfügung. Dazu kommen in IBM Spectrum Control ausgefeilte, Cognos-basierte Analyse-Algorithmen zur Anwendung. IBM Spectrum Control kann mit Systemen der IBM Spectrum Storage Data Plane und auch mit anderen Speichersystemen zusammenarbeiten.
IBM Spectrum Protect (Storage and Data Control)
Als weiterer Baustein steht für Data Protection in der IBM SDS Control Plane das Produkt IBM Spectrum Protect zur Verfügung. Backup-/Restore ist wie schon beschrieben ein zentraler Aspekt des Storage Service Level Managements und somit Bestandteil einer durchgehenden SDS-Architektur. IBM Spectrum Protect basiert auf dem seit Jahren bewährten IBM Tivoli Storage Manager Produkt und deckt alle Aspekte der Datensicherung physischer und virtueller Umgebungen ab. Dabei werden sowohl Backup to Disk-Verfahren als auch Backup to Tape-Verfahren und State of the Art-Technologien wie "incremental forever" und "data deduplication" unterstützt.
IBM Spectrum Virtualize (Data Access)
Um bestehende Speicherinfrastrukturen effizienter und wirtschaftlicher zu gestalten, ist die Speicher-Infrastruktur-Virtualisierung die derzeit leistungsfähigste Technologie. Sie ist zudem nach unserer Ansicht eine notwendige Voraussetzung um eine Automatisierbarkeit der Speicher-Infrastruktur im Sinne von SDS zu erreichen. In der IBM Data Plane steht diese Funktion mit IBM Spectrum Virtualize zur Verfügung. IBM Spectrum Virtualize basiert ebenfalls auf einem erfolgreichen und bewährten IBM-Produkt: dem IBM SAN Volume Controller. Mit dieser Software-Lösung lässt sich jede beliebige heterogene Speicher-Infrastruktur zu einem homogenen Speicherpool mit gemeinsamen Funktionen und Schnittstellen homogenisieren. Leistungsfähige Funktionen wie beispielsweise Datenreplikation, Real-Time-Komprimierung und Hochverfügbarkeit sind dabei in IBM Spectrum Virtualize implementiert und stehen unabhängig von den Speichersystemen für die gesamte Kapazität bereit.
Mit IBM Spectrum Accelerate und IBM Spectrum Scale stehen in der IBM Data Plane zwei Software-Lösungen bereit, die den oben beschriebenen zweiten Ansatz von SDS – den Aufbau einer Speicher-Infrastruktur unter Verwendung von Standard-Hardware umsetzen.
IBM Spectrum Accelerate (Data Access)
Bei IBM Spectrum Accelerate handelt es sich um eine SDS-Implementierung, die auf Basis der (seit vielen Jahren bewährten) IBM XIV Technologie Block-Storage bereitstellt. IBM Spectrum Accelerate bringt die umfangreichen Enterprise-Funktionen des IBM XIV Storage Systems auf Standard-Hardware und erlaubt es so, extrem flexible Speicherlösungen, aufzubauen, wobei Teile der Kapazitäten auf XIV Speichersystemen, Teile auf IBM Spectrum Accelerate basierter Standard-Hardware und sogar Teile in einer Public Cloud liegen können. Diese unterschiedlichen Deployments können dabei unter einem gemeinsamen Management verwaltet und Daten unterbrechungsfrei zwischen den verschiedenen Deployments verschoben werden. So können Speichergrids von bis zu 70PB aufgebaut werden.
IBM Spectrum Accelerate Speicherlösungen können in wenigen Minuten implementiert werden und bieten so die Flexibilität, die im Umfeld von Cloud-Computing und 3. Plattform-Applikationen benötigt wird.
IBM Spectrum Scale (Data Access)
IBM Spectrum Scale liefert Services für effektives Datenmanagement im unstrukturierten File- und Objektbereich. Es basiert auf der Technologie des "General Parallel File Systems" ( GPFS). Automatisierung durch Management über Policies in einer SQL-ähnlichen Sprache ermöglicht das Verlagern der Daten auf die effizienteste oder kostengünstigste Speicher-Tier-Stufe. Daten, die wochenlang nicht angefragt wurden, lassen sich so beispielsweise auf kostengünstiges Tape migrieren, verbrauchen dort keinen Strom und verursachen keine Klima- oder Wartungskosten.
IBM Spectrum Scale kann redundant ausgelegt werden und ist hoch skalierbar, die Supercomputing-Zentren dieser Welt setzen auf Spectrum Scale wegen dieser Skalierbarkeit. Ein Single-Namespace sorgt für die Vermeidung von nicht-konsolidierbaren NAS Inseln. IBM Spectrum Scale ist durch die Bereitstellung eines Hadoop-HDFS-Interfaces in der Lage, Analytik-Daten in das Filesystem zu integrieren und per platzsparender Snapshots können zeitintensive Dateitransfers für Analytik-Auswertungen vermieden werden. Weiterhin bietet IBM Spectrum Scale eine höhere Verfügbarkeit durch einen besonderen RAID-Ansatz (Declustered RAID) bei dem die physischen Plattenkapazitäten besser ausgenutzt werden und ein dramatisch schnelleres Rebuild erreicht wird, als in einem herkömmlichen Ansatz.
Cloud-Lösungen für die Speicher-Provisionierung können heute mit den Open Source-Diensten von OpenStack eingerichtet werden. IBM Spectrum Scale unterstützt heute die OpenStack Module Cinder (Block) und Swift (Object) sowie in Zukunft Manila (NAS). Smart Devices halten einen rasanten Einzug in die Unternehmen. Während der Laptop sich noch ein Filesystem in der Firmenzentrale remote mountete, verhält sich ein Smart Device ganz anders, Filesysteme werden nicht mehr gemounted, sondern neben Synch- und Share-Lösungen werden heute objektorientierte Ansätze gefragt, die mehr zu dem PUT- und GET-Verhalten dieser neuen mobilen Anwendungen passen. IBM Spectrum Scale unterstützt diese objektorientierten Anwendungen über den integrierten OpenStack Swift Ansatz, der auch eine kompatible Amazon S3 Schnittstelle liefert. Große Synch- und Share-Lösungen wurden z. B. auf Basis von IBM Spectrum Scale mit OwnCloud realisiert.
IBM Spectrum Scale und IBM Spectrum Protect arbeiten seit Jahren für Backup und Restore eng zusammen. Über die Metadaten des IBM Spectrum Scale-Filesystems weiß IBM Spectrum Protect, welche Dateien gesichert werden müssen, es muss kein zeitaufwändiger Scan-Lauf über evtl. mehrere Millionen Files gemacht werden. Diese Lösung ist über das Spectrum Scale Protokoll hoch skalierbar und wesentlich performanter ausbaubar als Lösungen die durch einen NFS Mount nur geringere Bandbreiten bieten.
IBM Spectrum Archive (Data Access)
Die extremen Speicherkapazitäten, die zukünftig – vor allem im Umfeld der 3. Plattform – benötigt werden, können nicht mit Magnetplatten- oder Flash-Technologie alleine dargestellt werden. Hier wird der Tape-Technologie eine wachsende Rolle zukommen, wobei sich der Schwerpunkt von Backup-/Restore-Anwendungen hin zur Verwaltung immer größer werdender Mengen wenig aktiver Daten verschiebt. Hierzu werden intelligente Lösungen benötigt, die eine nahtlose Integration von Tape-Technologien in Online-Speicher-Infrastrukturen erlauben.
IBM Spectrum Archive ist eine solche Lösung und steht für die Nutzung von Tape über das Linear Tape File Systems (LTFS). IBM Spectrum Scale und zukünftig auch andere IBM Spectrum Storage-Lösungen nutzen Spectrum Archive als kostengünstigste Storage Tier Stufe. So können beispielsweise LTFS Tape Libraries direkt an das Filesystem von IBM Spectrum Scale angeschlossen und nahtlos als zusätzliche Speicher Tier Stufen verwendet werden.
Fazit
Wenn auch nicht in jeder Hinsicht neu, ist SDS neben Flash eine der beiden dynamischsten und vielversprechendsten Entwicklungen im Speicherbereich. In absehbarer Zeit wird ein großer Teil der gespeicherten Daten in solchen Konzepten verwaltet werden. Auch wenn manche Ansätze durchaus visionär erscheinen mögen, sind bereits heute sehr ausgereifte und bewährte Lösungen verfügbar, die eine deutliche Verbesserung der Leistungsfähigkeit und Wirtschaftlichkeit einer Speicher-Infrastruktur erwarten lassen.
Dem Verlag/Herausgeber wird das Recht zur einmaligen Veröffentlichung des Beitrages eingeräumt. Alle anderen Rechte verbleiben bei der IBM. Die Veröffentlichung erfolgt unter dem Namen der Urheber.