Installer et Configurer MinIO Facilement

Introduction à MinIO

Dans le monde du stockage objet, tout le monde connaît S3 d’Amazon. Mais quand il s’agit d’auto-héberger une solution open-source, légère et 100% compatible API S3, c’est le nom de MinIO qui revient partout.
Que tu sois admin sys, dev, ou juste bricoleur, déployer MinIO, c’est avoir une brique solide, performante et flexible, utilisable aussi bien en standalone que dans un cluster distribué, avec des perfs qui n’ont rien à envier aux gros du marché.


Pourquoi choisir MinIO ?


minio S3 API

Architecture MinIO et concepts clés

MinIO, c’est du stockage objet pur jus. L’API S3, c’est la référence. Quand tu déploies MinIO, toutes tes applis qui parlent S3 (backup, applications cloud-native, CI/CD…) marchent sans modif.


Prérequis pour déployer MinIO


Déploiement manuel de MinIO

Installation sur Ubuntu/Debian

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

Lancer MinIO en standalone

export MINIO_ROOT_USER="admin"
export MINIO_ROOT_PASSWORD="SuperSecret42"
minio server /data

Accède à l’UI web sur :
http://localhost:9000

Démarrage en tant que service systemd

Crée /etc/systemd/system/minio.service :

[Unit]
Description=MinIO
After=network.target

[Service]
User=minio
Group=minio
ExecStart=/usr/local/bin/minio server /data --console-address ":9001"
Environment="MINIO_ROOT_USER=admin"
Environment="MINIO_ROOT_PASSWORD=SuperSecret42"
Restart=always
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

Puis :

sudo systemctl daemon-reload
sudo systemctl enable --now minio

En cluster distribué

minio server http://minio{1...4}/data

(à adapter selon ton infra, voir la doc MinIO pour le vrai cluster prod)


Déploiement automatisé avec Ansible MinIO

Automatiser, c’est la base. Avec Ansible et le rôle ricsanfre.minio, tu déploies MinIO proprement, que ce soit en standalone ou en cluster distribué, le tout sans prise de tête.

Exemple de playbook Ansible pour MinIO

Structure du playbook :

---
- name: Déploiement de MinIO avec Ansible
hosts: minio_servers
become: true
roles:
- role: ricsanfre.minio
vars:
minio_server_mode: "standalone"
minio_version: "RELEASE.2024-06-18T21-35-28Z" # Optionnel : dernière version stable
minio_access_key: "admin"
minio_secret_key: "SuperSecret42"
minio_server_datadirs:
- "/data"
minio_console_port: 9001

Configuration avancée

Sécuriser MinIO avec HTTPS

Il te suffit de placer tes certs TLS dans /etc/minio/certs/ (certificat et clé), et MinIO bascule en HTTPS.
Pense à ouvrir le bon port (par défaut 9000 ou 9001 si modifié).

Gérer les utilisateurs et policies

Avec mc (MinIO Client) :

mc admin user add myminio alice S3cr3tPass
mc admin policy set myminio readwrite user=alice

Stockage distribué

Pour la résilience, MinIO tourne en mode distribué (erasure code). Ça permet de survivre à la perte de disques ou nodes.

minio server http://minio{1...4}/data

Exploitation quotidienne


Intégration avec d’autres outils


FAQ & erreurs courantes


Conclusion & ressources

Déployer MinIO te permet d’avoir une solution S3 prête à l’emploi, que tu sois en local ou dans le cloud, en mode solo ou distribué. Le tout open source, flexible, et bien adapté à l’écosystème Linux.

Pour aller plus loin :

Besoin d’aide ?

Si tu as besoin de mettre en place une app MinIO, tu peux nous contacter ici => page de contact.

Je mets à ta disposition mon expertise pour t’accompagner dans la gestion de ton infrastructure.

Le partage nous aide à nous faire connaître, merci pour ton partage 🫀

Quitter la version mobile