Перейти к содержимому
К
  • Главная
  • Блог
  • Снапшот VPS и бэкап: в чём разница и почему нужн...
VPS

Снапшот VPS и бэкап: в чём разница и почему нужны оба

Снапшот — это мгновенный снимок всего диска сервера, который хранится у того же хостера и позволяет за минуту откатить VPS целиком. Бэкап — копия данных, которая лежит отдельно от сервера и из которой можно достать хоть один файл. Снапшот страхует от собственных ошибок при обновлениях, бэкап — от взлома, аварии и потери самого сервера, поэтому нужны оба. Ниже — таблица сравнения, что именно копировать на VPS, настройка за час и типичные ошибки.

«У нас есть бэкапы — хостер делает снапшоты». Эту фразу мы слышим от владельцев VPS постоянно, и почти всегда за ней следует неприятное открытие. Снапшот и бэкап — разные вещи, и они спасают от разных бед. Один без другого — половина защиты.

Что такое снапшот VPS

Снапшот — это снимок состояния диска сервера в конкретный момент. Делается за секунды, лежит рядом с самим сервером у хостера. Откатиться к нему — минута: сервер вернётся в точности в то состояние, в котором был при снимке.

Для чего он хорош: перед обновлением системы или крупными правками. Сделали снимок, обновили, что-то сломалось — откатились. Это страховка от собственных действий.

В чём его слабость. Снапшот хранится там же, где сервер, и на том же оборудовании. Авария дисков в дата-центре, ошибка хостера, блокировка аккаунта — и снимок пропадает вместе с сервером. Второе: откат снапшота возвращает весь сервер целиком. Если вы удалили один файл неделю назад, откат к старому снимку уничтожит заказы и правки за всю неделю.

Что такое бэкап VPS

Бэкап — это копия ваших данных, файлов и базы, которая лежит отдельно от сервера: в облачном хранилище, на другом сервере, в крайнем случае на вашем компьютере. Из него можно достать один файл или одну таблицу, не трогая всё остальное.

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

Реальный случай: у клиента взломали VPS и зашифровали данные, требуя выкуп. Снапшоты хостера тоже пострадали, потому что злоумышленник получил доступ к панели. Спасла ежедневная копия базы, которую мы выгружали в отдельное хранилище с ключом, к панели хостера не привязанным. Магазин восстановили за три часа, потеряв полдня заказов.

У хостеров встречается и третья услуга — автоматические бэкапы сервера по расписанию. Это копии всего диска, которые провайдер хранит отдельно от самого сервера. Они надёжнее снапшота, но остаются в том же аккаунте и у той же компании, поэтому независимую копию данных не заменяют.

Снапшот и бэкап: сравнение

КритерийСнапшотБэкап
Что сохраняетВесь диск сервера целикомВыбранные данные: база, файлы, настройки
Где хранитсяУ хостера, рядом с серверомВ отдельном хранилище, не связанном с сервером
Скорость созданияСекунды или минутыОт минут до часов — зависит от объёма
Скорость восстановленияМинуты, откат всего сервераДольше: нужно развернуть данные на сервере
Можно ли достать один файлНет, только откат целикомДа
Глубина храненияОбычно один или несколько последних снимковСколько настроите: дни, недели, месяцы
Переживёт аварию или блокировку у хостераНетДа
Переживёт взлом панели хостераНе всегдаДа, если доступ к хранилищу отдельный
Главное назначениеБыстрый откат после неудачных измененийВосстановление после потери сервера или данных

Что спасёт в какой ситуации

СитуацияСнапшотБэкап
Обновление системы или сайта сломало серверДа, откат за минутуДа, но дольше
Случайно удалили папку час назадДа, если есть свежий снимок и не жалко изменений после негоДа, можно вернуть только эту папку
Нужен файл или запись из базы месячной давностиНетДа, если копии хранятся месяц
Сервер взломали, данные зашифрованыНе всегда: снимки могут пострадатьДа
Авария в дата-центре, диск сервера потерянНетДа
Хостер заблокировал аккаунт или прекратил работуНетДа
Нужно переехать к другому провайдеруНет, снимок привязан к хостеруДа

Что именно копировать на VPS

На виртуальном хостинге копии обычно делает хостер, а вы жмёте кнопку «восстановить». На VPS за данные отвечаете вы сами: без настроенного копирования его просто нет. Общие принципы — что, куда и как часто — мы разобрали в статье про резервное копирование сайта. Здесь — то, что относится именно к серверу.

  • База данных. Копируют не файлы базы с диска, а выгрузку — дамп. Он получается целостным, даже если база в этот момент работает.
  • Файлы сайта и загруженное пользователями. Код проекта обычно есть в репозитории, а вот картинки товаров, документы и вложения существуют только на сервере.
  • Настройки сервера. Конфигурация веб-сервера, параметры PHP и базы, задания планировщика. Без них восстановление превращается в настройку с нуля по памяти.
  • Файлы с ключами и паролями проекта. Их нет в репозитории, и о них вспоминают последними. Хранить такую копию нужно в зашифрованном виде.
  • Данные контейнеров. Если сайт работает в Docker, копируют тома с данными и файлы описания проекта, а не сами контейнеры. Подробнее — в статье про Docker на VPS.
  • Почта и прочие сервисы. Если на том же сервере живут почтовые ящики или другие программы с данными, они тоже входят в список.

Правило 3-2-1 для сервера

Классическая формула резервного копирования: три копии данных, на двух разных типах носителей, одна из них — в другом физическом месте. Для небольшого бизнеса это переводится так:

  • Рабочие данные на самом сервере — раз.
  • Снапшоты у хостера для быстрого отката — два.
  • Автоматический бэкап в стороннее хранилище — три, и оно же в другом месте.

Как настроить резервное копирование VPS за час

  1. Включите автоматические снапшоты у хостера, если он их предлагает: обычно раз в сутки, хранение неделю.
  2. Настройте ежедневный дамп базы данных и архив папки с загруженными файлами.
  3. Отправляйте их в облачное хранилище с отдельным доступом: S3-совместимое хранилище российских провайдеров стоит копейки за десятки гигабайт.
  4. Дайте серверу ключ, которым можно только добавлять копии в хранилище, но не удалять их. Тогда взломщик, получивший сервер, не сотрёт архивы.
  5. Храните минимум 7 ежедневных и 4 еженедельные копии: проблему часто замечают не сразу.
  6. Настройте уведомление о результате: письмо или сообщение в мессенджер, если копирование не выполнилось.
  7. Раз в квартал восстанавливайте бэкап на тестовый сервер. Непроверенный бэкап — это надежда, а не защита.

Последний пункт игнорируют чаще всего. Мы встречали архивы, которые аккуратно создавались год, а внутри оказывались пустыми: скрипт сломался после обновления, ошибку никто не читал.

Если на сервере стоит панель управления, часть этих шагов делается в её интерфейсе: у популярных панелей есть встроенное резервное копирование с отправкой во внешнее хранилище. Какие панели бывают, мы сравнивали в статье про панель управления сервером.

Когда делать снапшот вручную

Автоматический снимок раз в сутки — фон. А перед любым рискованным действием стоит сделать снимок руками — это занимает минуту.

  • Перед обновлением операционной системы, PHP, базы данных или панели управления.
  • Перед обновлением сайта, установкой модулей, крупными правками кода.
  • Перед изменением настроек веб-сервера или файрвола.
  • Перед экспериментами, в исходе которых вы не уверены.

Нюанс: снимок работающего сервера фиксирует диск в том виде, какой он есть в эту секунду, — примерно как при внезапном отключении питания. Обычно сервер после отката поднимается нормально, но для надёжности снимок лучше делать в момент, когда на сайте мало посетителей и не идут импорты или обмены. После успешного обновления старые ручные снимки стоит удалять: у многих хостеров за их хранение берут плату, а число снимков на тарифе ограничено.

Как восстановить сервер: два сценария

Откат к снапшоту. В панели хостера выбираете снимок и подтверждаете восстановление. Сервер возвращается в состояние на момент снимка — вместе с ним исчезает всё, что появилось позже: заказы, заявки, правки. Поэтому перед откатом, если сервер ещё работает, выгрузите свежую базу данных.

Восстановление из бэкапа. Порядок длиннее, зато вы не зависите от состояния старого сервера:

  1. Поднимите сервер — прежний или новый, у того же или другого провайдера.
  2. Установите окружение: веб-сервер, PHP, базу данных — либо запустите контейнеры по файлам описания.
  3. Скачайте из хранилища последнюю исправную копию: архив файлов и дамп базы.
  4. Разверните файлы, загрузите дамп в базу, верните настройки и задания планировщика.
  5. Проверьте сайт по временному адресу: страницы, формы, оплату.
  6. Если сервер новый — переключите DNS-записи домена на его адрес.

Тот, кто хоть раз прошёл этот путь на тестовом сервере, в день аварии тратит на него часы, а не дни.

Сколько это стоит

Снапшоты у хостера — обычно 10–20% от цены сервера или бесплатно в рамках тарифа. Хранилище под бэкапы для типового сайта — несколько сотен рублей в месяц. На фоне стоимости восстановления магазина с нуля — не цена, а округление.

Плюс время специалиста на первичную настройку: скрипты копирования, доступы, проверка восстановления. Это разовая работа, которая потом идёт сама и требует только контроля уведомлений.

Частые ошибки

  • Считают снапшот бэкапом. Он лежит там же, где сервер, и исчезает вместе с ним.
  • Складывают копии на тот же сервер. Архив в соседней папке не поможет ни при взломе, ни при поломке диска.
  • Дают серверу полный доступ к хранилищу. Взломщик, получивший сервер, удаляет и копии. Нужны отдельные ключи с ограниченными правами.
  • Копируют только файлы и забывают базу — или наоборот. Сайт из половины данных не собрать.
  • Хранят одну последнюю копию. Если поломку или заражение заметили через три дня, единственный архив уже содержит проблему.
  • Не проверяют восстановление. О том, что архивы пустые или битые, узнают в день аварии.
  • Не следят за местом. Хранилище или диск переполнились, копирование молча остановилось месяц назад.

Резервные копии — последняя линия. Первая — не дать взломать сервер: начните с базовых мер из статьи про первые настройки безопасности VPS.

Коротко

Снапшот — быстрый откат всего сервера, хранится у хостера и годится как страховка перед обновлениями. Бэкап — копия базы, файлов и настроек в отдельном хранилище, которая переживёт взлом, аварию и смену провайдера. Настройте оба, храните копии за несколько недель и раз в квартал проверяйте, что из них действительно можно восстановиться.

На серверах, которые мы обслуживаем в CasperLab, обе схемы стоят по умолчанию: снапшоты у хостера и ежедневные копии базы и файлов во внешнее хранилище, с проверкой восстановления. Если не уверены, что ваш VPS защищён именно так, — спросите, посмотрим. А если сервер только предстоит выбрать — подберём VPS с нужным объёмом диска и снапшотами в тарифе.

Арендовать VPS в CasperLab

Поможем подобрать решение под вашу задачу и рассчитаем стоимость без обязательств.

Арендовать VPS
Поделиться:
Достаточно ли снапшотов хостера как бэкапа?
Нет. Снапшот лежит рядом с сервером и пропадает вместе с ним при аварии, взломе панели или блокировке аккаунта. Он хорош для быстрого отката, но не заменяет копию данных в отдельном хранилище.
Как часто делать бэкап VPS?
Для сайта с заказами и заявками — минимум раз в сутки, для активного магазина базу можно копировать каждые несколько часов. Файлы меняются реже, их достаточно архивировать раз в день. Хранить копии — от недели до месяца.
Куда складывать бэкапы?
В хранилище, не связанное с хостером и его панелью: S3-совместимое облако другого провайдера или отдельный сервер. Доступ к нему должен быть по отдельным ключам, чтобы взлом основного сервера не давал доступа к копиям.
Можно ли перенести VPS к другому хостеру через снапшот?
Как правило, нет: снимок хранится в системе хостера и разворачивается только у него. Для переезда используют бэкап — архив файлов, дамп базы и настройки, которые разворачивают на новом сервере. Это ещё одна причина держать независимую копию данных.
Сколько снапшотов нужно хранить?
Обычно хватает нескольких последних: ежедневных за неделю и одного ручного перед крупными изменениями. Снимки занимают место на стороне хостера, и за них часто берут отдельную плату. Длинную историю удобнее и дешевле держать в бэкапах во внешнем хранилище.
Останавливается ли сайт, когда делается снапшот?
Обычно нет: снимок создаётся на работающем сервере за секунды или минуты. Возможна небольшая просадка скорости диска в этот момент. Чтобы снимок получился надёжнее, его лучше делать в часы низкой посещаемости, когда не идут импорты и обмены.