Visualizzazione post con etichetta windows. Mostra tutti i post
Visualizzazione post con etichetta windows. Mostra tutti i post

domenica 21 giugno 2009

Virtualbox: usa troppa CPU? Decapitatelo!!!!


Mi servivano due macchine virtuali debian per fare degli esperimenti.
Il "serverino" con la nuova memoria sembrava adatto ad ospitarle.
Peccato che dopo aver installato virtualbox-ose e le due macchine virtuali non rimanessero risorse sufficienti a far girare il tutto.

Ogni macchina virtuale, in stato di idle, si portava via il 30-35% di CPU, se poi una delle macchine cominciava a fare qualcosa si passava a un bel 99.4%

Diciamo che il serverino ne soffriva (oltre al caldo terribile e all'insidia delle api morte)

La soluzione e' virtualbox-puel (ovvero la versione non-open di virtualbox che non viene pubblicata sui repository ma e' scaricabile dal sito SUN/Virtualbox).

Trovate i pacchetti binari per le piu' diverse piattaforme.

Due aspetti positivi della versione PUEL non presenti sulla OSE:
1) utilizzo delle periferiche USB (ma in questo caso non era importante)
2) possibilita' di eseguire una virtual machine senza visualizzarla nella console di virtualbox

Questo consente alle macchine virtuali di girare indisturbate senza scomodare X per la visualizzazione (tantopiu' che sul server X non dovrebbe nemmeno starci ;-) e consumare risorse preziose.

I processi VboxHeadless (da qui la decapitazione del titolo) infatti utilizzeranno una percentuale irrisoria di CPU quando le VM sono in idle. La percentuale aumenta con il risvegliarsi delle VM ma torna subito a calare quando queste tornano in idle.

Per accedere alle virtual machine si utilizza un qualsiasi client RDP (rdesktop su Linux, Remote Desktop su Windows)

Per lanciare la virtual machine si usa il comando:
VBoxVRDP --startvm NOME_VIRTUAL_MACHINE -p NUMERO_PORTA_PER_RDP &

Per default, la porta assegnata per l'RDP e' 3389, le virtual machine successive alla prima devono essere assegnate ad altri numeri di porta per consentirne l'accesso.
VBoxVRDP --startvm VM1 &
VBoxVRDP --startvm VM2 -p 3390 &

Per accedere alle macchine virtuali dal vostro client vi bastera' lanciare i seguenti comandi:
rdesktop IP_ADDRESS_SERVER:3389
rdesktop IP_ADDRESS_SERVER:3390

Per inviare un comando di arresto (shutdown) alle macchine virtuali vi bastera' lanciare il seguente comando:
VBoxManage controlvm NOME_VIRTUAL_MACHINE acpipowerbutton

Quindi per arrestare le due VM dell'esempio precedente:
VBoxManage controlvm VM1 acpipowerbutton
VBoxManage controlvm VM2 acpipowerbutton

Virtualbox: migrazione di guest windows ... schermata blu


Spostando una macchina virtuale (windows xp o 2003) da un server all'altro, si puo' ottenere un orrenda schermata blu (BSOD) che le impedisce di partire correttamente.

Soluzione:
Abilitare IO-APIC nei settaggi della macchina virtuale
Invertire il settaggio General -> Advanced -> IDE Controller Type (puo' essere PIIX3 o PIIX4)

Virtualbox: gli snapshot, questi sconosciuti.....

Ecco un'ottima guida per scoprire (o ripassare) il funzionamento degli snapshot in Virtualbox:

Parte 1
Parte 2

(Fonte giornaledisistema.blogspot.com)

Vmware: la macchina virtuale non esegue il boot da cd

Il problema non si pone a macchina vergine, quando bisogna installare il sistema operativo.

Purtroppo a installazione avvenuta potreste avere ancora bisogno di bootare da cd (ad esempio per eseguire gparted sulla partizione di root per estenderla dopo aver ingrandito il disco virtuale da console)

Il problema e' che il bios delle macchine virtuali e' impostato in modo tale che l'hard disk ha priorita' maggiore rispetto al cd.
Ulteriore problema: il boot della macchina virtuale e' talmente rapido che non riuscite a premere F2 per accedere al setup del bios e modificare questa priorita'.

La soluzione e' tutta "artigianale", insomma dovete modificare a manona un file di configurazione, in particolare, ammettendo ad esempio che la macchina virtuale si chiami linux, il file linux.vmx.

Aggiungete in fondo al file una riga seguendo questa sintassi:
bios.bootDelay = "ritardo_in_millisecondi"

Ad esempio:
bios.bootDelay = "15000"

impostera' un ritardo di 15 secondi durante il quale potrete premere F2, accedere al setup del bios e impostare il cd come prima periferica di boot.