Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Mae'r nodyn hwn yn trafod offer wrth gefn sy'n perfformio copïau wrth gefn trwy greu archifau ar weinydd wrth gefn.

Ymhlith y rhai sy'n bodloni'r gofynion mae dyblygu (sydd â rhyngwyneb braf ar ffurf deja dup) a dyblygu.

Offeryn wrth gefn hynod iawn arall yw dar, ond gan fod ganddo restr helaeth iawn o opsiynau - prin y mae'r fethodoleg brofi yn cwmpasu prin 10% o'r hyn y mae'n gallu ei wneud - nid ydym yn ei brofi fel rhan o'r cylch presennol.

Canlyniadau disgwyliedig

Gan fod y ddau ymgeisydd yn creu archifau mewn rhyw ffordd neu'i gilydd, gellir defnyddio tar rheolaidd fel canllaw.

Yn ogystal, byddwn yn gwerthuso pa mor dda y caiff storio data ar y gweinydd storio ei optimeiddio trwy greu copïau wrth gefn sy'n cynnwys dim ond y gwahaniaeth rhwng copi llawn a chyflwr presennol y ffeiliau, neu rhwng yr archifau blaenorol a chyfredol (cynyddol, gostyngol, ac ati.) .

Ymddygiad wrth greu copïau wrth gefn:

  1. Nifer cymharol fach o ffeiliau ar y gweinydd storio wrth gefn (yn debyg i nifer y copïau wrth gefn neu faint y data ym Mhrydain Fawr), ond mae eu maint yn eithaf mawr (degau i gannoedd o megabeit).
  2. Bydd maint y gadwrfa yn cynnwys newidiadau yn unig - ni fydd unrhyw gopïau dyblyg yn cael eu storio, felly bydd maint y storfa yn llai na gyda meddalwedd sy'n seiliedig ar rsync.
  3. Disgwyl llwyth CPU trwm wrth ddefnyddio cywasgu a / neu amgryptio, a llwyth rhwydwaith a disg eithaf uchel yn debygol os yw'r broses archifo a / neu amgryptio yn rhedeg ar weinydd storio wrth gefn.

Gadewch i ni redeg y gorchymyn canlynol fel gwerth cyfeirio:

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

Roedd y canlyniadau gweithredu fel a ganlyn:

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Amser cyflawni 3m12s. Gellir gweld bod y cyflymder wedi'i gyfyngu gan is-system ddisg y gweinydd storio wrth gefn, fel yn yr enghraifft gyda rsync. Dim ond ychydig yn gyflymach, oherwydd ... cofnodi yn mynd i un ffeil.

Hefyd, i werthuso cywasgu, gadewch i ni redeg yr un opsiwn, ond galluogi cywasgu ar ochr y gweinydd wrth gefn:

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

Y canlyniadau yw:

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Amser cyflawni 10m11s. Yn fwyaf tebygol, y dagfa yw'r cywasgydd un llif ar y pen derbyn.

Yr un gorchymyn, ond gyda chywasgu wedi'i drosglwyddo i'r gweinydd gyda'r data gwreiddiol i brofi'r ddamcaniaeth bod y dagfa yn gywasgydd un edau.

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

Trodd allan fel hyn:

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Yr amser cyflawni oedd 9m37s. Mae'r llwyth ar un craidd gan y cywasgydd i'w weld yn glir, oherwydd Mae'r cyflymder trosglwyddo rhwydwaith a'r llwyth ar yr is-system ddisg ffynhonnell yn debyg.

I werthuso amgryptio, gallwch ddefnyddio openssl neu gpg trwy gysylltu gorchymyn ychwanegol openssl neu gpg yn y bibell. Er gwybodaeth bydd gorchymyn fel hyn:

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

Daeth y canlyniadau allan fel hyn:

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Trodd yr amser gweithredu allan i fod yn 10m30s, gan fod 2 broses yn rhedeg ar yr ochr dderbyn - mae'r dagfa unwaith eto yn gywasgydd un edau, ynghyd ag amgryptio bach uwchben.

DIWEDDARIAD: Ar gais bliznezz rwy'n ychwanegu profion gyda pigz. Os ydych chi'n defnyddio'r cywasgydd yn unig, byddai'n cymryd 6m30s, os ydych chi hefyd yn ychwanegu amgryptio, byddai tua 7m. Mae'r gostyngiad yn y graff gwaelod yn storfa ddisg heb ei fflysio:

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Profi dyblyg

Mae Duplicity yn feddalwedd python ar gyfer gwneud copi wrth gefn trwy greu archifau wedi'u hamgryptio mewn fformat tar.

Ar gyfer archifau cynyddrannol, defnyddir librsync, felly gallwch ddisgwyl yr ymddygiad a ddisgrifir yn swydd flaenorol yn y gyfres.

Gellir amgryptio copïau wrth gefn a'u llofnodi gan ddefnyddio gnupg, sy'n bwysig wrth ddefnyddio gwahanol ddarparwyr ar gyfer storio copïau wrth gefn (s3, backblaze, gdrive, ac ati)

Gawn ni weld beth yw'r canlyniadau:

Dyma'r canlyniadau a gawsom wrth redeg heb amgryptio

anrheithiwr

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Amser rhedeg pob rhediad prawf:

Lansio 1
Lansio 2
Lansio 3

16m33s
17m20s
16m30s

8m29s
9m3s
8m45s

5m21s
6m04s
5m53s

A dyma'r canlyniadau pan fydd amgryptio gnupg wedi'i alluogi, gyda maint allweddol o 2048 bit:

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Amser gweithredu ar yr un data, gydag amgryptio:

Lansio 1
Lansio 2
Lansio 3

17m22s
17m32s
17m28s

8m52s
9m13s
9m3s

5m48s
5m40s
5m30s

Nodwyd maint y bloc - 512 megabeit, sydd i'w weld yn glir yn y graffiau; Arhosodd llwyth y prosesydd ar 50% mewn gwirionedd, sy'n golygu nad yw'r rhaglen yn defnyddio mwy nag un craidd prosesydd.

Mae egwyddor gweithrediad y rhaglen hefyd i'w gweld yn eithaf clir: fe wnaethant gymryd darn o ddata, ei gywasgu, a'i anfon at weinydd storio wrth gefn, a all fod yn eithaf araf.
Nodwedd arall yw amser rhedeg rhagweladwy'r rhaglen, sy'n dibynnu ar faint y data sydd wedi'i newid yn unig.

Nid oedd galluogi amgryptio yn cynyddu amser rhedeg y rhaglen yn sylweddol, ond cynyddodd llwyth y prosesydd tua 10%, a all fod yn fonws eithaf braf.

Yn anffodus, nid oedd y rhaglen hon yn gallu canfod y sefyllfa'n gywir gydag ailenwi'r cyfeiriadur, a daeth maint y storfa canlyniadol i fod yn gyfartal â maint y newidiadau (h.y., pob 18GB), ond roedd y gallu i ddefnyddio gweinydd di-ymddiried ar gyfer copi wrth gefn yn glir yn cwmpasu'r ymddygiad hwn.

Profi dyblyg

Mae'r meddalwedd hwn wedi'i ysgrifennu yn C# ac yn rhedeg gan ddefnyddio set o lyfrgelloedd o Mono. Mae yna GUI yn ogystal â fersiwn CLI.

Mae'r rhestr fras o'r prif nodweddion yn debyg i ddyblygrwydd, gan gynnwys darparwyr storio wrth gefn amrywiol, fodd bynnag, yn wahanol i ddyblygrwydd, mae'r rhan fwyaf o nodweddion ar gael heb offer trydydd parti. Mae p'un a yw hwn yn fantais neu'n minws yn dibynnu ar yr achos penodol, ond ar gyfer dechreuwyr, mae'n fwyaf tebygol o fod yn haws cael rhestr o'r holl nodweddion o'u blaenau ar unwaith, yn hytrach na gorfod gosod pecynnau ar gyfer python hefyd, fel y mae yr achos gyda dyblygrwydd.

Naws bach arall - mae'r rhaglen yn mynd ati i ysgrifennu cronfa ddata sqlite leol ar ran y defnyddiwr sy'n cychwyn y copi wrth gefn, felly mae angen i chi hefyd sicrhau bod y gronfa ddata ofynnol yn cael ei nodi'n gywir bob tro y bydd y broses yn dechrau defnyddio'r cli. Wrth weithio trwy GUI neu WEBGUI, bydd manylion yn cael eu cuddio rhag y defnyddiwr.

Gadewch i ni weld pa ddangosyddion y gall yr ateb hwn eu cynhyrchu:

Os byddwch yn diffodd amgryptio (ac nid yw WEBGUI yn argymell gwneud hyn), mae'r canlyniadau fel a ganlyn:

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Oriau:

Lansio 1
Lansio 2
Lansio 3

20m43s
20m13s
20m28s

5m21s
5m40s
5m35s

7m36s
7m54s
7m49s

Gydag amgryptio wedi'i alluogi, gan ddefnyddio aes, mae'n edrych fel hyn:

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Oriau:

Lansio 1
Lansio 2
Lansio 3

29m9s
30m1s
29m54s

5m29s
6m2s
5m54s

8m44s
9m12s
9m1s

Ac os ydych chi'n defnyddio'r rhaglen allanol gnupg, daw'r canlyniadau canlynol allan:

Rhan Wrth Gefn 3: Adolygu a Phrofi dyblygrwydd, dyblygiad

Lansio 1
Lansio 2
Lansio 3

26m6s
26m35s
26m17s

5m20s
5m48s
5m40s

8m12s
8m42s
8m15s

Fel y gwelwch, gall y rhaglen weithio mewn sawl trywydd, ond nid yw hyn yn ei gwneud yn ddatrysiad mwy cynhyrchiol, ac os cymharwch y gwaith amgryptio, mae'n lansio rhaglen allanol
troi allan i fod yn gyflymach na defnyddio'r llyfrgell o'r set Mono. Gall hyn fod oherwydd y ffaith bod y rhaglen allanol wedi'i optimeiddio'n fwy.

Peth braf arall oedd y ffaith bod maint yr ystorfa yn cymryd cymaint yn union â’r data newidiedig gwirioneddol, h.y. canfu dyblyg ailenwi cyfeiriadur ac ymdriniwyd â'r sefyllfa hon yn gywir. Gellir gweld hyn wrth redeg yr ail brawf.

Ar y cyfan, argraffiadau gweddol gadarnhaol o'r rhaglen, gan gynnwys bod yn weddol gyfeillgar i newbies.

Canfyddiadau

Gweithiodd y ddau ymgeisydd braidd yn araf, ond yn gyffredinol, o'i gymharu â thar arferol, mae cynnydd, o leiaf gyda dyblygu. Mae pris cynnydd o'r fath hefyd yn glir - yn faich amlwg
prosesydd. Yn gyffredinol, nid oes unrhyw wyriadau arbennig wrth ragweld y canlyniadau.

Canfyddiadau

Os nad oes angen i chi ruthro i unrhyw le, a chael prosesydd sbâr hefyd, bydd unrhyw un o'r atebion a ystyriwyd yn gwneud, beth bynnag, mae cryn dipyn o waith wedi'i wneud na ddylid ei ailadrodd trwy ysgrifennu sgriptiau papur lapio ar ben tar . Mae presenoldeb amgryptio yn eiddo angenrheidiol iawn os na ellir ymddiried yn llawn yn y gweinydd ar gyfer storio copïau wrth gefn.

O'i gymharu â seiliedig ar atebion rsync - gall perfformiad fod sawl gwaith yn waeth, er gwaethaf y ffaith bod tar yn ei ffurf pur wedi gweithio 20-30% yn gyflymach na rsync.
Mae arbedion ar faint yr ystorfa, ond dim ond gyda dyblygu.

Cyhoeddiad

Gwneud copi wrth gefn, rhan 1: Pam mae angen gwneud copi wrth gefn, trosolwg o ddulliau, technolegau
Rhan 2 wrth gefn: Adolygu a phrofi offer wrth gefn sy'n seiliedig ar rsync
Rhan 3 wrth gefn: Adolygu a phrofi dyblygrwydd, dyblygiad, deja dup
Rhan 4 wrth gefn: Adolygu a phrofi zbackup, restic, borgbackup
Rhan Wrth Gefn 5: Profi bacula a veeam backup ar gyfer linux
Rhan Wrth Gefn 6: Cymharu Offer Wrth Gefn
Rhan Wrth Gefn 7: Casgliadau

Wedi'i bostio gan: Pavel Demkovich

Ffynhonnell: hab.com

Ychwanegu sylw