Pagina 1 di 1

virtual machine: ibernazione o freeze?

Inviato: dom 6 feb 2011, 2:49
da ZeroUno
Ciao

Ho una macchina virtuale (in questo caso è windows sotto vmware, ma potrebbe essere anche linux sotto virtualbox o qualsiasi altra combinazione).
A volte è utile non voler fare lo shutdown della macchina virtuale per esempio perchè sta compilando e non lo si vuole interrompere o semplicemente perchè ci si risparmia il tempo dello shutdown e il tempo del restart la volta successiva.

Con una macchina fisica la soluzione è l'ibernazione.
Con la macchina virtuale ci sono due strade:
1) soluzione software: ibernazione via software (da dentro la macchina virtuale). In questo modo il S.O. virt si salva la sua ram sul suo disco virtuale e si spenge.
2) soluzione hardware: freeze tramite la funzione "pause" di vmware (non so se anche virtualbox ce l'ha). In questo modo vmware stoppa il processore virtuale e salva la ram su un file del disco fisico

a parere vostro, quale è meglio? tenendo in considerazione diversi fattori quali:
1) velocità di stop e di ripresa
2) come digerisce il sistema (e le applicazioni aperte) il ripristino del sistema
3) in caso di impossibilità di ripristino di sistema (quindi forzatura volontaria o involontaria dell'avvio normale del sistema), la probabilità di corruzione del filesystem o dei dati.
4) rilettura dell'hardware alla rilettura
5) varie ed eventuali

Saluti,
01

Re: virtual machine: ibernazione o freeze?

Inviato: dom 6 feb 2011, 12:00
da marlavo
Anche VirtualBox ha la possibilità di "congelare" lo stato di una macchina virtuale.
Rimanendo però in un discorso più generico, senza entrare nello specifico software, la mia opinione sui vari punti è:
1) velocità di stop e di ripresa
Non credo ci siano grandi differenze per quanto riguarda la velocità, a sensazione direi che usare gli strumenti del software di virtualizzazione forse è più veloce
2) come digerisce il sistema (e le applicazioni aperte) il ripristino del sistema
Questo credo dipenda da cosa stava facendo il sistema al momento dell'ibernazione, se navigavi in internet credo non succeda niente, se stavi compilando qualcosa può essere che qualcosa si blocchi. Per esperienza i software che mi hanno dato maggiori problemi nell'ibernare la macchina sono i database, e comunque tutti quello che creano/accettano una connessione (TCP/IP o unix)
3) in caso di impossibilità di ripristino di sistema (quindi forzatura volontaria o involontaria dell'avvio normale del sistema), la probabilità di corruzione del filesystem o dei dati.
La stessa che avresti spegnendo "brutalmente" la macchina con il pulsante di power
4) rilettura dell'hardware alla rilettura
Non ho capito cosa intendi
5) varie ed eventuali
Se la macchina svolge dei lavori importanti e hai paura di perdere dei dati, non ibernare, salva il lavoro ed effettua lo shutdown pulito, che sia un server virtuale o uno reale non fa differenza :roll: .

Ciao

Re: virtual machine: ibernazione o freeze?

Inviato: dom 6 feb 2011, 13:42
da krisis
Tu veramente hai messo in ibernazione un sistema operativo su cui girava un database aperto in scrittura?

Re: virtual machine: ibernazione o freeze?

Inviato: lun 7 feb 2011, 0:18
da ZeroUno
2) come digerisce il sistema (e le applicazioni aperte) il ripristino del sistema
Questo credo dipenda da cosa stava facendo il sistema al momento dell'ibernazione, se navigavi in internet credo non succeda niente, se stavi compilando qualcosa può essere che qualcosa si blocchi. Per esperienza i software che mi hanno dato maggiori problemi nell'ibernare la macchina sono i database, e comunque tutti quello che creano/accettano una connessione (TCP/IP o unix)
quoto krisis... non mi aspetto che una transazione sql riprenda correttamente da dove si trovava, né mi passa per la mente di ibernare un server.
3) in caso di impossibilità di ripristino di sistema (quindi forzatura volontaria o involontaria dell'avvio normale del sistema), la probabilità di corruzione del filesystem o dei dati.
La stessa che avresti spegnendo "brutalmente" la macchina con il pulsante di power
sono daccordo relativamente. se ho fatto freeze e poi non riprendo da lì ma rifaccio nuovo start della macchina è vero; se ho fatto ibernate, bene o male il S.O. ne avrà tenuto in considerazione ed avrà per lo meno fatto il sync dei dischi prima dello spegnimento.
4) rilettura dell'hardware alla rilettura
Non ho capito cosa intendi
è più o meno come la 2, ma a livello hardware. Quando iberni una macchina reale devi fare i conti con il fatto che spengi elettricamente alcune periferiche, e alla riaccenzione potresti ritrovarti che queste si stanno reinizializzando ed hanno perso tutta la loro memoria storica. O (cosa comune) con una pendrive che viene staccata quando è gia stato fatto il freeze o l'ibernate. Bisogna anche fare i conti con il fatto che al ritorno ti ritrovi l'ora di sistema diversa da quella che avevi.
Considerare anche che nella ibernazione al restart passi per lilo e ricaricamento del kernel, mentre con il freeze riprendi esattamente da dove eri.
5) varie ed eventuali
Se la macchina svolge dei lavori importanti e hai paura di perdere dei dati, non ibernare, salva il lavoro ed effettua lo shutdown pulito, che sia un server virtuale o uno reale non fa differenza :roll: .
solitamente faccio ibernate quando sto facendo una operazione e
1) l'applicazione non consente il salvataggio
2) se l'applicazione consente il salvataggio comunque la ripresa non potrà mantenermi le stesse condizioni
3) voglio riaccendere il sistema più velocemente
mi è capitato di compilare con uno slackbuild un programma che ha impiegato una decina di ore. Fare uno shutdown significava che o dovevi ricominciare da capo o dovevi farlo continuare (dove possibile) manualmente.

Se è un server non c'è problema... non lo freezo, né lo iberno... e nemmeno lo spengo.

Ciao
01

Re: virtual machine: ibernazione o freeze?

Inviato: lun 7 feb 2011, 10:28
da marlavo
Tu veramente hai messo in ibernazione un sistema operativo su cui girava un database aperto in scrittura?
Si, lo ammetto :shock:

Ma l'ho fatto su una macchina di test, non era ovviamente importante. ;)