apr 092011
 

Nel precedente articolo abbiamo realizzato il setup di un cloud con un contrloller OpenNebula e due nodi di calcolo XEN. Bene, in questo articolo andremo a creare la nostra prima VM e utilizzeremo i potenti comandi shell per controllare il cloud.
Innanzi tutto, la scelta di utilizzare XEN come Hypervisor, ci consente di utilizzare sia le numerose VM già “preconfezionate” oppure è possibile utilizzare gli “xen-tools” per crearci delle VM. In questo articolo useremo proprio questo secondo approccio.
Innanzi tutto, su uno dei due nodi di calcolo installiamo gli xen-tools con:

apt-get install xen-tools

Il file /etc/xen-tools/xen-tools.conf contiene la configurazione di xen tools, potete modificarla a vostro piacimento.
A questo punto creiamo la nostra prima macchina virtuale:

xen-create-image --hostname=debian \
  --ip=172.16.0.200 \
  --dir=/home/xen \
  --dist=lenny

con questo comando verrà creato un file di configurazione di all’interno di /etc/xen/debian.cfg e una directory chiamata “debian” all’interno di /home/xen con all’interno i file delle immagini della VM.
A questo punto testiamo il funzionamento dell’immagine usando direttamente XEN:

xm create /etc/xen/debian.cfg
xm console debian
--- per uscire premere CTRL-]
ping 172.16.0.200
xm delete debian

Ora che siamo certi del funzionamento della nostra VM e dell’Hypervisor, trasportiamo la VM all’interno della struttura di OpenNebula.
Spostiamo i file della VM all’interno dello storage NFS del cloud controller:

mv /home/xen/debian /srv/cloud/images
mv /srv/cloud/images/debian/disk.img /srv/cloud/images/debian/disk.0
chown -R oneadmin:cloud /srv/cloud/images/debian

Ora creiamo il file di configurazione dell’immagine di opennebula:

/srv/cloud/images/debian/debian.one
NAME   = debian
CPU    = 0.1
MEMORY = 128

OS = [ bootloader = /usr/lib/xen-default/bin/pygrub,
       root = sda2
 ]

RAW = [ type ="xen",
       data = "root = '/dev/sda2 ro'" ]

DISK   = [
  source   = "/srv/cloud/images/lenny/disk.0",
  target   = "sda2",
  readonly = "no",
  clone = "no",
  driver = "file:" ]

NIC    = [ IP = "172.16.0.200",
	   MAC = "00:16:3E:5C:12:AC" ]

FEATURES=[ acpi="no" ]

Ora andiamo ad operare sul cloud controller per creare le istanze delle VM e gestirle. Il funzionamento di OpenNebula è lineare: l’immagine appena creata è la “golden image”, cioè una immagine base in sola lettura che servirà da base per le immagini delle VM istanziate. Alla creazione di una nuova istanza, la golden image verrà duplicata in modo che ci sia un disco riservato per ogni istanza.

Con il comando seguente creeremo una nuova istanza della VM. La directory /srv/cloud/images/debian sarà duplicata all’interno di /srv/cloud/one/var/xxx, dove xxx è un valore progressivo che identifica l’istanza;

onevm create /srv/cloud/images/debian/debian.one

Con il seguente comando andremo a vedere quali VM sono istanziate e in quale stato sono;

onevm list

mentre con il seguente andemo a vedere i dettagli della VM:

onevm show [id]

Per cancellare una istanza usiamo:

onevm delete [id]

I comandi per avviare e spegnere una VM sono

onevm deploy [id] [cn]
onevm shutdown [id]

Per migrare una istanza su un diverso nodo di calcolo, infine,

onevm livemigrate [id] [cn]

Come ultima nota, se non vi piace lavorare con la shell, nel precedente articolo abbiamo installato anche una interfaccia web di gestione raggiungibile all’indirizzo:


http://172.16.0.1:4567

Articoli simili

 Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>