Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Ev têbînî li ser amûrên hilanînê yên ku bi çêkirina arşîvên li ser serverek hilanînê paşvekêşan pêk tînin nîqaş dike.

Di nav yên ku hewcedariyên bicîh tînin de dubendî (ku di forma deja dup-ê de têkiliyek xweş heye) û dubendî ne.

Amûrek paşvekişandinê ya din a pir balkêş dar e, lê ji ber ku ew navnîşek vebijarkan pir berfireh heye - metodolojiya ceribandinê bi zor ji% 10 ya ku ew jêhatî ye vedihewîne - em wê wekî beşek ji çerxa heyî ceribandinê nakin.

Encamên hêvîdar

Ji ber ku her du berendam arşîvan bi rengekî an din diafirînin, tar-a birêkûpêk dikare wekî rêberek were bikar anîn.

Wekî din, em ê binirxînin ka çiqas hilanîna daneya li ser servera hilanînê xweşbîn e bi afirandina kopiyên hilanînê yên ku tenê cûdahiya di navbera kopiyek tam û rewşa heyî ya pelan de, an di navbera arşîvên berê û heyî de (zêdebûn, kêmbûn, hwd.) vedihewîne. .

Tevger dema çêkirina paşgiran:

  1. Li ser servera hilanîna hilanînê hejmareke hindik a pelan (ku bi hejmara kopiyên hilanînê an mezinahiya daneyan li GB-ê ve tê berhev kirin), lê mezinahiya wan pir mezin e (bi dehan heta bi sedan megabyte).
  2. Mezinahiya depoyê dê tenê guheztinan bihewîne - dê ti dubare neyê hilanîn, ji ber vê yekê mezinahiya depoyê dê ji nermalava rsync-based piçûktir be.
  3. Dema ku berhevkirin û/an şîfrekirinê bikar tînin, barkirina giran a CPU-yê hêvî bikin, û dibe ku barkirina torê û dîskê pir zêde be heke pêvajoya arşîvkirin û/an şîfrekirinê li ser serverek hilanînê ya hilanînê dimeşîne.

Ka em emrê jêrîn wekî nirxek referansê bimeşînin:

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

Encamên darvekirinê wiha bûn:

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Dema darvekirinê 3m12s. Tê dîtin ku leza ji hêla bine-pergala dîskê ya servera hilanînê ya hilanînê ve, wekî mînaka bi rsync. Tenê hinekî zûtir, ji ber ku ... tomarkirin diçe yek pelê.

Di heman demê de, ji bo nirxandina berhevkirinê, bila em heman vebijarkê bimeşînin, lê li ser milê servera paşvekêşanê vegirtinê çalak bikin:

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

Encam ev in:

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Dema darvekirinê 10m11s. Bi îhtîmalek mezin stûna li ser dawiya wergirtinê kompresora yek-herikînê ye.

Heman ferman, lê bi berhevkirinê re bi daneya orîjînal re ji serverê re tê veguheztin da ku hîpoteza ceribandina ku şûşeyek kompresorek yek-têlek e.

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

Wisa derket holê:

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Dema înfazê 9m37s bû. Barkirina li ser yek bingehê ji hêla kompresor ve bi zelalî xuya ye, ji ber ku Leza veguheztina torê û barkirina li ser binepergala dîska çavkaniyê wekî hev in.

Ji bo nirxandina şîfrekirinê, hûn dikarin bi girêdana fermanek din ve openssl an gpg bikar bînin openssl an gpg di boriyê de. Ji bo referansê dê fermanek bi vî rengî hebe:

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

Encam wiha derketin:

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Wexta darvekirinê derket 10m30s, ji ber ku 2 pêvajo li aliyê wergirtinê dimeşin - stûn dîsa kompresorek yek-têlek e, û sermaya şîfrekirina piçûktir e.

UPD: Li ser daxwaza bliznezz ez testên bi pigz zêde dikim. Ger hûn tenê kompresor bikar bînin, ew ê 6m30s bigire, heke hûn şîfrekirinê jî lê zêde bikin, ew ê bi qasî 7 m be. Daxistina di grafiya jêrîn de cache-ya dîskê ya nepişkkirî ye:

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Testkirina dubare

Duplicity nermalava python e ku ji bo hilanînê bi afirandina arşîvên şîfrekirî yên di forma tar de ye.

Ji bo arşîvên zêdebûyî, librsync tê bikar anîn, ji ber vê yekê hûn dikarin behreya ku tê de hatî destnîşan kirin hêvî bikin posta berê di rêzê de.

Veger dikarin bi karanîna gnupg-ê werin şîfrekirin û îmze kirin, ku dema ku pêşkêşkerên cihêreng bikar tînin ji bo hilanîna paşgiran (s3, backblaze, gdrive, hwd.) girîng e.

Ka em bibînin ka encam çi ne:

Dema ku bêyî şîfrekirinê dimeşînin ev encamên ku me distînin

spoiler

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Dema xebitandina her ceribandinê:

Destpêkirin 1
Destpêkirin 2
Destpêkirin 3

16 m33s
17 m20s
16 m30s

8 m29s
9 m3s
8 m45s

5 m21s
6 m04s
5 m53s

Û li vir encam hene dema ku şîfrekirina gnupg çalak e, bi mezinahiya sereke ya 2048 bit:

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Dema xebitandinê li ser heman daneyê, bi şîfrekirinê:

Destpêkirin 1
Destpêkirin 2
Destpêkirin 3

17 m22s
17 m32s
17 m28s

8 m52s
9 m13s
9 m3s

5 m48s
5 m40s
5 m30s

Mezinahiya blokê hate destnîşan kirin - 512 megabytes, ku di grafikan de bi zelalî xuya ye; Barkirina pêvajoyê bi rastî di% 50 de ma, ku tê vê wateyê ku bername ji yek bingehek pêvajoyê bêtir bikar tîne.

Prensîba xebata bernameyê jî bi zelalî xuya ye: wan perçeyek daneyê hildan, ew berhev kirin, û ew şandin serverek hilanînê, ku dikare pir hêdî be.
Taybetmendiyek din dema xebitandina pêşbînîkirî ya bernameyê ye, ku tenê bi mezinahiya daneya guherî ve girêdayî ye.

Çalakkirina şîfrekirinê bi girîngî dema xebitandina bernameyê zêde nekir, lê ew barkirina pêvajoyê bi qasî 10% zêde kir, ku dikare bibe bonusek pir xweş.

Mixabin, vê bernameyê nekarî bi rasthatinî rewşê bi binavkirina pelrêça nas bike, û mezinahiya depoya encam bi mezinahiya guhertinan re wekhev derket (ango, hemî 18 GB), lê şiyana karanîna serverek nebawer ji bo hilanînê bi zelalî vê tevgerê vedişêre.

Testkirina dubare

Ev nermalava bi C# hatî nivîsandin û bi karanîna komek pirtûkxaneyên ji Mono-yê dimeşîne. GUI û her weha guhertoyek CLI heye.

Navnîşa texmînî ya taybetmendiyên sereke dişibihe dubendiyê, tevî pêşkêşkerên hilanînê yên cihêreng, di heman demê de, berevajî dubendiyê, pir taybetmendî bêyî amûrên sêyemîn peyda dibin. Ma ev zêdeyek an kêmek e, bi doza taybetî ve girêdayî ye, lê ji bo destpêkeran, bi îhtîmalek mezin ew e ku meriv navnîşek hemî taybetmendiyan di carekê de li pêş wan hebe, ne ku pêdivî ye ku pakêtên zêde ji bo python saz bikin, wekî ku heye. doza bi dubendî.

Nîşanek piçûkek din - bername li ser navê bikarhênerê ku dest bi paşvekişandinê dike databasek sqlite ya herêmî bi çalak dinivîse, ji ber vê yekê hûn hewce ne ku her carê gava ku pêvajo bi karanîna klikê dest pê dike pê ewle bibin ku databasa pêdivî bi rast hatî destnîşan kirin. Dema ku bi navgîniya GUI an WEBGUI-ê dixebitin, hûrgulî dê ji bikarhênerê veşêrin.

Ka em bibînin ka ev çareserî çi nîşanan dikare çêbike:

Ger hûn şîfrekirinê qut bikin (û WEBGUI vê yekê pêşniyar nake), encam wiha ne:

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Karên xebatê

Destpêkirin 1
Destpêkirin 2
Destpêkirin 3

20 m43s
20 m13s
20 m28s

5 m21s
5 m40s
5 m35s

7 m36s
7 m54s
7 m49s

Digel ku şîfrekirinê hatî çalak kirin, bi karanîna aes, wusa xuya dike:

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Karên xebatê

Destpêkirin 1
Destpêkirin 2
Destpêkirin 3

29 m9s
30 m1s
29 m54s

5 m29s
6 m2s
5 m54s

8 m44s
9 m12s
9 m1s

Û heke hûn bernameya derveyî gnupg bikar bînin, encamên jêrîn derdikevin:

Backup Part 3: Vekolîn û ceribandina dubendiyê, dubare

Destpêkirin 1
Destpêkirin 2
Destpêkirin 3

26 m6s
26 m35s
26 m17s

5 m20s
5 m48s
5 m40s

8 m12s
8 m42s
8 m15s

Wekî ku hûn dibînin, bername dikare di çend mijaran de bixebite, lê ev wê çareseriyek hilberdartir nake, û heke hûn karê şîfrekirinê bidin ber hev, ew bernameyek derveyî dest pê dike.
derket holê ku ji karanîna pirtûkxaneyê ji set Mono zûtir e. Dibe ku ev ji ber vê yekê be ku bernameya derveyî xweştir e.

Tiştek din a xweş ev bû ku mezinahiya depoyê tam bi qasî daneyên rastîn ên guhertî digire, ango. duplicati navekî pelrêçek nûvekir û vê rewşê rast hilgirt. Dema ku ceribandina duyemîn dimeşîne ev dikare were dîtin.

Bi tevayî, bandorên erênî yên bernameyê, di nav de ku ji nûbiharan re bi rengek hevaltî.

Encam

Herdu berendam jî hêdî hêdî xebitîn, lê bi gelemperî, li gorî tara birêkûpêk, pêşkeftin heye, bi kêmanî bi dubarekirinê. Buhayê pêşveçûnek weha jî diyar e - barek berbiçav
processor. Bi gelemperî, di pêşbînkirina encaman de veqetînek taybetî tune.

vebiguherin

Heke hûn ne hewce ne ku hûn li deverek bilezînin, û di heman demê de xwedan pêvajoyek vala jî be, yek ji çareseriyên ku têne hesibandin dê bikin, di her rewşê de, pir karek hatiye kirin ku divê bi nivîsandina nivîsarên pêçandî yên li ser tarê neyê dubare kirin. . Hebûna şîfrekirinê taybetmendiyek pir pêwîst e heke servera ji bo hilanîna kopiyên paşvekişandinê bi tevahî neyê pêbawer kirin.

Li gorî çareseriyên bingehîn rsync - performansa dikare çend carî xirabtir be, tevî vê yekê ku di forma xweya paqij de tar 20-30% zûtir ji rsync xebitî.
Li ser mezinahiya depoyê teserûf hene, lê tenê bi dubarekirinê.

Daxûyanî

Backup, beş 1: Çima hilanînê hewce ye, vekolîna rêbazan, teknolojiyên
Backup Part 2: Vekolîn û ceribandina amûrên hilanînê yên li ser bingeha rsync
Backup Part 3: Vekolîn û ceribandina dubendiyê, ducarî, deja dup
Vegere Parçe 4: Zbackup, restic, vekolîn û ceribandina borgbackup
Backup, beş 5: Ceribandina bacula û veeam vegerandina ji bo linux
Backup Part 6: Berawirdkirina Amûrên Piştgiriyê
Backup Part 7: Encam

Ji hêla: Pavel Demkovich

Source: www.habr.com

Add a comment