Определите допустимую потерю данных и время восстановления, храните согласованную независимую копию и проверяйте восстановление фактического приложения в изоляции. Завершённое задание резервного копирования или проверка целостности сами по себе не доказывают, что присутствуют все зависимости, необходимые для восстановления.
Начните с нужного вам восстановления
План резервного копирования начинается с двух практических вопросов: сколько недавней работы вы могли бы потерять и как долго сервис мог бы оставаться недоступным? Эти ответы определяют расписание, включаемые данные и метод восстановления. Ежедневная копия может подойти редко изменяемому сайту, но оставить слишком большой пробел для загруженного приложения.
Перечислите всё, что обеспечивает работу сервиса, а не только его самую большую папку. Данные приложения, содержимое базы данных, конфигурация, загруженные файлы и информация, необходимая для воссоздания среды, — всё это может иметь значение. Ведите приватный перечень зависимостей и ключей восстановления. Резервная копия должна поддерживать работоспособную систему, а не просто создавать архив, назначение которого забыто.
Храните копию за пределами границы отказа
Второй каталог на той же машине может помочь восстановить ошибочное изменение, но он по-прежнему подвержен потере этой машины. Локальные снимки могут быть полезны для быстрого отката и всё же требуют независимой копии для более широких инцидентов. Выберите отдельное место восстановления и решите, какой доступ должен позволять читать, записывать или удалять резервную копию.
Если производственные учётные данные позволяют удалить каждую копию восстановления, скомпрометированная учётная запись приложения может свести на нет всю стратегию. По возможности разделите доступ и защитите учётные данные хранилища. Шифрование помогает защитить хранимое содержимое, но процесс восстановления также зависит от безопасного хранения его ключа вне повреждённой среды.
Зафиксируйте согласованное состояние приложения
Копирование открытых файлов базы данных без подходящего метода может зафиксировать непригодное к использованию состояние. Используйте подход к резервному копированию, поддерживаемый приложением или базой данных, и понимайте, требует ли он согласованного снимка, логического экспорта или кратковременной паузы в записи. Согласуйте связанные данные так, чтобы каталог загрузок и его ссылки в базе данных описывали одну и ту же точку рабочего процесса.
Документируйте исключения осознанно. Кэши и временные файлы сборки могут быть воспроизводимы; загрузки клиентов обычно нет. Пересматривайте список после добавления функции или перемещения каталога. Успешно выполненное задание резервного копирования не может сохранить путь, который никогда не был включён.
Проверьте восстановление в изолированной среде
Восстановите репрезентативные данные в отдельное место и убедитесь, что они корректно открываются. Для приложения проверьте как восстановленный сервис, так и файлы. Отключите исходящую электронную почту, запланированные задания и внешние интеграции в тестовой среде, чтобы репетиция не воздействовала на реальных пользователей и не дублировала производственные задачи.
Проверки целостности репозитория и тест восстановления отвечают на разные вопросы. Инструмент может проверить хранимые структуры и данные, тогда как приложению всё ещё может не хватать конфигурации или забытого ключа. Зафиксируйте, сколько времени занимает восстановление, какие ручные шаги требуются и где процедуру нужно улучшить. Повторяйте упражнение после значительных изменений.
Практический сценарий: отрепетируйте восстановление перед запуском
Рассмотрим приложение с базой данных, загрузками пользователей и небольшим набором приватных файлов конфигурации. Владелец создаёт перечень восстановления и выбирает метод согласованности, поддерживаемый базой данных. Отдельное место резервного копирования хранит необходимые копии, а ключ восстановления хранится вне производственной машины. Первый тест начинается с пустой изолированной среды, чтобы скрытые зависимости нельзя было позаимствовать у работающего сервера.
Владелец восстанавливает данные и конфигурацию, затем проверяет вход, репрезентативную запись и загруженный файл. Исходящая электронная почта, запланированные задания и внешние действия остаются отключёнными во время репетиции. Если база данных запускается, но путь загрузки или секрет отсутствует, тест выявил пробел, который успешное задание архивирования не обнаружило бы. Владелец исправляет перечень и повторяет затронутую проверку восстановления.
Наконец, владелец фиксирует время восстановления и ручные шаги. Расписание и политика хранения сравниваются с тем, сколько недавней работы может быть потеряно и как долго сервис может оставаться недоступным. Это решения, зависящие от конкретного проекта, а не гарантии, предоставляемые ярлыком хранилища. Проверенная процедура делает дополнительное резервное копирование или продукт хранения полезным как часть более широкой стратегии восстановления.
| Свидетельство восстановления | Что оно проверяет | Оставшийся вопрос |
|---|---|---|
| Задание резервного копирования выполнено | Задание сообщило об успехе | Были ли включены все необходимые пути? |
| Проверка целостности репозитория | Проверки хранимых структур или данных | Есть ли у приложения все зависимости? |
| Изолированное восстановление приложения | Репрезентативное восстановление работает | Соответствует ли наблюдаемое время вашей цели? |
Сделайте сбой видимым, а хранение — намеренным
Резервное копирование, которое молча останавливается, — это будущий сюрприз. Следите за завершением заданий, доступной ёмкостью и возрастом последней пригодной точки восстановления. Храните достаточно истории, чтобы восстановиться после проблемы, обнаруженной позже, и понимайте, как очистка влияет на эту историю. Внимательно проверяйте операции удаления, поскольку ошибки хранения могут удалить единственную полезную версию.
Изучите область действия любой опции резервного копирования на выбранном вами сервисе SwissOctet и подтвердите процесс восстановления. Vault Storage можно рассматривать как компонент ёмкости, но продукт хранения сам по себе не является полной политикой восстановления. Решите, что вам нужно восстановить, храните копию независимо и докажите работоспособность процедуры, прежде чем сервис станет критически важным.
Ваш практический чек-лист.
- Задайте допустимую потерю данных и время восстановления.
- Включите базы данных, загрузки и информацию для воссоздания.
- Храните независимую копию и отдельные ключи восстановления.
- Восстанавливайте в изоляции и тестируйте приложение.
- Следите за возрастом резервных копий, ёмкостью и хранением.
Детали, которые важны.
Является ли второй каталог на том же сервере независимой резервной копией?+
Нет. Он по-прежнему подвержен потере этого сервера, хотя может помочь восстановить локальную ошибку.
Заменяет ли проверка целостности репетицию восстановления?+
Нет. Действительный репозиторий всё ещё может не содержать конфигурацию, ключи или данные, необходимые приложению.
Почему во время теста восстановления отключают интеграции?+
Чтобы тестовая среда не отправляла письма реальным пользователям, не повторяла задания и не запускала производственные действия.
Перейдите к источнику.
Эти источники поддерживают технические концепции в этом руководстве. Следуйте актуальной документации, прежде чем менять производственную систему.
- restic: Восстановление из резервной копии restic.readthedocs.io
- restic: Работа с репозиториями restic.readthedocs.io
- PostgreSQL: Резервное копирование и восстановление www.postgresql.org
Редакционное руководство от SwissOctet. Примеры иллюстративны. Спецификации услуг, доступные опции и договорные условия необходимо проверять отдельно.