Object Storage auf Basis von OpenStack Swift

Starnberg, 28. Sept. 2015 – Ein steigendes Datenwachstum und neue Anwendungsprofile verlangen nach skalierbaren und kosteneffizienten Speichermethoden-/ Technologien...

Um was es hier geht: Entwickler, die moderne Anwendungen schreiben, sehen sich Speicherseitig oft mit relativ starren Infrastrukturen konfrontiert, die auf Basis einer inzwischen über 30 Jahre alten Harddisk-Architektur aufsetzen. Die Nachteile werden evident, weil das schnelle Wachstum von unstrukturierten Daten unvermindert weitergeht. Fast jede Branche ist davon betroffen, was mit einer zunehmenden Anzahl von verschiedensten Anwendungen, Datenformaten und Benutzern und deren Anforderungen einhergeht. Ferner ist die steigende Akzeptanz von Smartphones, Tablets und anderen mobilen Geräten durch Unternehmens-User dafür verantwortlich, dass On-Demand-Zugriffe auf Daten von überall auf jedem Gerät erwartet werden.

Dies stellt die IT-Infrastruktur in Bezug auf die Skalierbarkeit bei neuen Workloads, Automatisierung, Informationssicherheit und Performance vor diverse Herausforderungen; nicht zu reden von den operationalen Kosten, die auf Grund des durchschnittlichen unstrukturierten Datenwachstums von rund 50% p.a. weltweit (Gartner) entstehen können. IDC schätzt, dass ca. 80 Prozent aller neuen Cloud-Anwendungen „Big-Data-intensive“ sein werden. (1)

  • Die am häufigsten verwendeten Speichersysteme sind File-System basierter NAS- und Block-Level-Storage. Network Attached Storage (NAS) Systemen wird meist für die Speicherung und den Austausch von Dateien über ein (dediziertes) Netzwerk verwendet, während Blockstorage als Storage Area Network (SAN) System über FC, Fabrics oder iSCSI eingesetzt wird (shared storage). Traditionell existieren meist Pools von Speichersystemen für jede Art von Anwendung (VDI, E-Mail, Datenbanken, Analytics etc.), hochoptimiert aber isoliert (Silos).

Das Problem: um die Speichersysteme unabhängig von anderen Speicherressourcen zu skalieren – bei einer steigenden Zahl von Anwendungen - steigt auch die Anzahl der Storage-Systeme im Rechenzentrum. Dies wiederum führt zu höheren Kosten (OPEX, CAPEX) sowie einer Zunahme der Komplexität bzw. Fehlerpotentiale (Stichwort: Ausfallsicherheit).

Mit dem Anwachsen der Menge an unstrukturierter Daten kommt das klassische Modell jedoch zunehmend an seine Grenzen; dies betrifft vor allem die Kostenseite beim weiteren Kapazitätsausbau und zur Bereitstellung der erforderlichen Datenverfügbarkeit (n-Site-Umgebungen, Data-Replikation, Rebuild / RAID).

Object- und Cloud Storage auf Basis Swift OpenStack

Anders als Transaktions-orientierte online Datenbanksysteme mit ihren spezifischen Anforderungen an Leistung und Datenkonsistenz bei n-Site-Konfigurationen sind Objektspeichersysteme auf massive Skalierbarkeit hin entwickelt worden und bieten eine entsprechende Datenverfügbarkeit auch bei Hardware-Ausfällen. Bei Swift z.B. werden Objekte durch das Speichern mehrerer Kopien von Daten so abgesichert, dass bei Ausfall eines Knotens die Daten von einem anderen Knoten abgerufen werden können. Diese Architektur ist damit besonders für stark verteilte Infrastrukturen mit vielen unstrukturierten Daten an weltweiten Standorten geeignet.

Swift als Objekt Storage Software läuft auf gängigen Linux-Distributionen unter Standard-x86-Server-Hardware, ist Teil des Openstack Projekts und als Open-Source-Angebot frei verfügbar. Es kann sowohl als Stand-Alone-Speichersystem als auch Teil einer Cloud-Umgebung verwendet werden (siehe AWS, Google Cloud, Azure, Rackspace, IBM Softlayer, HP usw..).

Wie ist Swift aufgebaut?

  • Anwendungen speichern die Daten über eine Industrie-Standard-RESTful HTTP-API ab (Speichern, Abrufen, Löschen von Objekten mit zugehörigen Metadaten in Containern). Alle Objekte (Daten) in Swift besitzen eine URL
  • Auf Swift kann über HTTP direkt an die API oder mithilfe von Swift-Client-Bibliotheken und Scripts wie Java, Python oder Ruby zugegriffen werden.
  • Alle Objekte werden als mehrfachte Kopien gespeichert und in verschiedene Verfügbarkeitszonen bzw. Regionen repliziert
  • Ausgefallenen Knoten und Laufwerke können ausgelagert werden, während der Cluster ohne Ausfallzeiten weiterarbeitet.
  • Kann mit gängigen Authentifizierungssystemen sowie IT-Management-Tools integriert werden. Diverse Backup-und Content-Management-Systeme unterstützen zwischenzeitlich die Swift HTTP API.

Kommerzielle Object-Storage-Anbieter sind Spezialisten wie Scality (Ring), Cleversafe (IBM-Aquise) (Software/Appliances), Nexenta (Edge), NetApp (Storage GRID), Quantum (Lattus), Dell, HP, Lustre (HPC), EMC Atmos, IBM (SoftLayer), Hitachi (HCP), Red Hat Object Storage (Swift / Ceph), Cloudian, Fujitsu ETERNUS CD10000 (OpenStack), Amplidata (WDC/ HGST) usw.


Weitere Informationen / Quellen:

https://swiftstack.com/openstack-swift/
https://www.openstack.org/foundation/

Red Hat Storage Services für OpenStack Object Storage (Swift)

Cloud Storage und Hyperkonvergenz - 16. Anwendertagung des Storage Consortium bei e-shelter in Frankfurt/M.

Integration von Tape in Cloud Object Storage OpenStack Swift - IBM Forscher erzielen höchste Speicherdichte...

Seagate Kinetic Open Source Object Storage Laufwerk (HDD) vorgestellt


(1) Quelle > IDC MarketScape: Worldwide Object-Based Storage 2014 Vendor Assessment report