Backup Part 3: Review and Testing of duplicity, duplicati

Backup Part 3: Review and Testing of duplicity, duplicati

Questa nota discute l'arnesi di salvezza chì facenu e copie di salvezza creendu archivi nantu à un servitore di salvezza.

Trà quelli chì risponde à i requisiti sò duplicità (chì hà una bella interfaccia in forma di deja dup) è duplicati.

Un altru strumentu di salvezza assai rimarchevule hè dar, ma postu chì hà una lista assai larga di opzioni - a metodulugia di teste copre à pena u 10% di ciò chì hè capace - ùn avemu micca pruvatu cum'è parte di u ciculu attuale.

Risultati previsti

Siccomu i dui candidati creanu archivi in ​​un modu o un altru, u tartu regulare pò esse usatu cum'è guida.

Inoltre, valuteremu quantu l'almacenamiento di dati in u servitore di almacenamiento hè ottimizatu creendu copie di salvezza chì cuntenenu solu a diferenza trà una copia completa è u statu attuale di i schedari, o trà l'archivi precedenti è attuali (incrementali, decrementali, etc.) .

Cumportamentu quandu creanu backups:

  1. Un numeru relativamente chjucu di schedari nantu à u servitore di salvezza di salvezza (cumparabile à u numeru di copie di salvezza o a dimensione di dati in GB), ma a so dimensione hè abbastanza grande (decine à centinaie di megabytes).
  2. A dimensione di u repositoriu includerà solu cambiamenti - ùn sarà micca almacenatu micca duplicati, cusì a dimensione di u repositoriu serà più chjuca chè cù u software basatu in rsync.
  3. Aspettate una carica di CPU pesante quandu si usa a compressione è / o criptografia, è prubabilmente una carica abbastanza alta di rete è di discu se u prucessu di archiviazione è / o criptografia hè in esecuzione in un servitore di salvezza di salvezza.

Eseguimu u cumandimu seguitu cum'è un valore di riferimentu:

cd /src/dir; tar -cf - * | ssh backup_server "cat > /backup/dir/archive.tar"

I risultati di l'esecuzione sò stati i seguenti:

Backup Part 3: Review and Testing of duplicity, duplicati

Tempu di esecuzione 3m12s. Pò esse vistu chì a vitezza hè limitata da u subsistema di discu di u servitore di salvezza di salvezza, cum'è in l'esempiu cù rsync. Solu un pocu più veloce, perchè ... a registrazione và à un schedariu.

Inoltre, per valutà a compressione, eseguimu a listessa opzione, ma attivate a compressione in u latu di u servitore di salvezza:

cd /src/dir; tar -cf - * | ssh backup_server "gzip > /backup/dir/archive.tgz"

I risultati sò:

Backup Part 3: Review and Testing of duplicity, duplicati

Tempu di esecuzione 10m11s. Probabilmente u collu di buttiglia hè u compressore à flussu unicu nantu à l'estremità di ricivutu.

U listessu cumandamentu, ma cù cumpressione trasferitu à u servitore cù i dati originali per pruvà l'ipotesi chì u collu di bottiglia hè un compressore unicu filatu.

cd /src/dir; tar -czf - * | ssh backup_server "cat > /backup/dir/archive.tgz"

Hè risultatu cusì:

Backup Part 3: Review and Testing of duplicity, duplicati

U tempu di esecuzione era 9m37s. A carica nantu à un core da u compressore hè chjaramente visibile, perchè A velocità di trasferimentu di a rete è a carica nantu à u sottosistema di u discu di l'origine sò simili.

Per evaluà a criptografia, pudete aduprà openssl o gpg cunnessendu un cumandamentu supplementu openssl o gpg in pipa. Per riferimentu ci sarà un cumandamentu cum'è questu:

cd /src/dir; tar -cf - * | ssh backup_server "gzip | openssl enc -e -aes256 -pass pass:somepassword -out /backup/dir/archive.tgz.enc"

I risultati sò stati cusì:

Backup Part 3: Review and Testing of duplicity, duplicati

U tempu d'esekzione hè diventatu 10m30s, postu chì 2 prucessi eranu in esecuzione da u latu di ricezione - u collu di bottiglia hè di novu un compressore unicu filatu, più una piccula criptografia sopra.

UPS: À a dumanda di bliznezz aghju aghjustatu testi cù pigz. Sè vo aduprate solu u compressore, avissi a piglià 6m30s, s'è vo aghjunghje ancu criptografia, saria circa 7m. L'immersione in u graficu di fondu hè una cache di discu unflushed:

Backup Part 3: Review and Testing of duplicity, duplicati

Duplicate a prova

Duplicity hè un software python per a copia di salvezza creendu archivi criptati in formatu tar.

Per l'archivi incrementali, librsync hè utilizatu, cusì pudete aspittà u cumpurtamentu descrittu in post precedente in a serie.

I backup ponu esse criptati è firmati cù gnupg, chì hè impurtante quandu si usanu diversi fornituri per almacenà e copie di salvezza (s3, backblaze, gdrive, etc.)

Videmu quali sò i risultati:

Quessi sò i risultati chì avemu avutu quandu eseguite senza criptografia

spoiler

Backup Part 3: Review and Testing of duplicity, duplicati

Durata di ogni esecuzione di prova:

Lanciamentu 1
Lanciamentu 2
Lanciamentu 3

16 m33 s
17 m20 s
16 m30 s

8 m29 s
9 m3 s
8 m45 s

5 m21 s
6 m04 s
5 m53 s

E quì sò i risultati quandu a criptografia gnupg hè attivata, cù una dimensione di chjave di 2048 bits:

Backup Part 3: Review and Testing of duplicity, duplicati

Tempu di operazione nantu à i stessi dati, cù criptografia:

Lanciamentu 1
Lanciamentu 2
Lanciamentu 3

17 m22 s
17 m32 s
17 m28 s

8 m52 s
9 m13 s
9 m3 s

5 m48 s
5 m40 s
5 m30 s

A dimensione di u bloccu hè stata indicata - 512 megabytes, chì hè chjaramente visibile in i grafici; A carica di u processatore hè stata in realtà à 50%, chì significa chì u prugramma ùn utilizeghja micca più di un core di processore.

U principiu di u funziunamentu di u prugramma hè ancu chjaramente visibile: anu pigliatu un pezzu di dati, cumpressu, è mandatu à un servitore di salvezza di salvezza, chì pò esse abbastanza lento.
Una altra funzione hè u tempu di esecuzione previsible di u prugramma, chì dipende solu da a dimensione di i dati cambiati.

L'attivazione di a criptografia ùn hà micca aumentatu significativamente u tempu di esecuzione di u prugramma, ma hà aumentatu a carica di u processatore di circa 10%, chì pò esse un bonu bonu.

Sfurtunatamente, stu prugramma ùn hè statu incapace di detectà currettamente a situazione cù a rinominazione di u repertoriu, è a dimensione di u repositoriu risultante hè stata uguale à a dimensione di i cambiamenti (vale à dì, tutti i 18GB), ma a capacità di utilizà un servitore micca fiduciale per a salvezza chjaramente. copre stu cumpurtamentu.

Duplicate a prova

Stu software hè scrittu in C # è funziona cù un inseme di biblioteche da Mono. Ci hè una GUI è una versione CLI.

A lista apprussimativa di e funzioni principali hè simile à a duplicità, cumpresi diversi fornitori di almacenamiento di salvezza, però, à u cuntrariu di a duplicità, a maiò parte di e funzioni sò dispunibuli senza strumenti di terzu. Ch'ella sia un plus o un minus dipende da u casu specificu, ma per i principianti, hè più faciule più faciule d'avè una lista di tutte e funzioni davanti à elli in una volta, invece di avè da installà pacchetti supplementari per python, cum'è hè. u casu cù duplicità.

Un'altra piccula sfumatura - u prugramma scrive attivamente una basa di dati sqlite lucale in nome di l'utilizatore chì principia a copia di salvezza, cusì avete bisognu di assicurà chì a basa di dati necessaria hè specificatu currettamente ogni volta chì u prucessu hè cuminciatu cù u cli. Quandu travaglia cù GUI o WEBGUI, i dettagli seranu oculati da l'utilizatore.

Videmu quali indicatori pò pruduce sta suluzione:

Se disattiveghjanu a criptografia (è WEBGUI ùn hè micca cunsigliatu di fà questu), i risultati sò i seguenti:

Backup Part 3: Review and Testing of duplicity, duplicati

Oghje ghjornu:

Lanciamentu 1
Lanciamentu 2
Lanciamentu 3

20 m43 s
20 m13 s
20 m28 s

5 m21 s
5 m40 s
5 m35 s

7 m36 s
7 m54 s
7 m49 s

Cù a criptografia attivata, usendu aes, pare cusì:

Backup Part 3: Review and Testing of duplicity, duplicati

Oghje ghjornu:

Lanciamentu 1
Lanciamentu 2
Lanciamentu 3

29 m9 s
30 m1 s
29 m54 s

5 m29 s
6 m2 s
5 m54 s

8 m44 s
9 m12 s
9 m1 s

È s'è vo aduprate u prugramma esternu gnupg, i seguenti risultati venenu fora:

Backup Part 3: Review and Testing of duplicity, duplicati

Lanciamentu 1
Lanciamentu 2
Lanciamentu 3

26 m6 s
26 m35 s
26 m17 s

5 m20 s
5 m48 s
5 m40 s

8 m12 s
8 m42 s
8 m15 s

Comu pudete vede, u prugramma pò travaglià in parechji fili, ma questu ùn face micca una suluzione più produtiva, è se paragunate u travagliu di criptografia, lancia un prugramma esternu.
turnò à esse più veloce di utilizà a biblioteca da u set Mono. Questu pò esse duvuta à u fattu chì u prugramma esternu hè più ottimizatu.

Un puntu piacevule era ancu u fattu chì a dimensione di u repositoriu pigghia esattamente quant'è a data cambiata attuale, i.e. duplicati hà rilevatu un rinomina di u cartulare è hà trattatu sta situazione currettamente. Questu pò esse vistu quandu eseguisce a seconda prova.

In generale, impressioni abbastanza pusitivi di u prugramma, cumpresu esse abbastanza amichevuli à i novi.

Risultati

I dui candidati travagliavanu piuttostu lentamente, ma in generale, paragunatu à u tartu regulare, ci hè prugressu, almenu cù duplicati. U prezzu di tali prugressu hè ancu chjaru - una carica notevuli
processore. In generale, ùn ci sò micca deviazioni spiciali in a prediczione di i risultati.

scuperti

Se ùn avete micca bisognu di affruntà in ogni locu, è ancu avè un processore di spare, qualsiasi di e soluzioni cunsiderate farà, in ogni casu, assai travagliu hè statu fattu chì ùn deve micca esse ripetutu scrivendu script wrapper nantu à u tar. . A prisenza di criptografia hè una pruprietà assai necessaria se u servitore per almacenà e copie di salvezza ùn pò micca esse cumpletamente fiducia.

Paragunatu à suluzione basatu rsync - u rendiment pò esse parechje volte peggiu, malgradu u fattu chì in a so forma pura tar hà travagliatu 20-30% più veloce di rsync.
Ci hè risparmiu nantu à a dimensione di u repository, ma solu cù duplicati.

Avvisu

Backup, parte 1: Perchè a copia di salvezza hè necessariu, una panoramica di metudi, tecnulugia
Backup Part 2: Revisione è teste di strumenti di salvezza basati in rsync
Backup Part 3: Review and testing duplicity, duplicati, deja dup
Backup Part 4: Revisione è teste zbackup, restic, borgbackup
Backup Part 5: Testing bacula è veeam backup per linux
Backup Part 6: Comparazione di Strumenti di Backup
Backup Part 7: Conclusioni

Postatu da: Pavel Demkovich

Source: www.habr.com

Add a comment