Rate this post

Как известно, системные администраторы бывают 2х видов: которые делают бекапы и которые УЖЕ делают бекапы. После очередных проблем с восстановлением данных была поставлена задача обеспечения отказоустойчивости веб-ресурса  с избыточным хранением резервных копий. Таким образом, мы нацелились на создание копии основного сервера и дополнительном хранении резервных копий в облаке.nnИсходные данные: Имеется сервер, на котором работает CentOS 6.8 и веб-приложение.  Поднят резервный сервер в облаке Amazon, на котом работает Ubuntu 14.04.4 и запущены: MySQL, Httpd, memcached, php-fpm. Для работы решения дополнительно установлены lftp – для переноса данных, aws cli – клиентские программы для работы с Amazone S3.n

Реализация:

По сути – реализация сводится к использованию 2х скриптов, которые выполняют перенос данных в нужные места.автоматический бэкапа в облакоnnЭтап первый. На основном сервере запускается скрипт db_site_backup.sh, задачей которого является создание резервной копии файлов и базы данных веб приложения. Скрипт запускается 3 часа утра. Через несколько минут в необходимой директории создаются файлы с именованием годмесяцдень.tar для файловой копии и  годмесяцдень.sql.gz – для резервной копии базы данных. Для выполнения этого этапа используются команды для работы с БД и файловой системой.nnЭтап второй. На резервном сервере в 4 часа утра запускается скрипт db_site_backup.sh. Его работа разделена на несколько шагов. На первом шаге с помощью утилиты lftp архивы резервных копий с основного сервера передаются на резервный в директорию для хранения бекапов. На втором шаге с помощью утилиты aws происходит загрузка архивов резервных копий в облако Amazon s3. На третьем шаге происходит проверка лога загрузки. В случае успешного получения файлов облаком происходит  удаление устаревших резервных копий в Amazon S3.nnСледующим шагом выполняется развертывание полученной резервной копии. Файлы распаковываются в рабочую папку приложения. База данных восстанавливается штатными средствами. На завершающем пятом шаге выполняется удаление резервных копий на основном и резервном сервере.nnОписанная выше автоматизация решила задачи:n

  • Переноса резервных копий в облако
  • Переноса и развертывания резервных копий на удаленный сервер

Если у Вас есть желание внедрить подобные решения для Ваших систем, наши специалисты готовы трудиться на благо Вашей компании. Запросить готовые скрипты, Вы можете, обратившись в skype: vkarabedyants