Как бэкапить сайт с сервера
Перейти к содержимому

Как бэкапить сайт с сервера

  • автор:

Как делать резервные копии сайтов и серверов?

Кошмар системного администратора, найденный в Яндексе

Это горящий дата центр крупнейшего хостинг провайдера Европы — OVH. После пожара некоторые проекты так и не восстановились, другие долго зализывали раны. И чтобы такого не произошло — надо делать регулярные резервные копии. О том как, с какой периодичностью и что в них включать мы сегодня и поговорим.

Все, что написано ниже — это опыт нашей компании. Постарался писать как можно меньше теории и сосредоточится на практике и личном опыте. Если есть что добавить или хотите подискутировать — велком в комментарии или в личку (контакты в профиле).

Зачем нужны резервные копии?

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

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

Ошибка разработчика. Например, не учли некоторые моменты при создании синхронизации и грохнули доп поля у всех товаров. Или, например, “срочные” правки на бою удаляют статус у части заказов и весь сервис синхронизации заказов сыпется как карточный домик. В таких случаях быстрый откат базы из резервки спасает ситуацию. Все мы люди и у нас такие случаи тоже бывают, поэтому резервки есть всегда, даже если на проекте работает кто-то из топ разработчиков.

Резервка дает возможность быстро поднять проект локально. Пожалуй, это самое неочевидное преимущество резервной копии. Резервка — это всегда запакованный сайт и это дает возможность быстро скачать необходимые данные и поднять проект локально. На некоторых проектах, мы делаем такие манипуляции на автомате, оборачивая это в Vagrant, что дает возможность разработчику быстро поднять локальную копию сайта из последней резервной копии без лишних танцев с бубном. “Быстрое”, конечно, понятие относительно и если разраб уехал в глухую деревню, где у него только 3g интернет и тот ловит с базовой станции из соседнего села, то поднимет он ее только когда выйдет на пенсию.

Где хранить резервные копии?

Есть много вариантов хранения. Мы остановились на облаках для личного использования (яндекс диск, cloud.mail.ru, дропбокс и прочие подобные сервисы). Посудите сами, стоимость терабайта от 2000 рублей и никаких дополнительных платежей за трафик, коннекты и пр. Сервис подбираем исходя из потребностей клиента, иногда даже бесплатного аккаунта хватает.

Кратко про альтернативным варианты:

  • Резервные копии от хостера. Мало того, что инфраструктура для хранения бэкапов принадлежит той же компании, так еще и хранятся они обычно в том же дата центре, что и ваш основной сайт, поэтому в случае проблем вы потеряете и сайт и резервки.
  • Облака для бизнеса. Это всякого рода AWS и прочие Яндекс облака. Сейчас такое не делает только ленивый. В целом, это дорого, очень сложная тарификация и они, откровенно, не для этого.
  • Сервер в другом дата центре. Вполне рабочий вариант для большого проекта. Проигрывает облакам в стоимости хранения, но выигрывает в гибкости и скорости создания бэкапов. Например, на втором сервере можно настроить реплику базы и уже с нее делать копии с любой периодичностью. Заодно можно держать на этом сервере активное зеркало.
  • Место в облаке Битрикс. В Битриксе есть облачный бэкап и если у вас есть активная лицензия, то у вас есть инструмент и место хранения (от 2 до 10 Гб в зависимости от лицензии). Расширить это место нельзя (узнавал у поддержки). Места откровенно мало, бэкап и восстановление только стандартными средствами. Есть ряд клиентов которые этим пользуются, но больше одной резервной копии туда положить сложно.

Что и как хранить?

Лицо сисадмина, когда вы рассказываете ему о резервных копиях

На самом деле с составом копий не все так просто.

База данных. Мы обычно работаем с mysql и там практически всегда забывают включить хранимые процедуры в бэкпап, тк по умолчанию утилита mysqldump этого не делает. Не на каждом проекте есть хранимки, но об этом нужно помнить.

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

Файлы. Если на хостинге/сервере много сайтов, то каждый сайт должен быть в отдельном архиве (включая отдельные архивы для dev и stage серверов). Для интернет магазинов и разного рода фэшн сайтов лучше выделять медийку (картинки, видео) в отдельный архив, т.к. они реже нужны для восстановления и в случае аварии архив с кодом в таком случае скачается быстрее.

Cron скрипты. На сложных проектах в кроне, как правило, не один вызов. И при потере сервера восстановить все крон скрипты очень сложно, а иногда невозможно. Поэтому cron всегда должен быть включен в резервные копии. Да, мы знаем что такое crunz и аналоги, но к нам часто приходят уже готовые проекты на поддержку и приходится работать с тем что есть, а уже потом рефакторить.

Прочие скрипты и настройки. У нас чаще всего это конфиги для supervisord и sphinx. Их достаточно бэкапить раз в месяц, либо держать копию в гите.

Частота резервных копий зависит от проекта. Наша стандартная схема: 7 дневных копий базы данных и еженедельные резервные копии файлов за 60 дней. В еженедельные копии файлов мы также подливаем и базу (база и архивы файлов даже в этом случае хранятся отдельно согласно рекомендациям выше). Такой схемы вполне хватает для основных сценариев восстановления. Резервные копии создаем в часы минимальной нагрузки на сервер, как правило, это час ночи по серверному времени (нужно учитывать часовой пояс основной аудитории проекта).

Резервные копии всегда создаются перед деплоем и в любой ситуации, когда есть большая вероятность уронить проект клиента, например, перед обновлением Битрикса. Такие резервные копии создаются по запросу менеджера или разработчика проекта.

Как делать?

Для клиентов компании используем свои скрипты, которые делают все вещи, описанные выше, и заливают копию в подготовленное хранилище. Заодно отправляют уведомления в телеграм со служебной информацией и статусом бэкапа. Решение подходит только для серверов и VDS. На обычном хостинге его не запустить. В целом в наших скриптах нет ничего сложного и костяк решения гуглится по запросу «webdav резервные копии бесплатно и без смс».

Для популярных CMS есть отдельные решения, которые делают почти то же самое. Например, для Битрикс мы иногда используем ammina.backup (не реклама). В целом модуль работает стабильно, но не на каждом хостинге. Не работает, как правило, из-за ограничений хостинга на потребляемые ресурсы. Смена тарифного плана на более дорогой снимает ограничение и заставляет его работать.

Под другие CMS тоже есть подобные решения, но опыта работы с ними у нас не было, поэтому если накидаете в комментариях рабочие и проверенные варианты — буду благодарен.

Проверил и забыл?

Еще один момент о котором все забывают. Резервные копии необходимо проверять. Мы это делаем регулярно раз в неделю для каждого клиента.

Основные проблемы, которые возникают при проверках:

  • Проблемы с сетью на стороне сервера. Практически не прогнозируется. Бэкап не улетает в облако.
  • Перегруз сервера по ресурсам (низкая скорость отклика дисков, низкая производительность сервера) и, как следствие, зависание скрипта создания копии. Прогнозированию не поддается, можно только смириться и проверять.
  • Закончилось свободное место на сервере клиента (подрос объем сайта, кеш какого-либо компонента распух и его надо почистить, логи клиентских скриптов или сервера распухли и начали заниматься много места и пр.). Как следствие, не хватает пространства для создания копии и все падает. Решается мониторингом сервера и алертами админам. Мы это реализуем на базе Prometheus и Grafana.
  • Закончилось место в облачном хранилище. Как правило, это следствие предыдущего пункта. Так же мониторим в Prometheus.

Вместо заключения

Все что описано выше подойдет для интернет проектов, включая разного рода CRM системы, самописы и прочие “битриксы”, стоящие на сервере с объемом данных до 500-700 Гб. Все что ближе к терабайту просто так не резервируется и там уже нужны другие подходы.

  • резервное копирование
  • облако
  • backup

Резервное копирование на VPS-хостинге

Бэкап (англ. backup) — это процесс создания резервной копии данных для их дальнейшего восстановления в случае потери или повреждения оригинальных данных.

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

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

Ручной бэкап

Пользователь самостоятельно создает резервную копию своих данных, весь процесс происходит через панель управления хостингом. Этот вариант может быть полезен для тех, кто хочет сохранить небольшое количество данных или какие-то определенные и важные из них и имеет достаточно времени, чтобы выполнить резервное копирование вручную, но может быть трудоемким и неэффективным при большом объеме данных и необходимости в регулярном копировании. Также стоит учитывать, что при ручном бэкапе велика вероятность ошибки при создании копии и вся ответственность за сохранность файлов лежит на пользователе.

Автоматический бэкап

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

Резервное копирование через техподдержку

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

Наши услуги

post img

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

FTP-бэкап — это процесс создания резервной копии данных, которые хранятся на удаленном сервере FTP (File Transfer Protocol). В связке с Plesk позволяет настроить довольно гибкую схему резервного копирования и надежно зарезервировать нужные данные. Мы предлагаем 5 тарифных планов, от 20ГБ до 2ТБ дискового пространства для создания и хранения ваших копий, что максимально удобно для веб-проектов, заботящихся о сохранности своего контента и его непрерывной доступности для аудитории.

Есть два распространенных варианта использования FTP-бэкапа:

  1. Для Серверов без забот, где в панели Plesk 12 вашего Сервера без забот или тарифа Супер Сайт вы можете легко настроить регулярное автоматическое резервное копирование нужных данных по FTP-протоколу.
  2. Для тарифов Root server без панели Plesk 12, где вы можете использовать собственные скрипты для автоматизации процесса или выполнять резервное копирование вручную.

Облачный бэкап , в свою очередь, хранит данные в удаленном облачном хранилище, куда можно добавлять как небольшое файлы, так и целые операционные системы и даже виртуальные машины. Выбирая этот вариант, вы обеспечиваете вашей IT-инфраструктуре надежное и полное резервное копирование в облаке Rusonyx, где вы сами подбираете объем и тип хранилища, а мы гарантируем вашим данным безопасность и оперативное восстановление. Наши сервисы автоматизируют процесс резервного копирования, чтобы снять с вас необходимость решения любых технических вопросов: вам остается лишь задать нужные параметры.

Можно выделить следующие преимущества данного решения:

  • простая и удобная веб-консоль для доступа к резервным копиям, поиска и восстановления файлов из любого местоположения;
  • настраиваемые параметры резервного копирования;
  • нет необходимости в дополнительном оборудовании;
  • защита от повреждений файлов в резервных копиях;
  • скорость резервного копирования 500 МБ/с и выше;
  • возможность в любой момент остановить и возобновить выполнение процесса и др.

post img

Snapshot-бэкап — снимок, фиксирующий состояние сервера в определенный момент времени; полная копия вашего Сервера без забот™, которая создается по вашей команде через панель управления. Вы можете создать снимок сервера вручную, когда это необходимо, например перед проведением существенных изменений на сервере. Вы также можете настроить создание снимков сервера по расписанию, подходящему вашему бизнесу. Процесс создания снимка, а также процесс восстановления сервера из снимка происходит «на лету», без остановки сервера. И также не создает существенную дополнительную нагрузку на сервере. В этом случае сохраняются полностью все данные, хранящиеся на сервере.

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

Как сделать бэкап

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

Содержание:

  1. Почему следует делать бэкапы
  2. Разновидности копирования
  3. Рекомендации по созданию

Почему следует делать бэкапы?

Прежде, чем узнать как сделать бэкап, следует познакомиться с назначением подобной процедуры. Под словом backup подразумевается создание копий всех файлов и папок, размещенных на виртуальном сервере и другом носителе информации.

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

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

Благодаря этому, оно по-праву считается обязательной процедурой, регулярное выполнение которой позволит гарантировать стабильную работу сервера и доступность размещенной на нем информации.

Важно отметить, что хостинг-провайдеры не сохраняют бекапы сайтов пользователей, в связи с чем, ответственность за их наличие ложится на администратора проекта.

бэкап

Разновидности копирования

Существует несколько основных разновидностей backup-ов, которые отличаются по своим параметрам и сохраняемой информации. Самым эффективным и безопасным методом является полное резервирование, которое предполагает сохранение всех файлов, включая операционную систему, например Windows или Linux, сайты и настройки.

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

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

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

Рекомендации по созданию

Перед тем, как сделать бэкап сайта, настоятельно рекомендуется отдавать предпочтение полному копированию, поскольку это позволит застраховать всю информацию от возможной утере при сбоях в работе и проблемах с оборудованием.

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

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

Решая, какие данные следует копировать, не следует забывать о настройках nginx, а также mysql, поскольку они необходимы для быстрой развертки сервера и его запуска при восстановлении.

Выбирая оптимальное место для хранения резервных копий данных, следует уделить внимание не только защищенности, доступному пространству и другим параметрам, но и скорости доступа.

Ведь подобные архивы чаще всего имеют огромный объем, а его загрузка с низкой скоростью может существенно увеличить время восстановления работы сервера. Некоторые хостеры, предоставляющие услуги хранения подобного рода бекапов могут предлагать тарифы с лимитированными объемами трафика.

Это может привести к серьезному падению скорости ftp-соединения при достижении определенных показателей загруженных данных, что существенно затруднит процесс.

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

резервное копирование

Заключение

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

Как бэкапить сайт с сервера

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

Как сделать бэкап сайта

Любой платный хостинг предоставляет услугу автоматического резервного копирования файлов сайта. Бэкапы сайтов содержат оформление страниц, в том числе скрипты, логотипы, стили.

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

Если на сайте планируются технические работы, смена шаблона, хостинга — для перестраховки лучше вручную сделать копию сайта и сохранить ее на компьютере.

Есть два способа сделать резервную копию сайта на своем ПК:

Создать новую или загрузить последнюю копию сайта в админ-панели хостинга.
Перенести скачанную папку на локальный компьютер через FTP-клиент, например, FileZilla.

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

Как вернуть сайт в рабочее состояние через бэкап

Вы проверили интернет-соединение, спросили поддержку хостинг-провайдера о возможных причинах падения сайта и не получили ответа. В таком случае можно начинать реанимирование через бэкап сайта.

Как восстановить из резервной копии свой ресурс? Рассмотрим три наиболее простых способа.

Через админ-панель в хостинге

Зайдите через логин и пароль в административную панель. Ссылку на нее вы можете получить у своего хостинг-провайдера. Выберите нужный домен и перейдите в менеджер резервных копий. В некоторых панелях сразу есть кнопка «Восстановить», полностью или выборочно.

Иногда достаточно ее нажать и подождать, пока файлы полностью восстановятся. Затем удалить cookies сайта и попробовать на него зайти. Если кнопки восстановления нет, загружать резервную копию придется вручную. Для этого зайдите в файловый менеджер сайта и переименуйте папку с файлами. Выберите такое название, чтобы вы понимали — перед вами хранилище старых файлов. Например, old.

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

После восстановления проверьте, работает ли сайт. Сохранение старой папки нужно для перестраховки на случай, если файлы резервной копии не сработают.

Через FTP-клиент

Подключитесь к удаленному серверу через файловый менеджер, например, FileZilla. Найдите в корневом каталоге папку с файлами и переименуйте ее либо скачайте на свой компьютер.

Замените эту папку на новую, созданную ранее в качестве резервной копии. Ее нужно найти в левой колонке на вашем компьютере. После загрузки восстановленных файлов проверьте свой сайт.

Через SSH-доступ

Подключитесь к хостингу сайта через утилиту Putty и запустите файловый менеджер командой mc. Откройте в левой части папку с копией, а в правой — папку с текущими файлами сайта, которую нужно заменить.

Ваша задача — восстановить резервную копию папки docs. Для этого старую папку нужно будет переименовать в old или другое имя. Это можно сделать, наведя курсор на нее и нажав Shift+F6. Чтобы переместить папку из левой части, нажмите F6, а чтобы скопировать — F5.

Как реанимировать базу данных

Если ваш сайт работает с базой данных, потребуется восстановить и ее. Это делается в панели хостинга. Перейдите в раздел «Базы данных» — phpMyAdmin. Введите данные для соединения.

В зависимости от типа панели хостинга найдите кнопку «Импорт» или «Восстановление». После окончания процесса попробуйте зайти на свой сайт.

Заключение

Реанимирование сайта из бэкапа требуется при отсутствии доступа к страницам. Обычно бэкап и восстановление сайта выполняются через панель хостинга.

Вы также можете вручную сделать копию всех файлов сайта и хранить их на своем компьютере. Предварительно убедитесь в рабочем интернет-соединении и спросите поддержку хостинга о причинах недоступности сервера.

Чтобы выполнить восстановление, необходимо загрузить файлы резервной копии в корневой каталог сайта через панель хостинга, FTP-клиент или SSH. Если у сайта имеется база данных, то ее также необходимо восстановить через панель phpMyAdmin.

Эта статья — часть модуля «Список задач» в Serpstat
» title = «Как сделать бэкап сайта и восстановить его: обзор способов 16261788220632» />

«Список задач» — готовый to-do лист, который поможет вести учет
о выполнении работ по конкретному проекту. Инструмент содержит готовые шаблоны с обширным списком параметров по развитию проекта, к которым также можно добавлять собственные пункты.

Serpstat — набор инструментов для поискового маркетинга!

Находите ключевые фразы и площадки для обратных ссылок, анализируйте SEO-стратегии конкурентов, ежедневно отслеживайте позиции в выдаче, исправляйте SEO-ошибки и управляйте SEO-командами.

Набор инструментов для экономии времени на выполнение SEO-задач.

Оцените статью по 5-бальной шкале

5 из 5 на основе 1 оценок
Нашли ошибку? Выделите её и нажмите Ctrl + Enter, чтобы сообщить нам.

Используйте лучшие SEO инструменты

Подбор ключевых слов

Поиск ключевых слов – раскройте неиспользованный потенциал вашего сайта

Возможности Serpstat – комплексное решение для эффективного продвижения вебсайтов

Кластеризация ключевых слов

Кластеризация ключевых слов автоматически обработает до 50 000 запросов в несколько кликов

SEO аудит страницы

Проанализируйте уровень оптимизации документа используя SЕО аудит страницы

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *