Backupsatellit fir Dausende vu virtuelle Maschinnen mat gratis Tools

Backupsatellit fir Dausende vu virtuelle Maschinnen mat gratis Tools

Moien, ech sinn viru kuerzem en interessante Problem begéint: Späichere fir eng grouss Unzuel vu Blockapparaten opzemaachen.

All Woch backup mir all déi virtuell Maschinnen an eiser Cloud, also musse mir fäeg sinn Dausende vu Backups ze halen an et esou séier an effizient wéi méiglech ze maachen.

Leider, Standard Konfiguratiounen RAID5, RAID6 an dësem Fall dierfe mir dat net maachen, well den Erhuelungsprozess op esou groussen Disken wéi eis schmerzhaft laang wäert sinn an héchstwahrscheinlech ni ophalen.

Loosst eis kucken wéi eng Alternativen et ginn:

Läschen Kodéierung - Ähnlech wéi RAID5, RAID6, awer mat konfiguréierbare Paritéitsniveau. An dësem Fall gëtt d'Reservatioun net blockéiert fir Block gemaach, awer fir all Objet separat. Deen einfachste Wee fir d'Läschkodéierung ze probéieren ass auszebauen minio.

DRAID ass eng aktuell net verëffentlecht ZFS Feature. Am Géigesaz zu RAIDZ huet DRAID e verdeelt Paritéitsblock a benotzt, wärend der Erhuelung, all d'Disks vun der Array op eemol, wat et besser mécht fir Diskfehler ze iwwerliewen a méi séier no engem Feeler ze recuperéieren.

Backupsatellit fir Dausende vu virtuelle Maschinnen mat gratis Tools

Backupsatellit fir Dausende vu virtuelle Maschinnen mat gratis Tools

Server verfügbar Fujitsu Primergy RX300 S7 mat Prozessor Intel Xeon CPU E5-2650L 0 @ 1.80GHz, néng Stéck RAM Samsung DDR3-1333 8Gb PC3L-10600R ECC registréiert (M393B1K70DH0-YH9), Scheif Regal Supermicro SuperChassis 847E26-RJBOD1, verbonne iwwer Dual LSI SAS2X36 Expander an 45 discs Seagage ST6000NM0115-1YZ110 Op der 6TB jiddereen.

Ier mer eppes entscheeden, musse mir als éischt alles richteg testen.

Fir dëst ze maachen, hunn ech verschidde Konfiguratiounen virbereet a getest. Fir dëst ze maachen, hunn ech Minio benotzt, deen als S3 Backend gehandelt huet an et a verschiddene Modi mat verschiddenen Zuelen vun Ziler lancéiert huet.

Prinzipiell gouf de Minio Case getest an der Läschkodéierung vs Software Razzia mat der selwechter Unzuel vun Disken a Paritéit vu Disken, an dës sinn: RAID6, RAIDZ2 an DRAID2.

Fir Referenz: wann Dir Minio mat nëmmen engem Zil lancéiert, funktionnéiert Minio am S3 Gateway Modus, liwwert Äre lokalen Dateiesystem a Form vun S3 Späicheren. Wann Dir Minio lancéiert déi verschidden Ziler spezifizéiert, gëtt den Erasure Coding Modus automatesch op, wat d'Donnéeën tëscht Ären Ziler verbreet wärend Fehltoleranz ubitt.

Par défaut trennt Minio Ziler a Gruppe vu 16 Disken, mat 2 Paritéite pro Grupp. Déi. Zwee Disken kënnen zur selwechter Zäit versoen ouni Daten ze verléieren.

Fir d'Performance ze testen, hunn ech 16 Disks vun all 6TB benotzt a kleng Objete vun 1MB an der Gréisst op hinnen geschriwwen, dëst huet eis zukünfteg Belaaschtung am meeschte präzis beschriwwen, well all modern Backup-Tools Daten a Blocken vun e puer Megabytes opdeelen a se op dës Manéier schreiwen.

Fir de Benchmark ze féieren, hu mir d's3bench Utility benotzt, op engem Fernserver gestart an zéngdausende vun esou Objeten op Minio an Honnerte vun Threads geschéckt. Duerno hunn ech probéiert se op déiselwecht Manéier zréckzefroen.

D'Benchmark Resultater ginn an der folgender Tabell gewisen:

Backupsatellit fir Dausende vu virtuelle Maschinnen mat gratis Tools

Wéi mir kënne gesinn, mécht de Minio a sengem eegene Läschkodéierungsmodus wesentlech méi schlecht beim Schreiwen wéi de Minio deen uewen op Software RAID6, RAIDZ2 an DRAID2 an der selwechter Konfiguratioun leeft.

Separat mech gefrot Test Minio op ext4 vs XFS. Iwwerraschend, fir meng Aart vun Aarbechtslaascht, huet XFS sech wesentlech méi lues erausgestallt wéi ext4.

An der éischter Partie vun Tester huet Mdadm Iwwerleeënheet iwwer ZFS gewisen, awer méi spéit gmelikov proposéiertdatt Dir d'ZFS Leeschtung verbessert andeems Dir déi folgend Optiounen setzt:

xattr=sa atime=off recordsize=1M

an duerno sinn d'Tester mam ZFS vill besser ginn.

Dir kënnt och bemierken datt DRAID net vill Leeschtungsgewënn iwwer RAIDZ ubitt, awer an der Theorie sollt et vill méi sécher sinn.

An de leschten zwee Tester hunn ech och probéiert Metadaten (speziell) an ZIL (Log) op de Spigel vun der SSD ze transferéieren. Mee Ewechhuele vun Metadaten huet net vill Gewënn an Opnahmen Vitesse ginn, a wann Ewechhuele ZIL, meng SSDSC2KI128G8 schloen d'Plafong mat 100% Notzung, also betruecht ech dësen Test als Feeler. Ech ausschléissen net datt wann ech méi séier SSD-Laufwerke hätt, da kéint dëst vläicht meng Resultater staark verbesseren, awer leider hunn ech se net.

Um Enn hunn ech decidéiert DRAID ze benotzen an trotz sengem Beta-Status ass et déi schnellsten an effizientste Späicherléisung an eisem Fall.

Ech hunn en einfachen DRAID2 an enger Konfiguratioun mat dräi Gruppen an zwee verdeelt Ersatzstécker erstallt:

# zpool status data
  pool: data
 state: ONLINE
  scan: none requested
config:

    NAME                 STATE     READ WRITE CKSUM
    data                 ONLINE       0     0     0
      draid2:3g:2s-0     ONLINE       0     0     0
        sdy              ONLINE       0     0     0
        sdam             ONLINE       0     0     0
        sdf              ONLINE       0     0     0
        sdau             ONLINE       0     0     0
        sdab             ONLINE       0     0     0
        sdo              ONLINE       0     0     0
        sdw              ONLINE       0     0     0
        sdak             ONLINE       0     0     0
        sdd              ONLINE       0     0     0
        sdas             ONLINE       0     0     0
        sdm              ONLINE       0     0     0
        sdu              ONLINE       0     0     0
        sdai             ONLINE       0     0     0
        sdaq             ONLINE       0     0     0
        sdk              ONLINE       0     0     0
        sds              ONLINE       0     0     0
        sdag             ONLINE       0     0     0
        sdi              ONLINE       0     0     0
        sdq              ONLINE       0     0     0
        sdae             ONLINE       0     0     0
        sdz              ONLINE       0     0     0
        sdan             ONLINE       0     0     0
        sdg              ONLINE       0     0     0
        sdac             ONLINE       0     0     0
        sdx              ONLINE       0     0     0
        sdal             ONLINE       0     0     0
        sde              ONLINE       0     0     0
        sdat             ONLINE       0     0     0
        sdaa             ONLINE       0     0     0
        sdn              ONLINE       0     0     0
        sdv              ONLINE       0     0     0
        sdaj             ONLINE       0     0     0
        sdc              ONLINE       0     0     0
        sdar             ONLINE       0     0     0
        sdl              ONLINE       0     0     0
        sdt              ONLINE       0     0     0
        sdah             ONLINE       0     0     0
        sdap             ONLINE       0     0     0
        sdj              ONLINE       0     0     0
        sdr              ONLINE       0     0     0
        sdaf             ONLINE       0     0     0
        sdao             ONLINE       0     0     0
        sdh              ONLINE       0     0     0
        sdp              ONLINE       0     0     0
        sdad             ONLINE       0     0     0
    spares
      s0-draid2:3g:2s-0  AVAIL   
      s1-draid2:3g:2s-0  AVAIL   

errors: No known data errors

Okay, mir hunn d'Lagerung zortéiert, elo schwätze mer iwwer wat mir backen. Hei wëll ech direkt iwwer dräi Léisungen schwätzen, déi ech probéiert hunn, an dës sinn:

Benji Backup - Forschett Backy 2, eng spezialiséiert Léisung fir Block-Apparat-Backup, huet eng enk Integratioun mat Ceph. Kann Differenzen tëscht Schnappschëss huelen an en inkrementelle Backup vun hinnen bilden. Ënnerstëtzt eng grouss Zuel vu Späichere Backends, dorënner lokal a S3. Erfuerdert eng separat Datebank fir d'Deduplikatioun Hash Tabelle ze späicheren. Nodeeler: am Python geschriwwen, huet e liicht reaktiounsfäeger Cli.

Borg Backupsatellit - Forschett Attika, e laang-bekannt a bewährte Backup-Tool, kann Donnéeën backen an se gutt deduplizéieren. Kënnen Backups souwuel lokal wéi op e Fernserver iwwer scp späicheren. Kann Backupsatellit Apparater wann mat de Fändel lancéiert --special, ee vun de Minusen: wann Dir e Backup erstellt, ass de Repository komplett blockéiert, also ass et recommandéiert fir all virtuell Maschinn en separaten Repository ze kreéieren, am Prinzip ass dëst kee Problem, glécklecherweis gi se ganz einfach erstallt.

Reschtlech ass en aktiv Entwécklungsprojet, geschriwwe ginn, zimlech séier an ënnerstëtzt eng grouss Zuel vu Späichere Backends, dorënner lokal Späichere, scp, S3 a vill méi. Separat wëll ech bemierken datt et e speziell erstallt gëtt Rescht-Server fir Restic, wat Iech erlaabt Iech séier Späichere fir op afstand ze benotzen. Vun all deenen uewe gefall hunn ech am meeschte gär. Kann Backupsatellit aus stdin. Et huet bal keng merkbar Nodeeler, awer et gi verschidde Funktiounen:

  • Als éischt hunn ech probéiert et am allgemenge Repository Modus fir all virtuell Maschinnen (wéi Benji) ze benotzen an et huet souguer ganz gutt geschafft, awer d'Restauratiounsoperatioune hunn eng ganz laang Zäit gedauert, well ... All Kéier virum Restauréieren probéiert de Restic d'Metadaten vun all Backups ze liesen. Dëse Problem gouf einfach geléist, wéi mat Borg, andeems en separat Repository fir all virtuell Maschinn erstallt gouf. Dës Approche huet sech als ganz effektiv bewisen fir och Backups ze managen. Separat Repositories kënnen e separat Passwuert fir Zougang zu Daten hunn, a mir mussen och keng Angscht hunn datt de globale Repo iergendwéi briechen. Dir kënnt nei Repositories sou einfach spawnen wéi am Borg Backup.

    Op alle Fall gëtt d'Deduplikatioun nëmme relativ zu der viregter Versioun vum Backup gemaach; de fréiere Backup gëtt vum Wee fir de spezifizéierte Backup bestëmmt, also wann Dir verschidden Objekter vun stdin op e gemeinsame Repository backt, vergiesst net de Optioun --stdin-filename, oder spezifizéiert d'Optioun all Kéier explizit --parent.

  • Zweetens, d'Erhuelung op stdout dauert vill méi laang wéi d'Erhuelung vum Dateiesystem wéinst senger paralleler Natur. An Zukunft plangen mir méi no Ënnerstëtzung fir Backups fir Blockapparaten ze addéieren.

  • Drëttens ass et am Moment recommandéiert ze benotzen Versioun vum Meeschter, well Versioun 0.9.6 huet e Feeler mat laanger Erhuelung vu grousse Dateien.

Fir d'Effizienz vum Backup an d'Geschwindegkeet vum Schreiwen / Restauréieren vun engem Backup ze testen, hunn ech e separaten Repository erstallt a probéiert e klengt Bild vun enger virtueller Maschinn (21 GB) ze backen. Zwee Backups goufen duerchgefouert ouni d'Original z'änneren, andeems jidderee vun de opgelëschte Léisunge benotzt fir ze kontrolléieren wéi séier / méi lues déi deduplizéiert Donnéeën kopéiert goufen.

Backupsatellit fir Dausende vu virtuelle Maschinnen mat gratis Tools

Wéi mir kënne gesinn, Borg Backup huet dee beschten initialen Backup Effizienz Verhältnis, awer ass mannerwäerteg a punkto Schreif- a Restauratiounsgeschwindegkeet.

Restic huet sech méi séier gewisen wéi Benji Backup, awer et dauert méi laang fir op stdout ze restauréieren, a leider weess et nach net wéi een direkt op e Blockapparat schreift.

Nodeems ech all d'Virdeeler an Nodeeler gewien hunn, hunn ech beschloss mech ze settelen restesch с Rescht-Server als déi praktesch a villverspriechend Backup-Léisung.

Backupsatellit fir Dausende vu virtuelle Maschinnen mat gratis Tools

An dësem Screencast kënnt Dir gesinn wéi en 10-Gigabit Kanal komplett benotzt gëtt während e puer Backup-Operatiounen déi gläichzäiteg lafen. Et ass derwäert ze bemierken datt d'Diskrecycling net iwwer 30% eropgeet.

Ech war méi wéi zefridden mat der Léisung déi ech krut!

Source: will.com

Setzt e Commentaire