Installer RustFS avec Docker
RustFS

Installer RustFS avec Docker

Table des matières

GitHub - rustfs/rustfs: 🚀 High-performance distributed object storage for MinIO alternative.
🚀 High-performance distributed object storage for MinIO alternative. - rustfs/rustfs

Aujourd'hui nous allons parler de RustFS ! RustFS est une alternative à MinIO.

RustFS va vous permettre de créer très facilement un serveur Object storage, compatible avec le protocole S3. vous avez la possibilité de chiffrer toutes vos données.

Il convient aux scénarios d'IA/ML et de stockage de données massives, de big data, d'Internet, de stockage industriel et confidentiel.

Créez des buckets différents suivant le type de données :

Vous pourrez bien entendu monter le ou les bucket(s) sur votre instance Nextcloud, Filestash, dans les applications Docker qui supportent le montage S3 compatible, du style Palmr.

C'est puissant, rien à dire. Malgré que l'application soit encore en développement, et donc pas encore prête à être déployée en production (même si c'est vachement tentant), j'ai trouvé ça extrêmement facile à utiliser et stable. Si ce projet vous intéresse, n'hésitez surtout pas à le tester.


⚡ Caractéristiques

  • Haute performance : développé avec Rust, garantissant vitesse et efficacité.
  • Distributed Architecture : conception évolutive et tolérante aux pannes pour les déploiements à grande échelle.
  • Compatibilité S3 : intégration transparente avec les applications existantes compatibles S3.
  • Prise en charge des Data Lake : optimisé pour les charges de travail liées au big data et à l'IA.
  • Open source : sous licence Apache 2.0, encourageant les contributions de la communauté et la transparence.
  • Convivial : conçu dans un souci de simplicité, il est facile à déployer et à gérer.

💾 Installation

Prérequis

Avant de commencer, assurez-vous d’avoir :

  • Distribution Linux (Ubuntu, Debian, etc ...).
  • Docker installé.
  • Accès terminal.
  • Connexion internet.

Étapes d'installation

  1. Créez votre compose.yml dans le dossier ou vous comptez installer RustFS :
nano compose.yml
  1. Et collez ça dedans :
#version: '3.9'
services:
    rustfs:
        image: 'rustfs/rustfs:latest'
        environment:
            - RUSTFS_SERVER_DOMAINS=rustfs.mondomaine.com
            - RUSTFS_CONSOLE_ENABLE=true
            - RUSTFS_ACCESS_KEY=admin  
            - RUSTFS_SECRET_KEY=password
        volumes:
            - './data:/data'
        ports:
            - '9000:9000'
        container_name: rustfs
  • - RUSTFS_SERVER_DOMAINS=rustfs.mondomaine.com => Remplacez rustfs.mondomaine.com par votre domaine.
  • - RUSTFS_CONSOLE_ENABLE=true => Si vous souhaitez activer la console.
  • - RUSTFS_ACCESS_KEY=admin => Choisissez un clé d'accès pour votre administrateur. Ce qui correspond au login.
  • - RUSTFS_SECRET_KEY=password => Choisissez une clé d'accès pour votre administrateur. Ce qui correspond au mot de passe.
  1. On va déployer l'application :
docker compose up -d
  1. Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local et du port choisi, 9000 par défaut :
http://ip:9000/

ou votre domaine :

https://rustfs.mondomaine.com

👤 Première connexion

Maintenant que tout est prêt, votre instance est lancée et vous vous retrouvez sur la page de connexion :

  • 1 => Entrez l'access key, défini par vos soins dans le compose.
  • 2 => Entrez la secret key, définie par vos soins dans le compose.
  • 3 => Cliquez sur Login pour terminer.

Vous voici sur votre tableau de bord, qui lui, sera vide pour commencer :


🪣 Créer un bucket

Première chose à faire, créer un bucket. Vous pouvez en créer tant que vous voulez.

Cliquez sur Browser dans le menu latéral gauche, en suite sur + Create Bucket :

Remplissez les informations demandées :

  • 1 => Nommez votre bucket, évitez les majuscules et accents.
  • 2 => Cliquez sur Create pour terminer la création de votre bucket.

Il est bien présent et créé :

Quant on entre dans le bucket :

  • 1 => Créer un nouveau dossier.
  • 2 => Créer un nouveau fichier.
  • 3 => Envoyer fichier/dossier.

🔑 Créer un Access Keys

Quelque soit l'endroit où vous souhaitez monter ou connecter un bucket, il faudra des identifiants.

Dans le menu latéral gauche cliquez sur Access Keys, ensuite sur + Add Access Key :

Remplissez au minimum les trois informations suivantes :

  • 1 => Vous pouvez modifier l'Access Key, éventuellement mais elle est générée aléatoirement.
  • 2 => Vous pouvez modifier la Secret Key, éventuellement mais elle est générée aléatoirement.
  • 3 => Choisissez une date d'expiration.
  • Cliquez sur Submit.

Copiez précieusement des deux clés car jamais vous n'aurez l'occasion des les revoir :


📦 Monter son Object Storage

Nextcloud

Rendez-vous dans :

Ensuite dans :

Complétez les informations demandées :

  • 1 => Nommez le stockage externe.Indiquez le nom de votre bucket.
  • 2 => Indiquez le nom exacte de votre bucket.
  • 3 => Indiquez le nom d'hôte. Sans HTTPS.
  • 4 => Collez l'Access Key, la clé d'accès.
  • 5 => Collez la Secret Key, la clé secrète.
  • 6 => Décidez de qui aura accès au stockage.

⚠️ Cochez bien Accès par path.

Ce qui donne :

Validez avec en cliquant sur l'icône V. On est bon :

Maintenant retournons dans l'interface principale de Nextcloud, partie fichier, on retrouve bien note stockage :

On va entrer dedans et créer quelques dossiers :

Je les retrouve bien dans RUSTFS :

Filestash

Si vous ne connaissez pas Filestash, n'hésitez pas à faire un petit tour sur cet article pour éventuellement l'installer et l'utiliser.

Lorsque vous êtes sur la page de connexion, partie S3, remplissez ces 4 points :

  • 1 => Indiquez l'Access Key.
  • 2 => Indiquez la Secret Key.
  • 3 => Indiquez l'hôte, sans HTTPS.
  • 4 => Cliquez sur CONNEXION pour temriner.

💡Si vous ne voulez accéder qu'à un bucket en particulier, tapez / suivi du nom exacte du bucket.

Vous voici sur le tableau de bord de Filestash, on retrouve bien le contenu de notre Object Storage :

Libre à vous de remplir votre Object Storage comme bon vous semble, de créer/supprimer des fichiers/dossiers et de les partager.


📥 Créer un backup sur votre instance RustFS avec Kopia

Je vous invite à faire un tour sur l'application Kopia, de l'installer sur votre serveur ou votre PC où vous avez des données à sauver.

Se connecter à votre instance RustFs avec Kopia

Sélectionner Amazon S3 or COmpatible Storage :

Je vais remplir les informations demandées :

  • 1 => Le nom du bucket.
  • 2 => Le nom d'hôte. Sans HTTPS.
  • 3 => L'Access Key
  • 4 => La Secret Access key.
  • 5 => Cliquez sur Next afin que Kopia test la connection à votre instance RustFs.

Dernière étape, renseigner le nom d'utilisateur et le mot de passe du Repository.

  • 1 => Indiquez le mot de passe choisi pour le repository lorsque vous avez installé Kopia, vous le trouverez dans le compose, partie : KOPIA_PASSWORD: "xxxx"
  • 2 => Indiquez l'utilisateur choisi pour le repository lorsque vous avez installé Kopia, vous le trouverez dans le compose, partie : USER: "xxxxx"

Cliquez sur Connect To Repository pour être...

... connecté à votre repository :

Sauvegarder & restaurer ses données

Je vous invite à poursuivre sur le tutoriel sur Kopia qui est en raccord avec celui-ci, à partir de ce niveau :

Installer Kopia avec Docker
Tutoriel d’installation de Kopia, outil de sauvegarde/restauration open source rapide et sécurisé qui vous permet de créer des instantanés chiffrés.

zarev

->.<-
🐧 Passionné de self-hosting, je partage ce que je connais et me nourris des connaissances des bonnes âmes qui partagent avec moi. Soutenons l'utilisation des apps open source et leurs développeurs.

Vous pourriez aussi aimer