Статья также доступна на украинском (перейти к просмотру).

Содержание:
- Принципы, на которые опираются системы резервирования
- Методы формирования копий данных
- ПО для выполнения копирования и автоматизации
- Организация и тип хранилища
Развитие методологии разветвленной разработки и сопровождения веб-проектов привели к концептуальным изменениям в организации и работе систем резервного копирования данных. Появились новые программные средства для автоматизации процесса создания и загрузки резервных копий, а сами хранилища данных трансформировались и полностью или частично перешли в облако. Поэтому актуальной задачей является поиск оптимального варианта организации системы резервного копирования, которая была лишена недостатков «классических» схем создания бекапов и ориентировалась на конкретный веб-проект.
Принципы, на которые опираются системы резервирования
Принципы построения «классических» схем создания бекапов опираются на всем известную формулу «3-2-1», согласно которой система должна отвечать следующим требованиям:
-
Постоянное наличие трех копий данных;
-
Использование двух разных типов носителей для хранения информации;
-
Удаленное хранение одной из копий.
И хотя формула была сформулирована уже почти двадцать лет назад, она до сих пор актуальна, но требует определенной модификации и усовершенствования в зависимости от применяемых технологий и потребностей веб-проекта.
В условиях непрерывной разработки, тестирования и выпуска обновлений кода веб-проектов неизбежной становится необходимость интеграции системы создания бекапов в процессы. CI/CD, что позволило бы включить систему резервирования в единый автоматизированный пайплайн веб-проект. Однако это возможно только при наличии динамических решений на всех уровнях построения системы резервирования.
Выделим составляющие элементы системы резервирования, от уровня развития которых напрямую зависит ее динамичность и эффективность использования:
-
методы формирования копий данных;
-
ПО для выполнения операций копирования и автоматизации;
-
Организация и тип хранилища.
Ниже будет рассмотрен каждый из указанных элементов на примере существующих решений.
Методы формирования копий данных
Выделим основные методы создания копий данных, применяемых в мире IT для получения надежного бекапа для своих веб-проектов:
-
Активное полное копирование;
-
Инкрементное;
-
Дифференциальное;
-
Синтетическое полное;
-
Инкрементное постоянное.
Каждый из указанных методов имеет свои особенности и соответственно рекомендации к применению в зависимости от основных оценочных параметров системы резервирования – скорость создания копий, объем для их хранения, скорость восстановления и стоимость внедрения.
Активное полное копирование предполагает создание полной копии веб-проекта, заставляющего периодически копировать абсолютно все данные, отображаемые на характеристиках системы резервирования. Метод крайне медленный и требует значительного места для хранения копий.
Метод инкрементного копирования предусматривает создание копий, содержащих только данные, которые были изменены с момента осуществления последнего резервного копирования. Соответственно, он имеет лучшие из всех методов значения характеристик скорости копирования и объема хранения данных.
Метод дифференциального копирования используется для создания копий с данными, которые изменились уже после создания последней полной резервной копии.
Синтетическое полное копирование образуется за счет объединения двух методов – активного полного и инкрементного. В результате можно получить усовершенствованный вариант метода полного копирования с улучшенными характеристиками скорости и занимаемого объема.
Метод инкрементного постоянного копирования, в отличие от других стратегий, дает возможность создания только одной полной копии данных, а все остальные будут создаваться инкрементно. Всегда можно восстановить данные за любой период времени.
ПО для выполнения копирования и автоматизации
Состав и функции такого ПО претерпели значительные изменения в последние годы, что связано с развитием систем виртуализации, конвейерных и других программных сред. С учетом потребностей современного уровня DevOps такие программы, в частности, должны обеспечивать следующие функции:
-
Работа с данными виртуальных сред, VPS и физических хостов;
-
Поддержка протоколов FTP, SSH и WebDAV;
-
Поддержка VSS (служба моментальных снимков тома) и версионирование файлов;
-
Кроссплатформенность;
-
Поддержка работы с NAS;
-
Широкий выбор провайдеров и работа с API;
-
использование различных стратегий или методов формирования копий данных;
-
Выполнение операций синхронизации, клонирования и репликации данных;
-
Широкие возможности автоматизации.
Рассмотрим лишь некоторые из программ резервирования данных, которые в той или иной степени удовлетворяют указанным требованиям. Это следующие ПО:
Каждый из указанных программных продуктов имеет свои особенности и рекомендации по применению. Однако с точки зрения практического использования определяющими такие показатели, как наличие бесплатного тарифного плана и поддержка известных облачных провайдеров и протоколов.
Дубликаты – имеет бесплатный тарифный план и может использоваться для любой платформы. Характерна поддержка ограниченного количества "облачных" провайдеров. Для управления приложением можно использовать веб-интерфейс или интерфейс командной строчки. Поддерживаются протоколы FTP, SSH да ВебДАВ. Есть поддержка снапшотов VSS и возможность шифрования бекапов.
Rclone – бесплатное использование в режиме командной строчки для большинства существующих платформ. Cephs. Возможность настройки конфигурации программы через веб-интерфейс. Облачная синхронизация. Не требует установки. "Простое" резервное копирование. Отсутствуют возможности планирования задач. Малое потребление ресурсов.
Acronis Cyber Backup – мощное платное средство для дифференциального и инкрементного резервного копирования для платформ MS Windows, macOS, iOS та Android. Поддержка снапшотов VSS та NAS. Поддержка снапшотов VSS да NAS. Имеет собственное хранилище данных.
Veeam Backup & Replication – является частью сервиса Veeam Availability Suite и первое ПО, которое начало осуществлять резервирование, восстановление и репликацию данных для виртуальных машин (ВМ) на базе гипервизоров VMware vSphere и Hyper-V. Автоматическое резервное копирование. Поддержка платформы MS Windows. Поддержка NAS, VSS и версионирование файлов. Поддержка большого количества провайдеров.
Сервер резервного копирования Proxmox – используется на базе Debian для автоматического резервного копирования ВМ, контейнеров и данных для отдельных физических хостов. Оптимизирован для платформы Proxmox VE. Простая установка и настройка. Управление с помощью веб-интерфейса и командной строчки. Поддержка снапшотов VSS и NAS. Высокая скорость восстановления копий за счет использования флэш-памяти. Минимальные объемы хранилища. Мы подробно рассказывали об этом инструменте в одной из наших предыдущих статей.
Рассмотренные ПО могут использоваться не только отдельно друг от друга, но вместе. Примером тому может служить комбинация программ Duplicati и Rclone для организации работы хранилища Первый из них может обеспечивать создание резервных копий с использованием VSS и планировщика задач. Второй можно использовать в качестве основного загрузчика данных в облако. Существуют и другие варианты комбинаций ПО, главное здесь выполнить потребности конкретного веб-проекта.
Организация и тип хранилища
Хранилище – это то место, где будут храниться файлы вашего веб-проекта и из которого он будет восстановлен при возникновении любых повреждений кода или данных. Выделим основные направления их построения:
-
На основе специализированных облачных сервисов;
-
На основе открытых глобальных облачных хранилищ;
-
На основе использования обособленных серверов.
Рассмотрим каждый из вариантов.
Специализированные облачные сервисы
Существует несколько специализированных сервисов для хранения больших объемов данных на облаке, каждый из которых платный. Они используют собственные ПО для работы с данными и, как правило, поддерживают WebDAV, API та VSS. Приведем некоторые из них:
-
Amazon Glacier
-
Amazon S3
-
Acronis Cloud Storage
Amazon Glacier ориентированный на долгосрочное хранение резервных копий данных на большом количестве HDD-носителей. Его особенностью является сложная ценовая политика, устанавливающая разные уровни тарифов на загрузку, хранение и скачивание файлов с данными. К примеру, скачать файлы можно бесплатно, их хранение будет стоить около $1 за один ТВ в месяц, а вот скачивание файлов обойдется значительно дороже.
Амазонка S3 принято считать «классическим» хранилищем для длительного хранения данных. Однако тарифы здесь не так уж малы – $10 за один ТВ и выше.
Acronis Cloud Storage созданный на базе программных продуктов компании Acronis и способен обеспечить автоматическое резервирование данных объемом в 250 Гб только за $299 в год. Его особенностью является широкое использование тарифного плана типа «все включено», что может удовлетворить потребности некоторых клиентов.
Открытые облачные хранилища
Этот вид хранилища ориентирован на хранение сравнительно незначительных объемов данных для обычных пользователей. Только в некоторых из них на бесплатной основе доступны VSS или WebDAV что, очевидно, является существенным ограничением.
Приведем наиболее известные хранилища такого типа:
-
Mega
-
Google Drive
-
Dropbox
-
OneDrive
Теперь мы можем резюмировать вопросы использования специализированных и открытых глобальных сервисов в качестве основы для построения системы резервирования своего проекта. Итак, глобальные сервисы имеют следующие преимущества:
-
Предоставляют свою площадку для хранения данных компании или веб-проекта;
-
Берут на себя задачи администрирования, подбора и обновления ПО для работы с данными.
Среди недостатков их использования можно выделить следующие:
-
Неустойчивая ценовая политика, направленная на привязывание клиента к сервису;
-
наличие узко направленных инфраструктурных решений в конфигурации хранилища, что затрудняет смену облачного провайдера;
-
Уровень безопасности данных напрямую зависит от репутации провайдера;
-
отсутствие учета вопросов регионального рынка;
-
Отсутствие личного подхода к клиенту.
Обособленные серверы
Этот вариант хранилища, как правило, строится профессионалами и позволяет создать любую конфигурацию программной среды системы резервирования данных. В таком случае арендатор сервера по сути становится владельцем облачного сервиса со всеми преимуществами последнего.
Среди преимуществ организации хранилища на базе обособленного сервера можно выделить следующие кейсы:
-
Повышенный уровень безопасности – доступ к облаку извне ограничен – только Администратор сайта или служба поддержки хостинга;
-
индивидуальный подход со стороны хостинг-провайдера;
-
оптимизация под требования регионального рынка;
-
возможность установки любого клиент-серверного ПО для работы с данными;
-
Широкие возможности интеграции системы резервирования с автоматизированным пайплайном веб-проектом.
В качестве примера построения системы резервирования на основе обособленного сервера можно привести систему автоматизированного резервирования данных, используемую Дата-центром Freehost.UA, где в качестве ПО для работы с данными используется Proxmox Backup Server, характеристики которого мы уже рассмотрели выше.
Все виртуальные серверы автоматически ежедневно хранятся на PBS серверах расположенных в дата-центре. В качестве дополнительной услуги владельцы VPS серверов могут приобрести услугу сохранения резервных копий на удаленных серверах, расположенных в одном из дата-центров Евросоюза.
Для клиентов, нуждающихся в большем объеме и контроле при хранении данных, разработан специальный тарифный план аренды сервера “Сервер бекапов”. На его основе можно организовать свой PBS сервер, Veeam Backup, или Baсula например.
Указанная конфигурация уже несколько лет используется компанией в качестве основной для организации системы создания бекапов для своих клиентов, что позволяет реализовать любую схему работы в CI/CD режиме.
Подписывайтесь на наш телеграмм-канал https://t.me/freehostua, чтобы быть в курсе новых полезных материалов
Смотрите наш канал Youtube на https://www.youtube.com/freehostua.
Мы в чем ошиблись, или что-то пропустили?
Напишите об этом в комментариях, мы с удовольствием ответим и обсуждаем Ваши замечания и предложения.
|
Дата: 21.02.2025 Автор: Александр Ровник
|
|

Авторам статьи важно Ваше мнение. Будем рады его обсудить с Вами:
comments powered by Disqus