Articles

Lär dig hur och när du ska använda vSphere-snapshots

Den virtuella maskinens tillstånd vid en viss tidpunkt kan bevaras genom att ta en så kallad ögonblicksbild.

VMware-snapshot-funktionen är särskilt användbar i de scenarier där du snabbt vill återhämta dig från ett fel eller helt enkelt återgå till ett önskat tillstånd. Att återställa en virtuell maskin till ett funktionellt tillstånd efter en misslyckad uppdatering eller patch är ett vanligt användningsområde. På samma sätt kan du använda ögonblicksbilder för att återställa en virtuell maskin till ett baslinjestatus när en användare har slutat använda den, kanske som en del av ett underhållsschema för ett utbildningslaboratorium.

Snapshot-funktionen finns tillgänglig både på fristående ESXi-värdar och på vCenter Server.

Arbeta med ögonblicksbilder och Snapshot Manager

Du kan arbeta med ögonblicksbilder från vilken vSphere-klient som helst eller genom att göra API-samtal från PowerCLI eller liknande. Olika uppgifter, t.ex. återgång från ögonblicksbild, radering av ögonblicksbilder osv. följer samma klick- och valmönster. Den gemensamma nämnaren här är Snapshot Manager med vars hjälp du kan:

  • Föra ögonblicksbilder.
  • Returnera till den senaste ögonblicksbilden eller någon annan ögonblicksbild.
  • Leta bort en ögonblicksbild.
  • Leta bort alla ögonblicksbilder.
  • Redigera en ögonblicksbild (namn och beskrivning).
  • Hantera ögonblicksbilder.
  • Konsolidera diskar.

Från vSphere-klienten handlar det alltid om att högerklicka på VM-namnet, välja Snapshot(s) från VM:s kontext- eller åtgärdsmeny följt av den önskade åtgärden. Detta visas i figur 1 som alternativ A. Alternativt markerar du VM-namnet, klickar på fliken Snapshots och väljer en åtgärd från rullgardinsmenyn Alla åtgärder eller genom att klicka på respektive åtgärdsikon, dvs. alternativ B.

Figur 1 – Två sätt att utföra en ögonblicksbildsrelaterad åtgärd på en VM

Notera att varje VM kan ha högst 32 ögonblicksbilder. För bästa prestanda rekommenderas att du håller dig till 2-3 ögonblicksbilder per VM. När denna gräns överskrids returneras felet som visas i figur 2.

Figur 2 – Fel som indikerar att gränsen för maximalt antal ögonblicksbilder per vm har överskridits

En annan gräns att vara uppmärksam på är den för retention. Rekommendationen är att undvika att använda en ögonblicksbild i mer än 72 timmar eftersom filerna som utgör ögonblicksbilden fortsätter att växa och kan påverka systemprestanda bortsett från att du kan få slut på utrymme på datastores som är relativt små i storlek.

Hur man tar ögonblicksbilder

När du tar en ögonblicksbild av en virtuell maskin bevaras följande information.

  • Inställningar för virtuell maskin. Katalogen för den virtuella maskinen, som innehåller de diskar som lagts till eller ändrats efter att du tagit ögonblicksbilden.
  • Strömtillstånd. Den virtuella datorn kan vara påslagen, avstängd eller avstängd.
  • Diskstatus. Status för alla virtuella diskar i den virtuella datorn.
  • (Valfritt) Minnesstatus. Innehållet i den virtuella maskinens minne.

Två valfria inställningar bestämmer i vilket tillstånd en virtuell maskin återställs när den återställs från en ögonblicksbild. Observera att inget av dessa alternativ är tillgängligt, eller krävs för den delen, när en ögonblicksbild tas medan den virtuella maskinen är avstängd. De två alternativen är:

Snapshot av den virtuella maskinens minne: Det här alternativet är aktiverat som standard och rensar minnesinnehållet i en virtuell maskin till disken som en del av ögonblicksbilden. Detta gör det möjligt för en virtuell maskin att återgå till exakt det tillstånd som den kördes i när ögonblicksbilden togs. Om det här alternativet är avmarkerat, och om quiescing inte heller är markerat, kommer ögonblicksbilden att skapa filer som är kraschkonsistenta, vilket innebär att du måste sätta igång den virtuella maskinen manuellt efter att ha återställt den från ögonblicksbilden. En ögonblicksbild av minnet tar betydligt längre tid att slutföra. Dessutom ”fryses” en VM för att säkerställa tillståndsintegritet.

Quiesce guest file system: Det här alternativet kräver att VMware Tools är installerat och fungerar korrekt. Quiescing av en VM är den föredragna metoden för att säkerställa ett tillstånd som lämpar sig för säkerhetskopiering. Detta inkluderar operationer som att spola smutsiga buffertar från operativsystemets cache i minnet till disken eller andra tillämpningsspecifika uppgifter på högre nivå. Med ”Quiescing” menas att pausa eller ändra tillståndet för processer som körs på en dator, särskilt de som kan ändra information som lagras på disk under en säkerhetskopiering, för att garantera en konsekvent och användbar säkerhetskopiering. Quiescing är inte nödvändigt för ögonblicksbilder av minne; det används främst för säkerhetskopior.

Figur 3 innehåller en serie skärmdumpar som visar hur ögonblicksbilder, av virtuella maskiner som finns i olika miljöer, tas med hjälp av en viss vSphere- eller värdklient.

  • Exempel 1 – Ta en ögonblicksbild av en virtuell maskin som hanteras av vCenter Server 6.5 via webbklienten vSphere.
  • Exempel 2 – Ta en ögonblicksbild av en virtuell maskin som finns på en fristående ESXi 6.5 värd via ESXi värdklienten.
  • Exempel 3 – Ta en ögonblicksbild av en virtuell maskin som finns på en fristående ESXi 6.0 värd via vSphere-klienten i C#.

Figur 3 – Olika exempel på hur man tar ögonblicksbilder

Det fjärde och sista exemplet visar hur PowerCLI används för att ta en ögonblicksbild av en virtuell maskin som hanteras av vCSA 6.5. Jag har inkluderat två möjliga sätt som du kan använda för att ta ögonblicksbilder av en VM. I det första exemplet hämtar jag helt enkelt en virtuell maskin med hjälp av Get-VM, som jag sedan överför till cmdlet New-Snapshot. I det andra exemplet har jag använt cmdlet New-Snapshot på egen hand där du anger den virtuella maskinen som du vill snapshoppa via parametern -VM. I båda exemplen tilldelar parametern -Name ett namn till den ögonblicksbild som tas.

PowerShell

1
get-vm -name ”windows 7” | New-Snapshot -Namn ”Pre Windows Update”

>

PowerShell

1
Ny-Snapshot -VM ”Windows 7” -Name ”Pre Windows Update”

Figur 4 – Två sätt att skapa ögonblicksbilder med PowerCLI

Hur man utesluter diskar från en ögonblicksbild

Det kan finnas fall där du inte vill att diskarna i VM:s virtuella maskiner ska påverkas av ögonblicksbilder. För att uppnå detta ändrar du en VM:s hårddisk Disk Mode till Independent – Persistent eller Independent – Nonpersistent i VM:s inställningar. De två alternativen skiljer sig något åt enligt VMwares förklaring:

Independent – Persistent: Diskar i persistent läge beter sig som konventionella diskar på din fysiska dator. Alla data som skrivs till en disk i beständigt läge skrivs permanent till disken.

Independent – Nonpersistent: Alla data som skrivs till en disk i beständigt läge skrivs permanent till disken.

Independent – Nonpersistent: Ändringar på diskar i icke beständigt läge slängs när du stänger av eller återställer den virtuella datorn. Med icke beständigt läge kan du starta om den virtuella datorn med en virtuell disk i samma tillstånd varje gång. Ändringar på disken skrivs till och läses från en redo-loggfil som tas bort när du stänger av eller återställer.

Figur 5 – Ändra diskläget för en VMDK så att den inte påverkas av ögonblicksbilder

Hur du återgår till en ögonblicksbild

För att återgå till en ögonblicksbild väljer du antingen alternativet Återgå till senaste ögonblicksbild. Om en VM har flera ögonblicksbilder är det bara att markera den ögonblicksbild du vill återgå till från ögonblicksbildshierarkin som visas i Snapshot Manager och trycka på ikonen Återgå till enligt bild 6.

Figur 6 – Val av ögonblicksbild som ska återgå till i Snapshot Manager

Det tillstånd som en VM återgått till beror på de valda alternativen vid tidpunkten då ögonblicksbilden togs. Om minnesalternativet valdes förblir den virtuella maskinen påslagen medan den återgår till ett tidigare tillstånd. Om minnesalternativet inte ingick när ögonblicksbilden togs måste du slå på den virtuella maskinen manuellt efter att ha återgått från ögonblicksbilden, oavsett vilket strömtillstånd den virtuella maskinen befann sig i när ögonblicksbilden togs.

När du återgår från ögonblicksbilden kommer du att varnas för att det aktuella tillståndet för den virtuella maskinen kommer att gå förlorat om du inte tar en ögonblicksbild, vilket visas i fig. 7.

Figur 7 – Varning för förlust av aktuellt tillstånd när du återgår till en ögonblicksbild

Om minnesalternativet valdes när ögonblicksbilden togs, presenteras du sedan alternativet att avbryta den virtuella maskinen medan den återgår. Om du väljer alternativet måste du sedan ”avbryta” den virtuella maskinen manuellt genom att sätta igång den igen.

Figur 8 – Avbryta den virtuella maskinen medan den återställs från en ögonblicksbild

Den första ögonblicksbilden som tas kallas för den överordnade bas-ögonblicksbilden. Detta är den senast sparade versionen av den virtuella maskinens aktuella tillstånd. Den överordnade ögonblicksbilden är alltid den ögonblicksbild som visas omedelbart ovanför ikonen Du är här i Snapshot Manager. Om du återställer eller återställer en ögonblicksbild blir den ögonblicksbilden då överordnad till det aktuella tillståndet You are here. En ögonblicksbild av en virtuell maskin som tas efter den överordnade ögonblicksbilden kallas en underordnad ögonblicksbild.

Figur 9 – ögonblicksbildshierarki som illustrerar förhållandet mellan överordnade och underordnade ögonblicksbilder och det aktuella tillståndet som representeras av You are here

Hur man raderar ögonblicksbilder

Du kan radera en enskild ögonblicksbild eller alla existerande ögonblicksbilder på ett och samma gång. Att ta bort ögonblicksbilder är en I/O-krävande process och kan påverka prestandan. När en ögonblicksbild raderas förblir det aktuella tillståndet för en virtuell maskin oförändrat. Alla ändringar som ackumulerats hittills kopieras dock sedan från deltadiskarna och skrivs till basdisken i en process som kallas Consolidation (konsolidering). Därefter ser konsolideringsprocessen till att ta bort alla överflödiga filer som är kopplade till den ögonblicksbild som just raderats.

Om konsolideringsprocessen misslyckas kan du initiera processen manuellt från menyn Snapshots genom att välja alternativet Consolidate. Det är viktigt att konsolideringen genomförs framgångsrikt eftersom de överflödiga deltadiskarna (se nästa avsnitt) kan påverka prestandan negativt.

Figur 10 – Utföra diskkonsolidering manuellt

För ytterligare information hänvisar vi till avsnittet Hur man konsoliderar ögonblicksbilder i vSphere 5.x/6.x KB-artikeln.

Snapshots från ett filperspektiv

En ögonblicksbild består av ett antal filer som du kan visa i Datastore Browser efter att ha navigerat till en virtuell maskins mapp för vilken ögonblicksbilder har tagits.

En ögonblicksbild består av följande filer:

Delta diskfiler: En .vmdk-fil som gästoperativsystemet kan skriva till. Deltadisken representerar skillnaden mellan den virtuella diskens aktuella tillstånd och det tillstånd som fanns när den föregående ögonblicksbilden togs. När du tar en ögonblicksbild bevaras den virtuella diskens tillstånd, vilket hindrar gästoperativsystemet från att skriva till den, och en delta- eller barndisk skapas. En deltadisk har två filer, inklusive en deskriptorfil som är liten och innehåller information om den virtuella disken och en motsvarande fil som innehåller rådata. Filerna som utgör deltadisken kallas barndiskar eller redo-loggar.

Flat fil: En -flat.vmdk-fil som är en av två filer som utgör grunddisken. Den platta disken innehåller rådata för grunddisken. Den här filen visas inte som en separat fil i Datastore Browser men listas separat när kataloginnehållet listas när den är konsolad till ESXi.

Figur 11 – Vissa filer är endast synliga när de är konsolade till ESXi

Databasfil: En .vmsd-fil som innehåller den virtuella maskinens ögonblicksbildsinformation och är den primära informationskällan för Snapshot Manager. Filen, som kan visas i vilken textredigerare som helst, innehåller radposter som definierar relationerna mellan ögonblicksbilder och underordnade diskar för varje ögonblicksbild.

Minnesfil: En .vmsn-fil, innehåller det aktiva tillståndet för en virtuell maskin och fångar minnestillståndet för den virtuella maskinen så att du kan återgå till ett aktiverat tillstånd för den virtuella maskinen. Om alternativet snapshot memory är avmarkerat kan du bara återgå till ett avstängt VM-tillstånd.

Du kan se inlägget med titeln The Anatomy of a VMware Virtual Machine för mer information.

Figur 12 – Mappning av ögonblicksbildsfilerna som visas i Datastore Browser till posterna som finns i databasfilen

Som nämnts bevarar en ögonblicksbild diskens och/eller den virtuella maskinens tillstånd vid en viss tidpunkt genom att skapa en serie deltadiskar för varje ansluten virtuell disk eller virtuell RDM. Eventuellt bevaras minnet och strömtillståndet genom att skapa en minnesfil.

Varje ögonblicksbild skapar ytterligare en deltafil. När du tar en ögonblicksbild hindrar ögonblicksbildsmekanismen gästoperativsystemet från att skriva till basfilen .vmdk och styr istället alla skrivningar till deltadiskfilen. Deltadisken representerar skillnaden mellan den virtuella diskens aktuella tillstånd och det tillstånd som fanns när du tog den föregående ögonblicksbilden. Om det finns mer än en ögonblicksbild kan deltadiskarna representera skillnaden mellan varje ögonblicksbild. Deltadiskfiler kan expandera snabbt och bli lika stora som hela den virtuella disken om gästoperativsystemet skriver till varje block på den virtuella disken.

Fler detaljer finns i följande länkar:

  • Understanding VM snapshots in ESXi / ESX
  • Determining if there are leftover delta files or snapshots that VMware vSphere or Infrastructure Client cannot detect

Snapshots limitations

Det finns ett antal begränsningar som du måste vara medveten om. Några, till exempel de som rör hur ögonblicksbilder interagerar med vMotion, måste hanteras korrekt om du fortfarande använder äldre versioner av vSphere.

  • Snapshots av virtuella maskiner med råa diskar, RDM-diskar i fysiskt läge eller gästoperativsystem som använder en iSCSI-initierare i gästen stöds inte.
  • VM:er med oberoende diskar måste vara avstängda innan du tar en ögonblicksbild.
  • Snapshots av aktiverade eller avstängda VM:er med oberoende diskar stöds inte.
  • Snapshots stöds inte med PCI vSphere Direct Path I/O-enheter.
  • Snapshots av VM:er som är konfigurerade för busdelning är inte ett VMware-stött alternativ.
  • Och även om ögonblicksbilder ger en tidpunktsbild av disken som säkerhetskopieringslösningar kan använda, är de inte avsedda att vara en robust metod för säkerhetskopiering och återställning. Om filerna som innehåller en virtuell dator förloras, förloras även dess ögonblicksbildsfiler. Dessutom är ett stort antal ögonblicksbilder svåra att hantera, förbrukar stora mängder diskutrymme och är inte skyddade vid maskinvarufel.
  • Snapshots kan påverka en virtuell maskins prestanda negativt. Prestandaförsämringen baseras på hur länge ögonblicksbilden eller ögonblicksbildsträdet finns kvar, hur djupt trädet är och hur mycket den virtuella datorn och dess gästoperativsystem har ändrats från den tidpunkt då du tog ögonblicksbilden. Du kan också se en fördröjning av hur lång tid det tar för den virtuella datorn att starta. Kör inte virtuella produktionsmaskiner från ögonblicksbilder på permanent basis.
  • Om en virtuell maskin har virtuella hårddiskar som är större än 2 TB kan ögonblicksbildsoperationer ta betydligt längre tid att slutföra.

Om du har miljöer från tiden före VSphere 6.0 ska du se till att läsa KB-artikeln Migrera virtuella maskiner med ögonblicksbilder. Ett vanligt problem som jag ofta stötte på var att du satte en värd i underhållsläge och väntade på att de virtuella maskinerna skulle migreras från den automatiskt, men upptäckte att processen fastnade på grund av att en eller flera virtuella maskiner hade ögonblicksbilder.

Felsökning

Här är några KB-artiklar som täcker några av de vanligaste problemen som du troligen kommer att stöta på när du arbetar med ögonblicksbilder.

  • Felsökningsproblem vid skapande eller överföring av ögonblicksbilder i VMware ESXi/ESX
  • Inte möjligt att ta bort ögonblicksbilder av den virtuella maskinen
  • Inte möjligt att skapa nya ögonblicksbilder på en virtuell maskin efter att ha tagit bort en disk från den virtuella maskinen
  • Aktiviteten för borttagning av ögonblicksbilder stannar vid 99 % i ESXi/ESX