Поддержи Openmeetings

пятница, 18 марта 2016 г.

Свободные инструменты резервного копирования

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

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

В данной статье приводится сравнение свободных средств резервного копирования по материалам [1, 2], а также собственного опыта. Список инструментов, рассматриваемых в статье:

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

amanda bacula backuppc duplicity
Язык C, Perl C++ Perl Python
Шифрование GnuPG OpenSSL OS GnuPG
Метод передачи данных librsync свой librsync librsync или nfs
Скорость - лучшая - -

Amanda

AMANDA (от Advanced Maryland Automatic Network Disk Archiver) — система резервного копирования и архивирования информации.

Amanda использует для резервного копирования стандартные утилиты dump или rsync, поддерживает разные устройства хранения. В некоторых релизах наблюдались проблемы с названиями файлов на русском языке. Рекомендована компанией RedHat. Возможна интеграция с Windows на основе Cygwin.

Bacula

Bacula [1] — клиент-серверное программное обеспечение, позволяющее управлять резервным копированием, восстановлением, и проверкой данных по сети для компьютеров и операционных систем различных типов.

Метаданные Bacula хранит в базе данных. Без метаданных восстановление данных затруднено, поэтому при промышленном использовании желательно обеспечить целостность метаданных, например, с помощью резервного копирования управляющего сервера (сервера-директора).

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

Duplicity

Инструмент duplicity [1, 2] — производит резервное копирование в зашифрованные тома в tar-формате локально или на удаленный хост.

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

duplicity /usr scp://host.net/target_dir

Резервное копирование с удаленного хоста в локальную папку:

duplicity sftp://user@remote.host/var/www /home/backup/var/www

Восстановление:

duplicity restore /home/backup/var/www sftp://user@remote.host/var/www 

BackupPC

Полнофункциональная система бэкапа, но не очень известная и популярная. Интеграция с Windows на основе smb.

Другие утилиты

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

rsync

rsync [1] — программа, которая выполняет синхронизацию файлов и каталогов, используя контрольные суммы для того, чтобы не передавать одинаковые файлы (и части файлов) повторно.

Вызов rsync выглядит следующим образом:

rsync -avx user@remote.host:/path/to/copy /path/to/local/storage

Программа однопоточна, современные параллельные реализации работают быстрее. Использование ssh для шифрования трафика — тоже не самое быстрое решение.

rsnapshot

Инструмент rsnapshot [1, 2, 3, 4] написан на Perl, основывается на rsync. На хранилище резервных копий создается ряд папок, содержащих точные копии сохраняемых данных. Для уменьшения объема хранимых данных программа создает жесткие ссылки между одинаковыми файлами. По умолчанию будет храниться несколько ежечасных и дневных снимков состояния.

rdiff-backup

Инструмент rdiff-backup реализует механизм дифференциальных резервных копий на python, хранит дельты (различия) между файлами, получаемые инструментом rdiff (из библиотеки librsync). Работает медленнее остальных инструментов, особенно при копировании большого числа маленьких файлов, но сжимает лучше. Метаданные (права, даты, владелец) хранятся в отдельных файлах.

Пример запуска из консоли:

rdiff-backup remote.host::/home/web/sites/ /home/backup/rdiff/

backupninja

Новая система, основанная на rsync, предназначена для использования в небольшой компании. Есть заготовки для реализации резервного копирования БД.

obnam

Инструмент obnam [1] — клиент-серверное приложение для резервного копирования на языке Python, для передачи данных используется протокол SSH. Умеет делать снимки состояния, дедупликацию и шифрование GnuPG. Резервные копии файлов хранятся в томах. Метаданные хранятся в отдельных файлах. Возможен доступ к резервным копиям через монтирование виртуального раздела при помощи специально подготовленного FUSE-модуля.

Комментариев нет :

Отправить комментарий