Ручной снимок позволяет сохранить текущее состояние встроенного хранилища Stronghold в файл и использовать его как резервную копию.

Перед началом

  • Убедитесь, что Stronghold использует встроенное Raft-хранилище.
  • Убедитесь, что Raft используется как основной бэкенд хранения, а не только как ha_storage.
  • Проверьте, что у вас есть административный доступ к кластеру.
  • Подготовьте безопасное место для хранения файла снимка вне production-контура.
  • Заранее убедитесь, что при необходимости сможете связаться с держателями unseal- или recovery-ключей.

Команда d8 stronghold operator raft snapshot save применима только к кластерам с интегрированным Raft-хранилищем. Если Stronghold использует etcd, PostgreSQL или другой внешний бэкенд, резервную копию нужно выполнять средствами самого хранилища.

Сохранение снимка через CLI

Для создания снимка используйте команду:

  • Stronghold в DKP
  • Stronghold в Linux
d8 stronghold operator raft snapshot save backup.snap
stronghold operator raft snapshot save backup.snap

В результате Stronghold сохранит снимок в локальный файл backup.snap.

После создания резервной копии рекомендуется выполнить проверку снимка, чтобы убедиться, что файл читается и содержит ожидаемую структуру данных.

Сохранение снимка через API

Для создания снимка через API используйте эндпоинт GET /sys/storage/raft/snapshot:

curl \
  --request GET \
  --header "X-Vault-Token: ${VAULT_TOKEN}" \
  "${VAULT_ADDR}/v1/sys/storage/raft/snapshot" > backup.snap

Рекомендации

  • Сохраняйте файл снимка в место, доступ к которому ограничен.
  • После создания снимка проверьте его с помощью команды d8 stronghold operator raft snapshot inspect. Обратитесь к разделу «Проверка снимка» за подробностями валидации резервной копии.
  • Для регулярного резервного копирования используйте автоматические снимки.
  • Если кластер участвует в схемах репликации, продумайте отдельную стратегию резервного копирования для каждого контура.