Articles

Diskkonsolidering behövs-Det går inte att komma åt filen eftersom den är låst – VMadmin.co.uk

När du har raderat ögonblicksbilder på en VM, antingen genom att ta bort en enskild ögonblicksbild eller välja ”Ta bort alla” ögonblicksbilder, kan du se följande varning för VM, som anger att diskkonsolidering behövs.

”konsolidering av virtuella maskinskivor behövs”

detta kan inträffa när en ögonblicksbild har tagits bort och tagits bort från snapshot manager, men konsolideringen av VMDKs på disken har misslyckats.

”konsolidering av virtuella maskinskivor behövs”

Du kan initiera en konsolidering av VMDKs manuellt genom att högerklicka på VM och välja Snapshot – > konsolidera.

men konsolideringsåtgärden kan misslyckas igen, om problemet som orsakade borttagningen av ögonblicksbild misslyckades diskkonsolidering tidigare inte har rensats.

det har varit en bra 6 månader eller mer sedan jag senast sett det här problemet, men idag hittade jag en VM med det här problemet i en annan kundmiljö.

detta är vad som hade hänt:

  • en enda ögonblicksbild hade tagits bort på en VM
  • den nödvändiga varningen för diskkonsolidering visades efteråt
  • VM -> Snapshot -> konsolidera misslyckas med låst filfel

ursprungligen försökte jag följande vilket ibland kan rensa detta:

  • Stäng av gäst OS och stäng av VM (det är inte alltid möjligt att göra det men jag kunde här)
  • skapa en ny ögonblicksbild
  • ”ta bort alla” ögonblicksbilder
  • vMotion till en annan värd
  • försök VM -> Snapshot -> konsolidera

men detta rensade inte det låsta filfelet som visas nedan:

”kan inte komma åt filen eftersom den är låst”

keen att hitta problemet jag ssh ’ d till ESXi-servern och kontrollerade hostd.log

även med VM fortfarande avstängd, kunde jag se att det hade problem med att låsa en av VMDK: erna när du binder för att köra Snapshot -> konsolidera uppgiften.

tail -f /var/log/hostd.log

jag körde sedan följande kommando för att hitta vilken värd(er) som hade låset på VMDK som anges i hostd.log

vmkfstools -D /vmfs/volumes/yourvolume/yourVM/yourlockedVM.vmdk

jag kunde se en enda post för” RO-ägare ”som hade låset och MAC-adressen som slutade på”69a0”.

detta är ESXi-servern som har låset på VMDK-filen.

nästa leta reda på vilken ESXi-värd som har en nätverksadapter med den MAC-adressen.

en gång bekräftat att jag placerade värden i underhållsläge, DRS vMotioned alla VM till en annan värd i klustret och startade om hostd-tjänsten.

/etc/init.d/hostd restart

När hostd-tjänsten hade startat om utförde jag en ögonblicksbild – > konsolidera på VM och det slutfördes framgångsrikt.