Espandi disco boot server su VMware ESX con Vsphere e vmdk
Questa operazione di ampliamento del disco C: (disco boot) di una macchina virtuale spesso puo' essere vitale.
Infatti molte volte gli aggiornamenti windows update scaricati sui server windows 2003 (ma anche 2008 R2) tendono a riempire il disco C: e allo stesso modo anche programmi installati, log che aumentano, insomma tutti dati che riempiono il disco di sistema e di boot di un server. Non sempre si riescono a spostare sulla partizione dati (D: o E: ad esempio) ed occorre trovare un modo per ampliare. Questa è la soluzione con un ambiente vmware vsphere, occorrono solo 2 server virtuali, si stacca il disco dal primo, si amplia con un comando sulla shell linux del server vmware esx, si attacca sul secondo server e si estende con un comando dos, dopodichè si puo' "restituire" al server iniziale (nel nostro esempio amplieremo un disco c: ad un server che lo ha come unico disco) e fare boot con il disco ampliato. E' necessario pertanto: una SAN o dello spazio disco condiviso (e libero, per aggiungere i Gb necessari), una infrastrutture server vmware ESX, ESXi o successivi, la shell linux con i privilegi di root su vmware, 2 server windows ed un solo boot del server principale a operazione conclusa!
Ammettiamo che voglia espandere questo disco c: da 100 Gb con spazio libero 13,04 Gb Devo verificare a quale file vmx appartiene questo disco, con le proprietà della macchina virtuale (Virtual Machine Properties) Edit Settings sulla macchina virtuale
In questo caso è G_dbserver.vmx e il relativo file è G_dbserver.vmdk
Bisogna rimuovere il disco con Remove, dopo aver spento il server G_dbserver
Lo espandi dalla console di vmware esx server, come root, con questo comando: vmkfstools -X 110G G_dbserver-flat.vmdk Come si vede, i file sotto questa cartella sono questi:
Lo voglio espandere di 10 Gb
Ora il file vmdk si presenta di 110gb (G_dbserver-flat.vmdk)
Lo aggiungi ad un altro server, nel nostro caso netboot Edit Settings su netboot -> Add
Next->Use an existing virtual disk
Lo cerchi nel Datastore e nella cartella dove era prima dal server G_dbserver
Ed ecco il disco di 110Gb (Advanced Option su puo' mettere Independent-persistent) Ecco netboot con l'Hard disk in piu' (in questo caso è il 3 perché ne ha già 2)
Netboot compare con un Disco locale F con dello spazio non allocato:
A questo punto su netboot con il comando dos DISKPART
Dentro DISKPART> il comando 'List volume' vi da la lista dei volumi, nel nostro caso è il 3 Select volume vi permette di selezionare il 3
Dopodichè comando 'extend'
Ecco il disco:
Ora occorre staccarlo da netboot e riattaccarlo su G_dbserver e fare boot Per staccarlo sempre Edit Settings->Remove Ecco ci su G_dbserver, lo aggiungiamo con Add
Si aggiunge sempre cercando nel datastore ed ecco il file da 110 Gb
NB: Lo aggiunge con il controller SCSI
Fai boot al server G_dbserver Ed ecco G_dbserver con il suo disco, spazio disponibile diventato 23,04 Gb
Tutti i suoi dati all'interno, visto da Risorse del computer come 109 Gb. Fine!