
Kythish shënim përfundon ciklin mbi kopjimin e të dhënave. Do të flasim për organizimin logjik të serverit të dedikuar (ose VPS), i cili është i përshtatshëm për kopjim, si dhe do të ofrohet një opsion për rikuperimin e shpejtë të serverit nga kopja e sigurisë pa vonesa të rëndësishme në rast aksidenti.
Të dhënat fillestare
Serveri i dedikuar zakonisht ka tĂ« paktĂ«n dy disqe tĂ« ngurta, tĂ« cilat shĂ«rbejnĂ« pĂ«r organizimin e njĂ« grumbulli RAID tĂ« nivelit tĂ« parĂ« (mirror). Kjo Ă«shtĂ« e nevojshme pĂ«r tĂ« vazhduar punĂ«n e serverit nĂ«se njĂ« disk dĂ«shton. NĂ«se ky Ă«shtĂ« njĂ« server i zakonshĂ«m i dedikuar â mund tĂ« ketĂ« njĂ« kontrollues RAID tĂ« veçantĂ«, me njĂ« teknologji aktivizimi tĂ« memorizimit nĂ« SSD, kĂ«shtu qĂ« nĂ« pĂ«rveç disqeve tĂ« zakonshme tĂ« ngurta mund tĂ« lidhet njĂ« ose mĂ« shumĂ« SSD. NdonjĂ«herĂ« ofrohen serverĂ« tĂ« dedikuar qĂ« kanĂ« vetĂ«m SATADOM (disqe tĂ« vogla, tĂ« ndĂ«rtuar si njĂ« flash drive, tĂ« lidhur nĂ« portin SATA), ose ndonjĂ«herĂ« ka njĂ« flash drive tĂ« zakonshme tĂ« vogĂ«l (8-16GB), e lidhur nĂ« njĂ« port tĂ« brendshĂ«m tĂ« veçantĂ«, dhe tĂ« dhĂ«nat merrĂ«n nga njĂ« SAN, e lidhur pĂ«rmes njĂ« rrjeti tĂ« dedikuar pĂ«r ruajtjen e tĂ« dhĂ«nave (Ethernet 10G, FC, etj.), dhe janĂ« disa serverĂ« tĂ« dedikuar qĂ« ngarkohen direkt nga SAN. Nuk do t'i shqyrtoj kĂ«to variante, pasi nĂ« kĂ«to raste detyra e kopjimit tĂ« serverit kalon te specialisti qĂ« mirĂ«mban SAN, zakonisht ka teknologji tĂ« ndryshme pĂ«r krijimin e imazheve tĂ« gjendjes, deduplication tĂ« integruar dhe kĂ«naqĂ«si tĂ« tjera pĂ«r administratĂ«n, tĂ« trajtuara nĂ« pjesĂ«t e mĂ«parshme tĂ« kĂ«tij cikli. Kapaciteti i grumbullit tĂ« disqeve tĂ« serverit tĂ« dedikuar mund tĂ« arrijĂ« disa dhjetĂ«ra terabajt, nĂ« varĂ«si tĂ« numrit dhe kapacitetit tĂ« disqeve tĂ« lidhura me serverin. NĂ« rastin e VPS, kapaciteti Ă«shtĂ« mĂ« modest: zakonisht jo mĂ« shumĂ« se 100GB (por ndodhin edhe mĂ« tĂ« mĂ«dha), dhe tarifat pĂ«r kĂ«to VPS mund tĂ« jenĂ« mĂ« tĂ« shtrenjta se serverĂ«t mĂ« tĂ« lirĂ« tĂ« dedikuar nga ky host. NĂ« VPS zakonisht ka njĂ« disk, sepse nĂ«n tĂ« ndodhet SAN (ose diçka hiper-konverguese). NdonjĂ«herĂ« VPS ka disa disqe me karakteristika tĂ« ndryshme, pĂ«r qĂ«llime tĂ« ndryshme:
- i vogĂ«l sistemor â pĂ«r instalimin e sistemit operativ;
- i madh â pĂ«r ruajtjen e tĂ« dhĂ«nave tĂ« pĂ«rdoruesve.
GjatĂ« ri-instalimit tĂ« sistemit me mjete tĂ« panelit tĂ« menaxhimit, disku me tĂ« dhĂ«nat e pĂ«rdoruesve nuk fshihet, ndĂ«rsa disku sistemor pĂ«rditĂ«sohet plotĂ«sisht. Po ashtu nĂ« rastin e VPS, hosti mund tĂ« ofrojĂ« njĂ« buton qĂ« bĂ«n njĂ« fotografi tĂ« gjendjes sĂ« VPS (ose disku), megjithatĂ« nĂ«se instaloni sistemin tuaj operativ ose harroni tĂ« aktivizoni shĂ«rbimin e nevojshĂ«m brenda VPS â disa tĂ« dhĂ«na mund tĂ« humben. PĂ«rveç butonit zakonisht ofrohet njĂ« shĂ«rbim pĂ«r ruajtjen e tĂ« dhĂ«nave, shumicĂ«n e herĂ«ve shumĂ« tĂ« kufizuar. Zakonisht Ă«shtĂ« njĂ« llogari me qasje nĂ«pĂ«rmjet protokollit FTP ose SFTP, ndonjĂ«herĂ« sĂ« bashku me SSH, me njĂ« shell tĂ« reduktuar (pĂ«r shembull rbash), ose me kufizime nĂ« ekzekutimin e komandave pĂ«rmes authorized_keys (nĂ«pĂ«rmjet ForcedCommand).
Serveri i dedikuar është i lidhur me rrjetin me dy porte me një shpejtësi prej 1Gbit/s, ndonjëherë mund të jenë karta me shpejtësi 10Gbit/s. Në VPS ndërfaqja rrjetërore zakonisht është një. Zakonisht, qendrat e dhënash nuk kufizojnë shpejtësinë e rrjetit brenda qendrës së të dhënave, por kufizojnë shpejtësinë e qasjes në internet.
Ngarkesa tipike e një serveri të tillë të dedikuar ose VPS përbëhet nga një server web, bazë të dhënash, server aplikacionesh. Ndonjëherë mund të instalohen shërbime ndihmëse të ndryshme, përfshirë për serverin web ose bazën e të dhënave: motor kërkimi, sistem postal, etj.
Si hapësira për ruajtjen e kopjimeve, shërben një server i përgatitur posaçërisht, për të cilin do të flitet më shumë më vonë.
Organizimi logjik i sistemit të disqeve
NĂ«se ka njĂ« kontrollues RAID, ose kjo Ă«shtĂ« njĂ« VPS me njĂ« disk, dhe gjithashtu nuk ka preferenca tĂ« veçanta pĂ«r funksionimin e sistemit tĂ« disqeve (pĂ«r shembull, njĂ« disk tĂ« shpejtĂ« tĂ« veçantĂ« pĂ«r bazĂ«n e tĂ« dhĂ«nave) â gjithĂ« hapĂ«sira e lirĂ« ndahet kĂ«shtu: krijohet njĂ« ndarje, mbi tĂ« krijohet njĂ« grup volumesh LVM, nĂ« tĂ« krijohen disa vĂ«llime: 2 tĂ« vogla, tĂ« njĂ«jtĂ«n madhĂ«si, tĂ« pĂ«rdorura si sistem skedar rrĂ«njĂ«sor (ndryshohen alternativisht gjatĂ« pĂ«rditĂ«simeve pĂ«r mundĂ«sinĂ« e rikthimit tĂ« shpejtĂ«, ideja Ă«shtĂ« e marra nga distribuimi Calculate Linux), njĂ« tjetĂ«r â pĂ«r ndarjen e ndihmĂ«s, hapĂ«sira tjetĂ«r e lirĂ« ndahet nĂ« vĂ«llime tĂ« vogla, tĂ« pĂ«rdorura si sistem skedar rrĂ«njĂ«sor pĂ«r konteinerĂ«t e plote, disqe pĂ«r makinat virtuale, sisteme skedarĂ«sh pĂ«r llogaritĂ« nĂ« /home (çdo llogari â sistemi i saj skedar), sisteme skedarĂ«sh pĂ«r konteinerĂ«t e aplikacioneve.
Kujdes i rëndësishëm: volume duhet të jenë plotësisht të pavarura, domethënë nuk duhet të varen as nga njëri-tjetri, as nga sistemi i skedarëve rrënjë. Në rastin e makinave virtuale ose konteinerëve, ky aspekt respektohet automatikisht. Nëse janë konteinerë aplikacionesh ose katalogë shtëpiakë, duhet të mendohet për ndarjen e skedarëve të konfigurimit të serverit të uebit dhe shërbimeve të tjera në një mënyrë që të minimizohet varësia mes volumeve. Për shembull, çdo faqe punon nën një përdorues të vet, skedarët e konfigurimit të faqes janë në katalogun shtëpiak të përdoruesit, skedarët e konfigurimit të faqeve në konfigurimet e serverit të uebit përfshihen jo përmes /etc/nginx/conf.d/.conf, por, për shembull, /home//configs/nginx/*.conf
Nëse ka disa disqe, është e mundur të krijosh një grup RAID (dhe ta konfigurosh caching-in në SSD, nëse ka nevojë dhe mundësi), mbi të cilin të ndërtosh LVM sipas rregullave të propozuara më lart. Në këtë rast mund të përdoren gjithashtu ZFS ose BtrFS, por këtu duhet të mendosh disa herë: të dyja kërkojnë një qasje më serioze ndaj burimeve, dhe për më tepër ZFS nuk është në paketën e kernel-it të Linux-it.
PavarĂ«sisht skemĂ«s sĂ« pĂ«rdorur, gjithmonĂ« Ă«shtĂ« e rĂ«ndĂ«sishme tĂ« parashikohet paraprakisht shpejtĂ«sia e pĂ«rafĂ«rt e shkruajtjes sĂ« ndryshimeve nĂ« disqe, e mĂ« pas tĂ« llogaritet madhĂ«sia e hapĂ«sirĂ«s sĂ« lirĂ«, e cila do tĂ« rezervojĂ« pĂ«r krijimin e kopjeve. PĂ«r shembull, nĂ«se serveri ynĂ« do tĂ« shkruajĂ« tĂ« dhĂ«na me shpejtĂ«si 10 megabajt nĂ« sekondĂ«, dhe madhĂ«sia e tĂ« gjithĂ« grupit me tĂ« dhĂ«na Ă«shtĂ« 10 terabajt â koha e sinkronizimit mund tĂ« arrijĂ« deri nĂ« njĂ« ditĂ« (22 orĂ« â aq do tĂ« transferohet ky volum pĂ«rmes rrjetit 1gbit/sec) â Ă«shtĂ« e nevojshme tĂ« rezervohen rreth 800 GB. NĂ« realitet, numri do tĂ« jetĂ« mĂ« i vogĂ«l, mund tĂ« ndajmĂ« atĂ« me numrin e volumeve logjikĂ«.
Pajisja e serverit për ruajtjen e kopjeve rezervë
Dallimi kryesor i serverit pĂ«r ruajtjen e kopjeve rezervĂ« janĂ« disqet e mĂ«dha, tĂ« lira dhe relativisht tĂ« ngadalta. Duke marrĂ« parasysh qĂ« HDD-tĂ« moderne tashmĂ« kanĂ« kaluar pragun prej 10tĂ« nĂ« njĂ« disk â Ă«shtĂ« e domosdoshme pĂ«rdorimi i sistemeve tĂ« skedarĂ«ve ose RAID me kontrollsumĂ«, sepse gjatĂ« rikonstruksionit tĂ« grupit ose rikuperimit tĂ« sistemit tĂ« skedarĂ«ve (disa ditĂ«!) mund tĂ« dĂ«shtojĂ« disku i dytĂ« pĂ«r shkak tĂ« ngarkesĂ«s sĂ« rritur. NĂ« disqet me kapacitet deri nĂ« 1tĂ« kjo nuk ishte aq e ndjeshme. PĂ«r thjeshtĂ«si, do tĂ« supozoj se hapĂ«sira diskore ndahet nĂ« dy pjesĂ« mĂ« shumĂ« ose mĂ« pak tĂ« njĂ«jta nĂ« madhĂ«si (pĂ«rsĂ«ri, pĂ«r shembull, me ndihmĂ«n e LVM):
- volume, që përputhen me serverët, që përdoren për ruajtjen e të dhënave të përdoruesve (në to do të shtrihet kopja më e fundit e bërë për verifikim);
- volume, që përdoren si repozitoriume për BorgBackup (këtu do të arrijnë të dhënat për kopjet rezervë).
Parimi i punĂ«s Ă«shtĂ« se krijohen volume tĂ« veçanta pĂ«r çdo server nĂ«n repozitoriumet BorgBackup, ku do tĂ« arrijnĂ« tĂ« dhĂ«nat nga serverĂ«t operativĂ«. Repozitoriumet punojnĂ« nĂ« modin e vetĂ«m shtesĂ«, çka pĂ«rjashton mundĂ«sinĂ« e fshirjes sĂ« qĂ«llimshme tĂ« tĂ« dhĂ«nave, dhe falĂ« dedupikimit dhe pastrimit tĂ« periodik tĂ« repozitoriumeve nga kopjet rezervĂ« tĂ« vjetra (mbeten kopje vjetore, mujore pĂ«r vitin e fundit, javore pĂ«r muajin e fundit, ditore pĂ«r javĂ«n e fundit, ndoshta â nĂ« raste tĂ« veçanta â çdo orĂ« pĂ«r ditĂ«n e fundit: nĂ« total 24 + 7 + 4 + 12 + vjetore â rreth 50 kopje pĂ«r çdo server).
Në repozitoriumet BorgBackup nuk aktivizohet moda vetëm shtesë, në vend të saj përdoret ForcedCommand në .ssh/authorized_keys në një plan të tillë:
from="adresa e serverit",command="/usr/local/bin/borg serve --append-only --restrict-to-path /home/servername/borgbackup/",no-pty,no-agent-forwarding,no-port-forwarding,no-X11-forwarding,no-user-rc AAAAA.......Në atë rrugë është vendosur një skenar-mbështjellës mbi borg, i cili, përveçse nisin binarin me parametrat, gjithashtu nisin procesin e rikuperimit të kopjes rezervë pas përfundimit të kapjes së të dhënave. Për këtë, skripta-mbështjellës krijon një file-shenjë pranë repozitoriumit përkatës. Kopja e fundit e bërë pas përfundimit të procesit të ngarkimit të të dhënave rikuperohet automatikisht në volumin përkatës logjik.
Kjo strukturë lejon pastrimin periodik të kopjeve rezervë të panevojshme, si dhe nuk lejon serverët operativë të fshijnë asgjë në serverin e ruajtjes së kopjeve rezervë.
Procesi i kopjimit rezervë
Iniciatori i kopjimit është vetë serveri i dedikuar ose VPS, pasi kjo skemë ofron më shumë kontroll mbi procesin e kopjimit nga ana e këtij serveri. Në fillim bëhet një skenim i gjendjes së sistemit të skedarëve rrënjor aktiv, i cili monton dhe ngarkohet me ndihmën e BorgBackup në serverin e ruajtjes së kopjeve. Pasi të përfundojë heqja e të dhënave, skenimi shkëputet dhe fshihet.
Në rastin e një baze të vogël të dhënash ( deri në 1 GB për çdo faqe), bëhet një dump i bazës së të dhënave, i cili ruhet në volumin e duhur logjik, aty ku ndodhen të dhënat e tjera të kësaj faqeje, por në një mënyrë që dump-i të mos jetë i aksesueshëm përmes serverit web. Nëse bazat janë të mëdha - duhet të konfigurohet një "rezervë aktive" e të dhënave, për shembull me xtrabackup për MySQL, ose punën e WAL me archive_command në PostgreSQL. Në këtë rast, baza e të dhënave do të rikuperohet ndaras nga të dhënat e faqeve.
Nëse përdoren kontejnerë ose makina virtuale - duhet të konfigurohet qemu-guest-agent, CRIU ose teknologjitë e tjera të nevojshme. Në raste të tjera, nuk do të nevojiten konfigurime të tjera - thjesht krijojmë skenime të volumeve logjike, të cilat më pas përpunohen si skenimi i gjendjes së sistemit të skedarëve rrënjor. Pasi të përfundojë heqja e të dhënave, skenimet fshihen.
Puna e mëtejshme zhvillohet në serverin e ruajtjes së kopjeve:
- kontrollohet kopja e fundit e bërë në çdo repository,
- kontrollohet nëse ka një skedë etikete që tregon se procesi i heqjes së të dhënave është përfunduar,
- kryhet zhvillimi i të dhënave në volum lokal përkatës,
- fshihet skeda etiketë
Procesi i rikuperimit të funksionit të serverit
Nëse serveri kryesor dështon, fillohet një server i dedikuar i ngjashëm, i cili ngarkohet nga një imazh standard. Më së shumti, ngarkimi do të ndodhë përmes rrjetit, por tekniku i DC-së, i cili kryen konfigurimin e serverit, mund të kopjojë menjëherë këtë imazh standard në një nga disqet. Ngarkimi ndodh në memorie, pas së cilës fillon procesi i rikuperimit:
- kryhet një kërkesë për t'u bashkuar me pajisjen bllokuese përmes iscsinbd ose një protokolli tjetër të ngjashëm të volumit logjik, që përmban sistemin e skedarëve rrënjor të serverit të dështuar; pasi sistemi i skedarëve rrënjor duhet të jetë i vogël - kjo fazë duhet të përfundojë për disa minuta. Po ashtu, kryhet rikuperimi i boot loader-it;
- strukturat e volumeve logjike lokale ripërtërriten, volume logjike nga serveri i rezervave lidhen me ndihmën e modulit të bërthamës dm_clone: fillon rikuperimi i të dhënave, dhe ndryshimet regjistrohen menjëherë në disqet lokale
- një kontejner me të gjitha disqet fizike të disponueshme ngarkohet - rikuperohet plotësisht funksionimi i serverit, por me performancë të ulur;
- pasi përfundon sinkronizimi i të dhënave, volume logjike nga serveri i rezervave shkëputen, kontejneri fiket, serveri rimbush.
Pas rimbushjes, serveri do të ketë të gjitha të dhënat që ishin në momentin e krijimit të kopjes së rezervës, si dhe do të përfshijë të gjitha ndryshimet që u bënë gjatë procesit të rikuperimit.
Artikujt e tjerë të ciklit
Kopjimi, pjesa 7: Përfundimet
Ju ftoj të diskutojmë variantin e propozuar në komentet, faleminderit për vëmendjen!
Burimi: habr.com
