Abbiamo riscontrato un problema su un host ESXi che impediva l'avvio delle macchine virtuali. Ogni volta che gli utenti cercavano di avviare una VM, compariva l'errore "Risorse insufficienti". Questo errore era strano, poiché sapevamo che l'host ESXi aveva risorse sufficienti per eseguire altre VM. Pertanto, abbiamo dovuto risolvere il problema e verificare cosa stava causando questo errore.
Verifica delle risorse ESXi
Inizialmente, abbiamo controllato le risorse dell'host ESXi e abbiamo constatato che c'erano più che sufficienti risorse per eseguire una VM. [[SOURCE 1]]
Verifica delle prenotazioni VM
Successivamente, abbiamo controllato le prenotazioni delle VM per verificare se i valori delle prenotazioni potessero causare il problema. Tuttavia, non sono state trovate prenotazioni per questa particolare VM. [[SOURCE 1]]
Verifica dello spazio libero nel datastore
Se le risorse ESXi o le prenotazioni VM non erano la causa del problema, abbiamo verificato se il datastore in cui era allocata la VM aveva abbastanza spazio libero. Ancora una volta, abbiamo constatato che il datastore aveva 1,4 TB di spazio libero, quindi il problema era correlato al datastore (almeno a quello in cui era allocata la VM). [[SOURCE 1]]
Analisi dei log del VMkernel
Nel log del VMkernel, abbiamo individuato l'errore seguente:
2016-05-17T12:39:06.134Z| vmx| I120: [vob.swap.extend.failure.status] Failed to extend swap file from 0 KB to 2097152 KB.
2016-05-17T12:39:06.134Z| vmx| I120: [vob.swap.extend.failure.moreinfo] Current swap file size is 0 KB.
2016-05-17T12:39:06.134Z| vmx| I120: [msg.vmmonVMK.creatVMFailed] Could not power on virtual machine: No space left on device.
2016-05-17T12:39:06.134Z| vmx| I120: [msg.monitorLoop.createVMFailed.vmk] Failed to power on VM.
Da questo errore, abbiamo dedotto che l'ESXi non consentiva l'avvio della VM a causa della mancanza di spazio per salvare i file di swap, nonostante lo spazio sufficiente per allocare swap o qualsiasi altra VM. [[SOURCE 1]]
Identificazione del volume VMFS e del motivo per cui è pieno
Abbiamo verificato il volume VMFS /vmfs/volumes/5253f39e-5cc0b637-0a9f-d89d67180e96/
e abbiamo scoperto che un datastore locale era pieno e non aveva spazio libero. Tuttavia, i file di swap dovrebbero essere salvati nella stessa cartella/ datastore della VM. Pertanto, abbiamo controllato la configurazione dell'host ESXi relativa alla posizione dei file di swap delle macchine virtuali. [[SOURCE 1]]
Modifica della posizione dei file di swap delle macchine virtuali
Nella scheda di configurazione dell'host ESXi, nella sezione "Software", abbiamo individuato l'opzione "Posizione dei file di swap delle macchine virtuali". Abbiamo notato che i file di swap venivano salvati in una posizione diversa dalla cartella della VM, non seguendo l'opzione consigliata "Salva i file nella stessa directory della macchina virtuale". Sebbene fosse possibile utilizzare un datastore diverso per allocare tutti i file di swap, questa opzione non era stata utilizzata e qualcuno aveva effettuato una configurazione errata dell'host. Inoltre, questa opzione non è consigliata nelle operazioni di vMotion (poiché può degradare le prestazioni durante un Storage vMotion). [[SOURCE 1]]
Modifica della configurazione dell'host ESXi
Abbiamo modificato l'opzione selezionando la prima opzione e facendo clic su "OK". [[SOURCE 1]]
Riavvio delle VM
Dopo aver apportato queste modifiche, abbiamo riavviato le VM e non ci sono stati problemi. Tutte le VM su questo host ESXi sono state avviate senza alcun problema. [[SOURCE 1]]
Speriamo che queste informazioni possano aiutarti non solo a risolvere il problema (seguendo i passaggi necessari), ma anche a correggere la configurazione errata dell'host.