Esxi clonare una macchina virtuale

In questo articolo vediamo come creare un modello di macchina virtuale clonando una macchina esistente.

L’idea è quella di partire da una macchina funzionante e ottenere un disco immagine da poter collegare di volta in volta a nuove macchine. Questo ci permetterà di saltare tutta la fase di installazione del sistema operativo e di avere la macchina pronta in una frazione del tempo che normalmente impiegheremmo per installare da zero il sistema.

Per ottenere ciò utilizzeremo il comando sysprep /generalize. Questo rimuove dal sistema le sue informazioni specifiche (ad esempio il SID).

Perchè questo?

Pensiamo allo scenario di una infrastruttura basata su Active Directory. Ogni macchina ha un suo identificativo univoco (appunto il sid) che lo fa riconoscere all’interno della rete. Se io prendo un server virtuale, ne copio il disco e uso questa copia per collegarla ad una nuova macchina virtuale avrò ottenuto una copia identica della prima.

Appunto, troppo identica. Tanto identica che se avviate assieme verranno riconosciute come la stessa creando inevitabili conflitti.

Nel caso in esame partiremo da un server appena installato e con una applicazione di esempio (un semplice editor xml). Giusto per renderci conto che la macchina è proprio quella di partenza.

I passi saranno i seguenti:

 

  • macchina di partenza
  • sysprep
  • spegnimento della macchina
  • copia del disco virtuale in una locazione contenente i vari modelli
  • rimozione della macchina di partenza
  • creazione di una nuova macchina virtuale in modalità custom (per crearla senza disco)
  • copia del file del disco virtuale dalla cartella dei modelli alla cartella della nuova macchina
  • collegamento del disco alla macchina
  • accensione della nuova macchina

 

Partiamo dalla macchina appena configurata

Lanciamo il comando sysprep. Per lanciarlo è necessario aprire la shell del sistema operativo (con permessi elevati) e posizionarsi nella cartella contenente il programma: c:\windows\system32\sysprep.

Da qui si può lanciare il comando sysprep:

Articolo_27_2

Articolo_27_3

Va impostata la modalità “Generalize”.

Articolo_27_4

Alla fine possiamo spegnere la nostra macchina.

Accedendo al datastore contenente la macchina individueremo il disco (.vmdk) e lo copieremo in una cartella a nostra scelta dove porremo i vari modelli.

Articolo_27_5

A questo punto possiamo rimuovere la macchina facendone rimuovere anche i files sul disco. Il file ottenuto sarà il modello, da conservare a parte, che utilizzeremo per creare tutti le nostre macchine con quel sistema operativo/configurazione.

N.B. Va notato che il comando sysprep sui server non funziona con tutti i ruoli ma solo con alcuni; si veda il seguente link per una descrizione dettagliata.

Andiamo ora a creare una nuova macchina.

Articolo_27_6

Articolo_27_7

Selezionamo l’opzione “Custom” che ci permetterà di creare una macchina senza disco.

Alla fine dei vari passaggi riguardanti la configurazione della macchina ci verrà chiesto di specificare cosa fare a proposito del disco. Scegliamo l’ultima opzione “Do not create disk”.

Articolo_27_16

Una volta terminata la configurazione della macchina, editiamola ed aggiungiamo il disco.

Articolo_27_18

Articolo_27_19

Articolo_27_20

Selezioniamo l’opzione che ci permette di utilizzare un disco esistente ed andiamo a selezionare il disco creato in precedenza.

Articolo_27_21

Articolo_27_22

Articolo_27_23

Clicchiamo OK e confermiamo le opzioni successive.

Terminata la configurazione facciamo avviare la macchina

Articolo_27_27

seguiranno le fasi finali di configurazione del sistema operativo con la conferma dell’accettazione del contratto di licenza

Articolo_27_28

la localizzazione

Articolo_27_29

e la password dell’utente Administrator

Articolo_27_30

Al termine la macchina è pronta per il primo utilizzo

Articolo_27_31

Accedendo possiamo renderci conto che la macchina è la stessa di quella iniziale trovando la nostra applicazione già installata e pronta all’uso.

Articolo_27_32