www.flickr.com
Posts tonen met het label resize. Alle posts tonen
Posts tonen met het label resize. Alle posts tonen

donderdag 11 maart 2010

Uitlijnen van bestaande VMs met GParted

Als je zoals mij pas na het inrichten van een VMware infrastructuur bekend bent geraakt met het fenomeen partition alignment zul je vermoedelijk een hoop niet-uitgelijnde virtuele machines hebben.

NetApp heeft hier al tijdje een oplossing voor in de vorm van mbrscan/mbralign. Helaas is het gebruik van deze tools beperkt tot geregistreerde NetApp klanten met een actief support contract. Mocht je nu een compleet ander storage systeem gebruiken en toch je bestaande VMs willen uitlijnen, dan is hier ook een procedure voor.

Deze procedure vereist het gebruik van een GParted. Download de laatste versie van de LiveCD van de GParted website en koppel het gedownloade ISO bestand aan je VM. Start vervolgens de VM op van met LiveCD en voer de volgende stappen uit:
  • Selecteer de uit te lijnen partitie en selecteer move/resize in het menu.
  • Verklein de partitie met 10MB door dit aantal in te vullen bij de optie 'Free Space Preceding (MiB)'.
  • Druk op TAB en selecteer 'Resize/Move'.
  • Selecteer de optie 'Apply' via het menu en bevestig de opdracht.
  • Sluit nu de GParted applicatie af, maar herstart de VM nog niet!
  • Start een terminal venster.
  • Typ 'parted /dev/sda' om de parted command line editor te starten. Vervang eventueel /dev/sda met een schijftoewijzing naar keuze.
  • Maak een nieuwe partitie aan het begin van de schijf om de ruimte op te vullen tot het gewenste beginpunt van de uitgelijnde partitie. Als je bijvoorbeeld wilt dat jouw partitie op secotor 128 begint zul je een partitie moeten aanmaken die de sectoren 63-127 opvult. Typ hiervoor de volgende tekst in het terminal venster: mkpart primary 63s 127s
  • Verlaat de parted command line editor en start de GParted GUI weer op.
  • Verplaats en vergroot de uit te lijnen partitie zodat alle beschikbare ruimte gebruikt wordt. Het is ESSENTIEEL dat de optie "Round to Cylinders" wordt uitgevinkt!
  • Selecteer nu 'Apply All Operations.
  • Verwijder eventueel de hulppartitie aan het begin van de disk en herstart de VM.
Met dank aan Duncan van Yellow-Bricks.com die me via Twitter naar deze procedure leidde.

woensdag 23 januari 2008

Grootte VMDK bestand met bestaande snapshots aanpassen

Het is niet mogelijk om in VMware ESX de grootte van een VMDK bestand aan te passen zo lang er snapshots aanwezig zijn van de virtuele machine. Mocht je dit toch doen, dan zal de machine niet meer opstarten.

Gelukkig is er een manier om ESX te laten denken dat de aangepaste VMDK nog de oude grootte heeft. Controleer de originele grootte van een virtuele disk door het volgende commando uit te voeren op de command prompt van ESX:

grep -i rw test-000001.vmdk

De output van dit commando zal lijken op de volgende regel:

RW 2097152 VMFSSPARSE "test-000001-delta.vmdk"

Neem de waarde (in dit geval 2097152) over in de originele VMDK file, die hier test.vmdk heet.

Voer nu het volgende commando uit om de bestaande snapshots te verwijderen:

vmware-cmd /pathtovmx/test.vmx removesnapshots

Nu dient het commando voor het vergroten van de virtuele disk opnieuw uitgevoerd te worden:

vmkfstools -X 8G test.vmdk

Vanwege het verschil in grootte tussen de configuratie in test.vmdk en de ware grootte van het test-flat.vmdk bestand zal de volgende waarschuwing worden getoond:

DISKLIB-VMFS :Create: unexpected size diff: 0

Desondanks zal het nu mogelijk zijn om de virtuele machine weer op te starten met een vergrootte disk.

Update 06-01-2009: VMware heeft een soortgelijke procedure op hun knowledgebase gezet: http://kb.vmware.com/kb/1646892

woensdag 12 september 2007

Grootte NTFS volume wijzigen met Diskpart

Tijdens de VMware cursus die ik een tijdje terug heb gevolgd werd ik getipt over een standaard windows utility (Windows 2000 en hoger) waarmee je de grootte van een NTFS volume kunt wijzigen.

Hou er goed rekening mee dat deze utility niet werkt op systeem of boot volumes en volumes waar een pagefile op staat. Eigenlijk alleen data volumes dus. ;-)

De onderstaande documentatie heb ik schaamteloos gekopieerd van de Microsoft knowledgebase.
  1. Typ diskpart.exe bij een opdrachtprompt.
  2. Typ list volume om de bestaande volumes op de computer weer te geven.
  3. Typ Select volume volumenummer, waarbij volumenummer het nummer is van het volume dat u wilt uitbreiden.
  4. Typ extend [size=n] [disk=n] [noerr] . Hieronder worden de parameters beschreven:

    size=n
    De ruimte, in megabytes (MB), die moet worden toegevoegd aan de huidige partitie. Als u geen grootte opgeeft, wordt de schijf uitgebreid tot deze alle aaneengesloten niet-toegewezen ruimte inneemt.

    disk=n
    De dynamische schijf waarop u het volume wilt uitbreiden. Ruimte die gelijk is aan size=n wordt toegewezen op de schijf. Als er geen schijf wordt opgegeven, wordt het volume uitgebreid op de huidige schijf.

    noerr
    Alleen voor het uitvoeren van scripts. Als een foutbericht wordt geretourneerd, geeft deze parameter aan dat Diskpart verdergaat met het verwerken van opdrachten alsof de fout niet is opgetreden. Zonder de parameter noerr, zorgt een fout dat Diskpart wordt afgesloten met een foutbericht.
  5. Typ exit om Diskpart.exe te sluiten.