• Sicherheitsmaßnahme! Bitte ändere dein Forum-Passwort. Siehe Beitrag
  • Hardwareluxx führt derzeit die Hardware-Umfrage 2026 (mit Gewinnspiel) durch und bittet um eure Stimme. Unter allen Teilnehmern verlosen wir eine aktuelle Grafikkarte Eurer Wahl bis 1099 EUR.

[Guide] RustFS - S3 Cloud Storage

gea

Legende
Thread Starter
Mitglied seit
16.11.2010
Beiträge
6.490
Wofür
Die beste Methode, Speicher ins Internet zu stellen, egal ob Cloudanbieter oder privates Filesharing/Backup ist S3 Object Storage. Bisher hieß der führende OpenSource S3 Server minIO. MinIO ist tot (Opensource Entwicklung eingestellt, jetzt nur kommerziell). Als 1:1 minIO Ersatz gewinnt RustFS rasant an Bedeutung unter einer viel offeneneren Lizenz als minIO.

Vorteile S3
Object Storage wurde entwickelt, um sehr viele Dateien redundant und hochverfügbar ins Internet zu stellen. Die Performance bei 100M Dateien ist kaum schlechter als bei 1M Dateien. Auf jede Datei kann über eine authentifizierte http(s) Url zugegriffen werden. Server wie RustFS können Clusterbetrieb, bei der Dateien über mehrere Server geteilt werden, quasi Raid über Server statt Platten. Mit einem Load Balancer merkt ein Nutzer nichts von einem Serverausfall.

Nachteile S3
S3 kennt kein Filelocking für gleichzeitige Nutzung mehrerer User und keine File ACL, lediglich Authentifizierung auf Server oder Bucket Ebene. Buckets erscheinen wie Ordner bei normalen Dateisystemen, sind aber lediglich Strukturelemente. Die Nutzung von S3 geht damit rein über Upload/Download/Dateiversionen.

S3 + SMB
Es ist damit nicht möglich, z.B. ein SMB Share mit den lokalen Arbeitsdaten direkt per S3 ins Internet zu stellen. Mit einem bidirektionellen eventgesteuerten sync service wie napp-it cs-sync der vererbbare Folder ACL nutzt, ist es aber möglich ein S3 Share und ein SMB Share identisch zu halten. Ein S3 Upload erscheint sofort im SMB Share und ein per SMB gespeichertes Dokument ist sofort per S3 z.B. in der Webconsole sichtbar.

Aufbau
Moderne Internet Tools wie S3 Server, S3 Management Tools wie rc oder S3 Clients wie rclone oder restic werden in Go oder Rust erstellt. Es sind single binary Programme, damit haben sie keine OS Abhängigkeiten (copy and run) und sind extrem leicht wartbar. Ein Update ist ein Austausch einer einzigen Datei.

Installation
Für gängige Betriebssysteme kann man die Binaries herunterladen, für andere z.B. Unix selbst bauen, z.B. OmniOS:

Bei napp-it cs sind die Binaries z.B. für OmniOS direkt verfügbar

Start
RustFS wird entweder über eine Loader App (Windows) oder normalerweise ein Script (.bat/.sh) gestartet

Code:
 1. Download or build binaries

 2. Create data directory:
    mkdir -p /data/rustfs

 3. Start RustFS (background):
    RUSTFS_ACCESS_KEY=rustfsadmin \
    RUSTFS_SECRET_KEY=rustfsadmin \
    RUSTFS_VOLUMES=/data/rustfs \
    RUSTFS_ADDRESS=:9000 \
    RUSTFS_CONSOLE_ENABLE=true \
    RUSTFS_CONSOLE_ADDRESS=:9001 \
    RUST_LOG=error \
    /root/rustfs/target/release/rustfs server > /tmp/rustfs.log 2>&1 &

 4. Web Console:
    http://<ip>:9001/rustfs/console/index.html
    Login: rustfsadmin / rustfsadmin

 5. S3 API endpoint:
    http://<ip>:9000

Zuriff auf S3
Für den Zugriff auf S3 wird im Client (Duplicati, rclone, restic, Proxmox PBS, RustFS webconsole etc) lediglich ein Name+PW benötigt.
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh