Storage-Strategie

Überblick

Persistente Daten werden abhängig von den Anforderungen der jeweiligen Anwendung bereitgestellt.

Die Plattform verfolgt keinen einheitlichen Storage-Ansatz für alle Workloads.

Stattdessen wird Storage anhand der Anforderungen an:

  • Verfügbarkeit

  • Performance

  • Kapazität

  • Wiederherstellbarkeit

  • Zugriffsmodell

ausgewählt.

Grundsätze

Performance vor Replikation

Replikation verursacht zusätzlichen Ressourcenverbrauch.

Nicht jede Anwendung profitiert von mehrfach replizierten Daten.

Lokaler Storage wird bevorzugt, wenn:

  • Daten ersetzbar sind

  • Anwendungen selbst replizieren

  • Hohe IO-Leistung benötigt wird

Replikation gezielt einsetzen

Replikierte Datenhaltung wird nur verwendet, wenn ein tatsächlicher Verfügbarkeitsgewinn entsteht.

Die Replikation einzelner Volumes ersetzt keine hochverfügbare Anwendung.

Anwendungen sind wichtiger als Storage

Die Verfügbarkeit einer Anwendung wird ganzheitlich betrachtet.

Ein repliziertes Volume alleine macht eine Anwendung nicht hochverfügbar.

Maßgeblich sind:

  • Applikationsarchitektur

  • Datenhaltung

  • Wiederherstellbarkeit

  • Betriebsmodell

Wiederherstellbarkeit vor maximaler Verfügbarkeit

Die Plattform setzt auf reproduzierbare Infrastruktur, GitOps und Backups.

Nicht jeder Dienst benötigt eine kontinuierliche Hochverfügbarkeit.

In vielen Fällen ist eine schnelle Wiederherstellung sinnvoller als zusätzliche Laufzeitkomplexität.

Datenkategorien

Flüchtige Daten

Daten können jederzeit neu erzeugt werden.

Beispiele:

  • Caches

  • Temporäre Dateien

  • Build-Artefakte

Diese Daten benötigen keine Replikation.

Zustandsbehaftete Anwendungsdaten

Die Daten müssen dauerhaft erhalten bleiben.

Beispiele:

  • Datenbanken

  • Benutzerdaten

  • Dokumente

Die Anforderungen werden individuell bewertet.

Gemeinsame Datenbestände

Mehrere Workloads benötigen gleichzeitigen Zugriff auf dieselben Daten.

Beispiele:

  • Gemeinsame Arbeitsverzeichnisse

  • Upload-Verzeichnisse

  • Medienbibliotheken

Hier steht das Zugriffsmodell im Vordergrund.

Snapshots

Snapshots dienen der Wiederherstellung und Migration.

Sie ersetzen keine Backups.

Typische Einsatzgebiete:

  • Kurzfristige Sicherungen

  • Migrationen

  • Rollbacks

  • Wiederherstellungen

Backups

Backups sind unabhängig von der gewählten Storage-Technologie.

Die Speicherstrategie ersetzt keine Datensicherung.

Jede kritische Datenhaltung benötigt zusätzlich ein Backup-Konzept.

Architekturziele

Die Storage-Strategie verfolgt folgende Ziele:

  • Einfachheit

  • Hohe Performance

  • Gezielter Ressourceneinsatz

  • Reproduzierbarkeit

  • Gute Wiederherstellbarkeit

  • Vermeidung unnötiger Komplexität

Die gewählte Datenhaltung soll immer zum tatsächlichen Bedarf der Anwendung passen.