
Rakstā Mēs veiksmīgi uzstādījām hipervizoru serverī, pievienojām tam glabātuvi, parūpējāmies par elementāro drošību un pat izveidojām pirmo virtuālo mašīnu. Tagad apskatīsim, kā īstenot visvienkāršākos uzdevumus, kas jāveic, lai vienmēr būtu iespēja atjaunot pakalpojumu darbību, ja notiek traucējumi.
Proxmox iebūvētie rīki ļauj ne tikai veikt datu dublēšanu, bet arī izveidot iepriekš konfigurētu operētājsistēmu attēlu komplektus ātrai izplatīšanai. Tas ne tikai palīdz ģenerēt jaunu serveri jebkuram pakalpojumam dažu sekunžu laikā, bet arī samazina dīkstāves laiku līdz minimumam.
Par dublējumu izveidošanas nepieciešamību mēs nerunāsim, jo tas ir acīmredzami un jau sen ir aksioma. Mēs pievērsīsimies dažām ne acīmredzamām lietām un iezīmēm.
Vispirms aplūkosim, kā dati tiek saglabāti dublēšanas procesā.
Dublēšanas algoritmi
Sāksim ar to, ka Proxmox ir diezgan labs iebūvēts rīks virtuālo mašīnu dublēšanai. Tas ļauj viegli saglabāt visus virtuālās mašīnas datus un atbalsta divus saspiešanas mehānismus, kā arī trīs metodes šādu dublējumu izveidei.
Vispirms izskatīsim saspiešanas mehānismus:
- LZO saspiešana. Datu zudumu nesaturoša saspiešanas algoritma, kas izstrādāts jau 90. gadu vidū. Kods tika uzrakstīts (Proxmox tiek īstenots, izmantojot rīku lzop). Šī algoritma galvenā iezīme ir ļoti ātra atspiešana. Tādējādi jebkurš dublējums, kas izveidots, izmantojot šo algoritmu, var tikt atjaunots minimālā laikā, ja nepieciešams.
- GZIP saspiešana. Izmantojot šo algoritmu, dublējums tiks saspiežots uzreiz ar GNU Zip rīku, kas izmanto jaudīgu Deflate algoritmu, ko izstrādāja . Galvenais uzsvars tiek likts uz maksimālu datu saspiešanu, kas ļauj samazināt diska vietu, ko aizņem dublējumi. Galvenā atšķirība no LZO ir tā, ka kompresijas/dekompresijas procedūras prasa diezgan daudz laika.
Arhivēšanas režīmi
Proxmox piedāvā trīs dublēšanas metodes sistēmas administrētājam. Ar to palīdzību var atrisināt nepieciešamo uzdevumu, nosakot prioritāti starp nepieciešamību pēc dīkstāves un izveidotā dublējuma uzticamību:
- Snapshot režīms. Šo režīmu var saukt arī par Live backup, jo tā izmantošanai nav nepieciešams apturēt virtuālās mašīnas darbību. Šī mehānisma izmantošana nepārtrauc VM darbu, taču tam ir divi nopietni trūkumi — var rasties problēmas ar failu bloķēšanu operētājsistēmā un viszemākā izveidošanas ātruma dēļ. Dublējumi, kas izveidoti ar šo metodi, jātestē testēšanas vidē. Pretējā gadījumā ir risks, ka avārijas atjaunošanas gadījumā tie var neizdoties.
- Suspend režīms. Virtuālā mašīna īslaicīgi „sasalst” savu stāvokli, līdz dublēšanas process beidzas. Operatīvās atmiņas saturs netiek dzēsts, kas ļauj turpināt darbu tieši no tās vietas, kur darbs tika apturēts. Protams, tas izraisa servera dīkstāvi dublēšanas informācijas laikā, tomēr nav nepieciešams izslēgt/ieslēgt virtuālo mašīnu, kas ir diezgan kritiski dažiem pakalpojumiem. Īpaši, ja daļas pakalpojumu darbība nav automatizēta. Tomēr šos dublējumus arī ieteicams īstenot testēšanas vidē pārbaudei.
- Stop režīms. Uzticamākais dublēšanas veids, taču tas prasa pilnīgu virtuālās mašīnas izslēgšanu. Tiek nosūtīta komanda normālam izslēgšanai, pēc izslēgšanas tiek veikta dublēšana un pēc tam tiek nosūtīta komanda virtuālās mašīnas ieslēgšanai. Nepareizu darbību skaits šādā pieejā ir minimāls, un bieži vien tas ir tuvu nullei. Dublējumi, kas izveidoti šādā veidā, gandrīz vienmēr tiek atjaunoti pareizi.
Dublēšanas procedūras veikšana
Lai izveidotu dublējumu:
- Pārejiet uz nepieciešamo virtuālo mašīnu.
- Izvēlamies vienumu Rezervēšana.
- Noklikšķinām uz pogas Dublēt tagad. Atvērsies logs, kurā varēsiet izvēlēties nākotnes dublējuma parametrus.

- Kā krātuve norādām to, ko mēs pieslēdzām .
- Pēc parametru izvēles nospiežam pogu Rezervēšana un gaidām, kamēr tiks izveidota rezerves kopija. Par to liecinās uzraksts TASK OK.

Tagad izveidotās arhīvu rezerves kopijas virtuālajām mašīnām būs pieejamas lejupielādei no servera. Vienkāršākais un vienkāršākais kopēšanas veids ir SFTP. Lai to izdarītu, izmantojiet populāro multiplatformu FTP klientu FileZilla, kas spēj strādāt, izmantojot SFTP protokolu.
- Laukā Host ievadām mūsu virtualizācijas servera IP adresi laukā Lietotājvārds ievadām root laukā Parole — tas, kurš tika izvēlēts instalācijas laikā, un laukā Otrā norādām '22' (vai jebkuru citu portu, kas tika noteikts SSH pieslēgšanai).
- Noklikšķinām uz pogas Ātra pieslēgšanās un, ja visas datu ievades bija pareizas, aktivitātes panelī jūs redzēsiet visus failus, kas atrodas serverī.
- Pārejiet uz direktoriju /mnt/storage. Visas izveidotās rezerves kopijas atradīsies apakšdirektorijā 'dump'. Tām būs šāds nosaukums:
- vzdump-qemu-numurs_mašīnas-datums-laiks.vma.gz ja izvēlēta GZIP metode;
- vzdump-qemu-numurs_mašīnas-datums-laiks.vma.lzo ja izvēlēta LZO metode.
Ieteicams nekavējoties lejupielādēt rezerves kopijas no servera un saglabāt tās drošā vietā, piemēram, mūsu mākoņa krātuvē. Atpakotot failu ar paplašinājumu vma, ar tādu pašu rīku, kas nāk komplektā ar Proxmox, iekšā būs faili ar paplašinājumiem raw, conf un fw. Šajos failos ir sekojošais:
- raw — diska attēls;
- conf — VM konfigurācija;
- fw — ugunsmūra iestatījumi.
Atjaunošana no dublējuma
Apskatīsim situāciju, kad virtuālā mašīna tika nejauši dzēsta un ir nepieciešams steidzamais atjaunošanas process no rezerves kopijas:
- Atveram krātuvi, kurā atrodas rezerves kopija.
- Pārejiet uz cilni Saturs.
- Izvēlamies nepieciešamo kopiju un nospiežam pogu Atjaunošana.

- Norādām mērķa krātuvi un ID, kas tiks piešķirts mašīnai pēc procesa pabeigšanas.
- Noklikšķinām uz pogas Atjaunošana.
Tiklīdz atjaunošana būs pabeigta, VM parādīsies pieejamo sarakstā.
Virtuālās mašīnas klonēšana
Piemēram, pieņemam, ka uzņēmumam ir nepieciešams veikt izmaiņas kādā būtiskā pakalpojumā. Šāda izmaiņa tiek īstenota, veicot daudzus labojumus konfigurācijas failos. Rezultāts var būt neparedzams, un jebkura kļūda var izraisīt pakalpojuma sabojāšanu. Lai šādi eksperimenti neietekmētu darbojošos serveri, ieteicams veikt virtuālās mašīnas klonēšanu.
Klonēšanas mehānisms izveidos precīzu virtuālā servera kopiju, ar kuru drīkst veikt jebkādas izmaiņas, neradot ietekmi uz galvenā pakalpojuma darbību. Tad, ja izmaiņas tiks veiksmīgi piemērotas, jaunā VM tiks uzsākta darbībā, bet vecā tiks izslēgta. Šajā procesā ir viena īpašība, par kuru vienmēr jāpatur prātā. Klonētajā mašīnā IP adrese būs tieši tāda pati kā oriģinālajai VM, tas ir, tās palaišanas gadījumā radīsies adreses konflikts.
Pastāstīsim, kā izvairīties no tādas situācijas. Tieši pirms klonēšanas īstenošanas ir jāveic izmaiņas tīkla konfigurācijā. Tam ir nepieciešams pagaidu mainīt IP adresi, bet nesākt tīkla pakalpojumu no jauna. Pēc klonēšanas veikšanas galvenajā mašīnā ir jāatgriež iestatījumi atpakaļ, bet klonētajā mašīnā jāiestata jebkura cita IP adrese. Tā mēs iegūsim divas viena un tā paša servera kopijas ar dažādām adresēm. Tas ļaus ātri ieviest jauno pakalpojumu darbībā.
Ja šis pakalpojums ir tīmekļa serveris, tad pietiek tikai mainīt A ierakstu pie Jūsu DNS pakalpojumu sniedzēja, pēc tam klientu pieprasījumi ar šo domēna nosaukumu tiks novirzīti uz klonētās virtuālās mašīnas adresi.
Starp citu, Selectel piedāvā visiem saviem klientiem pakalpojumu bezmaksas jebkura skaita domēnu izvietošanai NS serveros. Ierakstu pārvaldība tiek veikta gan ar mūsu kontroļu paneli, gan ar īpašu API. Plašāk par to lasiet .
VM klonēšana Proxmox ir ļoti vienkārša uzdevums. Lai to īstenotu, ir jāveic šādas darbības:
- Pāriet uz nepieciešamo mašīnu.
- Izvēlēties no izvēlnes More punkts Klonēt.
- Atvērtajā logā aizpildīt parametru Vārds.

- Veikt klonēšanu, nospiežot pogu Klonēt.
Šis rīks ļauj izveidot virtuālās mašīnas kopiju ne tikai lokālajā serverī. Ja vairākus virtualizācijas serverus apvieno klastrā, tad ar šī rīka palīdzību var uzreiz pārvietot izveidoto kopiju uz vajadzīgo fizisko serveri. Noderīga funkcija ir diska krātuves izvēle (parametrs Target Storage), kas ir ļoti ērti, pārvietojot virtuālo mašīnu no viena fiziskā nesēja uz citu.
Virtuālo krātuvju formāti
Sīkāk pastāstīsim par Proxmox izmantotajiem disku formātiem:
- RAW. Visvienkāršākais un vieglākais formāts. Tas ir fails ar datiem par cieto disku "baits par baitu" bez saspiešanas vai optimizācijas. Šis formāts ir ļoti ērts, jo to viegli var piesaistīt, izmantojot standarta komandu mount jebkurā Linux sistēmā. Turklāt tas ir visātrākais "tips" diska, jo hipervizoram tas nav jāapstrādā.
Svarīgs šī formāta trūkums ir tas, ka tik daudz vietas, cik jūs norādījāt virtuālajai mašīnai, tikpat vietas uz cietā diska aizņem fails RAW formātā (neatkarīgi no tā, cik faktiski tiek izmantota vieta virtuālajā mašīnā).
- QEMU attēla formāts (qcow2). Varbūt visuniversālākais formāts, lai veiktu jebkuras darbības. Tā priekšrocība ir tāda, ka datu fails saturēs tikai faktiski izmantoto vietu iekšējā virtuālajā mašīnā. Piemēram, ja tika norādīta 40 GB vieta, bet faktiski tika izmantoti tikai 2 GB, tad visa pārējā vieta būs pieejama citām VM. Tas ir ļoti aktuāli, ņemot vērā diska vietas taupīšanu.
Neliels mīnuss, strādājot ar šo formātu, ir tas, ka, lai piesaistītu šādu attēlu jebkurā citā sistēmā, vispirms ir jāielādē , kā arī jāpārstāv utilīta qemu-nbd, kas ļaus operētājsistēmai piekļūt failam kā parastajam blokierīcei. Pēc tam attēls būs pieejams piesaistīšanai, nodalīšanai, failu sistēmas pārbaudei un citām operācijām.
Jāatceras, ka visas I/O operācijas šī formāta izmantošanas laikā tiek programmatiski apstrādātas, kas var izraisīt palēnināšanos aktīviski strādājot ar diska sistēmu. Ja mērķis ir izvērst datu bāzi serverī, labāk izvēlēties RAW formātu.
- VMware attēla formāts (vmdk). Šis formāts ir "dzimtais" hipervizoram VMware vSphere un tika iekļauts Proxmox saderības nolūkos. Tas ļauj migrēt VMware virtuālo mašīnu uz Proxmox infrastruktūru.
Pastāvīga vmdk izmantošana nav ieteicama; šis formāts ir vislēnākais Proxmox, tāpēc tas der tikai migrācijai, ne vairāk. Iespējams, tuvākajā nākotnē šis trūkums tiks novērsts.
Darbs ar diska attēliem
Proxmox komplektā ir ļoti ērta utilīta, saukta par qemu-img. Viens no tās uzdevumiem ir virtuālo disku attēlu konvertēšana. Lai to izmantotu, pietiek atvērt hipervizora konsoli un izpildīt komandu šādā formātā:
qemu-img convert -f vmdk test.vmdk -O qcow2 test.qcow2Ievērojamajā piemērā, VMware virtuālā diska vmdk attēls ar nosaukumu test tiks pārveidots formātā qcow2. Tas ir ļoti noderīgs komanda, kad ir nepieciešams labot kļūdu sākotnējā formāta izvēlē.
Izmantojot šo pašu komandu, varam piespiedu kārtā izveidot nepieciešamo attēlu, izmantojot argumentu create:
qemu-img create -f raw test.raw 40GŠāda komanda izveidos attēlu test formātā RAW, kura izmērs ir 40 GB. Tagad tas ir piemērots pieslēgšanai jebkurai no virtuālajām mašīnām.
Virtuālā diska izmēra maiņa
Un noslēgumā parādīsim, kā palielināt diska attēla izmēru, ja kādu iemeslu dēļ vietas tajā vairs nepietiek. Tam izmantosim argumentu resize:
qemu-img resize -f raw test.raw 80GTagad mūsu attēla izmērs palielinājās līdz 80 GB. Sīkāku informāciju par attēlu var apskatīt, izmantojot argumentu info:
qemu-img info test.rawNevajadzētu aizmirst, ka paša attēla paplašināšana automātiski nepalielinās partīcijas izmēru — tā tikai pievienos pieejamo brīvo vietu. Lai palielinātu partīciju, izmantojiet komandu:
resize2fs /dev/sda1kur /dev/sda1 — nepieciešamā partīcija.
Automatizētā dublēšanas izveide
Izmantošana manuālā dublēšanas veidā ir ļoti laikietilpīga un prasa daudz laika. Tāpēc Proxmox VE satur rīku automātiskai dublēšanai pēc grafika. Apskatīsim, kā to izdarīt:
- Izmantojot hipervizora tīmekļa saskarni, atveram punktu Datu centrs.
- Izvēlamies vienumu Rezervēšana.
- Noklikšķinām uz pogas Pievienot.
- Uzticām parametru iestatījumiem plānotājam.

- Iezīmējam rūtiņu pievienotajā punktā Iekļaut.
- Saglabājam izmaiņas, izmantojot pogu Izveidot.
Tagad plānotājs automātiski uzsāks dublēšanas programmu tieši norādītajā laikā saskaņā ar noteikto grafiku.
Secinājums
Esam aplūkojuši oficiālās dublēšanas un atjaunošanas metodes virtuālajām mašīnām. To izmantošana ļauj neitralizēt visus datus un ātri tos atjaunot avārijas situācijās.
Protams, tā nav vienīgā iespējamā metode svarīgu datu saglabāšanai. Ir daudz rīku, piemēram, , ar kuru palīdzību var izveidot pilnīgas un inkrementālas kopijas Linux virtuālo serveru saturam.
Veicot dublēšanas procedūras, vienmēr jāpatur prātā, ka tās aktīvi noslogo disku apakšsistēmu. Tādēļ ieteicams veikt šīs procedūras laikā, kad slodze ir minimāla, lai izvairītos no aizkavēšanās ievades-izvades operāciju laikā mašīnās. Disku operāciju aizkaves statusu var uzraudzīt tieši no hipervizora tīmekļa interfeisa (parametrs IO delay).
Avots: habr.com





