Customazion Wizard è una funzione comodissima di vCenter, eppure spesso ho visto molti clienti che non la usavano, principalmente perchè non sapevano della sua esistenza, o perchè avevano scarsa conoscenza su come usarla. Questo è ancora più vero se il template di partenza è una VM linux. Su CentOS, i problemi principali derivano dal Network Manager e dalla sua gestione non proprio “amichevole” delle connessioni di rete: dato che identifica le schede di rete in base al loro mac address, ogni volta che clonate una VM la scheda di rete viene ricreata con un mac address differente generato in modo randomico. In questo modo la configurazione viene persa e Network Manager non è più in grado di rilevare la scheda eth0.
Solitamente, i tecnici finiscono con l’aggiornare a mano la configurazione di rete ogni volta che una VM viene creata per clonazione, vanificando i benefici dei deploy automatizzati. Tuttavia, una volta che avete memorizzato quel paio di “trucchi” da applicare, anche creare VM CentOS dai template e configurarle automaticamente, può diventare un’attività facilissima.
Per prima cosa, dovete ovviamente preparare il template. Installate CentOS così come fareste per una VM standard, aggiungete tutti i pacchetti che volete, e ricordatevi di installare i VMware Tools. Poco prima di spegnere la VM, cancellate questi due files:
/etc/udev/rules.d/70-persistent-net.rules /etc/sysconfig/network-scripts/ifcfg-eth0
Questo vi garantirà che la nuova VM non avrà alcuna referenza del precedente mac address usato mentre creavate il template.
Quindi, dovrete “imbrogliare” vCenter: la customization wizard non supporta CentOS, ma supporta RedHat. Quindi, semplicemente editate le proprietà della VM e configuratela come RedHat 6 64bit.
Convertite ora la VM in un template.
Create una nuova customization wizard, scegliendo come tipologia linux. Usate i parametri appropriati per la vostra situazione e salvate la configurazione.
Siete adesso pronti a fare un deploy di una nuova VM: scegliete il template che avete creato prima e scegliete di create una VM da questo template. Nel tab “customization”, scegliete di personalizzare la VM usando una personalizzazione esistente (quella che avete creato prima…).
In base a quanti parametri avete già impostato nella Customization, il wizard vi chiederà i rimanenti valori da usare. Impostate i vari parametri e completate il wizard. Il mio set ad esempio usa il nome della VM anche come hostname di linux, e mi chiede unicamente l’indirizzo IP, mentre subnet, gateway e DNS sono preimpostati, così come la time zone.
A questo punto, lasciate che vCenter termini il deploy della nuova VM. Quando il processo sarà terminato, vedrete direttamente dal sommario della VM che l’indirizzo IP è stato correttamente configurato:
e anche all’interno del sistema guest, tutto funziona correttamente:
L’indirizzo IP che avevate impostato è stato correttamente configurato nella “nuova” interfaccia eth0, tutti i parametri di rete sono stati configurati, e l’hostname è equivalente al nome della VM.