Xen

From AleikoumWiki

(Difference between revisions)
Jump to: navigation, search
m
m (Exploitation du DomU)
Line 195: Line 195:
== Exploitation du DomU ==
== Exploitation du DomU ==
 +
 +
Arrive le moment ou il va falloir demarrer le DomU fraichement cree !<br />
 +
Le processus xend doit tourner et la machine physique (donc celle qui heberge les domU) doit apparaitre en tant que dom0 :
 +
<pre>
 +
# xm list
 +
Name ID Mem VCPUs State Time(s)
 +
Domain-0 0 7984 4 r----- 134.7
 +
</pre>
 +
 +
Maintenant il faut lancer le domU puis le configurer un minimum afin de pouvoir se connecter a lui via SSH :
 +
<pre>
 +
# xm create psrv-qg-dmz-0-1.cfg
 +
Using config file "./psrv-qg-dmz-0-1.cfg".
 +
Started domain le-nom-de-votr
 +
#
 +
</pre>
== Liens ==
== Liens ==

Revision as of 13:27, 24 February 2009

Contents

Requis

aptitude install xen-linux-system-2.6.26-1-xen-686 libc6-xen bridge-utils xen-tools

puis il faut rebooter sur le kernel patche xen
et theoriquement une fois loggue, on obtient cette information :

# uname -a
Linux psrv-qg-dmz-0 2.6.26-1-xen-686 #1 SMP Sat Jan 10 22:52:47 UTC 2009 i686 GNU/Linux

Xen (ses outils et le kernel) est installe ! on peut commencer a creer notre premier DomU !

Creation avec xen-create-image

Modification des fichiers de configuration

Il faut bien distinguer les outils (les xen-tools qui permettent de creer les DomU, les modifier, etc...) du processus xend (qui va faire tourner chaque DomU que vous allez creer)... Ils possedent chacun leur propre fichier de configuration.

Nous allons les modifier comme suit :

/etc/xen-tools/xen-tools.conf

Voici le mien :

# cat /etc/xen-tools/xen-tools.conf | grep -v "^#"
lvm = vg0         # le nom de mon groupe de volume qui sera utilise pour faire
                  # les futurs disques

install-method = debootstrap # la methode d'installation

size   = 4Gb      # la taille de la partition / par defaut
memory = 64Mb     # la taille de la RAM par defaut
swap   = 128Mb    # la taille de la SWAP par defaut
fs     = ext3     # le systeme de fichier par defaut
dist   = lenny    # la distribution par defaut a installer
image  = sparse   # sparse vs. full disk images.

gateway   = 192.168.0.1 
netmask   = 255.255.255.0
broadcast = 192.168.0.255

passwd = 1       # en placant cette option a 1, un password vous sera demande 
                 # lors de l'installation du DomU

kernel      = /boot/vmlinuz-`uname -r`
initrd      = /boot/initrd.img-`uname -r`

mirror = http://ftp.fr.debian.org/debian/

ext3_options   = noatime,nodiratime,errors=remount-ro
ext2_options   = noatime,nodiratime,errors=remount-ro
xfs_options    = defaults
reiser_options = defaults

serial_device = hvc0 # /!\ tres important, sans ca pas de console


/etc/xen/xend-config.sxp

Voici le mien :

#cat /etc/xen/xend-config.sxp | grep -v "^#"
(network-script network-bridge)
(vif-script vif-bridge)
(dom0-min-mem 196)
(dom0-cpus 0)
(vncpasswd '')

Theoriquement les lignes que vous aurez a ajouter sont :

(network-script network-bridge)
(vif-script vif-bridge)

Elles permettent a vos DomU de "sortir" par le reseau et d'avoir acces a Internet par exemple.

Creation de l'image de notre DomU

Etape 1

Maintenant que tout semble bien configure, nous allons utilise l'assistant de creation d'image pour generer le fichier de configuration xen de notre DomU mais aussi pour installer le systeme de notre DomU !
Pour cela il suffit de lancer la commande suivante :

#xen-create-image --hostname=le-nom-de-votre-host --ip=192.168.0.42

En consultant le man de xen-create-image vous obtiendrez la liste complete des options... de plus il faut noter que les options non explicitees seront initialisees avec le fichier de conf edite plus tot : /etc/xen-tools/xen-tools.conf.

Voici ce que donne l'execution de la commande :

# xen-create-image --hostname=le-nom-de-votre-host --ip=192.168.0.42

General Information
--------------------
Hostname       :  le-nom-de-votre-host
Distribution   :  lenny
Partitions     :  swap            128Mb (swap)
                  /               4Gb   (ext3)
Image type     :  full
Memory size    :  64Mb
Kernel path    :  /boot/vmlinuz-2.6.26-1-xen-686
Initrd path    :  /boot/initrd.img-2.6.26-1-xen-686

Networking Information
----------------------
IP Address 1   : 192.168.0.42 [MAC: 00:16:3E:8C:EB:F0]
Netmask        : 255.255.255.0
Broadcast      : 192.168.0.255
Gateway        : 192.168.0.1


Creating swap on /dev/vg0/le-nom-de-votre-host-swap
Done

Creating ext3 filesystem on /dev/vg0/le-nom-de-votre-host-disk
Done
Installation method: debootstrap
Done

Running hooks
Done

No role scripts were specified.  Skipping

Creating Xen configuration file
Done
Setting up root password
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
All done


Logfile produced at:
	 /var/log/xen-tools/le-nom-de-votre-host.log

Et suivre l'evolution de l'installation :

tail -f /var/log/xen-tools/le-nom-de-votre-host.log

Si tout se passe bien, les deux disques virtuels /dev/vg0/le-nom-de-votre-host-swap et /dev/vg0/le-nom-de-votre-host-disk ont ete crees (verification avec la commande lvdisplay) et un joli petit fichier a ete genere dans /etc/xen/le-nom-de-votre-host.cfg .

Etape 2

Voici donc le contenu de mon fichier /etc/xen/le-nom-de-votre-host.cfg genere plus tot et qui a subi de legere petite modification :

# cat le-nom-de-votre-host.cfg 
#
# Configuration file for the Xen instance le-nom-de-votre-host, created
# by xen-tools 3.9 on Tue Feb 24 11:21:52 2009.
#

#
#  Kernel + memory size
#
kernel      = '/boot/vmlinuz-2.6.26-1-xen-686'
ramdisk     = '/boot/initrd.img-2.6.26-1-xen-686'
memory      = '64'

#
#  Disk device(s).
#
root        = '/dev/sda2 ro'
disk        = [
                  'phy:/dev/vg0/le-nom-de-votre-host-swap,sda1,w',
                  'phy:/dev/vg0/le-nom-de-votre-host-disk,sda2,w',
              ]


#
#  Hostname
#
name        = 'le-nom-de-votre-host'

#
#  Networking
#
vif         = [ 'ip=192.168.0.42,mac=00:16:3E:8C:EB:F0' ]

#
#  Behaviour
#
on_poweroff = 'destroy'
on_reboot   = 'restart'
on_crash    = 'destroy'

# cf : http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=502798
extra   = "console=hvc0"

Exploitation du DomU

Arrive le moment ou il va falloir demarrer le DomU fraichement cree !
Le processus xend doit tourner et la machine physique (donc celle qui heberge les domU) doit apparaitre en tant que dom0 :

# xm list
Name                                        ID   Mem VCPUs      State   Time(s)
Domain-0                                     0  7984     4     r-----    134.7

Maintenant il faut lancer le domU puis le configurer un minimum afin de pouvoir se connecter a lui via SSH :

# xm create psrv-qg-dmz-0-1.cfg 
Using config file "./psrv-qg-dmz-0-1.cfg".
Started domain le-nom-de-votr
#

Liens

Personal tools