PoINT Storage Manager um S3 API erweitern

Der PoINT Storage Manager (PSM) ist eine dateibasierte Tiering- und Archivierungslösung und arbeitet mit den Standard-Protokollen SMB und NFS. In bestimmten Anwendungsszenarien ist es äußerst interessant, alle Vorteile des PSM auch über eine S3 API zur Verfügung zu stellen. Somit können bspw. über eine S3 API Zielspeicher wie Tape Libraries oder optische Systeme angesteuert werden. Gerade für Bestandskunden ist das ein interessanter Aspekt, um weitere Applikationen in eine zentrale Archivierungsplattform aufzunehmen. Um dies zu realisieren kann der PSM einfach um den Open Source Objektspeicher MinIO erweitert werden, d.h. PSM läuft im MinIO Backend.

Dieser Ansatz muss vom Produkt PoINT Archival Gateway abgegrenzt werden. PoINT Archival Gateway ist ein nativer Tape-basierter S3 Objektspeicher, der für sehr hohe Datenvolumen und Durchsätze ausgelegt ist und insbesondere auch Funktionen wie Erasure Coding unterstützt.

Der Namensursprung von MinIO liegt im Minimalismus, was sich in der einfachen Installation und Bedienung widerspiegelt. Mit nur wenigen PowerShell-Befehlen wird ein Verzeichnis für MinIO bereitgestellt, die eigentliche Software heruntergeladen und gestartet.

New-Item -Path c:\minio -ItemType directory

Invoke-WebRequest -Uri „https://dl.min.io/server/minio/release/windows-amd64/minio.exe“ -OutFile „C:\minio\minio.exe“

C:\minio\minio.exe server C:\minio\data –console-address localhost:9001

Anschließend können bereits erste S3 Requests mittels eines S3 Clients, wie der AWS CLI, an MinIO gesendet werden. Ebenso bietet MinIO mit der sog. Console eine Web GUI, die nachfolgend verwendet wurde, um exemplarisch die wichtigsten Konfigurationsschritte zu erläutern.

Anmeldung an der webbasierten MinIO Console:

Mit wenigen Angaben lässt sich ein S3 Bucket rasch anlegen.

Anschließend können Objekte im neuen Bucket abgelegt werden.

In dem von MinIO verwendeten File System spiegelt sich ein S3 Bucket als Ordner wider. In unserem Fall im Verzeichnis C:\minio\data\bucket-tape.

Damit die Objekte bspw. auf Tape abgelegt werden, wird nun im PoINT Storage Manager ein Storage Vault des Typs PoINT TAFS angelegt.

In der weiteren Konfiguration wird als Quelle das MinIO Data Verzeichnis ausgewählt.

Es sich empfiehlt sich, alle Daten zu archivieren, aber nur die eigentlichen Objekte durch Stubs zu ersetzen. Dies ist bei der Konfiguration des Regelwerks zu beachten. Somit bleiben alle Metadaten stets auf dem schnellen Festplattensystem. In unserem Beispiel fügen wir daher vor die Purge-Policy eine Skip-Policy, um den Inhalt des Ordners „.minio.sys“ vom Stubbing-Vorgang auszuschließen.

Hat man das gewünschte Archive Device, z.B. eine angeschlossene Tape Library, ausgewählt und die Storage Vault Konfiguration abgeschlossen, dann zeigen sich die Ergebnisse nach dem ersten Archivierungslauf: Die Objekte bzw. Dateien im Ordner, der den S3 Bucket über MinIO repräsentiert, wurden durch transparente und platzsparende Stubs ersetzt. Im Explorer ist dies einfach durch das leicht veränderte Icon zu erkennen.

Werden verlagerte Objekte über die S3 API oder MinIO GUI abgerufen, dann sorgt PSM für den transparenten Zugriff und stellt diese vom jeweiligen Archivspeicher für das MinIO File System wieder zur Verfügung.

In der Kombination mit MinIO kann alternativ zu einem PoINT TAFS Storage Vault, dessen Archivierungsvorgang per Zeitplan läuft, auch das PoINT Archive File System (PAFS) genutzt werden, das eine sofortige Archivierung neuer Objekte bietet.

Der schlanke Ansatz von MinIO ermöglicht eine schnelle und einfache Erweiterung des PoINT Storage Manager um ein S3 Interface. Besonders interessant ist diese Kombination, wenn die Archivierungsfunktionen vom PoINT Storage Manager gefragt sind oder Speichermedien verwendet werden, die in Objektspeichern eigentlich nicht angeboten werden, wie bspw. optische Libraries. Als Windows Service betrieben werden kann MinIO im Übrigen sehr leicht durch NSSM.