Install and Deploy MinIO
MinIO is a software-defined high performance distributed object storage server. You can run MinIO on consumer or enterprise-grade hardware and a variety of operating systems and architectures.
MinIO supports three deployment topologies:
- Single-Node Single-Drive (SNSD or “Standalone”)
A single MinIO server with a single storage volume or folder. SNSD deployment provides failover protections. Drive-level reliability and failover depends on the underlying storage volume.
SNSD deployments are best suited for evaluation and initial development of applications using MinIO for object storage.
SNSD deployments implement a zero-parity erasure coding backend and include support for the following erasure-coding dependent features:
- Single-Node Multi-Drive (SNMD or “Standalone Multi-Drive”)
A single MinIO server with four or more storage volumes. SNMD deployments provide drive-level reliability and failover only.
- Multi-Node Multi-Drive (MNMD or “Distributed”)
Multiple MinIO servers with at least four drives across all servers. The distributed MNMD topology supports production-grade object storage with drive and node-level availability and resiliency.
Note
This documentation provides instructions for SNSD and SNMD for supporting local development and evaluation of MinIO on a single host machine only. For MNMD deployments, use the MinIO Kubernetes Operator to deploy and manage MinIO tenants in a containerized and orchestrated environment.
Site Replication
Site replication links multiple MinIO deployments together and keeps the buckets, objects, and Identity and Access Management (IAM) settings in sync across all connected sites.
Each MinIO deployment (“peer site”) synchronizes the following changes across the other peer sites:
Creation, modification, and deletion of buckets and objects, including
Bucket and Object Configurations
Locks, including retention and legal hold configurations
Creation and deletion of IAM users, groups, policies, and policy mappings to users or groups (for LDAP users or groups)
Creation of Security Token Service (STS) credentials for session tokens verifiable from the local
root
credentialsCreation and deletion of access keys (except those owned by the
root
user)
Site replication enables bucket versioning for all new and existing buckets on all replicated sites.
New in version mc: RELEASE.2023-12-02T02-03-28Z
You can choose to replicate ILM expiration rules across peer sites.
For new site replication configurations, use the mc admin replicate add
with the --replicate-ilm-expiry
flag.
For existing site replication configurations, you can enable or disable the behavior using mc admin replicate update
with either the --enable-ilm-expiry-replication
or --disable-ilm-expiry-replication
flag, as appropriate.
Important
MinIO does not recommend using Container hosts for site replication outside of early development, evaluation, or general experimentation. For production, use Kubernetes for an orchestrated container environment.
What Does Not Replicate?
Not everything replicates across sites.
MinIO deployments in a site replication configuration do not replicate the creation or modification of the following items:
Platform Support
MinIO provides container images at the following repositories:
Changed in version RELEASE.2022-12-02T19-19-22Z: These images include the MinIO Client command line tool built in for container-level debugging.
However, to regularly interact with a container MinIO install, install the MinIO Client on your computer and define an alias
to the container instead.
Use of MinIO images from any other repository, host, or organization is at your own risk.
The Single-Node Single-Drive and Single-Node Multi-Drive tutorials provide instructions for the Docker and Podman container managers.