Files
K3S/addons/minio/README.md
Sergey Antropoff 38aaadbfb1 docs: sync addon docs with explicit external/internal service modes
Обновлена документация под новые аддоны (gitlab, redis, mongodb, kafka, kafka-ui, rabbitmq) и новую модель явного выбора зависимостей. Добавлены и унифицированы описания переключателей *_database_mode и *_redis_mode, обновлена таблица зависимостей аддонов, примеры конфигурации и список vault-секретов.
2026-04-29 23:21:04 +03:00

3.2 KiB
Raw Permalink Blame History

MinIO

S3-совместимое объектное хранилище. Используется как backend для Loki, Velero, CSI S3 Driver и других аддонов. Поддерживает standalone и distributed режим.

Быстрый старт

# group_vars/all/addons.yml
addon_minio: true

Секреты в vault.yml:

vault_minio_root_user: "admin"
vault_minio_root_password: "secure-password-min-8-chars"
make addon-minio

Параметры

Переменная Умолч. Описание
minio_mode distributed standalone | distributed
minio_replicas 4 Реплик (мин. 4 для distributed)
minio_storage_size 10Gi PVC на каждую реплику
minio_ingress_enabled false Console + API через Ingress

Режим standalone (одна нода)

minio_mode: "standalone"
minio_replicas: 1
minio_storage_size: "50Gi"

Включить Ingress

minio_ingress_enabled: true
minio_console_ingress_host: "minio.example.com"
minio_api_ingress_host: "s3.example.com"
minio_ingress_tls: true

Использование из приложений

# Переменные окружения:
env:
  - name: MINIO_ENDPOINT
    value: "minio.minio.svc.cluster.local:9000"
  - name: MINIO_ACCESS_KEY
    valueFrom:
      secretKeyRef:
        name: minio-credentials
        key: access-key
  - name: MINIO_SECRET_KEY
    valueFrom:
      secretKeyRef:
        name: minio-credentials
        key: secret-key

MinIO Client (mc) — управление

# Установить mc
kubectl run minio-client --image=minio/mc --rm -it -- bash

# Настроить endpoint
mc alias set myminio http://minio.minio.svc.cluster.local:9000 admin password

# Операции с бакетами
mc mb myminio/my-bucket
mc ls myminio/
mc cp myfile.txt myminio/my-bucket/
mc policy set public myminio/public-bucket

SDK пример (Python)

from minio import Minio

client = Minio(
    "minio.minio.svc.cluster.local:9000",
    access_key="admin",
    secret_key="password",
    secure=False
)

# Загрузить файл
client.fput_object("my-bucket", "object-name", "/path/to/file")

# Скачать файл
client.fget_object("my-bucket", "object-name", "/tmp/downloaded")

# Список объектов
for obj in client.list_objects("my-bucket", recursive=True):
    print(obj.object_name)

Интеграция с другими аддонами

MinIO автоматически используется при включении:

  • addon_loki: true — S3 backend для логов
  • addon_velero: true — S3 backend для бэкапов кластера
  • addon_csi_s3: true — S3 как PVC
  • addon_databasus: true — S3 для бэкапов БД

Официальные ресурсы