Резервное копирование
Общая информация о данных системы
Система мониторинга использует три основных хранилища данных, каждое из которых содержит критически важную информацию:
PostgreSQL
Тип данных: Конфигурационные данные платформы
Содержимое:
Настройки агентов мониторинга
Конфигурация дашбордов
Пользовательские настройки и права доступа
Конфигурация алертов и уведомлений
Критичность: Высшая (без этих данных система не сможет функционировать)
VictoriaMetrics
Тип данных: Метрики временных рядов
Содержимое:
Сырые метрики, собираемые агентами
Вычисляемые метрики платформы
Состояния алертов и история срабатываний
Критичность: Высокая (потеря приведет к разрыву истории метрик)
ClickHouse
Тип данных: События и логи
Содержимое:
SNMP-трапы и системные события
Внешние события (вебхуки)
Пользовательские и системные логи
История действий пользователей
Критичность: Средняя (данные важны для аудита и анализа)
Стратегии резервного копирования
Общие принципы
Правило 3-2-1:
3 копии данных
2 разных типа носителей
1 копия вне площадки
Градуированное хранение:
Ежедневные бэкапы хранить 7 дней
Еженедельные - 1 месяц
Ежемесячные - 1 год
Специфические стратегии для каждого хранилища
Компонент |
Метод бэкапа |
Частота RPO (допустимая потеря) |
RTO (время восстановления) |
---|---|---|---|
PostgreSQL |
Полный + WAL |
Ежедневно 15 минут |
1-4 часа |
VictoriaMetrics |
Полные + инкрементальные |
Еженедельно 1 час |
4-8 часов |
ClickHouse |
Полные + репликация партиций |
Ежедневно 4 часа |
2-6 часов |
Важно
Доступно автоматическое создание бэкапа postgresql через инструмент rubackup.
Лучшие практики
Проверка бэкапов
Еженедельно: Проверять целостность случайного бэкапа
Ежеквартально: Полное тестовое восстановление на стенде
Мониторинг процесса бэкапирования
Настроить алерты на:
Пропущенные бэкапы
Ошибки при создании бэкапов
Заполнение хранилища бэкапов
Безопасность
Шифровать все бэкапы перед отправкой вне площадки
Использовать отдельные учетные записи с минимальными правами
Хранить учетные данные для бэкапов в секрет-менеджере
Оптимизация
Для больших БД использовать:
Инкрементальные бэкапы
Многопоточное сжатие
Дедупликацию данных
Процедура полного восстановления
Порядок восстановления:
Восстановить PostgreSQL (конфигурация платформы)
Восстановить VictoriaMetrics (метрики)
Восстановить ClickHouse (события и логи)
Временные метки:
Использовать одинаковую точку восстановления для всех компонентов
Для транзакционных данных между компонентами учитывать задержки репликации