TP XEN - RAISIN - Réseau Aquitain des Informaticiens Systèmes

Transcription

TP XEN - RAISIN - Réseau Aquitain des Informaticiens Systèmes
TP XEN
11 Octobre 2007
1 Informations pour le TP
●
DNS : 147.210.188.222 et 147.210.188.211
●
Proxy web : ○
dans le navigateur web : proxy.ixl.fr:3128
○
dans une console : export http_proxy=http://proxy.ixl.fr:3128
●
Serveur isci­target : 192.168.32.114
●
Plage DHCP statique (PC salles TP) : 192.168.32.100 192.168.32.111
●
Plage DHCP dynamique (machines virtuelles) : 192.168.32.120 192.168.32.160
●
Système d'exploitation des ordinateurs de la salle de TP : Linux Ubuntu 7.04
2 Découverte de Xen
1. Démarrez la machine sur le noyau Ubuntu 2.6.30 generic (noyau non xen)
○
Connectez­vous en root
○
Listez les interfaces réseau avec ifconfig
○
Lancez la commande xm list
2. Démarrez la machine sur un noyau Ubuntu xen 3.0
○
Connectez­vous en root
○
Listez les interfaces réseau avec ifconfig
○
Lancez la commande brctl show
○
Lancez la commande xm list
○
Regarder le contenu du dossier /etc/xen
○
Regarder le fichier de configuration : /etc/xen/xend-config.sxp
3 Installation d'une machine virtuelle xen debian avec xen­create­
image
1. Démarrez la machine en utilisant le noyau xen ubuntu server
2. Lancez xm list
3. Editez le fichier /etc/xen-tools/xen-tools.conf :
●
●
adapter ou vérifier les directives, en particulier :
dir, debootstrap, size, memory, noswap, fs, dist, image,
dhcp, kernel, initrd, arch
modifier la directive mirror en
mirror = http://ftp.fr.debian.org/debian
4. Lancez lsmod | grep loop pour vérifier si le module loopback et chargé dans le noyau , s'il ne l'est pas, chargez­le avec
modprobe loop max_loop=255
5. Positionnez le proxy de l'IXL
export http_proxy=http://proxy.ixl.fr:3128
6. Lancez la création de la machine virtuelle
xen-create-image --hostname=<nom_machine>
7. Pour forcer une création de machine virtuelle qui a échoué : xen-create-image --force --hostname=<nom_machine>
8. Pour voir l'avancement de l'installation de la machinne virtuelle, lancez :
tail -f /var/log/xen-tools/<nom_machine>.log
9. Vérifiez la présence du fichier de configuration de la machine dans /etc/xen et du fichier image dans /tp
10. Lancez la machine virtuelle xm list<nom_machine>.cfg
11. Lancez xm list
4 Manipulation d'une machine virtuelle xen
1. Editez /etc/xen/vm1 et positionnez une adresse mac : vif = [ ’mac=aa :16 :3e :45 :16 :
85, bridge=xenbr0’]
2. Dans un terminal lancez la commande xm create -c /etc/xen/vm1.cfg
3. Dans un autre terminal
1. Arrêtez la machine : xm shutdown -w vm1
2. Démarrez la machine : xm create /etc/xen/vm1.cfg
3. récupérez la console : xm console vm1 (Ctrl-] pour quitter)
4. Sauvegardez la machine : xm save vm1 /tmp/vm1.chk
5. Affichez la liste des machines : xm list
6. Restaurez la machine : xm restore /tmp/vm1.chk
7. Affichez la liste des machines : xm list
8. Arrêtez correctement la machine : xm shutdown -w vm1
9. Arrêtez brutalement la machine : xm destroy vm1
10. Affichez la liste des machines en notant le contenu de la colonne « State »: xm list
11. Mettez la machine en pause : xm pause vm1
12. Affichez la liste des machines en notant le contenu de la colonne « State »: xm list
13. Sortez la machine de l 'état de pause : xm unpause vm1
14. Relancez la machine : xm create -c vm1
15. Augmentez la taille de la machine : xm mem-set <id_domaine> 1024
16. Listez les processeurs de la machine : xm vcpu-list
17. Ajoutez un 2eme vcpu à la machine : xm vcpu-set <id_domaine> 2
5 Installation à la main d'une machine virtuelle xen
1. Aller dans /tp
cd /tp
2. Créez une image disque : dd if=/dev/zero of=feisty.img bs=1M count=500
3. Formattez le système de fichier : mkfs.ext3 feisty.img
4. Montez le disque : mkdir /mnt/vmTmp ; mount -o loop feisty.img /mnt/vmTmp
5. Installez un système Debian de base:
debootstrap --arch i386 etch /mnt/vmTmp/
http://ftp.fr.debian.org/debian/
6. Allez dans le disque : cd /mnt/vmTmp
7. Copiez les modules : cp -r /lib/modules/2.6.19-4-server lib/modules/
8. Editez et modifiez /mnt/vmTmp/etc/fstab
9. Démontez le disque : cd ; umount /mnt/vmTmp
10. Créez un fichier de config pour la machine
11. Lancez la machine : xm create -c <fichier_conf>
6 Migration d'une machine virtuelle xen
Préambule : Nous allons utiliser iscsi­enterprise­target (cf Annexe B sur iscsi)car NFS ne marche pas dans le cas de la migration (cf Annexe B)
Attention : Ne pas monter la même partition simultanément sur 2 PC différents de la salle de TP 1. Pour la migration vous travaillez en binôme de machines (cf l'annexe A pour la liste des binômes de machines), 2. Sur les 2 machines physiques du binôme
●
●
Affichez l'identifiant de l'initiator
iscsi-iname
Récupérez l'identifiant de la target au format iqn...
iscsiadm -m discovery --type sendtargets --portal
192.168.32.114
●
Connectez l'initiator à la target
iscsiadm -m node -T <id target iqn...> -p 192.168.32.114 -l
●
Listez les partitions disques, vous devriez voir une nouvelle partition
fdisk -l
●
Montez cette partition
mkdir /iscsi
mount /dev/sdb /dev/iscsi
3. Sur la machine physique qui va recevoir la vm migrée, copier le fichier de config de la vm cp /isci/domU/etc/xen/<nom_vm_a_migrer>.cfg /etc/xen
4. Sur la machine physique qui va recevoir la vm migrée, modifiez /etc/xen/xendconfig.sxp pour activer la fonction de relocation et autoriser la machine qui va envoyer la machine virtuelle à le faire :
(xend-relocation-server yes)
(xend-relocation-hosts-allow '')
5. Sur la machine physique qui héberge la machine virtuelle qui va être migrée :
●
cp /isci/domU/etc/xen/<nom_vm_a_migrer>.cfg /etc/xen
●
xm create -c /etc/xen/<nom_vm_a_migrer>.cfg ●
xm list
●
xm migrate --live <id_vm_a_migrer>
<ip_machine_physique_destination>
6. Utilisez la commande de migration pour migrer la machine virtuelle qui tourne sur l'une des 2 machines physiques du binôme vers l'autre machine physique xm migrate <nom_vm> <machine_destination>
7. Lancez xm list sur les 2 machines et un ping sur la machine virtuelle
7 Installation d'une machine virtuelle avec QEMU
1. Créez une image disque à l’aide de la commande dd (2Go) 2. Attention, ne pas lancer « sudo su - »mais lancer « sudo su » (ou encore « sudo /bin/bash ») car sinon des problèmes de frame buffer se produiront lors du lancement de qemu.
3. Lancez l’installation à l’aide de Qemu : qemu -hda <image_disque> -cdrom <image_iso> -boot d
4. Menez l’installation à terme 5. Montez l’image disque ●
fdisk -ul <image>, pour connaitre la taille du boot sector (à multiplier par 512) ●
mount -o loop,offset=taille <image> <point_montage> 6. Dans le point de montage, déplacez le dossier lib/tls vers lib/tls.disable (mauvais support, fait planter le noyau xen de ce domU)
7. Faîtes un chroot dans le point de montage de votre installation
8. Pour que le réseau puisse fontionner dans la machine virtuelle :
○ montez /proc mount -t proc none /proc
○ copiez le fichier resolv.conf de la machine hôte dans cette machine
9. Modifiez les fichier /etc/apt/source.list pour mettre les dépôts Ubuntu
10. A l’aide de apt­get, installez le noyau Xen
11. Quittez le chroot
12. A l’aide des fichiers de configuration des domU donnés, créez une configuration pour votre machine
13. Essayez de lancer votre machine 8 Installation de Windows dans une machine virtuelle xen
Suivre la documentation d 'installation d'une machine xen sur Linux Fedora :
http://www.cnrs.fr/aquitaine­limousin/spip.php?article1337
Annexe A Salle de TP
Annexe B
Le protocole iSCSI
iSCSI
= protocole réseau qui encapsule le protocole SCSI dans des paquets TCP. TCP/IP est alors utilisé comme procole de transport, ce qui permet à une machine d'accéder à des périphériques distants connectés à l'infrastructure réseau.
Terminologie
●
le client est appelé « initiator »
●
le serveur est appelé « target »
Format des adresse iSCSI est de 2 types
●
●
Format iqn (iSCSI Qualified Name) = iqn + la date (AAA­MM) + nom du domaine à l'envers + chaine unique
Ex : iqn.2005­03.org.open­iscsi:4ba5fad29ab3
Format eui (Enterprise Unique Identifier) = chaine préfixée par « eui » et suivie de 16 chiffres hexadécimaux
Ex : eui.00803A4B887A8D05
Connexion entre initiator et target
Lorsque l'initiator souhaite établir une connexion TCP avec la target, il a besoin de connaître le port TCP de la target.
portal = association (adresse IP, port TCP)
Il y a un portal sur l'initiator et sur la target. Le port par défaut sur la target est 3260
Un initiator peut établir plusieurs connexion TCP avec la même target.
L'ensemble de ces connexions définit une session iSCSI
Découverte automatique
Si initiator est activé, il peut découvrir automatiquement les targets associées à une adresse IP donnée.
Ce processus est appelé auto­découverte (auto­discovery) 

Documents pareils