Piraeus Datastore

Piraeus Datastore stellt den persistenten Storage der Kubernetes-Plattform bereit.

Zweck

Piraeus wird als CSI Storage Provider betrieben.

Bereitgestellt werden:

  • Block Storage

  • CSI Snapshots

  • Volume Group Snapshots

  • Replizierter Storage mittels DRBD

  • RWX Volumes über NFS Exporte

Komponenten

Die Plattform verwendet folgende Komponenten:

  • Piraeus Operator

  • LINSTOR Controller

  • LINSTOR Satellites

  • LINSTOR CSI Driver

  • DRBD

  • High Availability Controller

Storage Klassen

linstor-local

Lokaler Block Storage ohne DRBD Replikation.

Eigenschaften:

  • Schnellste Storage Klasse

  • Kein Netzwerkverkehr für Replikation

  • Kein zusätzlicher Speicherverbrauch durch Replikate

Konfiguration:

autoPlace: 1
layerList: STORAGE

Einsatzgebiete:

  • Caches

  • Temporäre Daten

  • Anwendungen mit eigener Replikation

linstor-r01

Einzelnes Replica ohne DRBD Replikation.

Eigenschaften:

  • Keine Replikation

  • Kann als Grundlage für RWX Volumes dienen

  • NFS Export möglich

Typische Verwendung:

  • Woodpecker Runner Workspaces

  • Gemeinsame Dateisysteme

Konfiguration:

autoPlace: 1

linstor-r02

Synchron replizierter Block Storage auf zwei Nodes.

Eigenschaften:

  • DRBD Replikation

  • Schutz gegen den Ausfall eines Nodes

Konfiguration:

autoPlace: 2

linstor-r03

Synchron replizierter Block Storage auf drei Nodes.

Eigenschaften:

  • Maximale Datenverfügbarkeit

  • Drei vollständige Datenkopien

Konfiguration:

autoPlace: 3

Snapshots

Standard Snapshot Klasse:

linstor-snapshot1

Unterstützt:

  • CSI VolumeSnapshots

  • CSI VolumeGroupSnapshots

  • Velero Integration

RWX Volumes

Piraeus stellt primär Block Storage bereit.

ReadWriteMany Volumes werden über einen NFS Export auf Basis eines LINSTOR Volumes bereitgestellt.

Hierfür wird üblicherweise folgende Storage Klasse verwendet:

linstor-r01

Cluster Unterschiede

1 Node Cluster

Für Cluster die nur aus einem Node bestehen, wird natürlich keine Replikation benötigt. Da man aber dennoch RWX PVCs nutzen möchte, werden 2 Storageklassen definiert:

  • linstor-local

  • linstor-r01

Desweiteren wird der HA Controller nicht benötigt und wird deaktiviert