1. Общая информация
- Что именно нужно бэкапить?
- Типы бэкапов. Плюсы и минусы.
- Периодичность создания.
- Выбор хранилища.
2. Бэкапы БД и файлов
- Обзор инструментов.
- Источники данных для бэкапов.
- Неочевидные особенности создания/восстановления.
3. Проблемы организации резервного копирования
- Актуальность данных.
- Скорость восстановления.
- Надежность создания резервных копий.
4. Верификация бэкапов
- Тестовый стенд.
- Мониторинг процесса.
- Ручные проверки.
2. Кто я?
Антон Баранов
начальник отдела по работе с
клиентами в компании ITSumma
В прошлом - системный администратор Linux.
Более 7 лет опыта работы с Linux-системами и
web-проектами различной сложности.
Последние два года тружусь над обеспечением
стабильной работы highload-проектов для
посетителей со всего мира.
3. О нашей компании:
Работаем с 2008 года.
Офисы в Иркутске, Санкт-Петербурге
и Москве.
150+ клиентов на круглосуточной
поддержке.
90ТБ резервных копий.
5 оповещений о «сломавшихся»
бэкапах в сутки.
29. Синхронизация на резерв
• Файлы: lsyncd (без delete)
• БД: штатные средства репликации
(реплика не является бэкапом)
30. Бэкапы файлов
• Небольшой объем и количество файлов -
архивация и копирование
• Большой объем данных - rsync на бэкапный
сервер
(без delete, либо в /backup/YY-MM-DD)
34. Бэкапы БД
Трюки:
• отложенная репликация
pt-slave-delay или CHANGE MASTER TO
MASTER_DELAY
• репликация и резервирование бинлогов
35. Бэкапы конфигов
• Настройки, кроны, список установленных
пакетов, иногда - самосборное ПО
• Git в /etc + autocommit
• Системы управления конфигурациями
36. Неочевидные особенности бэкапов
• Процесс бэкапа БД не запускается
• Бэкапим не ту БД
• Бэкап с неактуального резерва
• Период бэкапа БД не выверен
• Процедура восстановления БД не отлажена
37. Неочевидные особенности бэкапов
• Восстанавливаем не той версией xtrabackup
• Нет места для распаковки
• ETA восстановления внезапно велико
• Апдейт ПО на сервере привел к
неработоспособности бэкапов
38. Неочевидные особенности бэкапов
• Архив битый
• Бэкап без статики
• Архив с картинками сжимается
• Бэкапы на том же сервере
• Конфиги сервера не бэкапятся
41. Тестовый стенд
• Пять виртуалок для проверки MySQL: 5.1,
5.5, 5.6, 5.7, MariaDB 10
• Скрипты для распаковки, apply-log
• Возможность создать виртуалку для
проверки всех бэкапов проекта (БД, файлы,
конфиги)
42. Мониторинг процесса
• Сервер во время создания (место на диске,
нагрузка, доступность проекта)
• Вывод логов бэкапных скриптов
(innobackupex: completed OK!)
• Размер созданных бэкапов
45. Ручные проверки
На стенде:
• Восстанавливаем БД
• Распаковываем файлы сайта
• Восстанавливаем конфиги
• Проверяем сайт в браузере
46. Надежный бэкап
• Содержит все необходимое для восстановления
с нуля
• Известны сроки восстановления и они
приемлемы
• Бэкап актуален
• Бэкап проверен
• Создается