Module: MINIO

Pigsty has built-in MinIO support, an open-source S3-compatible object storage that can be used for PGSQL cold backup storage.

MinIO is an S3-compatible multi-cloud object storage software, open-sourced under the AGPLv3 license.

MinIO can be used to store documents, images, videos, and backups. Pigsty natively supports deploying various MinIO clusters with native multi-node multi-disk high availability support, easy to scale, secure, and ready to use out of the box. It has been used in production environments at 10PB+ scale.

MinIO is an optional module in Pigsty. You can use MinIO as an optional storage repository for PostgreSQL backups, supplementing the default local POSIX filesystem repository. If using the MinIO backup repository, the MINIO module should be installed before any PGSQL modules. MinIO requires a trusted CA certificate to work, so it depends on the NODE module.


Quick Start

Here’s a simple example of MinIO single-node single-disk deployment:

# Define MinIO cluster in the config inventory
minio: { hosts: { 10.10.10.10: { minio_seq: 1 } }, vars: { minio_cluster: minio } }
./minio.yml -l minio    # Deploy MinIO module on the minio group

After deployment, you can access MinIO via:

  • S3 API: https://sss.pigsty:9000 (requires DNS resolution for the domain)
  • Web Console: https://<minio-ip>:9001 (default username/password: minioadmin / S3User.MinIO)
  • Command Line: mcli ls sss/ (alias pre-configured on the admin node)

Deployment Modes

MinIO supports three major deployment modes:

ModeDescriptionUse Cases
Single-Node Single-Disk (SNSD)Single node, single data directoryDevelopment, testing, demo
Single-Node Multi-Disk (SNMD)Single node, multiple disksResource-constrained small-scale deployments
Multi-Node Multi-Disk (MNMD)Multiple nodes, multiple disks per nodeRecommended for production

Additionally, you can use multi-pool deployment to scale existing clusters, or deploy multiple clusters.


Key Features

  • S3 Compatible: Fully compatible with AWS S3 API, seamlessly integrates with various S3 clients and tools
  • High Availability: Native support for multi-node multi-disk deployment, tolerates node and disk failures
  • Secure: HTTPS encrypted transmission enabled by default, supports server-side encryption
  • Monitoring: Out-of-the-box Grafana dashboards and Prometheus alerting rules
  • Easy to Use: Pre-configured mcli client alias, one-click deployment and management

Usage

Getting started: how to use MinIO? How to reliably access MinIO? How to use mc / rclone client tools?

Configuration

Choose the appropriate MinIO deployment type based on your requirements and provide reliable access.

Parameters

MinIO module provides 21 configuration parameters for customizing your MinIO cluster.

Playbook

Manage MinIO clusters with Ansible playbooks and quick command reference.

Administration

MinIO cluster management SOP: create, destroy, expand, shrink, and handle node and disk failures.

Monitoring

How to monitor MinIO in Pigsty? How to use MinIO’s built-in console? What alerting rules are worth noting?

Metrics

Complete list of monitoring metrics provided by the Pigsty MINIO module with explanations

FAQ

Frequently asked questions about the Pigsty MINIO object storage module


Last Modified 2026-01-09: add supabase asciinema demo (693cfa8)