Files
K3S/addons/velero/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.6 KiB
Raw Permalink Blame History

Velero

Резервное копирование и восстановление Kubernetes кластера и PVC. Сохраняет все ресурсы кластера (поды, сервисы, ConfigMap, PVC) и данные томов в S3/MinIO. Поддерживает расписание и TTL для автоматической очистки.

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

# group_vars/all/addons.yml
addon_velero: true
addon_minio: true   # S3 backend для бэкапов

velero_schedule_enabled: true
velero_schedule_cron: "0 2 * * *"   # ежедневно в 02:00
velero_schedule_ttl: "720h"          # хранить 30 дней

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

vault_velero_s3_access_key: "minioadmin"   # = vault_minio_root_user
vault_velero_s3_secret_key: "changeme"     # = vault_minio_root_password
make addon-velero

Параметры

Переменная Умолч. Описание
velero_s3_bucket velero Имя бакета MinIO
velero_s3_url MinIO internal S3 endpoint
velero_schedule_enabled true Автоматическое расписание
velero_schedule_cron 0 2 * * * Cron расписание
velero_schedule_ttl 720h TTL бэкапов

Velero CLI

# Установить CLI (на локальную машину)
brew install velero   # macOS
# или скачать с https://github.com/vmware-tanzu/velero/releases

# Настроить kubeconfig
export KUBECONFIG=$(pwd)/kubeconfig

# Статус
velero version
velero get backups
velero get schedules

Ручной бэкап

# Весь кластер
velero backup create my-backup

# Конкретный namespace
velero backup create my-app-backup --include-namespaces my-app

# С volume data
velero backup create full-backup --snapshot-volumes

# Статус бэкапа
velero backup describe my-backup
velero backup logs my-backup

Восстановление

# Список бэкапов
velero get backups

# Восстановить всё
velero restore create --from-backup my-backup

# Восстановить конкретный namespace
velero restore create --from-backup my-backup \
  --include-namespaces my-app

# Восстановить в другой namespace
velero restore create --from-backup my-backup \
  --namespace-mappings old-namespace:new-namespace

# Статус восстановления
velero restore describe <restore-name>

Расписание бэкапов

# Список расписаний
velero get schedules

# Запустить расписание вручную
velero backup create --from-schedule daily-backup

Исключить ресурсы из бэкапа

# Аннотация на namespace или ресурс:
metadata:
  annotations:
    velero.io/exclude-from-backup: "true"

Внешний S3 (не MinIO)

velero_s3_url: "https://s3.amazonaws.com"
velero_s3_bucket: "my-cluster-backups"
velero_s3_region: "us-east-1"
velero_s3_force_path_style: false

Диагностика

kubectl get pods -n velero
kubectl logs -n velero deployment/velero -f
velero backup describe my-backup --details

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