Архивиране, част 6: Сравняване на инструментите за архивиране

Архивиране, част 6: Сравняване на инструментите за архивиране
Тази статия ще сравни инструментите за архивиране, но първо трябва да разберете колко бързо и добре се справят с възстановяването на данни от архиви.
За по-лесно сравнение ще обмислим възстановяване от пълно архивиране, особено след като всички кандидати поддържат този режим на работа. За простота числата вече са осреднени (средната аритметична стойност от няколко серии). Резултатите ще бъдат обобщени в таблица, която ще съдържа и информация за възможностите: наличие на уеб интерфейс, лекота на настройка и работа, възможност за автоматизиране, наличие на различни допълнителни функции (например проверка на целостта на данните) и т.н. Графиките ще показват натоварването на сървъра, където ще се използват данните (а не сървъра за съхранение на резервни копия).

Възстановяване на данни

rsync и tar ще се използват като отправна точка оттогава те обикновено се основават на тях прости скриптове за създаване на резервни копия.

Rsync се справи с набора от тестови данни за 4 минути и 28 секунди, показвайки

такова натоварванеАрхивиране, част 6: Сравняване на инструментите за архивиране

Процесът на възстановяване се сблъска с ограничение на дисковата подсистема на сървъра за съхранение на резервни копия (графики на трион). Можете също така ясно да видите зареждането на едно ядро ​​без никакви проблеми (low iowait и softirq - няма проблеми с диска и мрежата, съответно). Тъй като другите две програми, а именно rdiff-backup и rsnapshot, са базирани на rsync и също предлагат обикновен rsync като инструмент за възстановяване, те ще имат приблизително същия профил на натоварване и време за възстановяване на архива.

Катран свърши го малко по-бързо

2 минути и 43 секунди:Архивиране, част 6: Сравняване на инструментите за архивиране

Общото натоварване на системата беше по-високо средно с 20% поради увеличения softirq - режийните разходи по време на работа на мрежовата подсистема се увеличиха.

Ако архивът бъде допълнително компресиран, времето за възстановяване се увеличава до 3 минути 19 секунди.
с такова натоварване на главния сървър (разопаковане отстрани на главния сървър):Архивиране, част 6: Сравняване на инструментите за архивиране

Процесът на декомпресия заема и двете процесорни ядра, тъй като има два изпълнявани процеса. Като цяло това е очакваният резултат. Също така, сравним резултат (3 минути и 20 секунди) беше получен при стартиране на gzip от страна на сървъра с резервни копия; профилът на натоварване на главния сървър беше много подобен на изпълнението на tar без gzip компресора (вижте предишната графика).

В rdiff-резервно копие можете да синхронизирате последното архивиране, което сте направили, като използвате обикновен rsync (резултатите ще бъдат подобни), но по-старите архиви все още трябва да бъдат възстановени с помощта на програмата rdiff-backup, която завърши възстановяването за 17 минути и 17 секунди, показвайки

това натоварване:Архивиране, част 6: Сравняване на инструментите за архивиране

Може би това е имало за цел поне да ограничи скоростта на авторите предлагат такова решение. Самият процес на възстановяване на резервно копие отнема малко по-малко от половината от едно ядро, с пропорционално сравнима производителност (т.е. 2-5 пъти по-бавна) на диск и мрежа с rsync.

Rsnapshot За възстановяване предлага използването на обикновен rsync, така че резултатите ще бъдат подобни. В общи линии така се получи.

Оригвам се Изпълних задачата за възстановяване на резервно копие за 7 минути и 2 секунди с
с това натоварване:Архивиране, част 6: Сравняване на инструментите за архивиране

Работи доста бързо и поне е много по-удобно от чистия rsync: не е нужно да помните никакви флагове, прост и интуитивен интерфейс на cli, вградена поддръжка за множество копия - въпреки че е два пъти по-бавно. Ако трябва да възстановите данни от последното архивиране, което сте направили, можете да използвате rsync, с няколко предупреждения.

Програмата показа приблизително същата скорост и натоварване BackupPC при активиране на режима на прехвърляне на rsync, разполагане на резервното копие за

7 минути и 42 секунди:Архивиране, част 6: Сравняване на инструментите за архивиране

Но в режим на пренос на данни BackupPC се справи с tar по-бавно: за 12 минути и 15 секунди натоварването на процесора като цяло беше по-ниско

един път и половина:Архивиране, част 6: Сравняване на инструментите за архивиране

Лицемерие без криптиране показа малко по-добри резултати, като възстанови резервно копие за 10 минути и 58 секунди. Ако активирате криптиране с помощта на gpg, времето за възстановяване се увеличава до 15 минути и 3 секунди. Освен това, когато създавате хранилище за съхраняване на копия, можете да посочите размера на архива, който ще се използва при разделянето на входящия поток от данни. Като цяло при конвенционалните твърди дискове, също поради еднонишковия режим на работа, няма голяма разлика. Може да се появи с различни размери на блока, когато се използва хибридно съхранение. Натоварването на главния сървър по време на възстановяване беше както следва:

без криптиранеАрхивиране, част 6: Сравняване на инструментите за архивиране

с криптиранеАрхивиране, част 6: Сравняване на инструментите за архивиране

Дубликат показа сравнима скорост на възстановяване, завършвайки го за 13 минути и 45 секунди. Проверката на коректността на възстановените данни отне още около 5 минути (общо около 19 минути). Натоварването беше

доста високо:Архивиране, част 6: Сравняване на инструментите за архивиране

Когато aes криптирането беше активирано вътрешно, времето за възстановяване беше 21 минути 40 секунди, с максимално използване на процесора (и двете ядра!) по време на възстановяване; При проверка на данните беше активна само една нишка, заемаща едно ядро ​​на процесора. Проверката на данните след възстановяване отне същите 5 минути (общо почти 27 минути).

РезултатАрхивиране, част 6: Сравняване на инструментите за архивиране

duplicati беше малко по-бърз с възстановяването при използване на външната gpg програма за криптиране, но като цяло разликите от предишния режим са минимални. Времето за работа беше 16 минути 30 секунди, с проверка на данните за 6 минути. Натоварването беше

такива:Архивиране, част 6: Сравняване на инструментите за архивиране

AMANDA, използвайки tar, го завърши за 2 минути 49 секунди, което по принцип е много близко до обикновения tar. Натоварване на системата по принцип

същото:Архивиране, част 6: Сравняване на инструментите за архивиране

При възстановяване на резервно копие с помощта на zbackup бяха получени следните резултати:

криптиране, lzma компресияАрхивиране, част 6: Сравняване на инструментите за архивиране

Времетраене 11 минути и 8 секунди

AES криптиране, lzma компресияАрхивиране, част 6: Сравняване на инструментите за архивиране

Време на работа 14 минути

AES криптиране, lzo компресияАрхивиране, част 6: Сравняване на инструментите за архивиране

Времетраене 6 минути, 19 секунди

Като цяло не е лошо. Всичко зависи от скоростта на процесора на резервния сървър, което се вижда ясно от времето на работа на програмата с различни компресори. От страна на резервния сървър беше пуснат обикновен tar, така че ако го сравните с него, възстановяването е 3 пъти по-бавно. Може да си струва да проверите работата в многонишков режим, с повече от две нишки.

BorgBackup в некриптиран режим беше малко по-бавно от tar, за 2 минути 45 секунди, но за разлика от tar, стана възможно дедупликацията на хранилището. Товарът се оказа

следното:Архивиране, част 6: Сравняване на инструментите за архивиране

Ако активирате blake-базирано криптиране, скоростта на възстановяване на архива е малко по-бавна. Времето за възстановяване в този режим е 3 минути 19 секунди и натоварването е изчезнало

като този:Архивиране, част 6: Сравняване на инструментите за архивиране

AES криптирането е малко по-бавно, времето за възстановяване е 3 минути 23 секунди, натоварването е особено

не се е променило:Архивиране, част 6: Сравняване на инструментите за архивиране

Тъй като Borg може да работи в многопоточен режим, натоварването на процесора е максимално и когато се активират допълнителни функции, времето за работа просто се увеличава. Очевидно си струва да проучите многопоточността по начин, подобен на zbackup.

Рестик се справи с възстановяването малко по-бавно, времето за работа беше 4 минути 28 секунди. Товарът изглеждаше така

така:Архивиране, част 6: Сравняване на инструментите за архивиране

Очевидно процесът на възстановяване работи в няколко нишки, но ефективността не е толкова висока, колкото тази на BorgBackup, но сравнима във времето с обикновения rsync.

С urBackup Възстановяването на данните беше възможно за 8 минути и 19 секунди, натоварването беше

такива:Архивиране, част 6: Сравняване на инструментите за архивиране

Натоварването все още не е много високо, дори по-ниско от това на катрана. На места има изблици, но не повече от натоварването на едно ядро.

Избор и обосновка на критерии за сравнение

Както беше посочено в една от предишните статии, системата за архивиране трябва да отговаря на следните критерии:

  • Лекота на използване
  • гъвкавост
  • стабилност
  • бързина

Струва си да разгледаме всяка точка поотделно по-подробно.

Лекота на работа

Най-добре е, когато има един бутон „Направете всичко добре“, но ако се върнете към реални програми, най-удобното ще бъде някакъв познат и стандартен принцип на работа.
Повечето потребители най-вероятно ще бъдат по-добре, ако не им се налага да помнят куп ключове за cli, да конфигурират куп различни, често неясни опции чрез уеб или tui или да настройват известия за неуспешна операция. Това включва и възможността за лесно „вместване“ на решение за архивиране в съществуващата инфраструктура, както и автоматизация на процеса на архивиране. Има и възможност за инсталиране с помощта на мениджър на пакети или с една или две команди като „изтегляне и разопаковане“. curl ссылка | sudo bash - сложен метод, тъй като трябва да проверите какво пристига през връзката.

Например, от разглежданите кандидати, просто решение е burp, rdiff-backup и restic, които имат мнемонични ключове за различни режими на работа. Малко по-сложни са borg и duplicity. Най-трудна беше АМАНДА. Останалите са някъде по средата по отношение на лекотата на използване. Във всеки случай, ако имате нужда от повече от 30 секунди, за да прочетете ръководството за потребителя или трябва да отидете в Google или друга търсачка и също така да превъртите дълъг лист с помощ, решението е трудно, по един или друг начин.

Някои от разглежданите кандидати са в състояние автоматично да изпратят съобщение чрез e-mailjabber, докато други разчитат на конфигурирани предупреждения в системата. Освен това най-често сложните решения имат не съвсем очевидни настройки за предупреждение. Във всеки случай, ако програмата за архивиране генерира ненулев код за връщане, който ще бъде правилно разбран от системната услуга за периодични задачи (ще бъде изпратено съобщение до системния администратор или директно до мониторинга) - ситуацията е проста. Но ако системата за архивиране, която не работи на резервен сървър, не може да бъде конфигурирана, очевидният начин да се каже за проблема е, че сложността вече е прекомерна. Във всеки случай издаването на предупреждения и други съобщения само към уеб интерфейса или към дневника е лоша практика, тъй като най-често те ще бъдат игнорирани.

Що се отнася до автоматизацията, една проста програма може да чете променливи на средата, които задават нейния режим на работа, или има разработен cli, който може напълно да дублира поведението при работа през уеб интерфейс, например. Това включва и възможността за непрекъсната работа, наличието на възможности за разширение и т.н.

гъвкавост

Отчасти повтаряйки предишния подраздел по отношение на автоматизацията, не би трябвало да представлява особен проблем „вместването“ на процеса на архивиране в съществуващата инфраструктура.
Струва си да се отбележи, че използването на нестандартни портове (е, с изключение на уеб интерфейса) за работа, прилагането на криптиране по нестандартен начин, обменът на данни с помощта на нестандартен протокол са признаци на не - универсално решение. В по-голямата си част всички кандидати ги имат по един или друг начин поради очевидната причина: простотата и гъвкавостта обикновено не вървят заедно. По изключение - оригване, има и други.

Като знак - възможността за работа с обикновен ssh.

Работна скорост

Най-противоречивата и спорна точка. От една страна, стартирахме процеса, той работи възможно най-бързо и не пречи на основните задачи. От друга страна, има скок в трафика и натоварването на процесора по време на периода на архивиране. Също така си струва да се отбележи, че най-бързите програми за правене на копия обикновено са най-бедните по отношение на функциите, които са важни за потребителите. Отново: ако за да получите един злополучен текстов файл с размер на няколко десетки байта с парола и поради това цялата услуга струва (да, да, разбирам, че процесът на архивиране най-често не е виновен тук), и трябва да прочетете отново последователно всички файлове в хранилището или да разширите целия архив - системата за архивиране никога не е бърза. Друг момент, който често се превръща в пречка, е скоростта на разгръщане на резервно копие от архив. Тук има ясно предимство за тези, които могат просто да копират или преместват файлове на желаното място без много манипулации (rsync, например), но най-често проблемът трябва да бъде разрешен по организационен начин, емпирично: чрез измерване на времето за възстановяване на архива и открито информиране на потребителите за това.

стабилност

Трябва да се разбира по следния начин: от една страна, трябва да е възможно резервното копие да се разположи обратно по всякакъв начин, от друга страна, то трябва да е устойчиво на различни проблеми: прекъсване на мрежата, повреда на диска, изтриване на част от хранилище.

Сравнение на инструментите за архивиране

Време за създаване на копие
Време за възстановяване на копието
Лесен монтаж
Лесна настройка
Проста употреба
Проста автоматизация
Имате ли нужда от клиентски сървър?
Проверка на целостта на хранилището
Диференциални копия
Работа чрез тръба
гъвкавост
независимост
Прозрачност на хранилището
Шифрование
компресия
Дедупликация
Уеб интерфейс
Пълнене до облака
Поддръжка на Windows
марка

Rsync
4m15s
4m28s
да
не
не
не
да
не
не
да
не
да
да
не
не
не
не
не
да
6

Катран
чист
3m12s
2m43s
да
не
не
не
не
не
да
да
не
да
не
не
не
не
не
не
да
8,5

GZIP
9m37s
3m19s
да

Rdiff-резервно копие
16m26s
17m17s
да
да
да
да
да
не
да
не
да
не
да
не
да
да
да
не
да
11

Rsnapshot
4m19s
4m28s
да
да
да
да
не
не
да
не
да
не
да
не
не
да
да
не
да
12,5

Оригвам се
11m9s
7m2s
да
не
да
да
да
да
да
не
да
да
не
не
да
не
да
не
да
10,5

Лицемерие
без криптиране
16m48s
10m58s
да
да
не
да
не
да
да
не
не
да
не
да
да
не
да
не
да
11

GPG
17m27s
15m3s

Дубликат
без криптиране
20m28s
13m45s
не
да
не
не
не
да
да
не
не
да
не
да
да
да
да
да
да
11

AES
29m41s
21m40s

GPG
26m19s
16m30s

zbackup
без криптиране
40m3s
11m8s
да
да
не
не
не
да
да
да
не
да
не
да
да
да
не
не
не
10

AES
42m0s
14m1s

aes+lzo
18m9s
6m19s

BorgBackup
без криптиране
4m7s
2m45s
да
да
да
да
да
да
да
да
да
да
не
да
да
да
да
не
да
16

AES
4m58s
3m23s

Блейк2
4m39s
3m19s

Рестик
5m38s
4m28s
да
да
да
да
не
да
да
да
да
да
не
да
не
да
не
да
да
15,5

urBackup
8m21s
8m19s
да
да
да
не
да
не
да
не
да
да
не
да
да
да
да
не
да
12

Аманда
9m3s
2m49s
да
не
не
да
да
да
да
не
да
да
да
да
да
не
да
да
да
13

BackupPC
Rsync
12m22s
7m42s
да
не
да
да
да
да
да
не
да
не
не
да
да
не
да
не
да
10,5

катран
12m34s
12m15s

Легенда на таблицата:

  • Зелено, време на работа по-малко от пет минути или отговор „Да“ (с изключение на колоната „Нуждаете се от клиентски сървър?“), 1 точка
  • Жълто, време за работа от пет до десет минути, 0.5 точки
  • Червено, работното време е повече от десет минути или отговорът е „Не“ (с изключение на колоната „Имате ли нужда от клиентски сървър?“), 0 точки

Според горната таблица най-простият, най-бързият и в същото време удобен и мощен инструмент за архивиране е BorgBackup. Рестич зае второто място, останалите разглеждани кандидати бяха поставени приблизително еднакво с разлика от една или две точки в края.

Благодаря на всички, които прочетоха поредицата до края, каня ви да обсъдите вариантите и да предложите свои, ако има такива. С напредването на дискусията таблицата може да бъде разширена.

Резултатът от поредицата ще бъде последната статия, в която ще има опит да се разработи идеален, бърз и управляем инструмент за архивиране, който ви позволява да разположите копие обратно за възможно най-кратко време и в същото време да бъде удобен и лесен за конфигуриране и поддръжка.

Съобщение

Архивиране, част 1: Защо е необходимо архивиране, преглед на методите, технологиите
Архивиране Част 2: Преглед и тестване на базирани на rsync инструменти за архивиране
Архивиране, част 3: Преглед и тестване на дублиране, дублиране
Архивиране Част 4: Преглед и тестване на zbackup, restic, borgbackup
Архивиране, част 5: Тестване на bacula и veeam архивиране за linux
Архивиране, част 6: Сравняване на инструментите за архивиране
Архивиране Част 7: Заключения

Източник: www.habr.com

Добавяне на нов коментар