Uues Me rÀÀkisime teile uutest funktsioonidest, mis ilmusid jaanuaris vÀlja antud Update 4 jaoks Veeam Backup & Replication 9.5 (VBR), kus me teadlikult ei maininud magnetlintidel tegemisi. See teema vÀÀrib eraldi artiklit, sest uusi funktsioone oli tÔesti palju.
â Kas QA kutid kirjutavad artikli?
â Miks mitte!

Lintide salvestamine XXI sajandil
Andmete salvestamine magnetlintidel (kasettides, "lindid", nagu me neid R&D-s nimetame) ei piirdu minevikus elanud arvutiga ZX-Spectrum, mille ĂŒhe mĂ€ngu laadimine vĂ”is vĂ”tta mitu minutit 48 kb hÀÀlestusega KĂŒmmekond aastat tagasi olid kogused ja kiirus suurenenud 6-7 korda. See ei ole kĂ”ige sobivam vĂ”rdlus ja standard ei ole juba ammu jĂ”udnud. Sellegipoolest, kaasaegsed tehnoloogiad vĂ”imaldavad salvestada ĂŒhe kaseti peale 12 terabaiti andmeid (kuni 30 terabaiti kokkusurutud reĆŸiimis), mistĂ”ttu 160 dollari maksva seadmest saab konkurentidest odavam pikaajaline andmehoidmine, isegi arvestades seadmete investeeringuid salvestamiseks/ lugemiseks. Andmed sellistel lintidel sĂ€ilivad usaldusvÀÀrselt 15-30 aastat.
Vaatame teise nurga alt. Viimasel ajal on saavutanud uue taseme. Nad vĂ”ivad oodata oma aega suure ettevĂ”tte infrastruktuuris nĂ€dalaid ja kuid ning uue nullpĂ€eva haavatavuse ilmnemisel vĂ”ivad nad (inimese abiga, sest sees on suured summad) hĂ€vitada mitte ainult kĂ”ik andmed, vaid ka kĂ”ik varukoopiad, millele ainult ligi pÀÀseb. Siis pidid ettevĂ”tted maksma lunavaravatele. Nii-öelda air gap, st fĂŒĂŒsiliselt infrastruktuurist isoleeritud varukoopiad on tĂ”esalt ainus usaldusvÀÀrne pÀÀstmine selliste olukordade eest. Magnetlint selles osas on ĂŒks ajatu lahendus.

Kuid ĂŒksnes spetsifikatsioon ja tehnilised uued barĂŒĂŒri- ja ferritlahendused juhtivatelt tootjatelt (IBM, HPE, Oracle, Dell) ei ole piisavad andmete usaldusvÀÀrseks kaitseks, vaja on head tarkvara. Meil on Veeam'is terve meeskond, kes tegeleb lintide varukoopiate tegemisega, umbes 10 inimest analĂŒĂŒsib, kavandab, uurib, arendab ja testib iga pĂ€ev. Te vĂ”isite seda tööd eelnevates artiklites nĂ€ha (, ). Mis on viimase aasta jooksul tehtud?
Glossaar
TĂ”usetub valik emakeele vabaduste ja arusaamatuks tegevate bĂŒrokraatlike killustike vahel. Eelistangi esimest, mistĂ”ttu palun juba ette vabandust, kui allolev ĆŸargooniriim kellelegi silma riivab. Siin tuletan lĂŒhidalt meelde, mida mĂ”ni vĂ”i teine termin tĂ€hendab.
VBRi gurud saavad selle osa vahele jĂ€ttaJob â töö â varundamise ĂŒlesanne. Tegelikult koosneb kogu VBR töödest. Lisaks varundamisele ja replikatsioonile vĂ”ib see olla ka andmete kopeerimine magnetlintidele (backup to tape job, lint-job). Tahan mĂ€rkida, et varundusest taastamine (restore) â on samuti töö, kuid selles artiklis mĂ”istetakse selle sĂ”na all ainult varundust.
Storage â hoiustamine â ajalooliselt kujunenud nimetus. Need on failid hoidlad (repository â hoidla), mis sisaldavad endas varukoopiaid â tĂ€ielikke ja incremental. Ăhes hoidlasse vĂ”ib olla nii ĂŒks kui mitu virtuaalset masinat.
Ahel â chain â omavahel seotud hoidlade jĂ€rjestus. Andmete taastamiseks n-ndast inkrementaalsest hoidlast on vajalikud kĂ”ik eelnevad (n-1) kuni 1. ja tĂ€ielik hoidla, millele viitab esimene inkrementaalne.
Source, Target â source, target. Source â algne entiteet, mida töö kĂ€sitleb. Varunduste/replicate'ide puhul on see tavaliselt virtuaalne masin hĂŒperviisoril. Lint-töö puhul on source ise varundamise töö (kas ka failide puhul file to tape-job). Target varundustöö jaoks on hoidla, kus varundused asuvad. Lint-töö puhul on see media pool.
Media pool â â teabe kandjate pool, meie juhul â kassettide. Loogiline konteiner, mille kasutaja loob ja mis sisaldab kassette ĂŒhest vĂ”i mitmest raamatukogust. Seega on lint-töö alati media pool'i sihtpunktina, st andmed ei kirjutata mitte konkreetsesse kassettisse ega ka mitte ĂŒkskĂ”ik millisesse raamatukogusse, vaid teatud komplekti kassettidesse. Media pool'il on andmete sĂ€ilitamise kestuse seadistus, mille möödudes kassett vĂ”ib olla ĂŒle kirjutatud. Kasutaja vĂ”ib luua tavalisi (standard) ja . Igal neist liikidest vĂ”ib olla nĂŒĂŒd ka WORM ja mitte-WORM, sellest allpool.
Media set â â kassettide komplekt meediahunnikus, kuhu kirjutatakse pidevalt varukoopiad/failid. GFS-poolide meediahunnikud on samuti seotud ajavahemikuga (nĂ€iteks aastane â yearly), kassette vahetatakse vaid oma ajavahemiku sees.
â teipi raamatukogu elemendid. Drive loeb ja kerib kassetti, changer â see on robot, joka liigutab kassetid salvestamise slotide, laadimis slotide ja draivi vahel. On ka standalone-draivid (standalone â eraldi asuv), milles changer'i rolli tĂ€idab inimene. Draivi jaoks on vajalik, et tootja draiver oleks Ă”igesti paigaldatud Windows-masinasse, kuhu on ĂŒhendatud raamatukogu; changer'iga saame töötada ka ilma draiveriteta, kasutades native SCSI'd.
Tenant to tape. Kaitstud teenusepakkuja â kaitstud kliendid
Kohe trumpf lauale. Meie uuenduse kĂ”ige mahukam funktsioon, mis on suunatud , kes kasutavad oma infrastruktuuris VBR-i. Arendus algas juba kaks aastat tagasi. Varsti mĂ”istsime, et sellise tĂ”sise ĂŒlesandega lĂ€hiaja vĂ€ljaande tĂ€htaega ei tĂ€ida, vĂ”tsime vĂ€ikese pausi ja lĂ”puks vabastasime funktsiooni 9.5 Update 4.
LĂŒhidalt, nĂŒĂŒd on teenusepakkujatel vĂ”imalus kopeerida oma klientide varukoopiaid kassetti GFS-poolis kasutades teipi töö. See annab teenusepakkujatele â ja need on meie sĂŒdamele ja kommertsbĂŒroole vĂ€ga kallid suured poisid â kaks vĂ”imalust:
- kaitsta oma kliente (tenantid, tenant â ĂŒĂŒrnik) andmete kaotuse vĂ€ltimiseks, mis pĂ”hjustatud kogemata kustutamisest vĂ”i infrastruktuuri probleemidest ("tulv serveriruumis");
- pakkuda tenantidele tÀiendavat teenust andmete taastamiseks vanast varukoopiast, mis on juba ammu kustutatud pilverepositooriumist vastavalt andmete sÀilitamise poliitikale, kuid kassetil on need siiski alles.
Turunduse seisukohalt on funktsionaalsus vĂ€ga "maitsev", meie jaoks aga â mitte vĂ€hem keeruline ellu viia.
Arendus
Peamine probleem, mis tĂ”usis â andmete krĂŒpteerimine. Enamus pilve varukoopiaid on krĂŒpteeritud, statistika ĂŒtleb, et â koguarvust. Meie jaoks oli see number ĂŒllatus, arvasime, et enamus on krĂŒpteeritud, kuid ei â paljusid kliente tundub, et nad usaldavad oma teenusepakkujaid tingimusteta.
Paradigma on lihtne: teenusepakkuja ei tohiks olla suuteline oma klientide andmeid dekodeerima. Samas on uue funktsiooni raames teenusepakkuja poolel vajalik avada salvestusi, kus on varukoopiad. See on vajalik andmeplokkide edasiviimiseks, nÀiteks loomise jaoks . Peamine on see, et seda tuleb teha sÔltumatult kliendist, kui vajalikud vÔtmed ei edastata teenusepakkuja poolele töö tegemise ajal.
Selle probleemi lahendus, mis on muide kaasatud ka teise olulise funktsiooni, mis tuli vĂ€lja lisandmooduliga â â seisneb tĂ€iendava krĂŒptimisvĂ”tme lisamises. ArhiivivĂ”ti (Archive key) hoitakse teenusepakkuja andmebaasis krĂŒptitud kujul. Nutika skeemi abil teenusepakkuja poolel on vĂ”imalik selle abil avada salvestus, liikuda ja uuesti krĂŒpteerida andmeplokke salvestuste vahel (sest igal on oma vĂ”ti), kuid ei saa andmeid dekodeerida.

Nutikas skeem (töötav variant)
Lisaks tahan öelda, et kĂ”ik insenerid R&D-s armastavad meie tootes krĂŒptimist, tĂ”si, keegi ei tea kĂ”iki detaile, kuidas see töötab. (Siin oli veel nali âja miks see ĂŒldse töötabâ, kuid toimetajad ei lubanud seda.)
Testimine
Selle funktsiooni kohta on kirjutatud sadu vigu. KĂ”ige keerulisemad valdkonnad on krĂŒptimine, kasutajaliides, probleemid taastamisel.
Testimise seisukohalt esitas suure keerukuse variatiivsus, âkombinatoorikaâ tĂŒĂŒbid ja tĂŒĂŒbid klienditööd ja hoidlatest â mĂ”tlen nii allikate kui ka sihtkohtade kohta varukoopiate taastamisel infrastruktuuris. KĂ”ik see on seotud GFS Testplaani fragment

Tulemuseks
Ăksikasjaliku kirjelduse leiate
(hetkel inglise keeles): varukoopia , Teenusepakkuja lisab kliendid GFS-puuli tĂŒĂŒbi tööle eesmĂ€rgina. Pilve litsentsi olemasolul on nĂ”idus samas sammul saadaval valik
Varukoopia
Tenants ĂĂŒrnikudSaab on vĂ”imalik lisada kĂ”iki teenuseid korraga vĂ”i eraldi, samas vĂ”ib valida ka ainult eraldi kvota (kuid mitte alamkvota) eraldi teenuse jaoks. Ăhe tĂ¶Ă¶ĂŒlesande jooksul ei saa segada teenuste varukoopiaid ja tavapĂ€raseid kohalikke varukoopiaid.

ĂlejÀÀnud seaded on peaaegu tĂ€ielikult identsetes nagu tavalises tĂ¶Ă¶ĂŒlesandes GFS-poolis.
Andmete taastamine on vÔimalik nii teenusepakkuja kui ka teenuse enda poolel.
Taastamine teenusepakkuja poolel
Teostatakse uue nÔustaja kaudu. Siin on vÔimalik minna ka madalamale tasemele, taastatakse tÀielikult teatud pÀeval hoidlas olev ahel.

On kolm taastamisvÔimalust:
- Algse asukoha. Sel juhul, kui originaalvarukoopia on olemas, kustutatakse see; teenuse tĂ¶Ă¶ĂŒlesanded seadistatakse automaatselt taastatud ahela suhtes. Eeldatakse, et selline taastamine on kliendile tĂ€iesti mĂ€rkamatuks, vaid lĂŒhikest aega on ta ĂŒhendusest pilvehooldusteenusest lahti.
- Uude kvotasse/hoidlasse. Teenusepakkuja vĂ”ib nĂ€iteks luua selleks eraldi ajutise konto, mille hiljem kustutab. Varukoopia ilmub teenuse struktuuris pĂ€rast sĂŒnkroonimist teenusepakkuja andmebaasiga.
- Lihtsalt Linuxi- vÔi Windowsiserveri kettale, mis on registreeritud teenusepakkuja struktuuris. Edasi saab selle ahelat salvestada mÀlupulgale ja saata teenusele.

Taastamine teenuse poolel
See valik eeldab, et kliendil on oma kasseti infrastruktuur ja suur andmemaht taastamiseks. Teenusepakkuja vĂ”ib fĂŒĂŒsiliselt saata kliendile kasseti, millel on salvestatud varukoopiad, klient katalogiseerib selle oma seadmetes, dekrĂŒpteerib kassette ja varukoopiaid ning töötab varukoopiate kallal nagu oleks ta need ise lindile salvestanud. Selline nĂ€punĂ€ide, et mitte laadida terabaite WAN-is.
MÔjukaid parandusi GFS-poolis
-meedia-poolid ilmusid VBR-s kaks aastat tagasi versioonis 9.5. Viimases vÀrskenduses, seoses funktsiooniga Tenant to tape ja kasutajate soovi korral, oleme selle funktsionaalsuse hÀsti optimeerinud.
Iga pÀev meedia komplektid
On ilmunud uus igapĂ€evane (daily) meedia-set. NĂŒĂŒd saab GFS-poolis hoida varukoopiaid igapĂ€evaselt, mitte ainult tĂ€is, vaid ka inkrementaalseid. Viimased vĂ”tavad oluliselt vĂ€hem ruumi ja see on tehtud lintide sÀÀstmise eesmĂ€rgil. Eeldatakse, et need kassettid rotatsioonivad pidevalt teegis, mitte ei viida eemal hoidmisse. Selleks, et taastada inkrementaalne punkt, on restoranist vaja kassetti mĂ”nest vanemast meedia-setist (nĂ€dalasest, kuisest, kvartaalsetest vĂ”i aastasest). IgapĂ€evase meedia-seti aktiveerimine ilma nĂ€dalase aktiveerimata ei ole vĂ”imalik, et enamikul juhtudel oleks taastamiseks vajalikud just nĂ€dalased kassettid. Need on kas alati teegis vĂ”i hoitakse mitte liiga kaugel asuvas laos.

GFS-meedia-poolis tape jobi töölogika , tehnilised kirjanikud ei lase seda valeks muutuda. Kui öelda kahe sĂ”naga, jĂ€ttes detailid kĂ”rvale, siis nĂ€dalastesse ja vanematesse meedia-setidesse kopeeritakse ainult tĂ€is varukoopiad (sealhulgas virtuaalsed tĂ€is varukoopiad), ĂŒks iga kuupĂ€eva lĂ”ikes, ja igapĂ€evasesse - kĂ”ik, mis on hoidlas oleva pĂ€eva jooksul, sest varukoopia jobi vĂ”ib kĂ€ivituda sagedamini kui kord ööpĂ€evas.
Paralleelsus, GFS-poolide algusajad ja ootamine
NĂŒĂŒd on mitme ahela vĂ”i töö kĂ€ivitamine mitmetel teegi draividel vĂ”imalik ka GFS-meedia-poolides (varem ainult tavalistes). See aktiveeritakse sammus Valikud meedia-poolis.

Important clarification: sama faili kirjutatakse alati ĂŒhte voogu, seetĂ”ttu on soovitatav, et mitme suure virtuaalse masina korral aktiveerige , et varukoopia koosneks mitmest ahelast.
Lisaks on vĂ”imalik valida GFS-jobi algusaega. Paljudele kasutajatele ei meeldinud kesköö kĂ€ivitamine ja sellele jĂ€rgnev ooteaeg peaaegu kogu pĂ€eva, kuni allika job lĂ”peb. NĂŒĂŒd saab seda aega nĂ€iteks seada hiliseks Ă”htuks, kui on juba midagi lintile kopeerida. Veelgi enam, kasutajate soovide pĂ”hjal tĂ”ime laiendatud seadistustesse vĂ€lja vĂ”imaluse, mida varem sai aktiveerida ainult registrivĂ”tme kaudu. Piisab valida KĂ€sitle kĂ”ige uuemat taastamispunkti, mitte ootamist â ja kassettile kopeeritakse see, mis on hoidlas sel hetkel, kui tape job alustab (punkt eelmise pĂ€eva kohta, nĂ€iteks), ootamine puudub tĂ€ielikult.

TÀiustatud töö mitme raamatukoguga
Juttu tuleb olukorrast, kus ĂŒhte meediaava lisatakse rohkem kui ĂŒks raamatukogu. Oleme seda varem toetanud, kuid aeg-ajalt on kliendid kaebanud ettenĂ€gematute kĂ€itumiste ĂŒle.
See oli

NÀiteks, kui kÀivitub tape-job ja see kasutab esimeses raamatukogus kahte draiverit, kuid parallaliseerimise seaded vÔimaldavad tal kasutada korraga 4 draiverit. Kas peaks see töö minema teise raamatukogu meediaavas kasutamiseks vÔi oleks see ressursi liigne kasutamine?
Teine juhtum. Valitud on tingimuslĂŒlitamine âei ole saadaval kassetteâ, esimeses raamatukogus on ainult ĂŒks kassett, kuid sellele saab potentsiaalselt mahutada kĂ”ik andmed. Siiski, seadistused vĂ”imaldavad samal ajal kirjutada kahte kassetti. Kas peaksime sel juhul teise raamatukogu kaasama?
Otsustasime selle ala korda seada, andes vÔimaluse kÀitumist selgelt seadistada.
Muutus

on nĂŒĂŒd rollid â aktiivne ja passiivne. Ja meediaava enda jaoks â kaks reĆŸiimi: tĂ”rkekindel, vĂ”i failover (failover) ja paralleelne kirjutamine (paralleling). NĂŒĂŒd, sĂ”ltuvalt nĂ”udmistest, saab meediaava seadistada erinevalt.
- Kui teil on mitu vĂ”rdselt Ă”igustatud raamatukogu ja on vajalik kirjutamise paralleeliseerimine â aktiveerige paralleelse kirjutamise reĆŸiim, selleks tuleb kĂ”igile raamatukogudele mÀÀrata aktiivsed rollid. Sellisel juhul vĂ”etakse uued kassettid ja draiverid kohe kasutusele, kui sellele on vajadus, olenemata sellest, millises raamatukogus nad asuvad. Prioriteet siiski on â esialgu proovime leida ressursse raamatukogust, mis asub loendis kĂ”rgemal.
- Kui aga on ĂŒks peamine raamatukogu ja ĂŒks vana vĂ”i seisev draiver varus, aktiveerige tĂ”rkeĂŒlesannete reĆŸiim, asetades peamise raamatukogu loendi tippu ja valides passiivse rolli varude seadmete jaoks. Ăleminek sellele seadmele toimub ainult siis, kui see tĂ”eliselt vajalik, et töö saaks siiski kuidagi toimida. Selline olukord loetakse hĂ€daolukorraks, millest saadetakse teavitus e-postile.
On arene keerulisem olukord, mida me seni ei toeta â mitu aktiivset teeki, kui on passiivsed. Tagasiside nĂ€itab, kas selliste konfiguratsioonide jaoks on vajadus ja kas on vaja selle funktsiooni tulevikus tĂ€iustada. Tavaline praktika.
WORM-i tugi
WORM â Write Once Read Many â kassett, mida ei saa kustutada vĂ”i uuesti kirjutada , saab ainult andmeid juurde kirjutada. Nende kohustuslik kasutamine on reguleeritud mĂ”nedest organisatsioonidest, nĂ€iteks meditsiinivaldkonnas töötavatest. Peamine probleem selliste kassettide puhul oli varem see, et VBR vĂ”i salvestas pealkirja, mille hiljem ei saanud kustutada, ja teipiöid kukkusid sellise katse korral veaga.
Versioonis 9.5 Update 4 on tĂ€ielik toetus sellistele kassettidele. On lisatud WORM meedia basseine, tavapĂ€rane ja GFS, kuhu saab paigutada ainult sellist tĂŒĂŒpi kassette.

Uutel kassettidel on sinine, "kĂŒlmutatud" ikoon. Kasutaja vaatenurgast erineb töö WORM-kassettide kasutamisest tavalistega.
Kassettide "worminess" mÀÀratakse alguses baaride jĂ€rgi , kui baarikoodid on tavalised vĂ”i loetamatud, annab teavet draiver esimese kasseti sisestamise ajal. WORM-kassette ei saa paigutada tavalisse meedia basseini ja neile kirjutada. Huvi pĂ€rast: juba on leidunud kasutajaid, kes on liiminud WORM-barkoodid tavalistele kassettidele ja ĂŒllatunud muutustest oma infrastruktuuris pĂ€rast uuendamist.
Kasseti tĆĄipp
Koos kirjutatavate kassettide sisestamisega hakati töötama TavapĂ€raseid atribuutide tĆĄipis ei ole me varem kasutanud, praegu kirjutame ja loeme mĂ”nda, kuid ei kĂ€sitle seda peamise andmeallikana. Peamine orientiir on endiselt kasseti pealkiri. See lahendus osutus Ă”igeks: kuu aega pĂ€rast vĂ€ljaandmist nĂ€eme, kuidas kasutajate "loomaaed" riistvarast toob tĆĄipiga töötamisel ĂŒllatusi.
NDMP-mahu varundamine lintidele
KokkuvĂ”tteks â kĂ”ige nĂ”utuma funktsiooni kohta, kui palju tagasisidet selle versiooni kohta on. NDMP-mahu varundamine kassettidele on nĂŒĂŒd saadaval. VBR-infrastruktuuri tuleb , pĂ€rast mida saab failide taustatöödel valida selle hosti mahtu. Need salvestatakse lindile failide vormis, millel on eriline atribuut, et neid eristada tavalisest kataloogis.

Esimeses versioonis on teatavad piirangud: laiendusi ei toetata, pluss on vĂ”imalik varundamine ja taastamine ainult tĂ€ismahust, mitte eraldi failidest. Varundamine töötab lĂ€bi (NetAppi puhul â ), siin on omad eripĂ€rad: maksimaalne sÀÀstlike punktide arv â 9, pĂ€rast mida sunnitakse tĂ€ielikku varukoopiat.
KokkuvÔtteks
Need olid kĂ”ige olulisemad uuendused magnetlindile varundamises VBR 9.5 Update 4-s. Ăksikasjalikumad muudatused toome loetelu nĂ€ol:
- vÔimalus mÀÀrata allikate tööde ja failide jÀrjekord linditöödel;
- lisatud Tape Operator roll (kasutaja saab teha kĂ”ike, vĂ€lja arvatud taastamine lindilt â selleks on Restore Operator);
- tÀiendatud tÀielike include/exclude-maske failide linditöös (vÀlja arvatud NDMP);
- tĂ€iendatud taastamist failide linditöös (kaust taastatakse nende failidega, mis seal olid varundamise hetkel, mitte kĂ”igi, mis kunagi seal olnud â vĂ€ga nĂ”utud funktsioon, muide);
- suurendatud vÀga suure arvu failide taastamise kiirus lindilt;
- tÀiendatud algoritmi jÀrgmise lindiga kirjutamiseks, eriti sama vÔrdsed tingimused, arvestades kogu selle eluea jooksul kirjutatud/loetud andmete mahtu, vÔtame kÔige vÀrskema;
- parandatud toote stabiilsust.
Kasulikud lingid
Mugavuse huvides toome vÀlja ka mÔned lingid venekeelsetele ressurssidele:
- Ja oleme tagasi esialgsesse kohta ĂŒlevaatevideod "Kuidas see töötab" (kuigi praegu inglise keeles) â saab vaadata . Lindidest rÀÀgitakse slaididel 95 â 102.
Allikas: habr.com
