Open-Source Wikis

/

MinIO

/

Systems

minio/minio

Systems

The MinIO server is a single binary that contains many subsystems. This section covers the major internal building blocks. They are organised here as "systems" because most of them live inside cmd/ and don't map cleanly to either an external package boundary or a deployable unit.

The runtime is the only deployable: there is one minio binary that can run as a single-node server or as one node in a distributed cluster. The "applications" lens is therefore not used; instead, the systems below describe the moving parts inside that binary.

At a glance

graph TD
    HTTP[HTTP / API surface] --> OBJ[Object layer]
    OBJ --> EC[Erasure coding]
    OBJ --> META[Metacache & listing]
    OBJ --> LCK[Locking & DSync]
    OBJ --> SCAN[Data scanner]
    OBJ --> HEAL[Healing & MRF]
    OBJ --> REPL[Replication]
    OBJ --> ILM[Lifecycle / Tiering]
    HTTP --> IAM[IAM / STS]
    HTTP --> KMS[KMS / encryption]
    HTTP --> EVT[Events / Notifications]
    HTTP --> METRICS[Metrics & audit]
    OBJ --> NET[Peer / Storage RPC]
    NET --> GRID[Grid RPC]

Subsystems

Subsystem Brief Dedicated page
Object API & HTTP The S3 routing surface, request middleware, and response helpers. object-api-and-http
Erasure coding Server pools, sets, encode/decode, xl.meta, on-disk format. erasure
Distributed locking Namespace lock, DSync, lock REST. distributed-locking
Healing Per-object heal, background heal, MRF, new-disks heal. healing
Data scanner Background sweep that drives quotas, ILM, and heal hints. data-scanner
IAM and STS Users, groups, policies, identity providers, temporary credentials. iam
KMS and encryption SSE-S3, SSE-KMS, SSE-C wiring; KES integration. kms
Bucket replication Async per-bucket replication to S3-compatible targets. replication
Site replication Cluster-to-cluster mirror of buckets, IAM, lifecycle, encryption. site-replication
Lifecycle & tiering Bucket ILM, transitions to warm backends. lifecycle-and-tiering
Metacache & listing Streaming list-objects cache. metacache
Notifications Bucket event delivery to Kafka, NATS, MQTT, Webhook, ES, etc. notifications
Metrics, audit, and tracing Prometheus v2/v3, audit log, request tracing. metrics-and-audit
Batch jobs Bulk replicate / expire / key-rotate jobs run by the cluster. batch-jobs
FTP and SFTP Embedded FTP/FTPS and SFTP servers. ftp-and-sftp
Object Lambda Request-time transforms via external functions. object-lambda
Admin API Cluster admin REST surface used by mc admin. admin-api
Peer & Storage RPC Inter-node RPC layers (storage REST, peer REST, grid). peer-and-storage-rpc

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

Systems – MinIO wiki | Factory