KVM

KVM viesa momentuzņēmumi ar Libvirt

KVM viesa momentuzņēmumi ar Libvirt
VM ir daudz izmantošanas gadījumu, no kuriem viens ir VM spēja izmantot kā testa mašīnas. Varat eksperimentēt VM, lietot ielāpus un pārbaudīt jauninājumus, pirms to darāt ražošanas sistēmās vai darbstacijā. Ļaunprātīgas programmatūras testēšanai, kā to dara lielākā daļa drošības kopienas, var izmantot arī vienreizējās lietošanas VM, kuriem trūkst personisku vai sensitīvu datu, vienkārši pārliecinieties, vai VM tīkls ir izolēts no jūsu resursdatora un LAN.

Tomēr tas kļūst nogurdinošs, lai atkārtoti instalētu operētājsistēmu savā VM. Tas kavē jūsu darbplūsmu, un tāpēc jums ir nepieciešams uzticams veids, kā:

  1. Uzņemiet sava VM momentuzņēmumu jebkurā konkrētā laika brīdī.
  2. Ir mehānisms momentuzņēmuma izmantošanai, lai atgrieztu VM atpakaļ iepriekš darbībā.

Iepriekš esmu apspriedis, kā momentuzņēmumi darbojas VirtualBox, un šoreiz es gribēju apspriest momentuzņēmumus Libvirt. Savai Libvirt instalācijai es izmantošu QEMU-KVM kā aizmugures hipervizoru. Jūsu gadījums var atšķirties, taču vispārējai funkcionalitātei un saskarnei nevajadzētu būt ļoti atšķirīgai, jo libvirt cenšas standartizēt priekšējās saskarnes saskarni.

Ja neesat pazīstams ar libvirt un qemu-kvm, šeit ir rokasgrāmata, kā jūs varat iestatīt KVM Debian.

Momentuzņēmuma izveidošana

Ir vairāki veidi, kā varat uzņemt un pārvaldīt sava VM momentuzņēmumus. GUI lietojumprogrammas, piemēram, virt-manager un oVirt, piedāvā funkcionalitāti, un jūs pat varat rakstīt pielāgotus skriptus saskarnei ar libvirt API, kas jums pārvalda visu momentuzņēmumu diapazonu.

Tomēr es izmantošu virsh komandrindas saskarni, lai parādītu, kā jūs varat pārvaldīt savus virtuālās mašīnas un to momentuzņēmumus. Šī lietderība ir aprīkota ar gandrīz visām noklusējuma libvirt instalācijām, un tai jābūt pieejamai plašā izplatīšanas diapazonā.

Tālāk norādītajām komandām noteikti aizstājiet mana VM nosaukumu VM1 ar faktisko VM nosaukumu. Libvirt bieži atsaucas uz virtuālo mašīnu un konteineriem kā Domēni. Tātad, ja tiek parādīts kļūdas ziņojums, kas ierosina, piemēram, “norādīt domēna nosaukumu”, kā viens no komandas argumentiem jānorāda sava virtuālā datora nosaukums. Izmantojiet šo komandu, lai uzskaitītu visus Libvirt pārvaldībā esošos VM.

$ virsh saraksts - viss

Lai uzņemtu momentuzņēmumu VM, vienkārši palaidiet:

$ virsh momentuzņēmums - izveidojiet VM1

Lai uzskaitītu visus konkrētā VM momentuzņēmumus, izmantojiet komandu:

$ virsh momentuzņēmumu saraksts VM1
Vārda izveides laika stāvoklis
------------------------------------------------------------
1556533387 2019-04-29 15:53:07 +0530 darbojas

Var redzēt, ka momentuzņēmums ir izveidots. Pēc noklusējuma momentuzņēmuma nosaukums ir tā izveidošanas laika zīmogs (sekunžu skaits kopš UNIX laikmeta). Slejā Izveides laiks tiek parādīts izveides laiks cilvēkiem lasāmā veidā, bet slejā Valsts tiek parādīts VM stāvoklis, kad tas tika momentuzņēmums. Tā kā šī VM darbojās, momentuzņēmuma stāvoklis ir arī "darbojas", taču tas nenozīmē, ka pats momentuzņēmums darbojas. Ar laiku tas nemainīsies. Šī funkcija ir pazīstama arī kā tiešraides momentuzņēmums, un tā ir diezgan vērtīga, jo ļauj jums uzņemt VM momentuzņēmumu bez dīkstāves. Vismaz KVM viesi strādā labi ar tiešraides momentuzņēmumiem.

Noteiktām slodzēm tomēr ir jāpārtrauc VM, pirms tas tiek momentuzņēmums. Tas nodrošina, ka momentuzņēmuma dati ir konsekventi un nav pusrakstīta faila vai trūkstošu datu. Ja jūsu VM darbībā esošajai slodzei ir augsts IO, pirms momentuzņēmuma izveidošanas, iespējams, jāatslēdz VM. Šādi izveidosim vienu.

$ virsh izslēgšana VM1

Tiek slēgta domēna VM1 darbība

$ virsh momentuzņēmums - izveidojiet VM1

Izveidots domēna momentuzņēmums 1556533868

[aizsargāts ar e-pastu]: ~ # virsh momentuzņēmumu saraksts VM1
Vārda izveides laika stāvoklis
------------------------------------------------------------
1556533387 2019-04-29 15:53:07 +0530 darbojas
1556533868 2019-04-29 16:01:08 +0530 izslēgšana
 
$ virsh start VM1
Sākās domēns VM1

Ja momentuzņēmumus vēlaties nosaukt citādi nekā laika zīmogs, izmantojiet komandu:

$ virsh momentuzņēmums-izveidot kā VM1 - nosaukums snap1
Vārda izveides laika stāvoklis
------------------------------------------------------------
1556533387 2019-04-29 15:53:07 +0530 darbojas
1556533868 2019-04-29 16:01:08 +0530 izslēgšana
snap1 2019-05-02 22:27:48 +0530 darbojas

Acīmredzot jums tas nav jānosauc snap1, jūs varat izvēlēties jebkuru ērtu nosaukumu.

Atgriešanās no momentuzņēmuma

Uzņemt momentuzņēmumu nav lietderīgi, ja nevarat pie tā atgriezties. Gadījumā, ja jums ir jāatgriežas atpakaļ uz momentuzņēmumu, vienkārši izmantojiet komandu:

$ virsh snapshot-revert $ VMName $ snapshot-name

Nosaukums var būt laika zīmogs vai lietotājam piešķirtais vārds, kas piešķirts momentuzņēmumam.

Pārliecinieties, ka jūsu pašreizējā VM nav svarīgu datu vai, ja ir kaut kas svarīgs, pēc tam uzņemiet pašreizējā VM momentuzņēmumu un pēc tam atgriezieties pie vecāka momentuzņēmuma.

QCOW2 priekšrocības

Qcow2 failu kopēšanas un rakstīšanas mehānisms ļauj katram momentuzņēmumam aizņemt ļoti mazu vietu. Vieta, ko aizņem momentuzņēmums, laika gaitā palielinās, kad skriešanas attēls atšķiras no momentuzņēmuma. Tātad, kamēr jūs nerakstāt daudz datu, momentuzņēmumiem būs nepieciešami tikai daži MB krātuve.

Tas arī nozīmē, ka momentuzņēmumi ir arī ļoti ātri. Tā kā kopēšanas uz rakstīšanas mehānismam vienkārši ir jāatzīmē laika zīmogs, kad momentuzņēmums tika uzņemts. Datu bloki, kas pēc momentuzņēmuma ierakstīti failā qcow2, tam nepieder, bet vecākie. Tas ir tik vienkārši. Manā testa stendā tiek izmantots cietais disks 5400RPM, kas nebūt nav tā veiktspējas virsotnē, joprojām ir nepieciešamas mazāk nekā dažas sekundes, lai šajā diskā uzņemtu VM tiešraides momentuzņēmumu.

Secinājums

Tāpat kā lielākajā daļā ar libvirt un virsh saistīto utilītu, momentuzņēmuma funkcionalitāte nodrošina ļoti elastīgu saskarni ar uzņēmuma līmeņa funkcijām, piemēram, tiešraides momentuzņēmumu, kā arī kopēšanas uz rakstīšanas mehānisma priekšrocībām.

Noklusējuma nosaukumu piešķiršanas kārtība arī atvieglo čaulas skriptu periodisku veco momentuzņēmumu noņemšanu un aizstāšanu ar jaunākiem. Viens no maniem vecākiem rakstiem par OpenZFS momentuzņēmumiem un momentuzņēmumu politikām var tikt piemērots arī jūsu KVM viesim. Lai iegūtu papildinformāciju par virsh momentuzņēmuma utilītu, varat izmantot virsh help momentuzņēmuma komandu. Palīdzības lapa ir ļoti maza, precīza un viegli saprotama.

Vulkan Linux lietotājiem
Ar katru jauno grafisko karšu paaudzi mēs redzam, kā spēļu izstrādātāji pārspēj grafiskās uzticamības robežas un tuvojas fotoreālismam. Neskatoties uz...
OpenTTD vs Simutrans
Transporta simulācijas izveide var būt jautra, relaksējoša un ārkārtīgi vilinoša. Tāpēc jums jāpārliecinās, ka izmēģināt pēc iespējas vairāk spēļu, la...
OpenTTD apmācība
OpenTTD ir viena no populārākajām biznesa simulācijas spēlēm. Šajā spēlē jums ir jāizveido brīnišķīgs transporta bizness. Tomēr jūs sāksit sākumā apmē...