Содержание:
Выбирайте VDS
Если вы в поисках хорошего сервера, то смотрите подборку лучших VPS.
Перейти
После аренды VPS важно не только установить операционную систему и настроить приложения, но и позаботиться о сохранности данных. Ошибка при обновлении, случайное удаление файлов, взлом или неисправность оборудования могут привести к потере сайта, базы данных и настроек сервера.
Для защиты данных используют резервные копии (бэкапы) и снимки состояния сервера (снапшоты). Эти инструменты решают похожие задачи, но имеют важные отличия.
Разберём, как они работают, как создать резервную копию VPS, где её хранить и что учитывать при выборе провайдера.
Зачем нужно резервное копирование VPS?
Резервное копирование позволяет сохранить данные сервера, чтобы при необходимости восстановить их.
Например, на VPS размещён интернет-магазин с базой данных, фотографиями товаров и настройками веб-сервера. Если после обновления сайт перестанет работать, резервная копия поможет вернуть его в рабочее состояние.
Бэкапы пригодятся в нескольких ситуациях:
- Случайное удаление файлов или базы данных.
- Ошибки при обновлении операционной системы или приложений.
- Взлом сервера и повреждение данных.
- Неисправность оборудования или потеря доступа к VPS.
- Перенос сайта на другой сервер.
Скорость восстановления зависит от объёма данных, способа создания копии и места её хранения.
Важно понимать, что RAID у провайдера не заменяет резервное копирование. RAID может защитить от отказа отдельных дисков, но не поможет вернуть случайно удалённые файлы.
Бэкап и снапшот VPS: в чём разница?
Для сохранения данных VPS используют два основных инструмента: бэкапы и снапшоты.
Бэкап (backup) — это резервная копия сервера или отдельных данных. Она может содержать операционную систему, файлы сайтов, базы данных и настройки приложений.
Бэкапы бывают нескольких видов:
- Полный — сохраняет все выбранные данные.
- Инкрементальный — сохраняет только изменения с момента предыдущей резервной копии.
- Дифференциальный — сохраняет изменения с момента последней полной копии.
Например, если полный бэкап создаётся в воскресенье, то в понедельник можно сохранить только изменившиеся данные. Это позволяет уменьшить объём новых резервных копий.
Бэкап можно хранить отдельно от основного VPS, например на другом сервере. В таком случае данные получится восстановить даже при полной потере исходного сервера.
Снапшот (snapshot) — это снимок состояния виртуальной машины или её диска на определённый момент времени. Обычно он создаётся через панель управления провайдера и позволяет быстро вернуть сервер к сохранённому состоянию.
Например, перед обновлением Ubuntu можно создать снапшот. Если после обновления возникнут проблемы, сервер можно вернуть к состоянию до изменений.
Однако в некоторых системах снапшоты зависят от основного диска VPS. Если хранилище выйдет из строя, снимок тоже может оказаться недоступен.
Что выбрать: бэкап или снапшот?
Выбор зависит от задачи.
Снапшот удобен, когда нужно быстро отменить изменения после обновления системы, установки программы или изменения настроек.
Бэкап подходит для регулярной защиты сайта, базы данных и других файлов. Особенно важно хранить хотя бы одну копию отдельно от сервера.
Например, перед крупным обновлением сайта можно создать снапшот, а для защиты от потери данных настроить ежедневное резервное копирование.
Возможности зависят от провайдера: некоторые снапшоты можно сохранять отдельно, а бэкапы не всегда включают весь сервер.
Как сделать резервную копию VPS?
Создать резервную копию можно через панель управления провайдера или самостоятельно с помощью команд Linux.
Через панель управления VPS
Если провайдер поддерживает резервное копирование, порядок действий обычно следующий:
- Откройте панель управления сервером.
- Найдите раздел «Резервные копии», «Backups» или «Snapshots».
- Выберите нужный VPS.
- Запустите создание копии.
- Дождитесь завершения и проверьте результат.
В некоторых панелях можно настроить автоматическое копирование по расписанию.
Названия разделов и доступные функции зависят от провайдера. Также проверьте, входит ли резервное копирование в стоимость тарифа.
Через командную строку Linux
Рассмотрим пример на Ubuntu 24.04 LTS.
Предположим, что файлы сайта находятся в каталоге /var/www/example.com.
Создадим архив:
sudo tar -czf /root/site-backup.tar.gz -C /var/www example.comКоманда сохранит файлы сайта в архив site-backup.tar.gz, который будет находиться в каталоге /root.
Проверим содержимое архива:
sudo tar -tzf /root/site-backup.tar.gzКоманда покажет список сохранённых файлов.
Важно: этот способ копирует только указанный каталог, а не весь VPS. Если файлы меняются во время копирования, некоторые данные могут сохраниться некорректно.
Если сайт использует MySQL или MariaDB, необходимо отдельно сохранить базу данных.
Например:
sudo sh -c 'mysqldump -u backupuser -p --single-transaction --databases exampledb > /root/database-backup.sql'Здесь:
- backupuser — пользователь базы данных с правами на её копирование.
- exampledb — название базы данных.
- database-backup.sql — файл, в который сохраняются данные.
После запуска потребуется ввести пароль пользователя базы данных.
Параметр --single-transaction позволяет копировать большинство обычных баз MySQL с таблицами InnoDB без остановки работы сайта. Но если во время копирования изменяется структура таблиц или используются другие типы таблиц, могут потребоваться дополнительные меры.
После выполнения команд у нас будут два файла: архив сайта и копия базы данных.
Их нужно перенести в отдельное защищённое хранилище. Пока они находятся только на исходном VPS, потеря сервера может привести и к потере резервных копий.
Где хранить резервные копии?
Для надёжной защиты данных желательно использовать несколько мест хранения.
Часто рекомендуют правило 3-2-1:
- 3 копии данных — основная и две резервные.
- 2 разных типа носителей или способа хранения — например, серверный диск и отдельное хранилище.
- 1 копия вне основной инфраструктуры — например, у другого провайдера.
Допустим, у вас есть VPS с интернет-магазином. Одну резервную копию можно хранить в отдельном хранилище основного провайдера, а вторую — на другом сервере у независимого поставщика.
Такой подход снижает риск одновременной потери всех копий.
Также необходимо ограничить доступ к резервным копиям, чтобы посторонние не могли их скачать, изменить или удалить. Для дополнительной защиты можно использовать шифрование.
Как часто делать бэкапы VPS?
Частота резервного копирования зависит от того, как часто обновляются данные на сервере.
Например:
|
Тип проекта |
Как часто делать бэкап? |
|
Статический сайт |
После изменений |
|
Личный блог |
Ежедневно |
|
Корпоративный сайт |
Ежедневно или после изменений |
|
Интернет-магазин |
Несколько раз в день или чаще |
|
Сайт с постоянно обновляемыми данными |
В зависимости от частоты изменений |
Это примерные рекомендации. Для каждого проекта расписание лучше выбирать отдельно.
Предположим, интернет-магазин получает заказы круглосуточно. Если бэкап создаётся только один раз в сутки, при сбое можно потерять заказы, поступившие после последнего копирования.
Поэтому для активно работающих проектов резервные копии создают чаще. Если даже потеря нескольких минут данных недопустима, могут потребоваться дополнительные способы защиты базы данных.
Также стоит определить, сколько времени хранить копии. Например, можно сохранять ежедневные бэкапы за последнюю неделю и несколько еженедельных архивов.
Не забывайте периодически проверять резервные копии. Важно убедиться, что из них действительно можно восстановить сайт или сервер.
Как восстановить VPS из резервной копии?
Способ восстановления зависит от того, как создавался бэкап.
Если провайдер сохранил полную копию VPS, восстановление обычно выполняется через панель управления. При этом текущие данные сервера могут быть заменены содержимым резервной копии.
Если отдельно сохранялись файлы сайта и база данных, их потребуется восстановить вручную.
Например, ранее созданный архив можно распаковать командой:
sudo tar -xzf /root/site-backup.tar.gz -C /var/wwwКоманда извлечёт файлы в каталог /var/www.
Перед запуском убедитесь, что архив получен из надёжного источника и существующие файлы можно перезаписать.
Для восстановления базы данных MySQL или MariaDB используем:
mysql -u backupuser -p < /root/database-backup.sqlКоманда прочитает сохранённый файл и выполнит содержащиеся в нём SQL-команды. У пользователя backupuser должны быть необходимые права.
Важно: восстановление базы может изменить или удалить существующие данные, поэтому сначала проверьте содержимое резервной копии и убедитесь, что выбрана правильная база.
После восстановления проверьте работу сайта, подключение к базе данных и доступность основных функций.
Если речь идёт о рабочем сайте, лучше сначала проверить восстановление на отдельном тестовом VPS, чтобы не повредить действующий проект.
Как выбрать VPS с резервным копированием?
При выборе VPS-провайдера стоит заранее узнать, какие возможности резервного копирования он предлагает.
Обратите внимание на следующие вопросы:
- Есть ли автоматическое резервное копирование?
- Входит ли услуга в тариф или оплачивается отдельно?
- Сколько резервных копий можно хранить?
- Где хранятся копии — отдельно от основного сервера или вместе с ним?
- Можно ли скачать копию и перенести её к другому провайдеру?
- Можно ли восстановить отдельные файлы или только весь VPS?
- Поддерживаются ли снапшоты и сколько времени они хранятся?
- Можно ли восстановить данные после удаления VPS?
Также уточните, кто отвечает за создание и хранение резервных копий. Некоторые провайдеры предоставляют инструменты для копирования, но настраивать и проверять их работу пользователь должен самостоятельно.
При сравнении тарифов обращайте внимание не только на CPU, оперативную память и диск, но и на возможность восстановления данных.
Заключение
Резервное копирование — важная часть работы с VPS. Оно помогает сохранить сайт, базу данных и настройки сервера при ошибках, сбоях и других проблемах.
Для надёжной защиты лучше сочетать снапшоты и независимые резервные копии, хранить данные в разных местах и периодически проверять восстановление.
Настроить резервное копирование желательно сразу после запуска VPS, не дожидаясь первой серьёзной проблемы.
Предыдущая статья:
Что делать после первого запуска VPS?Следующая статья:
Восстановление пароля root для VPS
Комментарии ()