Kennisbank › Objectopslag › Ce que fait MinIO
objectopslag starter 08 September 2026

Ce que fait MinIO

MinIO est un stockage objet qui parle l'API S3 d'Amazon, mais qui tourne sur votre propre matériel. Cet article explique ce qu'est MinIO, comment vous l'installez et pourquoi vous

MinIO est un stockage d'objets qui parle l'API S3 d'Amazon, mais qui tourne sur votre propre matériel. Cet article explique ce qu'est MinIO, comment le configurer et pourquoi vous en voudriez — pour ceux qui n'ont pas envie d'un fournisseur cloud qui augmente ses prix une fois que vos données y sont.

Prérequis

  • Un serveur Linux (Ubuntu 22.04 ou plus récent, Debian 12, ou une autre distribution avec systemd)
  • MinIO Server `RELEASE.2025-04-22T22-12-26Z` ou plus récent
  • MinIO Client (`mc`) — binaire séparé, pas besoin de gestionnaire de paquets
  • Un port libre (par défaut `9000` pour l'API, `9001` pour l'interface web)
  • Accès root ou sudo

Ce que fait MinIO

MinIO stocke les données comme des objets, pas comme des fichiers dans des dossiers. Chaque objet a un identifiant unique, des métadonnées et les données elles-mêmes. Ce modèle évolue horizontalement : si vous voulez plus d'espace, vous ajoutez un nœud au lieu de remplacer un disque.

Le cœur, c'est la compatibilité S3. Parce que MinIO parle la même API qu'Amazon S3, les outils S3 existants, les SDK et les scripts fonctionnent sans modifications. C'est la raison pour laquelle MinIO est utilisé par des millions d'utilisateurs en 2025 — d'un développeur avec un seul disque jusqu'à des clusters qui alimentent des charges de travail IA/ML.

Les fondateurs — Anand Babu Periasamy, Garima Kapoor et Harshavardhana — ont lancé le projet en novembre 2014 depuis Palo Alto. L'entreprise, MinIO, Inc., est maintenant basée à Redwood City et a levé des fonds auprès d'Intel Capital, SoftBank Vision Fund 2 et Dell Technologies Capital, entre autres. Ces noms ne comptent pas beaucoup pour vous, sauf pour ceci : MinIO ne sera pas arrêté du jour au lendemain.

Pourquoi ne pas simplement utiliser S3

La question est légitime. Amazon S3 est un excellent produit avec un prix par gigaoctet extrêmement bas. Ce qui n'est pas bas, ce sont les coûts de sortie — ce que vous payez pour récupérer vos données. Et une fois que vos données sont dans un bucket, partir est une opération que vous préférez éviter.

MinIO tourne sur du matériel que vous contrôlez. Pas de verrouillage fournisseur, pas de datacenter qui décide ce que coûte votre stockage. L'inconvénient : vous êtes responsable des sauvegardes, des mises à jour et de la disponibilité. L'auto-hébergement semble magnifique, jusqu'à ce que quelque chose tombe en panne un dimanche soir à vingt-trois heures trente. Là, vous n'êtes pas un client qui attend au service d'assistance. Vous êtes le service d'assistance.

Étape 1 : Installer MinIO Server

Téléchargez le binaire et placez-le à un endroit dans votre `PATH`. MinIO ne fournit pas de dépôt de paquets pour toutes les distributions, donc vous le récupérez directement depuis la page de téléchargements.

wget https://dl.min.io/server/minio/release/linux-amd64/minio
chmod +x minio
sudo mv minio /usr/local/bin/

Vérifiez que le binaire fonctionne :

minio --version

Vous devriez voir un numéro de version qui commence par `RELEASE.2025-`. S'il n'y a rien, vous avez téléchargé le mauvais binaire ou il manque une dépendance.

Étape 2 : Créer le répertoire de stockage

MinIO stocke les objets dans un répertoire que vous spécifiez au démarrage. Créez un répertoire dédié, pas votre répertoire personnel :

sudo mkdir -p /data/minio
sudo useradd -r minio-user -s /sbin/nologin
sudo chown -R minio-user:minio-user /data/minio

L'utilisateur dédié n'est pas une formalité. MinIO tourne en root si vous ne l'empêchez pas, et vous ne voulez pas ça pour un service accessible sur le réseau.

Étape 3 : Démarrer le serveur

La façon la plus simple de démarrer MinIO est directement depuis la ligne de commande :

minio server /data/minio --address ":9000" --console-address ":9001"

La première fois, MinIO génère un utilisateur root et un mot de passe et les affiche dans le terminal. Notez-les — vous en aurez besoin pour l'interface web et le client.

Pour un environnement de production, vous voudrez le faire tourner comme service systemd. Créez `/etc/systemd/system/minio.service` avec ce contenu :

[Unit]
Description=MinIO Object Storage
After=network.target</p><p>[Service]
User=minio-user
Group=minio-user
ExecStart=/usr/local/bin/minio server /data/minio --address ":9000" --console-address ":9001"
Restart=always
LimitNOFILE=65536</p><p>[Install]
WantedBy=multi-user.target

Ensuite, activez le service :

sudo systemctl daemon-reload
sudo systemctl enable minio
sudo systemctl start minio

Étape 4 : Installer le client

Le MinIO Client (`mc`) est un binaire séparé. C'est une interface en ligne de commande qui fonctionne non seulement avec MinIO, mais avec n'importe quel service compatible S3 — AWS S3, Cloudflare R2, etc.

wget https://dl.min.io/client/mc/release/linux-amd64/mc
chmod +x mc
sudo mv mc /usr/local/bin/

Vérifiez :

mc --version

Étape 5 : Configurer la connexion

Avant que `mc` puisse faire quoi que ce soit, il doit savoir où se trouve votre serveur et avec quelles identifiants. La commande `alias set` enregistre cette connexion dans le fichier de configuration de `mc` :

mc alias set monminio http://localhost:9000 MON_UTILISATEUR_ROOT MON_MOT_DE_PASSE_ROOT

Remplacez `MON_UTILISATEUR_ROOT` et `MON_MOT_DE_PASSE_ROOT` par les identifiants que MinIO a générés au premier démarrage. Si le serveur est sur une autre machine, remplacez `localhost` par l'adresse IP ou le nom d'hôte.

Étape 6 : Créer un bucket et tester

Un bucket est le conteneur dans lequel vivent les objets. Créez-en un avec `mc` :

mc mb monminio/testbucket

Téléversez un fichier :

mc cp /etc/hostname monminio/testbucket/

Listez le contenu du bucket :

mc ls monminio/testbucket

Vous devriez voir `hostname` dans la sortie. Cela signifie que toute la chaîne fonctionne : client → API → serveur → disque.

Étape 7 : Accès via l'interface web

L'interface web de MinIO tourne sur le port `9001`. Ouvrez dans votre navigateur :

http://localhost:9001

Connectez-vous avec les mêmes identifiants root. L'interface propose la gestion des buckets, les politiques d'accès et un explorateur d'objets. Pour l'administration quotidienne, `mc` est plus rapide, mais l'interface web est pratique pour ceux qui n'ont pas de terminal sous la main.

Étape 8 : Configurer la politique d'accès (optionnel)

Partager les identifiants root pour chaque application est une mauvaise idée. Créez un utilisateur séparé avec des droits limités :

mc admin user add mijnminio appuser eenlangwachtwoord
mc admin policy attach mijnminio readwrite --user appuser

La politique `readwrite` donne un accès complet à tous les buckets. Si vous voulez un utilisateur qui ne peut accéder qu'à un seul bucket, vous devez écrire une politique personnalisée. Cela prend du temps, mais cela évite qu'une application compromise puisse effacer tout votre stockage.

Vérification

Vérifiez que tout fonctionne avec quelques commandes :

mc ls mijnminio
mc admin info mijnminio

`mc ls` affiche vos buckets. `mc admin info` affiche l'état du serveur — combien de disques sont actifs, combien d'espace est libre, et s'il y a des problèmes. Les deux commandes doivent revenir sans message d'erreur.

Problèmes fréquents

MinIO ne démarre pas et signale un conflit de port. Le port `9000` ou `9001` est déjà occupé. Vérifiez avec `sudo ss -tulpn | grep 9000` quel processus utilise le port, et choisissez un autre port dans votre unité systemd ou votre ligne de commande.

`mc` ne peut pas se connecter au serveur. Le serveur écoute peut-être uniquement sur `localhost`. Vérifiez que MinIO tourne avec `sudo systemctl status minio`, et que le pare-feu ouvre le port `9000` : `sudo ufw allow 9000`. Si MinIO est sur une autre machine, vérifiez que le serveur écoute sur toutes les interfaces — le drapeau `--address ":9000"` le fait par défaut.

Mot de passe root perdu. MinIO stocke les identifiants dans le répertoire de configuration que vous avez spécifié au démarrage. Arrêtez le service, déplacez le répertoire de configuration et redémarrez — MinIO générera alors de nouveaux identifiants. Vos objets existants sont conservés, mais toutes les politiques d'accès que vous aviez définies sont perdues.

Ce pour quoi MinIO n'est pas fait

MinIO ne remplace pas votre système de fichiers. Ce n'est pas un partage NFS ou SMB sur lequel vos applications peuvent écrire directement. Le stockage d'objets a une API différente, des caractéristiques de latence différentes et un modèle de cohérence différent.

Ce que MinIO est vraiment : une couche de stockage compatible S3 pour les applications conçues pour cela. Le serveur Ente l'utilise pour stocker des photos chiffrées. Docker Buildx peut y déposer ses caches de build pour des pipelines CI/CD plus rapides. Des clients graphiques comme Crabdrop et S3Drive vous offrent un gestionnaire de fichiers au-dessus de l'API S3.

La limite est claire. Pour les charges de travail S3 existantes que vous voulez ramener sur votre propre matériel, MinIO est l'une des rares options open source matures. Pour ceux qui veulent simplement partager un dossier sur le réseau, il existe de meilleurs outils.

La question n'est pas de savoir si MinIO est bon. La question est de savoir si vous voulez gérer l'exploitation autour.

← Retour à la base de connaissances
← Terug naar kennisbank