MinIO: Object Storage Self-Hosted untuk Pipeline ML

# MinIO: Object Storage Self-Hosted untuk Pipeline ML MinIO adalah solusi object storage open-source yang kompatibel dengan Amazon S3 API. Dalam ekosistem machine learning, MinIO menjadi pilihan popu...

By Ruby Abdullah · · tutorial
MinIOObject StorageS3Data LakePython

MinIO: Object Storage Self-Hosted untuk Pipeline ML

MinIO adalah solusi object storage open-source yang kompatibel dengan Amazon S3 API. Dalam ekosistem machine learning, MinIO menjadi pilihan populer untuk menyimpan dataset, model artifacts, dan hasil eksperimen karena performanya yang tinggi, kemudahan deployment, dan kompatibilitas penuh dengan tools ML seperti MLflow, PyTorch, dan TensorFlow.

Artikel ini membahas cara menggunakan MinIO sebagai fondasi storage untuk pipeline ML, mulai dari instalasi hingga membangun sistem model registry dan dataset versioning.

Mengapa MinIO untuk ML?

Dalam workflow machine learning, kita sering berurusan dengan file berukuran besar: dataset gambar, model weights, checkpoint training, dan log eksperimen. Cloud object storage seperti Amazon S3 adalah solusi standar, namun biaya bisa membengkak dan ada ketergantungan pada vendor tertentu.

MinIO memberikan alternatif yang menarik:

  • S3-compatible: Semua tools yang mendukung S3 otomatis bisa bekerja dengan MinIO
  • Self-hosted: Data tetap di infrastruktur sendiri, cocok untuk regulasi data sovereignty
  • Performa tinggi: Dioptimalkan untuk throughput besar pada hardware modern
  • Gratis dan open-source: Tidak ada biaya lisensi untuk penggunaan komunitas

Instalasi MinIO

Instalasi dengan Docker

Cara termudah untuk memulai MinIO adalah menggunakan Docker:

docker run -d \

--name minio \

-p 9000:9000 \

-p 9001:9001 \

-v minio-data:/data \

-e "MINIOROOTUSER=minioadmin" \

-e "MINIOROOTPASSWORD=minioadmin123" \

quay.io/minio/minio server /data --console-address ":9001"

Untuk setup yang lebih terstruktur, gunakan Docker Compose:

version: '3.8'

services:

minio:

image: quay.io/minio/minio

containername: minio

ports:

  • "9000:9000"
  • "9001:9001"
environment:

MINIOROOTUSER: minioadmin

MINIOROOTPASSWORD: minioadmin123

volumes:

  • minio-data:/data
command: server /data --console-address ":9001"

healthcheck:

test: ["CMD", "mc", "ready", "local"]

interval: 30s

timeout: 20s

retries: 3

volumes:

minio-data:

Jalankan dengan:

docker-compose up -d

Instalasi Binary

Untuk instalasi langsung di server Linux:

wget https://dl.min.io/server/minio/release/linux-amd64/minio

chmod +x minio

sudo mv minio /usr/local/bin/

Buat direktori data

sudo mkdir -p /data/minio

Jalankan MinIO

MINIOROOTUSER=minioadmin MINIOROOTPASSWORD=minioadmin123 \

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

Untuk menjalankan MinIO sebagai systemd service:

[Unit]

Description=MinIO Object Storage

After=network.target

[Service]

Type=simple

User=minio-user

Group=minio-user

Environment="MINIOROOTUSER=minioadmin"

Environment="MINIOROOTPASSWORD=minioadmin123"

ExecStart=/usr/local/bin/minio server /data/minio --console-address ":9001"

Restart=always

RestartSec=5

[Install]

WantedBy=multi-user.target

sudo systemctl daemon-reload

sudo systemctl enable minio

sudo systemctl start minio

MinIO Console UI

Setelah MinIO berjalan, akses Console UI di http://localhost:9001. Console menyediakan antarmuka visual untuk:

  • Membuat dan mengelola bucket
  • Upload dan download objek
  • Mengatur access policies
  • Monitoring performa dan penggunaan storage
  • Mengkonfigurasi event notifications
  • Mengelola user dan group

Login dengan credentials yang sudah dikonfigurasi (default: minioadmin / minioadmin123).

Console UI sangat berguna untuk tim data science yang tidak terbiasa dengan command line. Mereka bisa langsung browse dataset, preview file, dan mengelola bucket tanpa perlu tools tambahan.

MinIO Client (mc)

MinIO menyediakan command-line tool mc untuk administrasi:

# Install mc

wget https://dl.min.io/client/mc/release/linux-amd64/mc

chmod +x mc

sudo mv mc /usr/local/bin/

Artikel Terkait

Tutorial LangChain: Framework Paling Populer untuk Membangun Aplikasi LLM

Tutorial LangChain: Framework Paling Populer untuk Membangun Aplikasi LLM LangChain adalah framework open-source yang di...

Tutorial Lengkap Google Gemini API dengan Python: Dari Dasar hingga Mahir

Tutorial Lengkap Google Gemini API dengan Python: Dari Dasar hingga Mahir Google Gemini API adalah salah satu API AI pal...

Tutorial LitServe: Framework Serving Model AI yang Cepat dan Mudah

Tutorial LitServe: Framework Serving Model AI yang Cepat dan Mudah Pendahuluan LitServe adalah framework open-source dar...

Tutorial ClearML: Platform MLOps Open-Source untuk Experiment Tracking dan Pipeline Automation

Tutorial ClearML: Platform MLOps Open-Source untuk Experiment Tracking dan Pipeline Automation ClearML adalah platform M...