Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Nòt sa a diskite sou zouti backup ki fè sovgad lè yo kreye achiv sou yon sèvè backup.

Pami moun ki satisfè kondisyon yo se duplicity (ki gen yon koòdone bèl nan fòm lan nan deja dup) ak duplicati.

Yon lòt zouti backup trè remakab se dar, men depi li gen yon lis opsyon trè vaste - metodoloji tès la kouvri apèn 10% nan sa li kapab - nou pa teste li kòm yon pati nan sik aktyèl la.

Rezilta espere

Depi tou de kandida yo kreye achiv nan yon fason oswa yon lòt, goudwon ​​regilye yo ka itilize kòm yon gid.

Anplis de sa, nou pral evalye kòman depo done sou sèvè depo a optimize lè nou kreye kopi backup ki gen sèlman diferans ki genyen ant yon kopi konplè ak eta aktyèl la nan dosye yo, oswa ant achiv yo anvan ak aktyèl (enkresyonèl, dekreman, elatriye) .

Konpòtman lè w ap kreye sovgad:

  1. Yon relativman ti kantite dosye sou sèvè depo backup la (konparab ak kantite kopi backup oswa gwosè a nan done nan GB), men gwosè yo se byen gwo (dè dizèn a dè santèn de megabyte).
  2. Gwosè depo a pral sèlman gen ladan chanjman - pa gen okenn kopi yo pral estoke, kidonk gwosè depo a pral pi piti pase ak lojisyèl ki baze sou rsync.
  3. Atann chay CPU lou lè w ap itilize konpresyon ak/oswa chifreman, ak chans byen wo rezo ak chaj disk si pwosesis la achiv ak/oswa chifreman ap kouri sou yon sèvè depo backup.

Ann kouri kòmandman sa a kòm yon valè referans:

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

Rezilta ekzekisyon yo te jan sa a:

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Tan ekzekisyon 3m12s. Li ka wè ke vitès la limite pa subsistèm ki gen kapasite nan sèvè a depo backup, tankou nan egzanp lan ak rsync. Sèlman yon ti kras pi vit, paske... anrejistreman ale nan yon sèl dosye.

Epitou, pou evalye konpresyon, ann kouri menm opsyon an, men pèmèt konpresyon sou bò sèvè backup la:

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

Rezilta yo se:

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Tan ekzekisyon 10m11s. Gen plis chans kou boutèy la se COMPRESSOR a sèl-koule sou fen k ap resevwa a.

Kòmandman an menm, men ak konpresyon transfere nan sèvè a ak done orijinal yo teste ipotèz la ke kou boutèy la se yon COMPRESSOR sèl-threaded.

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

Li te vin tankou sa a:

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Tan ekzekisyon an te 9m37s. Chaj la sou yon nwayo pa COMPRESSOR a klèman vizib, paske Vitès transfè rezo a ak chaj la sou sous-sistèm disk sous yo sanble.

Pou evalye chifreman, ou ka itilize openssl oswa gpg lè w konekte yon lòt lòd openssl oswa gpg nan tiyo. Pou referans pral gen yon kòmandman tankou sa a:

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

Rezilta yo te soti konsa:

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Tan nan ekzekisyon te tounen soti nan 10m30s, depi 2 pwosesis yo te kouri sou bò k ap resevwa a - kou boutèy la se ankò yon COMPRESSOR sèl-threaded, plis anlè chifreman ti.

UPS: Sou demann bliznezz mwen ajoute tès ak pigz. Si ou itilize sèlman COMPRESSOR a, li ta pran 6m30s, si ou ajoute tou chifreman, li ta apeprè 7m. Plonje nan graf anba a se yon kachèt disk san koule:

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Tès kopi

Duplicity se yon lojisyèl python pou backup pa kreye achiv chiffres nan fòma goudwon.

Pou achiv incrémentielle, librsync yo itilize, kidonk, ou ka atann konpòtman ki dekri nan pòs anvan nan seri a.

Sovgad yo ka chifre epi siyen lè l sèvi avèk gnupg, ki enpòtan lè w ap itilize diferan founisè pou estoke sovgad (s3, backblaze, gdrive, elatriye)

Ann wè ki rezilta yo ye:

Sa yo se rezilta yo nou te resevwa lè kouri san chifreman

beke

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Tan kouri nan chak tès kouri:

Lanse 1
Lanse 2
Lanse 3

16m33s
17m20s
16m30s

8m29s
9m3s
8m45s

5m21s
6m04s
5m53s

Ak isit la yo se rezilta yo lè gnupg chifreman pèmèt, ak yon gwosè kle nan 2048 bit:

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Tan opere sou menm done yo, ak chifreman:

Lanse 1
Lanse 2
Lanse 3

17m22s
17m32s
17m28s

8m52s
9m13s
9m3s

5m48s
5m40s
5m30s

Gwosè blòk la te endike - 512 megabytes, ki klèman vizib nan graf yo; Chaj la processeur aktyèlman rete nan 50%, ki vle di ke pwogram nan itilize pa plis pase yon nwayo processeur.

Prensip la nan operasyon pwogram nan se tou byen klè vizib: yo pran yon moso nan done, konprese li, epi voye li nan yon sèvè depo backup, ki ka byen dousman.
Yon lòt karakteristik se tan an previzib kouri nan pwogram nan, ki depann sèlman sou gwosè a nan done yo chanje.

Pèmèt chifreman pa t 'siyifikativman ogmante tan kouri pwogram nan, men li ogmante chaj la processeur pa apeprè 10%, ki ka byen yon bonis bèl.

Malerezman, pwogram sa a pa t 'kapab kòrèkteman detekte sitiyasyon an ak chanje non anyè a, ak gwosè repozitwa ki kapab lakòz yo te tounen egal a gwosè a nan chanjman yo (sa vle di, tout 18GB), men kapasite nan sèvi ak yon sèvè ki pa fè konfyans pou backup klèman. kouvri konpòtman sa a.

Tès kopi

Lojisyèl sa a ekri nan C # epi li kouri lè l sèvi avèk yon seri bibliyotèk soti nan Mono. Gen yon entèfas ak yon vèsyon CLI.

Lis apwoksimatif karakteristik prensipal yo sanble ak doubl, ki gen ladan plizyè founisè depo backup, sepandan, kontrèman ak doub, pifò karakteristik yo disponib san zouti twazyèm pati. Kit sa a se yon plis oswa yon mwens depann sou ka espesifik la, men pou débutan, li pi fasil pou gen yon lis tout karakteristik yo devan yo nan yon fwa, olye ke yo gen enstale pakè adisyonèl pou python, jan se. ka a ak doubl.

Yon lòt ti nuans - pwogram nan aktivman ekri yon baz done sqlite lokal sou non itilizatè a ki kòmanse backup la, kidonk ou bezwen anplis asire ke baz done ki nesesè yo byen espesifye chak fwa yo kòmanse pwosesis la lè l sèvi avèk cli la. Lè w ap travay atravè GUI oswa WEBGUI, detay yo pral kache pou itilizatè a.

Ann wè ki endikatè solisyon sa a ka pwodwi:

Si ou fèmen chifreman (ak WEBGUI pa rekòmande pou fè sa), rezilta yo se jan sa a:

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Travay tan:

Lanse 1
Lanse 2
Lanse 3

20m43s
20m13s
20m28s

5m21s
5m40s
5m35s

7m36s
7m54s
7m49s

Avèk chifreman pèmèt, lè l sèvi avèk aes, li sanble sa a:

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Travay tan:

Lanse 1
Lanse 2
Lanse 3

29m9s
30m1s
29m54s

5m29s
6m2s
5m54s

8m44s
9m12s
9m1s

Men, si ou itilize pwogram ekstèn gnupg, rezilta sa yo soti:

Sovgad Pati 3: Revizyon ak Tès doubplisite, kopi

Lanse 1
Lanse 2
Lanse 3

26m6s
26m35s
26m17s

5m20s
5m48s
5m40s

8m12s
8m42s
8m15s

Kòm ou ka wè, pwogram nan ka travay nan plizyè fil, men sa a pa fè li yon solisyon pi pwodiktif, epi si ou konpare travay la chifreman, li lanse yon pwogram ekstèn.
yo te vin pi vit pase lè l sèvi avèk bibliyotèk la soti nan seri a Mono. Sa a ka akòz lefèt ke pwogram nan ekstèn se pi optimize.

Yon lòt bèl bagay se te lefèt ke gwosè a nan repozitwa a pran egzakteman otan ke done aktyèl la chanje, i.e. duplicati te detekte yon non anyè epi jere sitiyasyon sa a kòrèkteman. Sa a ka wè lè w ap kouri dezyèm tès la.

An jeneral, enpresyon san patipri pozitif nan pwogram nan, ki gen ladan yo te jistis zanmitay ak newbies.

Jwenn

Tou de kandida yo te travay olye dousman, men an jeneral, konpare ak goudwon ​​regilye, gen pwogrè, omwen ak duplicati. Pri a nan pwogrè sa yo tou klè - yon fado aparan
processeur. An jeneral, pa gen okenn devyasyon espesyal nan predi rezilta yo.

Jwenn

Si ou pa bezwen prese nenpòt kote, epi tou gen yon processeur rezèv, nenpòt nan solisyon yo konsidere pral fè, nan nenpòt ka, yo te fè anpil travay ki pa ta dwe repete pa ekri scripts wrapper sou tèt goudwon. . Prezans nan chifreman se yon pwopriyete trè nesesè si sèvè a pou estoke kopi backup pa ka konplètman fè konfyans.

Konpare ak solisyon ki baze sou rsync - pèfòmans ka plizyè fwa pi mal, malgre lefèt ke nan fòm pi li yo goudwon ​​te travay 20-30% pi vit pase rsync.
Gen ekonomi sou gwosè a nan repozitwa a, men se sèlman ak duplicati.

Anons

Sovgad, pati 1: Poukisa backup nesesè, yon apèsi sou metòd, teknoloji
Sovgad Pati 2: Revize ak teste zouti backup ki baze sou rsync
Sovgad Pati 3: Revize ak tès duplicity, duplicati, deja dup
Sovgad Pati 4: Revize ak tès zbackup, restic, borgbackup
Sovgad Pati 5: Tès bacula ak veeam backup pou linux
Sovgad Pati 6: Konpare Zouti Sovgad
Sovgad Pati 7: Konklizyon

Afiche pa: Pavel Demkovich

Sous: www.habr.com

Add nouvo kòmantè