Восстановление сайта после прямого попадания

Сергей Горелов
Надежное автоматическое резервное копирование это сложная задача. Чтобы её решить, нужно последовательно ответить на вопросы:
  1. Что будем копировать?

  2. Как часто будем копировать?

  3. Где будем хранить?

  4. Как будем проверять работоспособность копий?

  5. Сколько времени потребуется на восстановление?

  6. Что потеряем, если восстановимся из резервной копии?

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


Когда нужна резервная копия сайта

Нам — всегда.

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

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

Резервное копирование сайта средствами 1С-Битрикс

Если сайт (вместе с базой) меньше 2 Гб, достаточно настроить автоматическое резервное копирование средствами Битрикс. Как это работает? Битрикс может по расписанию выполнять процедуру резервного копирования. В результате вы будете получать 1 или несколько архивов в папке /bitrix/backup/ . Этих данных достаточно для восстановления сайта на аналогичном сервере за 30-60 минут. Создание копии занимает 3-15 минут. После того, как копия будет готова, она автоматически загрузится в облако 1С-Битрикс.

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

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

Особенности настройки и использования

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

Что будет в случае аварии

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

Наш горький опыт

Регулярно 1 раз в 2 месяца мы сталкиваемся с ситуацией, когда нам не удаётся восстановить сайт из копии. Причиной может быть файл со спецсимволом (иногда кириллическим) в названии. Редко, но было, возникают ошибки на этапе восстановления базы данных. Для себя мы нашли одно решение – проверять вручную каждый второй бэкап, чего и вам советуем.

Имейте в виду, если вы никогда не проводили “учений” по восстановлению – считайте что бекапов у вас нет. Мы за ответственный подход, и поэтому думаем не только о формальном наличии бекапов, но и о реальной перспективе восстановления.

Резервное копирование средствами хостинга

Хостинги бывают разные. Наиболее распространены 3 типа:

  1. Разделяемый хостинг. Когда на одном сервере размещены несколько сотен проектов. У каждого клиента доступ по FTP к своей папке + доступ к панели управления

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

  3. Выделенный сервер. Вы арендуете оборудование.

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

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

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

Для этих целей, в панели управления предусмотрена процедура создания резервной копии. Так это выглядит в timeweb

Панель управления резервным копирование на хостинге Timeweb

Вы правильно поняли, что это процедура – разовое создание копии, и да, она стоит денег =)

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

Что будет в случае аварии

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

Наш горький опыт

По неосторожности, нам доводилось терять файлы SSL-сертификатов , при обновлении операционной системы на сервере. Имея 120 Гб бэкап на диске, мы ждали 12 часов, пока эти данные копируются, чтобы мы смогли получить к ним доступ. На 12 часу произошла ошибка восстановления. Параллельно с этим процессом мы запустили выпуск новых сертификатов — это спасло ситуацию.

Best practice из мира резервного копирования

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

Что такое Bareos?

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

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

Архитектура

Для работы Bareos нужен управляющий блок – Директор (Backup Director), один или несколько Серверов Хранения Данных (Storage Daemon), а также Службы Данных (File Daemons) на клиентских компьютерах, с которых создаются резервные копии.

“Директор” управляет логикой работы и хранит настройки копирования проектов: список клиентов и сохраняемых на них файлов, расписание резервного копирования, период хранения копий.

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

“Сервер Хранения Данных” отвечает за взаимодействие системы с накопителями данных. На данный момент поддерживаются все распространенные носители информации, в том числе ленточные, а также облачные технологии.

Возможности

Bareos — кроссплатформенная система, клиенты доступны для всех распространенных дистрибутивов Linux, а также Windows и Mac.

Шифрование данных происходит не при сохранении, а перед началом этапа передачи. Таким образом, обеспечивается полная безопасность данных в резервной копии.

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

Ограничение загрузки канала передачи данных. Создание резервной копии не приведет к нестабильной работе сайта или интернет-магазин , так как для передачи информации будет использоваться только безопасный процент полосы пропускания, обычно 20-30%.

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

Пример использования Bareos для Битрикс

Мы проверили надежность инструмента, доверили ему резервное копирование своих систем и проектов и готовы настроить резервное копирование вашего сервера.

Для наглядного примера, мы взяли сайт 40 Гб, 20 из них это статика и картинки, которые не сжимаются.

Сделали 2 сервера с копиями, один у того же хостера, второй у стороннего хостера.

После того как копии были сделаны, мы отформатировали диски rm -rf /

Время полного восстановления в рамках одного хостинга 30 минут.

Время полного восстановления в рамках второго 3 часа.

Способ

Что копирует

Время восстановления

Стоимость

Автоматические в облако битрикс

только сайт

1 час

бесплатно

Средствами хостинга, вручную

весь сервер

0,5 - 8 часов

150-500 рублей за копию

Bareos

весь сервер

0,5 - 3 часа

5000 в месяц за  ежедневное копирование

Стоимость резервного копирования

Мы готовы настроить автоматическое копирование вашего сервера и следить за его работой. Стоимость 1 месяца обслуживания 5000 руб.



  • 31.07.2017
  • Сергей Горелов
Заявка на обновление, поддержку и сопровождение сайта 24x7
Иван
+7 (905) 000 00 00
info@intervolga.ru
www.site.ru
Хочу подключить услугу "поддержка 24x7"