Author Topic: Giochiamo un poco con la console virtuale di Xen.  (Read 183 times)

Whitenoise

  • Administrator
  • Jr. Member
  • *****
  • Posts: 54
    • View Profile
    • Email
Giochiamo un poco con la console virtuale di Xen.
« on: February 16, 2010, 07:02:51 pm »
Ci sono molti modi per ricavare informazioni sulle macchine virtuali in esecuzione su di un sistema Xen.
Il tool principale e' il comando xm, che praticamente ci permettere di fare tutto quel che vogliamo. Poi c'e' xentop, perfetto per ricavare utili statistiche quali l'utilizzo di cpu, rete e dischi per ogni domU. Infine vi e' un modo un po' più oscuro ma molto versatile soprattutto quando si e' necessario scrivere uno script per automatizzare la gestione di un nodo Xen. Si tratta di XenStore.

XenStore non e' altro che un piccolo spazio condiviso tra tutti i domini, nel quale vengono salvati i dati relativi alla configurazione e stato di tutti i domini e che trova in:

Code: [Select]
/var/lib/xenstored/tdb
 Vi sono inoltre alcuni tool che permettono di interagire con questo spazio e di modificare e leggere le informazioni.

Ad esempio, supponiamo di avere la necessità di sapere quale terminale virtuale e stato assegnato ad un particolare domU di nome vps-0002

Ricaviamo l'id della macchina virtuale:

Code: [Select]
~#  virsh list | grep vps-0002 | awk '{ print $1 }'
Supponiamo che l'esito del comando precedente sia 14. Ora possiamo ricavarci il dato relativo al terminale:

Code: [Select]
~# xenstore-read /local/domain/14/console/tty
/dev/pts/2

Ora divertiamoci un poco con la console:

Code: [Select]
~# echo "root" >> /dev/pts/3
~# echo "password" >> /dev/pts/3
~# echo "free" >> /dev/pts/3
~# cat /dev/pts/3
vps-0002:~# free
             total       used       free     shared    buffers     cached
Mem:        262360      84720     177640          0       4728      46452
-/+ buffers/cache:      33540     228820
Swap:       262136          0     262136

Abbiamo scoperto un modo molto interessante di passare dei comandi ad una vps direttamente da dom0 tramite la console virtuale.
« Last Edit: February 16, 2010, 07:06:55 pm by Whitenoise »