L'architettura dei devil su virtual machine (VM) è costituita da cinque PowerEdge DELL (2 X M610 e 3 X M620) sulle quali è stato installato l'hypervisor Xen 3. L'acceso alle risorse dell'hypervisor è garantito da un kernel opportunamente modificato (linux, BSD, solaris ecc), definito dom0, che a tutti gli effetti è una macchina virtuale con privilegi elevati in grado di gestire l'hypervisor, quindi gli accessi all'hardware, e di creare, modificare e lanciare altri domini/macchine virtuali denominate domU. Ciascun hypervisor (macchina fisica) è quindi in grado di ospitare più macchine virtuali in base alla specifiche hardware del sistema considerato. Inoltre tutti gli hypervisor Xen sono configurati in maniera da permettere il live-migration ovvero lo spostamento a caldo (up-running) di macchine guest (domU) ospitate sugli altri hypervisor mantenendo la continuità del servizio presente sul guest. La gestione dei domU in termini di high-avalability (alta disponibilità → migrazione) è invece assicurata da redhat cluster suite (RHCS) che in caso di failure del sistema hypervisor comanda a XEN la migrazione dei domU sugli altri hypervisor appartenenti al cluster.
Gli hypervisors del cluster dei controlli Dafne:
pldantedom001.lnf.infn.it | 192.168.88.21 |
pldantedom002.lnf.infn.it | 192.168.88.22 |
pldantedom003.lnf.infn.it | 192.168.88.23 |
pldantedom004.lnf.infn.it | 192.168.88.24 |
pldantedom005.lnf.infn.it | 192.168.88.25 |
Una cartella è condivisa da tutti i dom0 il cui mountpoint è /xen.dom.cf/ nella quale sono presenti tutti i file di configurazione delle macchine virtuali.
La creazione di una VM a partire da un tamplate (ovvero il mirror di una immagine già presente sui dom0) è affidata ad uno script. Loggarsi sulla prima macchina del cluster (pldantedom001) ed eseguire i comandi di seguito:
Code Block | ||
---|---|---|
| ||
[root@pldantedom001 ~]# export PATH=$PATH:/usr/custom/bin/ [root@pldantedom001 ~]# create-vm_RG Sintassi: /usr/custom/bin/create-vm_RG <nome vm> [ -os <tipo os> ] [ -s <dim vol GB> ] [ -v <volume group name> ] [ -copy <si/no> ] <nome vm> = nome senza punteggiatura -os <tipo os> con <tipo os> = win o <tipo os> = linux(SL6), CentOS6_64, CentOS6_32, CentOS5_64 DEFAULT = linux -s <volume size> = dimensione Volume espressa in GB (DEFAULT = 16) -v <volume group name> = nome del volumegroup dove creare il volume richiesto (DEFAULT = vgDOM) -copy <si/no> effettua/non effettua la copia dall'immagine template in caso di dimensione standard DEFAULT = no Per esempio, usare: /usr/custom/bin/create-vm_RG www -os win -s 16 -v vgWIN -copy si per creare una macchina virtuale, con nome www, di tipo windows, con disco da 12 GB, sul volumegroup vgWIN e copiandola dal template I volumi dove e' possibile creare le macchine virtuali sono: vgDOM |
Come si vede dall'help si possono creare nuove VM a partire da template Windows, CentOS 6 (x86_64), CentOS 6 (i386), CentOS 5 (x86_64) e linux generiche cambiando da codice l'immagine del template (in questo caso al tag linux corrisponde una Scientific Linux 6)
Per creare una nuova macchina basta eseguire il seguente comando:
Code Block | ||
---|---|---|
| ||
./create-vm_RG vldantedev0XX -os CentOS6_32 -s 16 -copy si |
Il comando eseguito crea una macchina virtuale completamente configurata con hostname vldantedev0XX perfettamente identica all'ultima versione aggiornata di VM con sistema CentOS 6 a 32bit con moxa e visaconf non configurati. I fonts per la retrocompatibilità tra LabView e nuovi sistemi operativi 6 sono già installati.
La macchina deve essere registrata nel dhcp server dei controlli comunicandone il macaddress che si può estrarre dal file di configurazione della macchina virtuale:
Code Block | ||
---|---|---|
| ||
[root@pldantedom001 ~]# cat /xen.dom.cf/vldantedev0XX | grep mac vif = [ "mac=00:16:3e:XX:XX:XX,bridge=xbr198,script=vif-bridge" ] |
Attraverso l'interfaccia LUCI della RHCS raggiungibile all'indirizzo https://pldantedom001.lnf.infn.it:8084 è possibile aggiungere la macchina al cluster dei controlli attraverso la seguente interfaccia e completando i campi richiesti come da immagine:
Nello specifico si è indicato l'hostname, la directory contenente il file di configurazione della VM, si è abiltato l'autostart della VM, si è abbinata la VM ad un particolare failover domain (ovvero la VM partirà solo sul pldantedom001 o pldantedom002) e infine si è definita la politica di recovery della VM ovvero in caso di failure del dom0 la VM verrà riavviata sull'altro dom0 del dominio prescelto.
La VM è pronta per essere avviata:
Se non ci sono problemi, premendo il tasto Go la macchina si avvia su uno dei dom0 prescelti con tutte le ultime configurazione già settate:
- LabView 2010 32 bit
- Driver GBIP
- Driver Moxa (non configurato)
- Visaconf (non configurato)
- Fonts compatibili per LabView 2010