Vous êtes sur la page 1sur 113

Guide de virtualisation

Virtualisation Red Hat

Guide de virtualisation: Virtualisation Red Hat

Copyright 2007 Red Hat, Inc. Ce guide contient des informations sur la configuration, la cration et le contrle de systmes d'exploitation invits sur Red Hat Enterprise Linux 5, en utilisant virsh, xm, vmm et xend. Nous vous invitons vivement nous crire si vous trouvez des fautes de frappe dans le Guide de Virtualisation ou si vous souhaitez nous faire part de vos suggestions pour amliorer ce manuel. Pour ce faire, veuillez nous soumettre un rapport par l'entremise de Bugzilla ( l'adresse suivante : http://bugzilla.redhat.com/bugzilla/) aprs le produit Red Hat Enterprise Linux et le composant Virtualization_Guide.
1801 Varsity Drive Raleigh, NC 27606-2072 USA Phone: +1 919 754 3700 Phone: 888 733 4281 Fax: +1 919 754 3701 PO Box 13588 Research Triangle Park, NC 27709 USA Documentation-Deployment Copyright 2007 by Red Hat, Inc. This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, V1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/). Distribution of substantively modified versions of this document is prohibited without the explicit permission of the copyright holder. Distribution of the work or derivative of the work in any standard (paper) book form for commercial purposes is prohibited unless prior permission is obtained from the copyright holder. Red Hat and the Red Hat "Shadow Man" logo are registered trademarks of Red Hat, Inc. in the United States and other countries. All other trademarks referenced herein are the property of their respective owners. The GPG fingerprint of the security@redhat.com key is: CA 20 86 86 2B D6 9D FC 65 F6 EC C4 21 91 80 CD DB 42 A6 0E

Table des matires


1. Architecture systme de la Virtualisation Red Hat ....................................................1 2. Support du systme d'exploitation ...........................................................................3 3. Support matriel ....................................................................................................5 4. Prrequis du systme de Virtualisation Red Hat .......................................................7 5. Dmarrage du systme ..........................................................................................8 6. Configuration de GRUB ..........................................................................................9 7. Dmarrage d'un domaine invit .............................................................................11 8. Dmarrage/Arrt d'un domaine lors de l'amorage du systme ...............................12 9. Fichiers de configuration .......................................................................................13 10. Gestion des CPU ...............................................................................................15 11. Migration d'un domaine ......................................................................................16 12. Configuration pour une utilisation rseau .............................................................17 13. Scurisation de Domain0 ....................................................................................18 14. Stockage ...........................................................................................................19 15. Gestion de machines virtuelles au moyen de virsh ...............................................20 1. Connexion un hyperviseur .........................................................................20 2. Cration d'une machine virtuelle ...................................................................20 3. Configuration d'un Dump XML ......................................................................20 4. Suspension d'une machine virtuelle ...............................................................20 5. Reprise d'une machine virtuelle ....................................................................21 6. Enregistrement d'une machine virtuelle .........................................................21 7. Restauration d'une machine virtuelle .............................................................21 8. Arrt d'une machine virtuelle .........................................................................21 9. Redmarrage d'une machine virtuelle ............................................................22 10. Arrt brutal d'un domaine ............................................................................22 11. Conversion d'un nom de domaine en un ID de domaine ...............................22 12. Conversion d'un ID de domaine en un nom de domaine ...............................22 13. Conversion d'un nom de domaine en un UUID .............................................22 14. Affichage des informations d'une machine virtuelle .......................................23 15. Affichage des informations d'un noeud ........................................................23 16. Affichage des machines virtuelles ................................................................23 17. Affichage des informations d'un CPU virtuel .................................................24 18. Configuration de l'affinit des CPU virtuels ...................................................24 19. Configuration du nombre de CPU virtuels ....................................................24 20. Configuration de l'allocation de la mmoire ..................................................24 21. Configuration de la mmoire maximum ........................................................25 16. Gestion de machines virtuelles au moyen de xend ...............................................26 17. Gestion de machines virtuelles au moyen de xm ..................................................29 1. Fichier de configuration xm ...........................................................................29 1.1. Configurer vfb ...................................................................................30 2. Cration et gestion de domaines avec xm ......................................................31 2.1. Connexion un domaine ...................................................................31 2.2. Cration d'un domaine .......................................................................32 2.3. Enregistrement d'un domaine .............................................................32 2.4. Arrter brutal d'un ID de domaine .......................................................32 iv

Guide de virtualisation 2.5. Arrt d'un domaine ............................................................................32 2.6. Rtablir un domaine ..........................................................................32 2.7. Suspendre un domaine ......................................................................33 2.8. Reprendre un domaine ......................................................................33 2.9. Redmarrer un domaine ....................................................................33 2.10. Renommer un domaine ...................................................................33 2.11. Mettre en pause un domaine ............................................................33 2.12. Reprendre un domaine (aprs une pause) ........................................33 2.13. Conversion d'un nom de domaine en un ID de domaine .....................34 2.14. Convertion d'un ID de domaine en un nom de domaine .....................34 2.15. Configuration de l'allocation mmoire ................................................34 2.16. Configuration de la mmoire maximum .............................................34 2.17. Configuration du nombre de VCPU ...................................................34 2.18. Immobiliser un VCPU ......................................................................35 2.19. Migration d'un domaine ....................................................................35 3. Contrles et diagnostics ...............................................................................35 3.1. Effectuer un vidage mmoire (Core Dump) .........................................35 3.2. Contrle des domaines en temps rel .................................................36 3.3. Affichage des tats de domaine .........................................................36 4. Affichage du temps de fonctionnement ..........................................................37 5. Affichage des informations VCPU .................................................................37 6. Affichage des informations de domaine .........................................................37 7. Affichage des priphriques TPM ..................................................................38 8. Affichage du fichier journal xend ...................................................................38 9. Affichage du tampon des messages ..............................................................38 10. Affichage des informations sur les tats ACM ...............................................38 11. Affichage des Vnet .....................................................................................39 12. Affichage des priphriques blocs virtuels ....................................................39 13. Affichage des interfaces rseau virtuelles ....................................................39 14. Cration d'un nouveau priphrique rseau virtuel .......................................39 15. Arrt brutal d'un priphrique rseau virtuel .................................................40 16. Cration d'un nouveau Vnet ........................................................................40 17. Arrt brutal d'un Vnet ..................................................................................40 18. Cration d'une tiquette de scurit de domaine ..........................................40 19. Tester les ressources d'un domaine ............................................................41 20. Affichage des ressources systme ..............................................................41 21. Configuration de la programmation du crdit ................................................41 22. Cration d'un nouveau priphrique bloc virtuel ...........................................41 23. Arrt brutal d'un priphrique bloc virtuel .....................................................42 24. Scurit .....................................................................................................42 24.1. Supprimer une tiquette de scurit de domaine ...............................42 24.2. Cration d'une tiquette de scurit de ressources ............................42 24.3. Supprimer une tiquette de scurit de ressources ............................42 24.4. Configuration du contrle d'accs .....................................................43 24.5. Cration d'une politique ...................................................................43 24.6. Chargement d'une politique ..............................................................43 24.7. Cration d'une politique pour la configuration de dmarrage ...............44 24.8. Cration d'une tiquette ...................................................................44 24.9. Affichage des tiquettes de politique .................................................44 24.10. Affichage des tiquettes de scurit de domaine .............................44 v

Guide de virtualisation 24.11. Affichage des tiquettes de scurit de ressources ..........................44 24.12. Configuration de la scurit de contrle d'accs ..............................45 24.13. Compilation d'une politique de scurit ...........................................45 24.14. Chargement de la politique de scurit ...........................................45 24.15. Configuration d'une politique de scurit de dmarrage ...................45 24.16. Affichage des tiquettes de scurit ................................................45 24.17. Attacher une tiquette de scurit ...................................................46 18. Gestion des machines virtuelles avec le gestionnaire de machines virtuelles .........47 1. Architecture du gestionnaire de machines virtuelles .......................................47 2. La fentre Ouvrir une connexion ...................................................................47 3. La fentre Gestionnaire de machines virtuelles ..............................................48 4. La fentre Dtails d'une machine virtuelle ......................................................48 5. La console graphique d'une machine virtuelle ................................................49 6. Dmarrage du gestionnaire de machines virtuelles .........................................50 7. Cration d'une nouvelle machine virtuelle ......................................................51 8. Restauration d'une machine enregistre ........................................................60 9. Affichage des dtails d'une machine virtuelle .................................................62 10. Configuration de la surveillance des tats ....................................................65 11. Affichage de l'ID du domaine .......................................................................67 12. Affichage de l'tat d'une machine virtuelle ....................................................68 13. Affichage des CPU virtuels .........................................................................69 14. Affiche de l'utilisation CPU ..........................................................................70 15. Affichage de l'utilisation mmoire ................................................................72 19. Rsolution des pannes de la Virtualisation Red Hat ..............................................74 1. Vue d'ensemble sur les fichiers journaux et emplacements .............................74 2. Descriptions des fichiers journaux .................................................................74 3. Emplacements importants dans les rpertoires ..............................................75 4. Outils de rsolution des pannes ....................................................................75 5. Rsolution des pannes avec les fichiers journaux ...........................................77 6. Rsolution des pannes avec la console srie .................................................78 7. Accs la console de l'invit paravirtualis ....................................................78 8. Accs la console de l'invit pleinement virtualis .........................................78 9. Implementation de la persistance Lun ...........................................................79 10. Considrations avec SELinux .....................................................................80 11. Accs aux donnes sur l'image disque de l'invit ..........................................81 12. Situations frquentes dans la rsolution des pannes ....................................82 13. Erreurs de priphriques loop .....................................................................82 14. Erreurs de cration d'invits ........................................................................83 15. Erreurs de la console srie .........................................................................83 16. Erreurs de pont rseau ...............................................................................83 17. Configurations des ordinateurs portables .....................................................85 18. Dmarrage automatique des domaines au lancement du systme ................86 19. Modification de Domain0 ............................................................................87 20. Fichiers de configuration des invits ............................................................88 21. Clonage des fichiers de configuration des invits ..........................................88 22. Creation d'un script pour gnrer des adresses MAC ...................................89 23. Configuration de la migration en direct de machines virtuelles .......................89 24. Interprtation des messages d'erreur ...........................................................90 25. Ressources de rsolution des pannes en ligne .............................................93 20. Ressources supplmentaires ..............................................................................95 vi

1. Sites Web utiles ...........................................................................................95 2. Documentation installe ...............................................................................95 A. Historique des versions ........................................................................................97 B. Exercice 1 ...........................................................................................................98 C. Exercice 2 ......................................................................................................... 104

Chapitre 1. Architecture systme de la Virtualisation Red Hat


Un systme de Virtualisation Red Hat fonctionnel est compos de plusieurs couches et dirig par le composant privilgi de Virtualisation Red Hat. La virtualisation peut hberger plusieurs systmes d'exploitation invits. Chaque systme d'exploitation invit excute son propre domaine, la Virtualisation Red Hat planifie les CPU virtuels au sein des machines virtuelles afin d'utiliser de faon optimale les CPU physiques disponibles. Chaque systme d'exploitation invit s'occupe de ses propres applications. Les systmes d'exploitation invits planifient chaque application en consquence. Vous pouvez dployer la Virtualisation Red Hat de deux manires diffrentes : virtualisation complte ou paravirtualisation (virtualisation partielle). La virtualisation complte fournit une abstraction totale du systme physique sous-jacent et cre un nouveau systme virtuel dans lequel les systmes d'exploitation invits peuvent dmarrer. Aucune modification du SE ou de l'application invit n'est ncessaire (le SE ou l'application invit n'est pas inform de l'environnement paravirtualis et dmarre normalement). La paravirtualisation requiert une modification utilisateur des systmes d'exploitation invits qui sont excuts sur les machines virtuelles (ces systmes d'exploitation invits savent qu'ils sont excuts sur une machine virtuelle) et qui fournissent des performances presque natives. Vous pouvez dployer la virtualisation partielle et complte travers l'infrastructure de votre virtualisation. Le premier domaine, appel domain0 (dom0), est cr automatiquement lorsque vous dmarrez le systme. Domain0 est l'invit privilgi et possde des capacits de gestion permettant de crer de nouveaux domaines et de grer leurs priphriques virtuels. Domain0 s'occupe du matriel physique, tel que les contrleurs de cartes rseau et de disques durs. Domain0 s'occupe galement des tches administratives telles que la suspension, la reprise ou la migration de domaines invits vers d'autres machines virtuelles. L'hyperviseur (le contrleur de la machine virtuelle de Red Hat) est une plateforme de virtualisation qui permet de multiples systmes d'exploitation de dmarrer simultanment sur un hte unique dans un environnement pleinement virtualis. Un invit est un systme d'exploitation (SE) qui est excut sur une machine virtuelle en plus de l'hte ou du SE principal. Avec la Virtualisation Red Hat, la mmoire des invits vient d'une tranche de la mmoire physique de l'hte. Pour les invits paravirtualiss, vous pouvez paramtrer la mmoire initiale et la taille maximum de la machine virtuelle. Vous pouvez ajouter de la mmoire physique la machine virtuelle (ou en supprimer) durant l'excution sans excder la taille maximum spcifie. Ce processus est appel "ballooning". Vous pouvez configurer chaque invit avec un nombre de cpu virtuels (appels vcpus). Le gestionnaire de machines virtuelles planifie les vcpus en fonction de la charge de travail sur les CPU physiques. Vous pouvez allouer un invit n'importe quel nombre de disques virtuels. L'invit les voit comme des disques durs ou (pour les invits pleinement virtuels) des lecteurs de CD-ROM. Chaque disque virtuel est servi l'invit partir d'un priphrique bloc ou d'un fichier rgulier

sur l'hte. Le priphrique sur l'hte contient l'image disque complte pour l'invit et inclut gnralement des tables de partition, de multiples partitions et potentiellement des volumes physiques LVM. Les interfaces de mise en rseau virtuelle dmarrent sur l'invit. Les autres interfaces peuvent dmarrer sur l'invit comme des cartes internet ethernet virtuelles (VNIC, de l'anglais Virtual Ethernet Internet Cards). Ces interfaces rseau sont configures avec une adresse de contrle d'accs au mdia (MAC, de l'anglais Media Access Control) virtuelle persistante. L'installation par dfaut d'un nouvel invit installe la VNIC avec une adresse MAC slectionne au hasard partir d'un groupement rserv de plus de 16 millions d'adresses, ainsi il y a vraiment peu de chances que deux invits reoivent la mme adresse MAC. Les sites complexes avec beaucoup d'invits peuvent allouer des adresses MAC manuellement afin de s'assurer qu'elles soient uniques sur le rseau. Chaque invit a une console texte virtuelle qui se connecte l'hte. Vous pouvez rediriger les logins invits et les sorties de console vers la console texte. Vous pouvez configurer les invits pour qu'ils utilisent une console graphique virtuelle qui correspond la console vido normale sur l'hte physique. Vous pouvez faire cela pour les invits pleinement virtuels et partiellement virtuels. Elle emploie les fonctionnalits de l'adaptateur graphique standard telles que la messagerie de dmarrage, le dmarrage graphique, de multiples terminaux virtuels et peut dmarrer le systme X Window. Vous pouvez galement utiliser le clavier graphique pour configurer le clavier et la souris virtuels. Les invits peuvent tre identifis avec l'une des ces trois identits : le nom de domaine (domain-name), l'identit (domain-id) ou L'UUID. Le domain-name est une chane de caractres qui correspond un fichier de configuration invit. Le domain-name est utilis pour dmarrer les invits et lorsque l'invit est en cours d'excution, le mme nom est utilis pour l'identifier et le contrler. Le domain-id est unique. C'est un nombre non persistant qui est assign un domaine actif et est utilis pour l'identifier et le contrler. L'UUID est un identificateur unique, persistant qui est contrl partir du fichier de configuration de l'invit. Il garantit dans le temps l'identit de l'invit par des outils de gestion systme. Il est visible par l'invit lorsqu'il est en cours d'excution. Un nouveau UUID est automatiquement assign chaque invit avec les outils systme lorsque l'invit est install pour la premire fois.

Chapitre 2. Support du systme d'exploitation


Le mode de paravirtualisation dans la Virtualisation Red Hat vous permet d'utiliser la virtualisation haute performance sur des architectures qui sont potentiellement difficiles virtualiser comme par exemple des systmes bass sur x86. Pour dployer la virtualisation partielle travers votre/vos systme(s) d'exploitation, vous devez accder aux noyaux de l'invit paravirtuel qui sont disponibles dans les distributions respectives de Red Hat (par exemple, RHEL 4.0, RHEL 5.0, etc.). Tant que les noyaux de votre systme d'exploitation supportent la Virtualisation Red Hat, il n'est pas ncessaire de modifier les applications utilisateurs ou les bibliothques. La Virtualisation Red Hat vous permet de dmarrer un noyau invit non modifi si vous avez les processeurs Intel VT et AMD SVM. Vous n'avez pas transfrer votre systme d'exploitation pour dployer cette architecture sur votre systme Intel VT ou AMD SVM. La Virtualisation Red Hat supporte : La technologie Intel VT-x ou AMD-V Pacifica et Vanderpool pour la virtualisation partielle et complte. Intel VT-i pour ia64 Les systmes d'exploitation Linux et UNIX, y compris NetBSD, FreeBSD et Solaris. Microsoft Windows comme un systme d'exploitation invit non modifi avec la technologie Vanderpool ou AMD's Pacifica.

Pour dmarrer les invits de virtualisation complte sur des systmes avec du matriel assist par des machines virtuelles (HVM, de l'anglais Hardware-assisted Virtual Machine), Intel ou des plateformes AMD, vous devez vous assurer que votre CPU dispose des capacits requises. Pour vrifier si vous avez les indicateurs CPU pour le support Intel, saisissez ce qui suit :
grep vmx /proc/cpuinfo

La sortie affiche :
flags :

fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht

Si un indicateur vmx apparat, vous disposez alors du support Intel. Pour vrifier si vous avez les indicateurs CPU pour le support AMD, saisissez ce qui suit :
grep svm /proc/cpuinfo cat /proc/cpuinfo | grep vmx

La sortie affiche :
flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dt acpi mmx fxsr sse sse2 ss ht

Si un indicateur svm apparat, vous disposez alors du support AMD.

Remarque
En plus de vrifier les indicateurs CPU, vous devez activer la virtualisation complte au sein de votre systme BIOS.

Chapitre 3. Support matriel


La Virtualisation Red Hat supporte des systmes processeurs multiples. Vous pouvez dmarrer la Virtualisation Red Hat sur des systmes architecturs x86 avec des processeurs de la classe P6 (ou plus rcents) tels que : Celeron Pentium II Pentium III Pentium IV Xeon AMD Athlon AMD Duron

Avec la Virtualisation Red Hat, les htes 32 bit dmarrent uniquement des invits paravirtuels 32 bit. Les htes 64 bit dmarrent seulement des invits paravirtuels 64 bit. Un hte 64 bit de virtualisation complte, dmarre les invits 32 bit, 32 bit PAE, 64 bit. Un hte 32 bit de virtualisation complte, dmarre les invits PAE et non PAE pleinement virtualiss. Le noyau de Virtualisation Red Hat Enterprise Linux ne supporte pas plus de 32 Go de mmoire pour les systmes x86_64. Si vous devez dmarrer le noyau de virtualisation sur des systmes avec plus de 32 Go de mmoire physique, vous devez ajouter mem=32G la ligne de commande du noyau. Cet exemple illustre comment activer le paramtre appropri dans le fichier grub.conf :
title Red Hat Enterprise Linux Server (2.6.18-4.elxen) root (hd0, 0) kernel /xen.gz-2.6.18-4-el5 mem=32G module /vmlinuz -2.6.18-4.el5xen ro root=LABEL=/ module /initrd-2.6.18-4.el5xen.img

PAE (de l'anglais Physical Address Extension) est une technologie qui augmente la quantit de mmoire virtuelle ou physique disponible aux utilisateurs d'applications. La Virtualisation Red Hat requiert que PAE soit actif sur vos systmes. L'architecture 32 bit de la Virtualisation Red Hat avec PAE supporte jusqu' 16 Go de mmoire physique. Nous vous recommandons d'avoir au moins 256 mga-octets de mmoire RAM pour chaque invit dmarr sur le systme. La Virtualisation Red Hat active les machines x86/64 pour adresser jusqu' 64 Go de mmoire physique. Les noyaux de Virtualisation Red Hat ne dmarreront pas sur un systme non PAE. Pour dterminer si votre systme supporte PAE, saisissez les commandes suivantes :
grep pae /proc/cpuinfo

La sortie suivante affiche :


flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 mmx fxsr sse syscall mmtext 3dnowext 3dnow

Si votre sortie correspond (ou ressemble) celle ci-dessus, cela signifie que votre CPU supporte PAE. Si l'invite de commande n'affiche rien, cela signifie que votre CPU ne supporte pas PAE.

Chapitre 4. Prrequis du systme de Virtualisation Red Hat


Les lments lists ci-dessous sont requis par le systme de Virtualisation Red Hat : Une distribution Red Hat Linux RHEL 5 fonctionnelle Un chargeur de dmarrage GRUB fonctionnel Un accs super-utilisateur Un processeur de classe P6 (ou plus rcent) L'lment bridge-utils de Linux Les systmes hotplug de Linux L'installation des bibliothques de dveloppement zlib L'environnement d'excution Python 2.2 initscripts

Les dpendances sont configures automatiquement durant le processus d'installation.

Chapitre 5. Dmarrage du systme


Aprs l'installation des composants de Virtualisation Red Hat, vous devez redmarrer le systme. Lorsque le dmarrage est termin, vous devez vous connecter votre systme de la faon habituelle. Ensuite, avant de dmarrer la Virtualisation Red Hat, vous devez vous connecter en tant que super-utilisateur. Le dmon de contrle xend devrait dj tre initialis avec initscripts, mais pour dmarrer xend manuellement, saisissez :
service xend start

Vous pouvez galement utiliser chkconfig dmarrage.

xend

lors de l'installation afin d'activer xend au

Le dmon de contrle xend effectue des fonctions de gestion systme en relation aux machines virtuelles. Ce dmon contrle les ressources virtualises, et xend doit tre en cours d'excution pour interagir avec les machines virtuelles. Avant de dmarrer xend, vous devez spcifier les paramtres d'opration en modifiant le fichier de configuration xend xend-config.sxp qui se situe dans le rpertoire etc/xen.

Chapitre 6. Configuration de GRUB


GNU Grand Unified Boot Loader (ou GRUB) est un programme qui permet un utilisateur de slectionner le systme d'exploitation ou le noyau install charger lors du dmarrage du systme. Il permet galement l'utilisateur de passer des arguments au noyau. Le fichier de configuration GRUB (situ dans /boot/grub/grub.conf) est utilis pour crer une liste des systmes d'exploitation dmarrer dans l'interface menu GRUB. Lorsque vous installer le RPM kernel-xen, un pr-script ajoute des entres kernel-xen au fichier de configuration GRUB. Vous pouvez modifier le fichier grub.conf et activer le paramtre GRUB suivant :
title Red Hat Enterprise Linux Server (2.6.18-3.el5xen) root (hd0; 0) kernel /xen.gz.-2.6.18-3.el5 module /vmlinuz-2.6..18-3.el5xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.18-3. el5xenxen.img

rhgb quiet

Si vous paramtrez vos entres grub Linux pour qu'elles refltent cet exemple, le chargeur de dmarrage charge l'hyperviseur, l'image initrd et le noyau Linux. tant donn que l'entre du noyau est la premire des entres, le noyau se charge en mmoire en premier. Le chargeur de dmarrage envoie (et reoit) des arguments en ligne de commande vers et en provenance de l'hyperviseur et du noyau Linux. Cet exemple d'entre illustre comment restreindre la mmoire du noyau Linux de Domain0 800 Mo :
title Red Hat Enterprise Linux Server (2.6.18-3.el5xen) root (hd0; 0) kernel /xen.gz.-2.6.18-3.el5 dom0_mem=800M module /vmlinuz-2.6..18-3.el5xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.18-3. el5xenxen.img

rhgb quiet

Vous pouvez utiliser les paramtres GRUB pour configurer l'hyperviseur de Virtualisation :
mem

Limite la quantit de mmoire qui est disponible au domain0.


com1=115200, 8n1

Active le premier port srie dans le systme de faon agir comme une console srie (com2 est assign au prochain port, et ainsi de suite...).
dom0_mem

Limite la quantit de mmoire qui est disponible au domain0.

dom0_max_vcpus

Limite la quantit de CPU visible par domain0.


acpi

Alterne l'hyperviseur ACPI avec l'hyperviseur et domain0. Les options du paramtre ACPI incluent :
/* /* /* /* /* /* **** Linux config options: propagated to domain0 ****/ "acpi=off": Disables both ACPI table parsing and interpreter. "acpi=force": Overrides the disable blacklist. "acpi=strict": Disables out-of-spec workarounds. "acpi=ht": Limits ACPI from boot-time to enable HT. "acpi=noirq": Disables ACPI interrupt routing.

*/ */ */ */ */

noacpi

Dsactive ACPI pour la distribution d'interruptions.

10

Chapitre 7. Dmarrage d'un domaine invit


Vous pouvez dmarrer des domaines invits en utilisant l'application xm. Vous pouvez galement utiliser virsh et le gestionnaire de machines virtuelles pour dmarrer les invits. L'installation d'un hte invit en premier est une condition pralable pour le dmarrage d'un domaine invit. Cet exemple utilise la sous-commande de cration xm :
# xm create -c guestdomain1

Le guestdomain1 est le fichier de configuration pour le domaine que vous dmarrez. L'option -c permet de se connecter la console aprs le dmarrage.

11

Chapitre 8. Dmarrage/Arrt d'un domaine lors de l'amorage du systme


Vous pouvez dmarrer ou arrter des domaines en cours d'excution n'importe quel moment. Domain0 attend l'arrt de tous les domaines en cours d'excution avant de redmarrer. Vous devez placer les fichiers de configuration des domaines que vous dsirez teindre dans le rpertoire /etc/xen/. Tous les domaines que vous voulez lancer au dmarrage doivent tre rfrencs dans /etc/xen/auto.
chkconfig xendomains on

La commande chkconfig xendomains on ne dmarre pas automatiquement les domaines ; la place, elle dmarre les domaines au prochain dmarrage.
chkconfig xendomains off

Arrte tous les domaines de Virtualisation Red Hat en cours d'excution. La commande chkconfig xendomains off arrte les domaines au prochain dmarrage.

12

Chapitre 9. Fichiers de configuration


Les fichiers de configuration de la Virtualisation Red Hat contiennent les variables standard suivantes. Les lments de configuration l'intrieur de ces fichiers doivent tre entre entours de guillemets ("). Ces fichiers de configuration rsident dans le rpertoire /etc/xen. lment pae Description Spcifie les donnes de configuration de l'extension de l'adresse physique. Spcifie les donnes de configuration avances du contrleur d'interruptions programmable. Spcifie la taille de la mmoire en mgaoctets. Spcifie le nombre de CPU virtuels. Spcifie les numros de ports o les consoles de domaine seront exportes. Spcifie le nombre d'interfaces rseau virtuelles. Liste les adresses MAC et les ponts attribus au hasard et assigns pour utiliser les adresses rseau du domaine. Liste les priphriques blocs exporter vers le domaine et exporte les priphriques physiques vers le domaine avec un accs en lecture-seule. Active la mise en rseau en utilisant DHCP. Spcifie les masques rseau des adresses IP configures. Spcifie les passerelles des adresses IP configures. Spcifie les donnes de configuration de l'interface avance de configuration et de 13

apic

mmoire

vcpus console

nic

vif

disque

dhcp netmask

gateway

acpi

lment

Description gestion de l'nergie.

Tableau 9.1. Fichiers de configuration de la Virtualisation Red Hat

14

Chapitre 10. Gestion des CPU


La Virtualisation Red Hat permet aux CPU virtuels d'un domaine de s'associer avec un ou plusieurs CPU htes. Ceci peut tre utilis pour allouer les ressources relles entre un ou plusieurs invits. Cette approche permet la Virtualisation Red Hat d'utiliser de faon optimale les ressources processeurs lors de l'emploi de processeurs dual-core, de l'hyperthreading ou d'autres technologies CPU avances. Si vous excutez des tches demandant de lourdes oprations d'E/S, la meilleure pratique est de ddier un hyperthread ou un processus entier au dmarrage du domain0. Le planificateur de crdits de la Virtualisation Red Hat rpartit les processeurs virtuels entre les processeurs physiques afin de maximiser l'utilisation systme. Le systme de Virtualisation Red Hat permet au planificateur de crdits de dplacer les CPU lorsque c'est ncessaire, pour autant que le CPU virtuel soit fix un CPU physique.

15

Chapitre 11. Migration d'un domaine


Une migration est le transfert d'un domaine virtuel en cours d'excution d'un hte physique vers un autre. La Virtualisation Red Hat supporte deux varits de migration dconnecte et en direct. Les migrations dconnectes dplacent une machine virtuelle d'un hte un autre en la mettant en pause, en transfrant sa mmoire et ensuite, en la reprenant sur la destination hte. Les migrations en direct font la mme chose mais n'affectent pas directement le domaine. Lors d'une migration en direct, le domaine continue son activit habituelle et l'utilisateur ne s'aperoit de rien. Pour initialiser une migration en direct, les htes doivent dmarrer la virtualisation Red Hat et le dmon xend. Les htes de destination doivent avoir suffisamment de ressources (par exemple de capacit mmoire) pour satisfaire la bande passante aprs la migration. Les machines source et de destination doivent avoir les mmes extentions d'architecture et de virtualisation (par exemple i386-VT, x86-64-VT, x86-64-SVM, etc.) et doivent tre sur le mme sous-rseau L2. Lorsqu'un domaine migre, ses adresses MAC et IP sont galement dplaces. Seules les machines virtuelles avec le mme rseau et les mmes sous-rseaux "Layer-2" migreront correctement. Si le noeud de destination est sur un sous-rseau diffrent, l'administrateur doit configurer manuellement un tunnel EtherIP ou IP appropri dans le noeud distant du domain0. Le dmon xend arrte le domaine, copie la tche sur le nouveau noeud et le redmarre. Le RPM de virtualisation Red Hat n'active pas la migration partir d'autres htes, l'exception de localhost (regardez le fichier /etc/xend-config.sxp pour davantage d'informations). Pour permettre la cible de migration d'accepter des requtes de migration entrantes provenant d'autres htes distants, vous devez modifier le paramtre cible xen-relocation-hosts-allow. Assurez-vous de restreindre avec prcaution les htes qui sont autoriss migrer car il n'y a pas d'authentification. tant donn que ces domaines ont de grandes allocations de fichiers, ce processus peut prendre du temps. Si vous migrez un domaine avec des connexions rseau ouvertes, elle seront prserves sur l'hte de destination et les connexions SSH devraient toujours fonctionner. Les rgles iptables de la Virtualisation Red Hat par dfaut n'autoriseront pas les connexions de migration entrantes. Pour les autoriser, vous devez crer des rgles iptables explicites. Vous pouvez utiliser la commande de migration xm pour effectuer une migration dconnecte :
xm migrate domain-id [destination domain]

Vous pouvez utiliser la commande de migration xm pour effectuer une migration en direct :
xm migrate domain-id -l [destination domain]

Il est possible que vous ayez vous reconnecter la console du domaine sur la nouvelle machine. Vous pouvez utiliser la commande de domaine xm pour vous reconnecter.

16

Chapitre 12. Configuration pour une utilisation rseau


L'intgration de la virtualisation Red Hat dans l'architecture de votre rseau est un processus compliqu et selon votre infrastructure, vous pourriez avoir avoir besoin d'une configuration personnalise pour dployer de multiples interfaces ethernet et installer le pontage. Chaque interface rseau du domaine est connecte une interface rseau virtuelle dans dom0 par un lien point par point. Ces priphriques sont vif<domid> et <vifid>. vif1.0 pour la premire interface dans domain 1, vif3.1 pour la seconde interface dans domain 3. Domain0 traite le trafic sur ces interfaces virtuelles en utilisant des conventions Linux standards pour le pontage, le routage, le contrle de flux (rate limiting), etc. Le dmon xend emploie deux scripts shell pour effectuer la configuration initiale de votre rseau et des interfaces virtuelles. Ces scripts configurent un pont unique pour toutes les interfaces virtuelles. Vous pouvez configurer des options de pontage et routage supplmentaires en personnalisant ces scripts. Le mise en rseau virtuelle de la virtualisation Red Hat est contrle par deux scripts shell, network-bridgeet vif-bridge. xend appelle ces scripts lorsque certains vnements se produisent. Les arguments peuvent tre passs ces scripts pour fournir des informations contextuelles supplmentaires. Ces scripts sont dans le rpertoire /etc/xen/scripts. Vous pouvez changer les proprits des scripts en modifiant le fichier de configuration xendconfig.sxp qui est situ dans le rpertoire /etc/xen. Lorsque xend est dmarr ou stopp, le script initialise ou arrte l'interface virtuelle. Ensuite, l'initialisation de la configuration cre le pont xenbr0 et dplace eth0 sur ce pont en modifiant le routage en consquence. Finalement, lorsque xend quitte, il supprime le pont, eth0 et par consquent restaure la configuration d'origine de la l'adresse IP et du routage.
network-bridge

est un script, invoqu pour toutes les interfaces virtuelles sur le domaine. Il configure les rgles du pare-feu et peut ajouter vif au pont appropri.
vif-bridge

Afin que la Virtualisation Red Hat fonctionne sur votre rseau, vous pouvez utiliser d'autres scripts, tels que network-route, network-nat, vif-route, et vif-nat qui vous aideront la configuration. Ces scripts peuvent aussi tre remplacs par des variantes personnalises.

17

Chapitre 13. Scurisation de Domain0


Lors du dploiement de la Virtualisation Red Hat sur votre infrastructure d'entreprise, il faut vous assurer que Domain0 ne peut aucunement tre compromis. Domain0 est le domaine privilgi qui s'occupe de la gestion systme. Si Domain0 n'est pas scuris, tous les autres domaines du systme sont vulnrables. Il y a diffrentes faons d'implmenter la scurit que vous devriez connatre lors de l'intgration de la Virtualisation Red Hat dans vos systmes. Avec des membres de votre organisation, crez un "plan de dploiement" contenant les spcifications et services d'opration qui fonctionneront avec la Virtualisation Red Hat ainsi que qui est ncessaire au support de ces services. Voici quelques problmes de scurit considrer lors de la ralisation d'un plan de dploiement : Dmarrez le moins de services possible. Vous ne devez pas inclure trop de tches et services dans domain0. Moins il y a d'lments dmarrs sur domain0, plus le niveau de scurit est lev. Activez SeLINUX pour vous aider scuriser domain0. Utilisez un pare-feu pour contrler le trafic de domain0. Vous pouvez installer un pare-feu avec des rgles d'exclusion par dfaut qui vont aideront scuriser les attaques sur domain0. Il est galement important de limiter les services exposs au rseau. N'autorisez pas l'accs domain0 aux utilisateurs normaux. Si vous autorisez l'accs domain0 aux utilisateurs normaux, vous prenez le risque de rendre domain0 vulnrable. Rappelez-vous que domain0 est privilgi et que l'autorisation de comptes sans privilge peut compromettre le niveau de scurit.

18

Chapitre 14. Stockage


Il y a diffrentes faons de grer le stockage des machines virtuelles. Vous pouvez exporter un priphrique bloc physique domain0 (un disque dur ou une partition) vers un domaine invit en tant que priphrique bloc virtuel (VBD de l'anglais Virtual Block Device). Vous pouvez aussi exporter directement partir d'une image partitionne telle qu'un fichier bas sur VBD. Par dfaut, la Virtualisation Red Hat active LVM et blktap durant l'installation. Vous pouvez galement employer des protocoles rseau standards tels que NFS, CLVM ou iSCSI pour fournir de l'espace aux machines virtuelles.

19

Chapitre 15. Gestion de machines virtuelles au moyen de virsh


Vous pouvez utiliser l'application virsh pour grer les machines virtuelles. Cet utilitaire est construit autour de l'API de gestion libvirt et opre comme une alternative l'outil xm ou au gestionnaire graphique de machines virtuelles. Les utilisateurs sans privilge peuvent employer cet utilitaire pour des oprations en lecture-seule. Si vous avez l'intention de dmarrer xend/ qemu, vous devriez l'activer pour qu'il dmarre en tant que service. Aprs avoir modifi le fichier de configuration respectif, redmarrez le systme et xend/qemu dmarrera comme un service. Vous pouvez utiliser virsh pour crer des scripts de travail vm. De la mme faon qu'avec l'outil xm, vous pouvez dmarrer virsh en ligne de commande.

1. Connexion un hyperviseur
Vous pouvez utiliser virsh pour initier une session hyperviseur :
virsh connect <name>

O <name> est le nom de la machine de l'hyperviseur. Si vous voulez initier une connexion en lecture-seule, excutez la commande ci-dessus avec readonly.

2. Cration d'une machine virtuelle


Vous pouvez crer une nouvelle session de machine virtuelle partir de la dfinition XML d'une machine. Si vous avez un invit pr-existant que vous avez cr auparavant avec l'outil xm, vous pouvez galement crer une machine virtuelle pour ce dernier :
virsh create <path to XML configuration file>

3. Configuration d'un Dump XML


Vous pouvez utiliser virsh pour effectuer une sauvegarde (dump) de donnes pour une machine virtuelle existante.
virsh dumpxml [domain-id | domain-name | domain-uuid]

Cette commande renvoie les informations du domaine (au format XML) stdout. Si vous sauvegardez les donnes sur un fichier, vous pouvez utiliser l'option create pour recrer la machine virtuelle.

4. Suspension d'une machine virtuelle

20

5. Reprise d'une machine virtuelle

Vous pouvez utiliser virsh pour suspendre un domaine :


virsh suspend [domain-id | domain-name |domain-uuid]

Lorsqu'un domaine est dans un tat suspendu, il consomme encore la mmoire RAM du systme. De plus, il n'y a pas d'E/S de disque ou rseau lorsque le domaine est suspendu. Cette opration est immdiate et la machine virtuelle doit tre redmarre avec l'option resume.

5. Reprise d'une machine virtuelle


Vous pouvez utiliser virsh pour restaurer une machine virtuelle supsendue :
virsh resume [domain-id | domain-name | domain-uuid]

Cette opration est immdiate et les paramtres de la machine virtuelle sont prservs dans un cycle suspend et resume.

6. Enregistrement d'une machine virtuelle


Vous pouvez utiliser virsh pour enregistrer l'tat courant d'une machine virtuelle dans un fichier :
virsh save [domain-name][domain-id | domain-uuid][filename]

Cette commande arrte la machine virtuelle spcifie et enregistre les donnes dans un fichier. Cette opration peut prendre du temps tant donn la quantit de mmoire utilise par votre machine virtuelle. Vous pouvez restaurer l'tat de la machine virtuelle avec l'option restore.

7. Restauration d'une machine virtuelle


Vous pouvez utiliser virsh pour restaurer une machine virtuelle que vous avez auparavant enregistre avec l'option virsh save :
virsh restore [filename]

Cette commande redmarre la machine virtuelle enregistre. Cette opration peut prendre du temps. Le nom de la machine virtuelle et l'UUID sont prservs mais on leur assigne un nouvel id.

8. Arrt d'une machine virtuelle


Vous pouvez utiliser virsh pour arrter une machine virtuelle :
virsh shutdown [domain-id | domain-name | domain-uuid]

21

9. Redmarrage d'une machine virtuelle

Vous pouvez contrler le comportement au dmarrage de la machine virtuelle en modifiant le paramtre on_shutdown du fichier xmdomain.cfg.

9. Redmarrage d'une machine virtuelle


Vous pouvez utiliser virsh pour redmarrer une machine virtuelle :
virsh reboot [domain-id | domain-name | domain-uuid]

Vous pouvez contrler le comportement au dmarrage de la machine virtuelle en modifiant le paramtre on_reboot du fichier xmdomain.cfg.

10. Arrt brutal d'un domaine


Vous pouvez utiliser virsh pour arrter brutalement une machine virtuelle :
virsh destroy [domain-name | domain-id | domain-uuid]

Cette commande effectue un arrt brutal immdiat et stoppe toutes sessions de domaine invit (cela pourrait entraner la corruption de systmes de fichiers encore utiliss par la machine virtuelle). N'utilisez l'option destroy que lorsque le systme d'exploitation de la machine virtuelle ne rpond plus. Pour une machine virtualise partiellement, utilisez l'option shutdown.

11. Conversion d'un nom de domaine en un ID de domaine


Vous pouvez utiliser virsh pour convertir un nom de domaine ou un UUID en un ID de domaine :
virsh domid [domain-name | domain-uuid]

12. Conversion d'un ID de domaine en un nom de domaine


Vous pouvez utiliser virsh pour convertir un ID de domaine ou un UUID en un nom de domaine :
virsh domname [domain-name | domain-uuid]

13. Conversion d'un nom de domaine en un UUID


Vous pouvez utiliser virsh pour convertir un nom de domaine en un UUID :

22

virsh domuuid [domain-id | domain-uuid]

14. Affichage des informations d'une machine virtuelle


Vous pouvez utiliser virsh pour afficher les informations d'une machine virtuelle identifie par son ID de domaine, nom de domaine ou UUID :
virsh dominfo [domain-id | domain-name | domain-uuid]

15. Affichage des informations d'un noeud


Vous pouvez utiliser virsh pour afficher les informations d'un noeud :
virsh nodeinfo

Les sorties affichent quelque chose de similaire ceci :


CPU model CPU (s) CPU frequency CPU socket(s) Core(s) per socket Threads per core: Numa cell(s) Memory size: x86_64 8 2895 Mhz 2 2 2 1 1046528 kb

Voici les informations du noeud et les machines qui supportent le processus de virtualisation.

16. Affichage des machines virtuelles


Vous pouvez utiliser virsh pour afficher la liste des machines virtuelles et l'tat courant :
virsh list domain-name [ inactive | -all]

L'option inactive liste les domaines inactifs (les domaines qui ont t dfinis mais qui actuellement ne sont pas actifs). Le domaine -all liste tous les domaines, qu'ils soient actifs ou pas. Votre sortie devrait ressembler celle-ci :
ID 0 1 2 3 Name Domain0 Domain202 Domain010 Domain9600 State running paused inactive crashed

Voici les six tats d'un domaine :


running blocked paused liste les domaines actifs sur le CPU liste les domaines qui sont bloqus liste les domaines qui sont suspendus

shutdown liste les domaines qui sont en cours d'arrt shutoff crashed liste les domaines qui sont compltement arrts liste les domaines qui ont chou

17. Affichage des informations d'un CPU virtuel


Vous pouvez utiliser virsh pour afficher les informations d'un CPU virtuel partir d'une machine virtuelle :
virsh vcpuinfo [domain-id | domain-name | domain-uuid]

18. Configuration de l'affinit des CPU virtuels


Vous pouvez utiliser virsh pour configurer l'affinit des CPU virtuels avec les CPU physiques :
virsh vcpupin [domain-id | domain-name | domain-uuid] [vcpu] , [cpulist]

O [vcpu] correspond au nombre de VCPU virtuels et [cpulist] liste le nombre de CPU physiques.

19. Configuration du nombre de CPU virtuels


Vous pouvez utiliser virsh pour modifier le nombre de CPU pour une machine virtuelle :
virsh setvcpus [domain-name | domain-id | domain-uuid] [count]

Notez que le nouveau nombre ne peut pas excder la quantit de CPU que vous avez spcifie lorsque vous avez cr la machine virtuelle.

20. Configuration de l'allocation de la mmoire


Vous pouvez utiliser virsh pour modifier l'allocation de la mmoire d'un domaine :
virsh setmem [domain-id | domain-name] [count]

21. Configuration de la mmoire maximum

Vous devez spcifier [count] en kilo-octets. Remarquez que le nouveau nombre ne peut pas excder la quantit que vous avez spcifie lors de la cration de la machine virtuelle. Les valeurs infrieures 64 Mo ne fonctionneront probablement pas. Vous pouvez ajuster la mmoire de la machine virtuelle lorsque c'est ncessaire.

21. Configuration de la mmoire maximum


Vous pouvez utiliser virsh pour modifier la mmoire maximum de la machine virtuelle :
virsh setmaxmem [domain-name | domain-id | domain-uuid] [count]

Vous devez spcifier [count] en kilo-octets. Remarquez que le nouveau nombre ne peut pas excder la quantit que vous avez spcifie lors de la cration de la machine virtuelle. Les valeurs infrieures 64 Mo ne fonctionneront probablement pas. La mmoire maximum n'affecte pas l'utilisation courante de la machine virtuelle ( moins que la nouvelle valeur soit infrieure, ce qui devrait rduire l'utilisation de la mmoire).

Chapitre 16. Gestion de machines virtuelles au moyen de xend


Le dmon de contrle xend effectue des fonctions de gestion systme associes aux machines virtuelles. Ce dmon contrle les ressources virtualises, et xend doit tre en cours d'excution pour interagir avec les machines virtuelles. Avant de dmarrer xend, vous devez spcifier les paramtres d'opration en modifiant le fichier de configuration xend-config.sxp qui se situe dans le rpertoire etc/xen. Voici les paramtres que vous pouvez activer ou dsactiver dans le fichier de configuration xend-config.sxp : lment console-limit Description Dtermine la limite de la mmoire tampon du serveur de la console et assigne les valeurs par domaine. Dtermine le nombre minimum de mgaoctets rservs au domain0 (si vous entrez 0, la valeur ne change pas). Dtermine le nombre de CPU utiliss par domain0 (par dfaut, au moins 1 CPU est assign). Active une sauvegarde lorsqu'un chec se produit (par dfaut, ce paramtre est dsactiv). Dtermine le script ou l'application qui s'occupe de la migration de priphriques externes (les scripts doivent se trouver dans etc/xen/scripts/external-device-migrate). Dtermine l'emplacement du fichier journal (la valeur par dfaut est /var/log/xend.log). Filtre les valeurs du mode de journalisation : DEBUG, INFO, WARNING, ERROR ou CRITICAL (la valeur par dfaut est DEBUG). Dtermine le script qui active l'environnement de mise en rseau (les scripts doivent se trouver dans le rpertoire etc/xen/scripts).

min-mem

dom0 cpus

enable-dump

external-migration-tool

logfile

loglevel

network-script

26

lment xend-http-server

Description Active le serveur de gestion des paquets de flux http (par dfaut ce paramtre est dsactiv). Active le serveur de sockets de domaine unix (un serveur de sockets est un point d'accs de communication qui traite les connexions rseau de bas niveau et accepte ou rejette les conneen relationxions entrantes). Active le serveur de dlocalisation pour les migrations entre-machines (par dfaut ce paramtre est dsactiv). Dtermine l'emplacement o la commande xend-unix-server envoie les donnes (la valeur par dfaut est var/ lib/xend/xend-socket). Dtermine le port utilis par le serveur de gestion http (la valeur par dfaut est 8000). Dtermine le port utilis par le serveur de dlocalisation (la valeur par dfaut est 8002). Dtermine les adresses de la machine virtuelle qui sont autorises pour la migration systme. Dtermine l'adresse laquelle le serveur de sockets de domaine est li.

xend-unix-server

xend-relocation-server

xend-unix-path

xend-port

xend-relocation-port

xend-relocation-address

xend-address

Tableau 16.1. Paramtres de configuration xend pour la virtualisation Red Hat

Aprs avoir configur ces paramtres d'opration, vrifiez que xend est en cours d'excution et, si ce n'est pas le cas, initialisez le dmon. l'invite de commande, vous pouvez dmarrer le dmon xend en saisissant ce qui suit :
service xend start

Vous pouvez utiliser xend pour arrter le dmon :

27

service xend stop

Cela arrte le dmon en cours d'excution. Vous pouvez utiliser xend pour redmarrer le dmon :
service xend restart

Le dmon dmarre une nouvelle fois. Vous pouvez vrifier le statut du dmon xend.
service xend status

La sortie affiche le statut du dmon.

28

Chapitre 17. Gestion de machines virtuelles au moyen de xm


L'application xm est un outil de gestion robuste qui permet de configurer votre environnement de Virtualisation Red Hat. Pour utiliser xm, vous devez vous assurer en premier que xend est en cours d'excution sur votre systme.

1. Fichier de configuration xm
Les paramtres d'opration qui doivent tre modifis rsident dans le fichier xmdomain.cfg, situ dans le rpertoire etc/xen. Voici les paramtres que vous pouvez activer ou dsactiver dans le fichier de configuration xmdomain.cfg : lment kernel Description Dtermine le chemin pleinement qualifi vers l'image du noyau Dtermine le chemin pleinement qualifi vers initrd pour le ramdisk initial Dtermine la quantit de mmoire RAM (en Mo) allouer au domaine quand il dmarre Dtermine le nom unique pour un domaine Dtermine le priphrique root pour un domaine Dtermine le nombre de cartes d'interfaces rseau pour un domaine (par dfaut 1) Dtermine les tableaux de priphriques blocs stanzas les trois stanzas sont : mode - mode d'accs au priphrique backend-dev - le domaine backend qui exporte au domaine invit frontend-dev - dtermine comment le priphrique apparat dans un domaine invit vif Dtermine des tableaux d'interfaces virtuelles stanzas (chaque stanza reprsente un

ramdisk

memory

name root

nic

disk

29

1.1. Configurer vfb lment Description ensemble d'oprations nom=valeur) builder Dtermine le constructeur qui cre le domaine (par dfaut linux) Dtermine le CPU o le domaine doit dmarrer. 0 indique le premier CPU, 1 le second, etc. (par dfaut -1) Dtermine quels CPU sur les VCPU du domaine sont excutables Dtermine les informations supplmentaires ajouter la fin de la ligne de paramtres du noyau Dtermine l'adresse IP du serveur NFS utiliser pour le priphrique root Dtermine le rpertoire root en tant que chemin pleinement qualifi pour le serveur NFS Dtermine le nombre de CPU virtuels allouer un domaine (par dfaut 1) Dtermine le paramtre d'arrt du domaine pour dclencher un arrt gracieux (ou un arrt xm) partir de l'intrieur de DomU Dtermine le paramtre d'arrt du domaine pour dclencher un redmarrage gracieux (ou un xm reboot) partir de l'intrieur de DomU Dtermine le paramtre d'arrt du domaine qui dclenche les plantages DomU

cpu

cpus

extra

nfs_server

nfs_root

vcpus

on_shutdown

on_reboot

on_crash

Tableau 17.1. Le fichier de configuration xmdomain.cfg

1.1. Configurer vfb


Un vfb est une mmoire tampon virtuelle dfinie en tant que "stanza". Stanza reprsente un ensemble d'options nom=valeur, qui quand elles sont intgres dans le fichier xmdomain.cfg.5

30

2. Cration et gestion de domaines avec xm doivent tre spares par des virgules. L'entre vfb dans votre fichier de configuration ressemble ceci :
vfb = [ "stanza" ] "name1=value1, name2=value2, "

Vous pouvez configurer votre environnement vfb en incorporant les options affiches dans le tableau 16.2 : lment type Description Cette option type vnc initie une session serveur VNC qui se connecte une visionneuse VNC externe. L'option sdl initie la visionneuse interne Dtermine le numro d'affichage VNC utiliser (par dfaut la valeur de l'ID du domaine). Le serveur VNC coute le port 5900 + le numro d'affichage L'adresse d'coute du serveur VNC (par dfaut 127.0.0.1) Dtermine la valeur numrique et si ce n'est pas zro, active le serveur VNC pour qu'il coute le premier port non utilis sur 5900 Surcharge le mot de passe par dfaut configur par Xend Active l'affichage de la visionneuse interne utiliser (par dfaut une variable d'environnement DISPLAY) Active le fichier d'autorit pour la visionneuse interne utiliser (par dfaut une variable d'environnement XAUTHORITY)

vncdisplay

vnclisten

vncunused

vncpasswd

display

xauthority

Tableau 17.2. Options de configurations vfb

2. Cration et gestion de domaines avec xm


Vous pouvez utiliser l'application xm pour crer et grer les domaines.

2.1. Connexion un domaine


31

Vous pouvez utiliser xm pour vous connecter un domaine ou une machine virtuelle :
xm console domain-id

La console s'attache la console texte domain-id.

2.2. Cration d'un domaine


Vous pouvez utiliser xm pour crer un domaine :
xm create domain001 [-c]

Cela cre un domaine appel domain001 avec le fichier qui rside dans le rpertoire /etc/xen/. L'option [-c] aide dans la rsolution des pannes en vous permettant de vous connecter la console texte.

2.3. Enregistrement d'un domaine


Vous pouvez utiliser xm pour enregistrer un domaine :
xm save [domain-id] [statefile]

2.4. Arrter brutal d'un ID de domaine


Vous pouvez utiliser xm pour arrter un domain-id :
xm destroy [domain-id]

Cela termine immdiatement le domain-id. Si vous prfrez une autre mthode pour arrter votre session de faon sre, vous pouvez utiliser le paramtre shutdown la place.

2.5. Arrt d'un domaine


Vous pouvez utiliser xm pour arrter un domaine :
xm shutdown [domain-id] [ -a | -w ]

L'option [ -a] arrte tous les domaines sur votre systme. L'option [-w] attend qu'un domaine s'arrte compltement.

2.6. Rtablir un domaine


Vous pouvez utiliser xm pour restaurer un domaine enregistr auparavant.

xm restore [state-file]

2.7. Suspendre un domaine


Vous pouvez utiliser xm pour suspendre un domaine :
xm suspend [domain-id]

2.8. Reprendre un domaine


Vous pouvez utiliser xm pour rtablir une session suspendue pralablement :
xm resume [domain-id]

2.9. Redmarrer un domaine


Vous pouvez utiliser xm pour redmarrer un domaine :
xm reboot [domain-id] [ -a | -w ]

L'option [ -a] redmarre tous les domaines dans votre systme. L'option [-w] attend que le domaine redmarre compltement. Vous pouvez contrler le comportement du domaine qui redmarre en modifiant le paramtre on_boot du fichier xmdomain.cfg.

2.10. Renommer un domaine


Vous pouvez utiliser xm pour assigner un nouveau nom un domaine existant :
xm rename [domain-name] [new domain-name]

Le renommage de domaine gardera les mmes paramtres (le mme disque dur, la mme mmoire, etc.).

2.11. Mettre en pause un domaine


Vous pouvez utiliser xm pour mettre en pause un domaine :
xm pause [domain-id]

2.12. Reprendre un domaine (aprs une pause)

2.13. Conversion d'un nom de domaine en un ID de domaine

Vous pouvez utiliser xm pour rtablir un domaine (aprs une pause) :


xm unpause [domain-id]

Cela rend le domaine disponible pour la planification par l'hyperviseur.

2.13. Conversion d'un nom de domaine en un ID de domaine


Vous pouvez utiliser xm pour convertir un nom de domaine en un ID de domaine :
xm domid [domain-name]

2.14. Convertion d'un ID de domaine en un nom de domaine


Vous pouvez utiliser xm pour convertir un ID de domaine en un nom de domaine :
xm domname [domain-id]

2.15. Configuration de l'allocation mmoire


Vous pouvez utiliser xm pour modifier l'allocation mmoire d'un domaine :
xm mem-set [domain-id] [count]

Remarque
Vous ne pouvez pas augmenter la mmoire d'un domaine au-del de la taille maximum spcifie quand vous avez cr le domaine initialement.

2.16. Configuration de la mmoire maximum


Vous pouvez utiliser xm pour modifier la mmoire maximum d'un domaine :
xm mem-max [domain-id] [count]

Vous devez spcifier [count] en mga-octets.

2.17. Configuration du nombre de VCPU


Vous pouvez utiliser xm pour modifier le nombre de VCPU pour un domaine :

2.18. Immobiliser un VCPU

xm vcpu-set [domain-id] [count]

Vous devez spcifier [count] en mga-octets.

Remarque
Vous ne pouvez pas augmenter la mmoire d'un domaine au-del de la taille maximum spcifie quand vous avez cr le domaine initialement.

2.18. Immobiliser un VCPU


Vous pouvez utiliser xm pour immobiliser un VCPU :
xm vcpu-pin [domain-id] [vcpu] [cpus]

O [vcpu] est le VCPU que vous dsirez attacher et[cpus] est la cible. L'immobilisation assure que certains VCPU peuvent uniquement dmarrer sur certains CPU.

2.19. Migration d'un domaine


Vous pouvez utiliser xm pour migrer un domaine :
xm migrate [domain-id] [host] [options]

O [domain-id] est le domaine que vous dsirez migrer, et[host] est la cible. Les [options] incluent live (ou -l) pour une migration, ou resource (ou -r) pour spcifier une vitesse de migration maximum (en mga-octets par seconde). Pour garantir une migration russie, vous devez vous assurer que le dmon xend soit en cours d'excution sur tous les domaines htes. Tous les htes doivent galement dmarrer Red Hat RHEL 5.0+ et avoir des ports TCP de migration ouverts pour accepter les connexions des htes source.

3. Contrles et diagnostics
3.1. Effectuer un vidage mmoire (Core Dump)
Vous pouvez utiliser xm pour effectuer un vidage de mmoire d'une machine virtuelle existante.
xm dump-core [-C] [domain-id]

Cette commande vide la mmoire de la machine virtuelle dans le fichier xendump situ dans le

rpertoire /var/xen/dump/. Vous pouvez terminer la machine virtuelle en incluant l'option -C.

3.2. Contrle des domaines en temps rel


Vous pouvez utiliser xm pour contrler les domaines et les htes en temps rel :
xm top [domain-id]

3.3. Affichage des tats de domaine


Vous pouvez utiliser xm pour afficher les tats d'activits de domaine d'un ou de plusieurs domaines :
xm list [domain-id] [ long | label]

Vous pouvez spcifier un ou plusieurs noms de domaine. L'option [long] offre une analyse plus dtaille du domaine spcifi. L'option [label] ajoute une colonne supplmentaire qui affiche le statut de l'tiquette. La sortie affiche :
Name ID Domain0 0 Domain202 1 DomainQ/A 2 Domain9600 3 Mem(MiB) 927 927 927 927 VCPUs 8 8 8 8 State Time r s b c Label 204.9 INACTIVE 205.0/command ACTIVE INACTIVE 205.1 ACTIVE

Voici les 6 tats de domaine par VCPU : tat running blocked Description liste les domaines actifs sur un CPU liste les domaines qui sont bloqus (un domaine est bloqu quand le vcpu attend qu'un vnement externe ait lieu) liste les domaines qui sont suspendus liste les domaines qui sont en cours d'arrt liste les domaines qui sont compltement arrts liste les domaines qui ont chou liste les domaines qui sont des instances 36

paused shutdown shutoff

crashed inactive

tat

Description inactives

all

liste les domaines qui sont des instances vcpu la fois actives et inactives

Tableau 17.3. Les tats de domaine

4. Affichage du temps de fonctionnement


Vous pouvez utilisez xm pour afficher le temps de fonctionnement :
xm uptime [domain-id]

La sortie affiche :
Name Domain0 Domain202 Domain9600 DomainR&D ID 0 1 2 3 Uptime 4:45:02 3:32:00 0:09:14 2:21:41

5. Affichage des informations VCPU


Vous pouvez utiliser xm pour afficher les informations CPU du domaine :
xm vcpu-list [domain-id]

Vous devez spcifier les vcpu que vous dsirez lister. Si vous ne les spcifiez pas, les vcpu seront affichs pour tous les domaines.

6. Affichage des informations de domaine


Vous pouvez utiliser xm pour afficher les informations de domaine hte :
xm info

La sortie affiche :
host release version machine nr_cpus : : : : : redhat83-157.brisbane.redhat.com 2.6..18-1.2714.el5xen #1 SMP Mon Oct 21 17:57:21 EDT 2006 x86_64 8

37

7. Affichage des priphriques TPM

nr_nodes sockets_per_node cores_per_socket threads_per_core cpu_mhz hw_caps total_mememory free_memory xen_major xen_minor xen_extra xen_caps xen_pagesize platform_params xen_changeset cc_compiler cc_compile_by cc_compile_domain cc_compile_date xend_config_format

: : : : : : : : : : : : : : : : : : : :

1 2 2 2 2992 bfeebbef:20100000:00000000:00000000 1022 68 3 0 -unstable xen-3.0-x86_84 4096 virt_start=0xffff88000000000000000000 unavailable gcc compiler version 4.1.1 200060928 brewbuilder build.redhat.com Mon Oct 2 17:00 EDT 2006 2

7. Affichage des priphriques TPM


Vous pouvez utiliser xm pour afficher les priphriques TPM virtuels :
xm vtpm-list [domain-id] [long]

L'option [long] fournit une analyse plus dtaille du domaine spcifi.

8. Affichage du fichier journal xend


Vous pouvez utiliser xm pour afficher le contenu du fichier journal xend :
xm log

La sortie affiche l'activit du fichier journal xend.

9. Affichage du tampon des messages


Vous pouvez utiliser xm pour visionner le tampon des message xend :
xm dmesg

La sortie affiche le contenu du tampon des message xend.

10. Affichage des informations sur les tats ACM


Vous pouvez utiliser xm pour afficher les informations sur les tats ACM de l'hyperviseur :

11. Affichage des Vnet

xm dumppolicy [policy.bin]

11. Affichage des Vnet


Vous pouvez utiliser xm pour visionner les priphriques rseau virtuels :
xm vnet-list [ -l | long]

La sortie affiche :
List Vnets -l, long

List Vnets as SXP

12. Affichage des priphriques blocs virtuels


Vous pouvez utiliser xm pour visionner les priphriques blocs virtuels pour un domaine :
xm block-list [domain-id] [ long]

La sortie affiche les priphriques blocs pour le domaine spcifi.

13. Affichage des interfaces rseau virtuelles


Vous pouvez utiliser xm pour visionner les priphriques rseau virtuels pour un domaine :
xm network-list [domain-id] [ long]

La sortie affiche les interfaces rseau pour le domaine spcifi.

14. Cration d'un nouveau priphrique rseau virtuel


Vous pouvez utiliser xm pour crer un nouveau priphrique rseau virtuel :

xm network-attach [domain-id] [script=scriptname] [ip=ipaddr] [mac-macaddr] [bridge=bridge-name] [backen

Les cinq options de paramtrage sont dfinies ci-dessous : Paramtre [script=scriptname] Description Utilise le nom de script spcifi pour afficher le rseau

Paramtre

Description

[ip=ipaddr] [mac-macaddr]

Passe le nom de script spcifi l'adaptateur L'adresse MAC que le domaine voit sur son priphrique ethernet Le nom du priphrique pour attacher le vif L'id du domaine backend

[bridge-bridgename] [backend=bedomain-id]

Tableau 17.4. Paramtres

15. Arrt brutal d'un priphrique rseau virtuel


Vous pouvez utiliser xm pour arrter brutalement un priphrique rseau virtuel existant :
xm network-detach [domain-id] [DevID]

Cela arrte brutalement le priphrique rseau virtuel spcifi.

16. Cration d'un nouveau Vnet


Vous pouvez utiliser xm pour crer un nouveau Vnet :
xm vnet-create [configfile]

Vous devez spcifier un fichier de configuration pour crer le nouveau Vnet.

17. Arrt brutal d'un Vnet


Vous pouvez utiliser xm pour arrter brutalement un Vnet existant :
xm vnet-delete [VnetID]

Cela arrte brutalement le Vnet spcifi.

18. Cration d'une tiquette de scurit de domaine


Vous pouvez utiliser xm pour crer une tiquette de scurit de domaine :
xm addlabel [labelname] [domain-id] [configfile]

19. Tester les ressources d'un domaine


Vous pouvez utiliser xm pour tester si un domaine peut accder ses ressources :
xm dry-run [configfile]

Cela vrifie chaque ressource liste dans votre fichier de configuration et liste le statut de chaque ressource de mme que la dcision de scurit finale.

20. Affichage des ressources systme


Vous pouvez utiliser xm pour visionner les ressources systme :
xm resources

La sortie affiche les ressources pour les domaines sur votre systme.

21. Configuration de la programmation du crdit


Vous pouvez utilisez xm pour configurer les paramtres du progammateur de crdit :
xm sched-credit -d <domain> [ -w [=WEIGHT] | -c [CAP] ]

Vous pouvez configurer "Weight" avec l'option [ l'option [ -c].

-w].

Vous pouvez configurer "Cap" avec

22. Cration d'un nouveau priphrique bloc virtuel


Vous pouvez utiliser xm pour crer un nouveau priphrique rseau virtuel :
xm block-attach [domain-id] [bedomain-id] [fe-dev] [be-dev] [mode]

Vous pouvez attacher (ou dtacher) les priphriques rseau virtuels mme si les invits sont en cours d'excution. Les cinq options de paramtrage sont dfinies ci-dessous : Paramtre [domain-id] Description Le domain-id du domaine invit qui s'attache au priphrique Le priphrique dans le domaine backend qui sera export

[be-dev]

23. Arrt brutal d'un priphrique bloc virtuel Paramtre [fe-dev] Description Le priphrique qui est prsent au domaine invit Le mode d'accs au priphrique du domaine invit Le domaine backend qui hberge le priphrique

[mode]

[bedomain-id]

Tableau 17.5. Les paramtres du nouveau priphrique bloc

23. Arrt brutal d'un priphrique bloc virtuel


Vous pouvez utiliser xm pour arrter brutalement un priphrique bloc virtuel existant :
xm block-detach [domain-id] [DevID]

Cela arrte brutalement le priphrique bloc que vous spcifiez.

24. Scurit
24.1. Supprimer une tiquette de scurit de domaine
Vous pouvez utiliser xm pour supprimer une tiquette de scurit de domaine :
xm rmlabel [domain-id] [configfile]

Cela supprime l'entre de l'tiquette acm_policy du fichier de configuration.

24.2. Cration d'une tiquette de scurit de ressources


Vous pouvez utiliser xm pour crer une tiquette de scurit de ressources :
xm addlabel [labelname] res [resource] [policy]

24.3. Supprimer une tiquette de scurit de ressources


Vous pouvez utiliser xm pour supprimer une tiquette de scurit de ressources :
mx rmlabel [domain-id] res [resource]

42

24.4. Configuration du contrle d'accs

Cela supprime le fichier de ressources global.

24.4. Configuration du contrle d'accs


Le contrle d'accs de la Virtualisation Red Hat comporte deux composants majeurs. La politique de contrle d'accs (ACP, de l'anglais Access Control Policy) dfinit les rgles d'accs et les tiquettes de scurit. Quand les domaines exigent des accs pour communiquer, le module de contrle d'accs (ACM, de l'anglais Access Control Module) interprte la politique et gre les dcisions de contrle d'accs. Le composant ACM dtermine les droits d'accs partir de l'tiquette de scurit du domaine. Ensuite le composant ACP active les tiquettes de scurit et les rgles d'accs et les assigne des domaines et des ressources. Le composant ACP utilise deux gestions d'tiquettes diffrentes. tiquette Simple Type Enforcement Description L'ACP interprte les tiquettes et attribue les requtes d'accs aux domaines qui demandent un accs virtuel (ou accs physique). La politque de scurit contrle l'accs entre les domaines et attribue les tiquettes correctes au domaine respectif. Par dfaut, l'accs aux domaines avec les domaines "Simple Type Enforcement" n'est pas activ. La politique de scurit "Muraille de Chine" (Chinese Wall) contrle et rpond aux demandes d'accs d'un domaine.

Muraille de Chine (Chinese Wall)

Tableau 17.6. Gestion d'tiquettes ACP

Une politique est une liste spare de noms, traduite en un chemin local, qui pointe vers le fichier XML de la politique (le fichier se rapportant au rpertoire root de la politque globale). Par exemple, le fichier de domaine chinese_wall.client_V1 se rapporte au fichier de la politique / example/chinese_wall.client_v1.xml. La Virtualisation Red Hat inclut les paramtres qui vous permettent de grer les politiques de scurit et assigne les tiquettes aux domaines :

24.5. Cration d'une politique


Vous pouvez utiliser xm pour crer une politique binaire :
xm makepolicy [policy]

Cela cre une politique binaire et l'enregistre en tant que fichier binaire [policy.bin].

43

24.6. Chargement d'une politique


Vous pouvez utiliser xm pour charger une politique binaire :
xm loadpolicy [policy.bin]

24.7. Cration d'une politique pour la configuration de dmarrage


Vous pouvez utiliser xm pour crer une politique binaire et l'ajouter au fichier de configuration de dmarrage :
xm cfgbootpolicy [kernelversion]

Cela copie la politique binaire dans le rpertoire /boot et modifie la ligne correspondante dans le fichier /boot/grub/menu.1st.

24.8. Cration d'une tiquette


Vous pouvez utiliser xm pour crer une tiquette :
xm addlabel [configfile] [policy]

Ajoute une tiquette de scurit un fichier de configuration de domaine. Cela vrifie galement que la dfinition des politiques respectives correspond au nom d'tiquette.

24.9. Affichage des tiquettes de politique


Vous pouvez utiliser xm pour visionner les tiquettes de politique :
xm labels [policy] [type=dom | res | any]

Cela affiche les tiquettes d'un type spcifi (par dfaut dom) quand vous crez la politique.

24.10. Affichage des tiquettes de scurit de domaine


Vous pouvez utiliser xm pour visionner les tiquettes de scurit pour un domaine :
xm getlabel domain-id [configfile]

24.11. Affichage des tiquettes de scurit de ressources


Vous pouvez utiliser xm pour visionner les tiquettes de scurit pour une ressource :

xm getlabel res [resource]

24.12. Configuration de la scurit de contrle d'accs


Pour activer la scurit d'accs de la virtualisation Red Hat, vous devez modifier ces paramtres dans le fichier xen_source__dir/Config.mk
ACM_SECURITY ?= y ACM_DEFAULT_SECURITY_POLICY ? = ACM_CHINESE_WALL__AND_SIMPLE_TYPE_ENFORCEMENT_POLICY

24.13. Compilation d'une politique de scurit


Cet exemple dmontre comment russir la compilation d'une politique de scurit :
xm makepolicy chinesewall_ste.client_v1

Cela cre les fichiers client_v1.map et client_v1.bin dans le rpertoire / etc/xen/acm-security/policies/example/chinesewall_ste.

24.14. Chargement de la politique de scurit


Vous pouvez utiliser xm pour activer le client_v1.bin :
xm loadpolicy example.chwall_ste.client_v1

24.15. Configuration d'une politique de scurit de dmarrage


Vous pouvez utiliser xm pour configurer le chargeur d'amorage pour charger client_v1.bin :
xm cfgbootpolicy chinesewall_ste.client_v1

Cela amne ACM utiliser cette tiquette pour amorcer la virtualisation Red Hat.

24.16. Affichage des tiquettes de scurit


Vous pouvez utiliser xm pour visionner les tiquettes dfinies :
xm labels chinesewall_ste.client_v1 type=dom

La sortie affiche toutes les politiques avec dom :

24.17. Attacher une tiquette de scurit

dom_StorageDomain dom_SystemManagement dom_NetworkDomain dom_QandA dom_R&D

24.17. Attacher une tiquette de scurit


Vous pouvez utiliser xm pour attacher une tiquette de scurit un fichier de configuration de domaine (cet exemple utilise l'tiquette SoftwareDev) :
xm addlabel myconfig.xm dom_SoftwareDev

Attacher l'tiquette de scurit garantit que le domaine ne partagera pas de donnes avec d'autres domaines utilisateur non-SoftwareDev. Cet exemple inclut le fichier de configuration myconfig.xm et reprsente un domaine qui excute des charges de travail associes l'infrastructure de SoftwareDev. ditez votre fichier de configuration respectif et vrifiez que la commande addlabel a ajout correctement l'entre access_control (et les paramtres associs) la fin du fichier :
kernel = "/boot/vmlinuz 2.6.16 xen" ramdisk="/boot/U1_SoftwareDev_ramdisk.img" memory = 164 name = "SoftwareDev" vif = [ '' ] dhcp = "dhcp" access_control = [policy=example.chwall_ste.client_v1, label=dom_SoftwareDev]

Si quelque chose semble incorrect, effectuez les modifications ncessaires et enregistrez le fichier.

Chapitre 18. Gestion des machines virtuelles avec le gestionnaire de machines virtuelles
Cette section dcrit les fentres, botes de dialogue et divers contrles GUI du gestionnaire de machines virtuelles de la Virtualisation Red Hat (VMM, de l'anglais Virtual Machine Manager).

1. Architecture du gestionnaire de machines virtuelles


La Virtualisation Red Hat est une collection de composants logiciels qui travaillent ensemble pour hberger et grer les machines virtuelles. Le gestionnaire de machines virtuelles (VMM) vous fournit une vue graphique des machines virtuelles de votre systme. Vous pouvez utiliser VMM pour dfinir les machines pleinement et partiellement virtuelles. En utilisant le gestionnaire de machines virtuelles, vous pouvez effectuer autant de tches de gestion de virtualisation que vous le dsirez, y compris l'attribution de mmoire, l'attribution de CPU virtuels, le contrle de performance oprationnelle, l'enregistrement, la restauration, la mise en pause, la reprise et l'arrt de systmes virtuels. Il vous permet galement d'accder la console textuelle et graphique. La Virtualisation Red Hat extrait les ressources de CPU et de mmoire partir des configurations matrielles et rseau sous-jacentes. Cela permet aux ressources de traitement d'tre groupes et dynamiquement assignes aux applications et requtes de service. La virtualisation au niveau des puces (Chip-Level) permet aux systmes d'exploitation quips de matriels Intel VT et AMD Pacifica de s'excuter sur les hyperviseurs.

2. La fentre Ouvrir une connexion


Cette fentre apparat en premier et demande l'utilisateur de choisir une session hyperviseur. Les utilisateurs sans privilge peuvent initier une session en lecture-seule. Les superutilisateurs peuvent dmarrer une session avec un statut lecture-criture. Pour une utilisation normale, slectionnez l'option Hte Xen local. Vous pouvez dmarrer le mode test du gestionnaire de machines virtuelles en slectionnant Autre hyperviseur et en saisissant test:///default dans le champ URL. Une fois que vous tes en mode test, vous pouvez vous connecter un hyperviseur libvirt fictif. Notez que mme si l'cran de connexion un hte Xen distant est visible, la fonctionnalit permettant de se connecter un tel hte n'est pas implmente dans RHEL 5.0.

47

3. La fentre Gestionnaire de machines virtuelles

Figure 18.1. La fentre de connexion au gestionnaire de machines virtuelles

3. La fentre Gestionnaire de machines virtuelles


La fentre principale affiche toutes les machines virtuelles et ressources en cours d'excution qui lui sont alloues (y compris domain0). Vous pouvez dcider quels champs afficher. En cliquant deux fois sur la machine virtuelle dsire, la console respective de cette machine particulire apparatra. Si vous slectionnez une machine virtuelle et cliquez deux fois sur le bouton Affichage, la fentre de dtails pour cette machine apparat. Vous pouvez galement accder au menu Fichier pour crer une nouvelle machine virtuelle.

Figure 18.2. La fentre principale du gestionnaire de machines virtuelles

48

5. La console graphique d'une machine virtuelle

4. La fentre Dtails d'une machine virtuelle


Cette fentre affiche des graphiques et statistiques bass sur les donnes relatives l'utilisation de ressources de l'invit disponible partir du gestionnaire de machines virtuelles de la Virtualisation Red Hat. Le champ UUID affiche l'identifiant unique global pour la/les machine(s) viruelle(s).

Figure 18.3. La fentre de dtails du gestionnaire de machines virtuelles

5. La console graphique d'une machine virtuelle


Cette fentre affiche la console graphique d'une machine virtuelle. Les machines partiellement et compltement virtuelles utilisent diffrentes techniques pour exporter leurs mmoires tampon mais les deux technologies utilisent VNC pour qu'elles soient disponibles la fentre Console du gestionnaire de machines virtuelles. Si votre machine virtuelle est paramtre pour demander l'authentification, la console graphique de la machine virtuelle vous demande un mot de passe avant l'apparition de l'affichage.

49

Figure 18.4. La fentre de console graphique

Votre bureau local peut intercepter les combinaisons de touches (par exemple, Ctrl+Alt+F11) afin d'empcher qu'elles soient envoyes la machine invit. Vous pouvez utiliser les "sticky key" du gestionnaire de machines virtuelles pour envoyer ces squences. Vous devez appuyer 3 fois sur n'importe quelle touche de modification (par exemple Ctrl ou Alt) pour que la touche spcifie soit active. La touche reste active jusqu' ce la prochaine touche de modification soit presse. Ensuite, vous pouvez envoyer Ctrl-Alt-F11 l'invit en entrant la combinaison de touches "Ctrl Ctrl Ctrl Alt+F1".

6. Dmarrage du gestionnaire de machines virtuelles


Pour dmarrer le gestionnaire de machines virtuelles partir du menu Applications, cliquez sur Outils de systme et slectionnez Gestionnaire de machines virtuelles. La fentre principale du gestionnaire de machines virtuelles apparat.

Figure 18.5. Dmarrage du gestionnaire de machines virtuelles

7. Cration d'une nouvelle machine virtuelle


Le gestionnaire de machines virtuelles (virt-manager) est l'application bureautique qui gre les machines virtuelles. Vous pouvez utiliser le gestionnaire de machines virtuelles de Red Hat pour : Crer de nouveaux domaines Configurer et ajuster le matriel virtuel et l'allocation de ressources d'un domaine Analyser les domaines en cours d'excution avec les statistiques de performance et d'utilisation des ressources Afficher les graphiques qui illustrent les performances et l'utilisation des ressources dans le temps Utiliser le client VNC embarqu (visionneuse) qui prsente une console graphique complte au domaine invit

Remarque :
Vous devez installer Red Hat Enterprise Linux 5.0, virt-manager et les paquetages de noyau sur tous les systmes qui requirent la virtualisation. Tous les systmes doivent ensuite tre chargs et dmarrer le noyau de Virtualisation Red Hat.

Voici les tapes requises pour installer un systme d'exploitation invit sur Red Hat Enterprise Linux 5 en utilisant le contrleur de machines virtuelles :

7. Cration d'une nouvelle machine virtuelle

Procdure 18.1. Cration d'un systme d'exploitation invit

1.

partir du menu Applications, slectionnez Outils de systme et Gestionnaire de machines virtuelles. La fentre principale du gestionnaire de machines virtuelles apparat.

Figure 18.6. La fentre du gestionnaire de machines virtuelles

2.

partir du menu Fichier, slectionnez Nouvelle machine.

7. Cration d'une nouvelle machine virtuelle

Figure 18.7. Slection d'une nouvelle machine

L'assistant de cration d'un nouveau systme virtuel apparat. 3. Cliquez sur Suivant.

Figure 18.8. Assistant de cration d'un nouveau systme virtuel

4.

Entrez le nom du nouveau systme virtuel et cliquez sur Suivant.

Figure 18.9. Nommage du systme virtuel

5.

Saisissez l'emplacement de votre support d'installation. L'emplacement du fichier kickstart est optionnel. Cliquez sur Suivant.

54

Figure 18.10. Emplacement du support d'installation

6.

Installez-le sur une partition de disque physique ou sur un systme de fichiers virtuels dans un fichier.

Remarque
Cet exemple installe un systme virtuel dans un fichier. La politique SELinux par dfaut permet aux images disque xen d'tre situes dans /var/lib/xen. Si SELinux est activ et que voulez spcifier un chemin d'accs personnalis pour le disque virtuel vous devez changer la politique SELinux de faon approprie.

Ouvrez un terminal, crez le rpertoire /xen et paramtrez la politique SELinux avec la commande restorecon -v /xen. Spcifiez votre emplacement et la taille du disque virtuel et cliquez sur Suivant.

55

7. Cration d'une nouvelle machine virtuelle

Figure 18.11. Assigner l'espace de stockage

7.

Slectionnez la mmoire allouer l'invit, le nombre de CPU virtuels et cliquez sur Suivant.

7. Cration d'une nouvelle machine virtuelle

Figure 18.12. Allocation mmoire et CPU

8.

Slectionnez Suivant pour ouvrir une console. Les fichiers commencent s'installer.

Figure 18.13. Allocation mmoire et CPU

9.

Poursuivez votre installation avec la fentre qui apparat.

Figure 18.14. L'installation commence...

10. Saisissez xm create -c xen-guest pour dmarrer l'invit Red Hat Enterprise Linux 5.0. Cliquez avec le bouton droit de votre souris dans le gestionnaire de machines virtuelles et choisissez l'option Ouvrir pour ouvrir une console virtuelle.

8. Restauration d'une machine enregistre

Figure 18.15. Red Hat Enterprise Linux 5.0 (invit)

11. Saisissez le nom d'utilisateur et le mot de passe pour continuer utiliser le gestionnaire de machines virtuelles.

8. Restauration d'une machine enregistre


Aprs avoir dmarr le gestionnaire de machines virtuelles, toutes les machines virtuelles de votre systme sont affiches dans la fentre principale. Domain0 correspond votre systme hte. Si il n'y a pas de machines affiches, cela signifie qu'il n'y a pas de machines en cours d'excution sur le systme. Pour restaurer une session prcdemment enregistre :

1.

partir du menu Fichier, slectionnez Restaurer une machine enregistre.

60

8. Restauration d'une machine enregistre

Figure 18.16. Restauration d'une machine virtuelle

2.

La fentre principale de restauration d'une machine virtuelle apparat.

Figure 18.17. Slection de la session d'une machine virtuelle enregistre

3. 4.

Naviguez dans le rpertoire appropri et slectionnez le fichier enregistr. Cliquez sur Ouvrir.

61

Les systmes virtuels enregistrs apparaissent dans la fentre principale du gestionnaire de machines virtuelles.

Figure 18.18. La session du gestionnaire de machines virtuelles restaure

9. Affichage des dtails d'une machine virtuelle


Vous pouvez utiliser le contrleur de machines virtuelles pour voir des informations de donnes pour toute machine virtuelle de votre systme. Pour voir les dtails d'un systme virtuel :

1.

Dans la fentre principale du gestionnaire de machines virtuelles, slectionnez la machine virtuelle que vous voulez afficher.

Figure 18.19. Slection d'une machine virtuelle afficher

2.

partir du menu Modifier du gestionnaire de machines virtuelles, slectionnez Dtails de

la machine (ou cliquez sur le bouton Dtails au bas de la fentre principale du gestionnaire de machines virtuelles).

Figure 18.20. Menu Affichage des dtails d'une machine virtuelle

La fentre d'aperu des dtails d'une machine virtuelle apparat. Cette fentre rsume l'utilisation du CPU et de la mmoire pour le/les domaine(s) spcifi(s).

Figure 18.21. Affichage de l'aperu des dtails d'une machine virtuelle

3.

Sur la fentre des dtails d'une machine virtuelle, cliquez sur l'onglet Matriel.

9. Affichage des dtails d'une machine virtuelle

La fentre des dtails du matriel d'une machine virtuelle apparat.

Figure 18.22. Affichage des dtails du matriel d'une machine virtuelle

4.

Sur l'onglet Matriel, cliquez sur Processeur pour voir ou changer l'allocation mmoire du processeur.

Figure 18.23. Affichage de l'allocation processeur

5.

Sur l'onglet Matriel, cliquez sur Memoire pour voir ou changer l'allocation de la mmoire RAM.

Figure 18.24. Affichage de l'allocation mmoire

10. Configuration de la surveillance des tats

6.

Sur l'onglet Hardware, cliquez sur Disque pour voir ou changer la configuration du disque dur.

Figure 18.25. Affichage de la configuration du disque

7.

Sur l'onglet Matriel, cliquez sur Rseau pour voir ou changer la configuration du rseau.

Figure 18.26. Affichage de la configuration du rseau

10. Configuration de la surveillance des tats


Vous pouvez utiliser le gestionnaire de machines virtuelles pour modifier la surveillance des tats du systme virtuel.

Pour configurer la surveillance des tats et activer les consoles :

1.

partir du menu Modifier, slectionner Prfrences.

Figure 18.27. Modification des prfrences d'une machine virtuelle

La fentre des prfrences du gestionnaire de machines virtuelles apparat. 2. partir de la bote de dialogue de surveillance des tats, spcifiez le dlai d'attente (en secondes) avant que le systme soit mis jour.

Figure 18.28. Configuration de la surveillance des tats

3.

partir de la zone des consoles, spcifiez la faon d'ouvrir une console ainsi qu'un

66

priphrique d'entre.

11. Affichage de l'ID du domaine


Pour voir les ID de domaine de toutes les machines virtuelles de votre systme :

1.

partir du menu Affichage, slectionnez la case cocher ID du domaine.

Figure 18.29. Affichage des ID de domaine

2.

Le gestionnaire de machines virtuelles liste l'ID de domaine de tous les domaines de votre systme :

67

12. Affichage de l'tat d'une machine virtuelle

Figure 18.30. Affichage des ID de domaine

12. Affichage de l'tat d'une machine virtuelle


Pour voir les tats de toutes les machines virtuelles de votre systme : 1. partir du menu Affichage, slectionnez la case cocher tats.

13. Affichage des CPU virtuels

Figure 18.31. Affichage de l'tat d'une machine virtuelle

2.

Le gestionnaire de machines virtuelles liste l'tat de toutes les machines virtuelles de votre systme :

Figure 18.32. Affichage de l'tat d'une machine virtuelle

13. Affichage des CPU virtuels


Pour voir la quantit de CPU virtuels de toutes les machines virtuelles de votre systme :

1.

partir du menu Affichage, slectionnez la case cocher CPU virtuels.

Figure 18.33. Affichage des CPU virtuels

2.

Le gestionnaire de machines virtuelles liste les CPU virtuels pour toutes les machines virtuelles sur votre systme.

Figure 18.34. Affichage des CPU virtuels

14. Affiche de l'utilisation CPU


Pour voir l'utilisation CPU de toutes les machines virtuelles de votre systme :

1.

partir du menu Affichage, slectionnez la case cocher Utilisation CPU.

Figure 18.35. Affiche de l'utilisation CPU

2.

Le gestionnaire de machines virtuelles liste le pourcentage de CPU en cours d'utilisation de toutes les machines virtuelles de votre systme.

15. Affichage de l'utilisation mmoire

Figure 18.36. Affiche de l'utilisation CPU

15. Affichage de l'utilisation mmoire


Pour voir l'utilisation mmoire de toutes les machines virtuelles de votre systme :

1.

partir du menu Affichage, slectionnez la case cocher Utilisation mmoire.

72

15. Affichage de l'utilisation mmoire

Figure 18.37. Affichage de l'utilisation mmoire

2.

Le gestionnaire de machines virtuelles liste le pourcentage de mmoire en cours d'utilisation (en mga-octets) de toutes les machines virtuelles de votre systme.

Figure 18.38. Affichage de l'utilisation mmoire

73

Chapitre 19. Rsolution des pannes de la Virtualisation Red Hat


Cette section aborde des problmes potentiels qui peuvent survenir lors de votre installation, de la gestion, et dans les oprations journalires de vos systmes de Virtualisation Red Hat. Cette section de rsolution des pannes couvre les messages d'erreur, les emplacements de fichier journaux, les outils de systme, et les approches gnrales pour rechercher des donnes et analyser des problmes.

1. Vue d'ensemble sur les fichiers journaux et emplacements


Quand vous dployez Red Hat Enterprise Linux 5.0 avec la virtualisation dans votre infrastructure de rseau, le logiciel de virtualisation des htes utilise de nombreux rpertoires spcifiques pour des configurations essentielles, les fichiers journaux et autres utilitaires. Tous les fichiers journaux de la Virtualisation Red Hat sont des fichiers ASCII standards, et sont facilement accessibles avec tout diteur bas sur ASCII : Le rpertoire de configuration principale de la Virtualisation Red Hat est /etc/xen/. Ce rpertoire contient le dmon xend et autres fichiers de configuration de machines virtuelles. Les fichiers de script de mise en rseau rsident galement ici (dans le sous-rpertoire / scripts). Tous les fichiers journaux que vous consulterez dans le but de rsoudre des pannes rsident dans le rpertoire /var/log/xen. Il est utile de savoir que le rpertoire par dfaut pour toutes les images disque des fichiers bass sur les machines virtuelles rsident dans le rpertoire /var/lib/xen. Les informations sur la Virtualisation Red Hat pour le systme de fichiers /proc rsident dans le rpertoire /proc/xen/.

2. Descriptions des fichiers journaux


La Virtualisation Red Hat a pour atouts le dmon xend et le processus qemu-dm, deux utilitaires qui crivent de multiples fichiers journaux dans le rpertoire /var/log/xen/ : est le fichier journal qui contient les donnes collectes par le dmon xend, que ce soit un vnement systme ordinaire, ou une action initie par l'oprateur. Toutes les oprations des machines virtuelles comme crer, fermer, supprimer etc. apparaissent cet endroit. Le xend.log est gnralement le premier endroit o vous pouvez tracer les problmes d'vnement ou de performance. Il contient des entres dtailles et les conditions crant des messages d'erreur.
xend.log

est le fichier qui contient des donnes d'erreurs dans les vnements partir de xend et les sous-systmes de virtualisation (comme la mmoire tampon, les scripts
xend-debug.log

74

3. Emplacements importants dans les rpertoires

Python, etc.). est le fichier journal contenant les donnes des vnements "hotplug". Si un priphrique ou un script rseau ne vient pas en ligne, l'vnement apparat ici.
xen-hotplug-log

est le fichier journal cr par le processus qemu-dm pour chaque invit pleinement virtualis. Quand vous utilisez ce fichier journal, vous devez rcuprer le processus PID qemu-dm en utilisant la commande ps pour examiner les arguments du processus afin d'isoler le processus qemu-dm sur la machine virtuelle. Notez que vous devez remplacer le symbole [PID] par le processus PID qemu-dm.
qemu-dm.[PID].log

Si des erreurs surviennent avec le gestionnaire de machines virtuelles (Virtual Machine Manager), vous pouvez revoir les donnes gnres dans le fichier virt-manager.log qui rside dans le rpertoire /.virt-manager. Notez que chaque fois que vous dmarrer le gestionnaire de machines virtuelles, il surcharge le contenu des fichiers journaux existants. Assurez-vous de sauvegarder le fichier virt-manager.log avant de redmarrer le gestionnaire de machines virtuelles aprs une erreur systme.

3. Emplacements importants dans les rpertoires


Il existe des utilitaires et des fichiers journaux supplmentaires connatre quand vous tracez les erreurs et problmes rsoudre dans les environnements de Virtualisation Red Hat : Les images de machines virtuelles rsident dans le rpertoire /var/lib/xen/images. Quand vous redmarrez le dmon xend, il met jour la xend-database qui rside dans le rpertoire /var/lib/xen/xend-db. Les vidages de la machine virtuelle (que vous excutez avec la commande xm rsident dans le rpertoire /var/lib/xen/dumps.
dump-core)

Le rpertoire /etc/xen contient les fichiers de configuration que vous utilisez pour grer les ressources systme. Le fichier de configuration du dmon xend est appel xend-config.sxp et vous pouvez utiliser ce fichier pour implmenter les modifications sur tout le systme et configurer les callouts de mise en rseau. Les commandes proc sont une autre ressource qui vous permet de rassembler des informations systme. Ces entres proc rsident dans le rpertoire /proc/xen :

/proc/xen/capabilities /proc/xen/balloon /proc/xen/xenbus/

4. Outils de rsolution des pannes


Cette section rsume les applications de l'administrateur systme, les utilitaires de mise en

75

4. Outils de rsolution des pannes

rseau, et les outils de dbogage avancs, (pour plus d'informations sur l'utilisation des ces outils pour configurer les services de Virtualisation Red Hat, veuillez consulter la documentation de configuration qui s'y rapporte). Vous pouvez employer ces mmes outils standards de l'administrateur de systme et les fichiers journaux pour vous assister dans la rsolution des pannes.

xentop xm dmesg xm log vmstat iostat lsof

Utilisez les outils de dbogage avancs et les fichiers journaux pour vous assister dans la rsolution des pannes :

XenOprofile systemTap crash sysrq sysrq t sysrq w

Vous pouvez employer ces outils de mise en rseau pour vous assister dans la rsolution des pannes :

ifconfig tcpdump brtctl

est un outil de mise en rseau qui inspecte et configure la configuration de pont ethernet dans le noyau de Virtualisation Linux. Vous devez possder un accs super-utilisateur avant d'excuter ces exemples de commandes :
brctl # brctl show bridge-name bridge-id STP enabled interfaces ----------------------------------------------------------------------------xenbr0 8000.feffffff no vif13.0 xenbr1 8000.ffffefff yes pddummy0 xenbr2 8000.ffffffef no vif0.0 # btcrl showmacs xenbr0

76

port-no 1 2

mac-addr fe:ff:ff:ff:ff: fe:ff:ff:fe:ff:

local? yes yes

ageing timer 0.00 0.00

# btcrl showstp xenbr0 xenbr0 bridge-id designated-root root-port max-age hello-time forward-delay ageing-time hello-timer topology-change-timer 8000.fefffffffff 8000.fefffffffff 0 20.00 2.00 0.00 300.01 1.43 0.00 tcn-timer gc-timer 0.00 0.02 path-cost bridge-max-age bridge-hello-time bridge-forward-delay 0 20.00 2.00 0.00

5. Rsolution des pannes avec les fichiers journaux


Quand des pannes surviennent lors de l'installation de la Virtualisation Red Hat, vous pouvez vous rfrer aux deux fichiers journaux du systme hte pour vous assister. Le fichier xend.log contient les mmes informations de base que quand vous excutez la commande xm log. Il rside dans le rpertoire /var/log/. Voici un exemple d'entre de journal pour la cration d'un domaine excutant un noyau :

[2006-12-27 02:23:02 xend] ERROR (SrvBase: 163) op=create: Error creating domain: (0, 'Error') Traceback (most recent call list) File "/usr/lib/python2.4/site-packages/xen/xend/server/SrvBase.py" line 107 in_perform val = op_method ( File "/usr/lib/python2.4/site-packages/xen/xend/server/SrvDomainDir.py line 71 in op_create raise XendError ("Error creating domain: " + str(ex)) XendError: Error creating domain: (0, 'Error')

L'autre fichier journal xend-debug.log, est trs utile aux administrateurs systme puisqu'il contient des informations encore plus dtailles que le xend.log. Voici les mmes donnes d'erreurs que pour le mme problme de cration de domaine de noyau :
ERROR: Will only load images built for Xen v3.0 ERROR: Actually saw: GUEST_OS=netbsd, GUEST_VER=2.0, XEN_VER=2.0; LOADER=generic, BSD_SYMTAB' ERROR: Error constructing guest OS

Quand vous appelez l'assistance clientle, incluez toujours une copie de ces deux fichiers

journaux.

6. Rsolution des pannes avec la console srie


La console srie est utile dans la rsolution des pannes difficiles. Si le noyau de virtualisation plante et l'hyperviseur gnre une erreur, il n'y a aucun moyen de tracer l'erreur sur votre hte local. Cependant la console srie vous permet de la capturer avec un hte distant. Vous devez configurer l'hte Xen pour envoyer des donnes la console srie. Ensuite vous devez configurer l'hte distant pour capturer les donnes. Pour ce faire, vous devez modifier ces options dans le fichier grub.conf pour activer une console srie 38400-bps sur com1 /dev/ttyS0 :

title Red Hat Enterprise Linix (2.6.18-8.2080_RHEL5xen0) root (hd0,2) kernel /xen.gz-2.6.18-8.el5 com1=38400,8n1 module /vmlinuz-2.618-8.el5xen ro root=LABEL=/rhgb quiet console=xvc console=tty xencons module /initrd-2.6.18-8.el5xen.img

La sync_console peut vous aider dterminer un problme qui cause des "hangs" (suspensions de systme) avec des sorties de console d'hyperviseur asynchrone, et le "pnpacpi=off" se charge d'un problme qui casse les saisies sur la console srie. Les paramtres "console=ttyS0" et "console=tty" signifient que les erreurs de noyau sont journalises avec la fois la console normale VGA et la console srie. Ensuite vous pouvez installer ttywatch pour capturer les donnes sur un hte distant connect avec un cable "null-modem" standard. Par exemple, sur l'hte distant vous pouvez saisir :
ttywatch --name myhost --port /dev/ttyS0

Cela canalise la sortie depuis /dev/ttyS0 vers le fichier /var/log/ttywatch/myhost.log.

7. Accs la console de l'invit paravirtualis


Les systmes d'exploitation invits paravirtualiss possdent automatiquement une console texte virtuelle, configure pour envoyer des donnes dans le systme d'exploitation Domain0. Vous pouvez effectuer cela partir de la ligne de commande en saisissant :
xm console [domain name or number]

O domain100 reprsente un nom ou un nombre en excution. Vous pouvez galement utiliser le gestionnaire de machines virtuelles pour afficher la console texte virtuelle. Dans la fentre des informations sur la machine virtuelle, slectionnez Console srie partir du menu Affichage.

8. Accs la console de l'invit pleinement virtualis


Les systmes d'exploitation invits pleinement virtualiss possdent automatiquement une console texte configure pour tre utilise, mais la diffrence est que l'invit du noyau n'est pas

9. Implementation de la persistance Lun

configur. Pour amener la console srie virtuelle de l'invit fonctionner avec l'invit pleinement virtualis vous devez modifier le fichier grub.conf de l'invit et inclure le paramtre 'console =ttyS0 console=tty0'. Cela assure que les messages du noyau sont envoys la console srie virtuelle (et la console graphique ordinaire). Si vous avez l'intention d'utiliser la console srie virtuelle dans un invit pleinement virtualis, vous devez diter le fichier de configuration dans le rpertoire /etc/xen/. Sur le domaine hte, vous pouvez ensuite accder la console texte en saisissant :
xm console

Vous pouvez galement utiliser le gestionnaire de machines virtuelles pour afficher la console srie. Dans la fentre des informations sur la machine virtuelle, slectionnez la console srie du menu Affichage.

9. Implementation de la persistance Lun


Si votre systme n'utilise pas "multipath", vous pouvez utiliser udev pour implmenter la persistance lun. Avant d'implmenter la persistance lun sur votre systme, assurez-vous d'obtenir les UUID corrects. Une fois que vous les avez obtenus, vous pouvez configurer la persistance lun en ditant le fichier scsi_id qui rside dans le rpertoire /etc. Une fois que ce fichier est ouvert dans l'diteur de texte, vous devez dcommenter cette ligne.

# options=-b

Puis remplacez-la par ce paramtre :


# options=-g

Cela indique udev de contrler tous les priphriques systme SCSI pour retourner les UUID. Pour dterminer les UUID systme, saisissez :
# scsi_id -g -s /block/sdc

La sortie devrait ressembler ce qui suit :


[root@devices] # scsi_id -g -s /block/sdc *3600a0b80001327510000015427b625e*

La longue chane de caractres est l'UUID. Pour faire en sorte que les noms de priphriques suppriment l'UUID, vrifiez chaque chemin de priphrique pour assurer que le numro du UUID est le mme pour chaque priphrique. Les UUID ne changent pas quand vous ajoutez un nouveau priphrique votre systme. Une fois les chemins de priphriques vrifis, vous

10. Considrations avec SELinux

devez crer des rgles pour le nommage de priphriques. Pour crer ces rgles, modifiez le fichier 20-names.rules qui rside dans le rpertoire /etc/udev/rules.d. Les rgles de nommage de priphrique que vous crez ici devraient suivre ce format :
# KERNEL="sd*", BUS="scsi", PROGRAM="sbin/scsi_id", RESULT="UUID", NAME="devicename"

Remplacez votre UUID existant et le nom du priphrique par l'entre rcupre du UUID cidessus. Ainsi la rgle devrait ressembler ce qui suit :
KERNEL="sd*", BUS="scsi", ", NAME="mydevicename" PROGRAM="sbin/scsi_id", RESULT="3600a0b80001327510000015427b625e

Cela fait en sorte que le systme active tous les priphriques qui correspondent /dev/sd* pour inspecter un UUID donn. Quand il trouve un priphrique correspondant, il cre un noeud de priphrique appel /dev/devicename. Pour cet exemple, le noeud de priphrique est / dev/mydevice. Enfin, vous devez ajouter le fichier rc.local qui rside dans le rpertoire /etc avec ce chemin :
/sbin/start_udev

IMPLEMENTATION DE LA PERSISTANCE LUN AVEC MULTIPATH Pour implmenter la persistance lun dans un environnement multipath, vous devez dfinir les noms d'alias pour les priphriques multipath. Pour cet exemple, vous devez dfinir quatre alias de priphrique en ditant le fichier multipath.conf qui rside dans le rpertoire /etc/ :
multipath { wwid alias } multipath { wwid alias } multipath { wwid alias } multipath { wwid alias } 3600a0b80001327510000015427b625e oramp4 3600a0b80001327510000015427b625e orafonctionnermp3 3600a0b80001327510000015427b6 oramp2 3600a0b80001327510000015427b625e oramp1

Cela dfinit 4 lun : /dev/mpath/oramp1, /dev/mpath/oramp2, /dev/mpath/oramp3, et dev/ mpath/oramp4. Les priphriques rsideront dans le rpertoire /dev/mpath. Ces noms lun sont persistants sur les redmarrages car cela cre les noms d'alias sur le wwid des lun.

10. Considrations avec SELinux

Cette section contient des informations que vous devez considrer quand vous implmentez SELinux dans votre environnement de Virtualisation Red Hat. Quand vous dployez des modifications de systme ou ajouter des priphriques, vous devez mettre jour votre politique SELinux en fonction de ces modifications. Pour configurer un volume LVM pour un invit, vous devez modifier le contexte SELinux pour le priphrique bloc sous-jacent et le groupe de volume respectivement.
# semanage fcontext -a -t xen_image _t -f -b /dev/sda2 # restorecon /dev/sda2

Le paramtre bolen xend_disable_trans place xend dans un mode unconfined (sans limitation) aprs le redmarrage du dmon. Il est recommand de dsactiver la protection pour un dmon unique plutt que pour tout le systme. De mme il vaut mieux ne pas r-tiqueter les rpertoires comme xen_image_t que vous utiliserez ailleurs.

11. Accs aux donnes sur l'image disque de l'invit


Vous pouvez utiliser deux applications diffrentes qui vous assistent dans l'accs aux donnes partir de l'intrieur de l'image disque d'un invit. Avant d'utiliser ces outils, vous devez arrter les invits. Accder au systme de fichiers partir de l'invit et de dom0 pourrait potentiellement endommag le systme. Vous pouvez utiliser l'application kpartx pour grer les disques partitionns ou les groupes de volume LVM :
yum install kpartx kpartx -av /dev/xen/guest1 add map guest1p1 : 0 208782 linear /dev/xen/guest1 63 add map guest1p2: 0 16563015 linear /dev/xen/guest1 208845

Pour accder aux volumes sur une seconde partition, vous devez rescanner LVM avec vgscan et activer le groupe de volume sur la partition (appele VolGroup00 par dfaut) en utilisant la commande vgchange -ay :
# kpartx -a /dev/xen/guest1 #vgscan Reading all physical volumes . This may take a while... Found volume group "VolGroup00" using metadata type 1vm2 # vgchange -ay VolGroup00now 2 logical volume(s) in volume group VolGroup00 now active. # lvs LV VG Attr Lsize Origin Snap% Move Log Copy% LogVol00 VolGroup00 -wi-a- 5.06G LogVol01 VolGroup00 -wi-a- 800.00M # mount /dev/VolGroup00/LogVol00 /mnt/ .... #umount /mnt/ #vchange -an VolGroup00 #kpartx -d /dev/xen/guest1

81

Rappelez-vous de dsactiver les volumes logiques avec vgchange -an, supprimer les partitions avec kpartx-d et supprimer le priphrique loop avec losetup -d quand vous terminez.

12. Situations frquentes dans la rsolution des pannes


Quand vous tentez de dmarrer le service xend, il ne se passe rien. Vous saisissez xm vous recevez ce qui suit :
Error: Error connecting to xend: Connection refused. Is xend running? list1

et

Vous essayez d'excuter xend manuellement et vous obtenez des erreurs supplmentaires :
Error: Could not obtain handle on privileged command interfaces (2 = No such file or directory) Traceback (most recent call last:) File "/usr/sbin/xend/", line 33 in ? from xen.xend.server. import SrvDaemon File "/usr/lib/python2.4/site-packages/xen/xend/server/SrvDaemon.py" , line 26 in ? from xen.xend import XendDomain File "/usr//lib/python2.4/site-packages/xen/xend/XendDomain.py" , line 33, in ? from xen.xend import XendDomainInfo File "/usr/lib/python2.4/site-packages/xen/xend/image.py" , line37, in ? import images File "/usr/lib/python2.4/site-packages/xen/xend/image.py" , line30, in ? xc = xen.lowlevel.xc.xc () RuntimeError: (2, 'No such file or directory' )

Il est probable que vous ayez relanc votre hte dans un noyau qui n'est pas un xen-hypervisor kernel. Pour corriger cela, vous devez slectionner le noyau xen-hypervisor au moment du lancement (ou configurer par dfaut, le noyau xen-hypervisor dans votre fichier grub.conf).

13. Erreurs de priphriques loop


Si vous utilisez les images d'invit bases sur les fichiers, il est possible que vous ayez augment le nombre de priphriques loop (par dfaut, jusqu' 8 priphriques loop activs). Si vous avez besoin de plus de 8 priphriques loop/invits bass sur des fichiers, vous devez modifier le fichier /etc/modprobe.conf. Quand vous modifiez ce fichier modprobe.conf, vous devez inclure cette ligne :
options loop max_loop=64

Cet exemple utilise la valeur 64 mais vous pouvez spcifier un autre nombre pour configurer la 82

14. Erreurs de cration d'invits

valeur loop maximum. Vous aurez peut-tre aussi implmenter des invits supports par un priphrique loop sur votre systme. Pour employer un invit support par un priphrique loop pour un systme paravirtuel, utilisez les commandes phy: block device ou tap:aio. Pour employer des invits supports par un priphrique loop pour un systme totalement virtualis, utilisez le fichier phy: device ou les commandes file: file.

14. Erreurs de cration d'invits


Quand vous tentez de crer un invit, vous recevez un message d'erreur "Invalid argument". Cela signifie en gnral que l'image noyau que vous tentez de lancer est incompatible avec l'hyperviseur. Un exemple de cela serait si vous tentiez d'excuter un noyau non-PAE FC5 sur un hyperviseur FC6 uniquement PAE. Vous faites une mise jour yum et recevez un nouveau noyau, le noyau par dfaut grub.conf redevient directement un noyau bare-metal au lieu d'un noyau de virtualisation. Pour remdier ce problme vous devez modifier le noyau RPM par dfaut qui rside dans le rpertoire /etc/sysconfig/kernel/. Vous devez vous assurer que le paramtre kernel-xen est configur comme l'option par dfaut dans votre fichier gb.conf.

15. Erreurs de la console srie


Vous ne recevez pas de sortie sur la console srie. Pour rsoudre ce problme, vous devez diter le fichier grub.conf et modifier les paramtres de port com :
serial --unit=1 --speed=115200

title RHEL5 i386 Xen (2.6.18-1.2910.el5xen) root (hd0, 8) kernel /boot/xen.gz-2.6.18-1.2910.el5 com2=115200, 8n1 module /boot/vmlinuz-2.6.18-1.2910.el5xen to root=LABEL=RHEL5_i386 console=tty console=ttyS1115200 module /boot/initrd-2.8.6.18-12910.el5xen.img title RHEL5 i386 xen (2.6.18.-1.2910.el5xen root (hd0, 8) kernel /boot/xen.gz-2.6.18-1.2910.el5 com2=115200 console=com2l module /boot/vmlinuz2.6.18-1.2910.el5xen to root=LABEL=RHEL5_i386 console=xvc xencons=xvc module /boot/ititrd-2.6.18-1.2910.el5xen.img

Ces modifications sur le fichier grub.conf devraient activer votre console srie pour qu'elle fonctionne correctement. Vous devriez tre en mesure d'utiliser tout nombre pour le ttyS et il devrait fonctionner comme ttyS0.

16. Erreurs de pont rseau


La Virtualisation Red Hat peut configurer de multiples ponts rseau de virtualisation pour utiliser plusieurs cartes ethernet. Pour russir la configuration de multiples ponts rseau pour les cartes ethernet, vous devez configurer la seconde interface rseau en utilisant soit le TUI/GUI systemconfig-network ou en crant un nouveau fichier de configuration dans /

16. Erreurs de pont rseau


etc/sysconfig/network-scripts.

Vous devriez utiliser un processus pour installer de multiples ponts Xen. Voici un exemple de fichier de configuration pour un second NIC appel 'eth1' :
#/etc/sysconfig/network-scripts/fcfg-eth1 DEVICE=eth1 BOOTPROTO=static ONBOOT=yes USERCTL=no IPV6INIT=no PEERDNS=yes TYPE=Ethernet NETMASK=255.255.255.0 IPADDR=10.1.1.1 GATEWAY=10.1.1.254 ARP=yes

Copiez le fichier /etc/xen/scripts/network-bridge sur /etc/xen/scripts/network-bridge.xen. ditez /etc/xen/xend-config.sxp et ajoutez une ligne votre nouveau script de pont rseau (cet exemple utilise "network-Virtualisation-multi-bridge"). Dans le fichier xend-config.sxp, la nouvelle ligne devrait reflter votre nouveau script :
network-script network-xen-multi-bridge

Assurez-vous d'enlever le commentaire sur cette ligne :


network-script network-bridge

Si vous dsirez crer de multiples ponts Xen, vous devez crer un script personnalis. L'exemple ci-dessous cre deux ponts Xen (appels xenbr0 et xenbr1) et les attache eth1 et eth0, respectivement :
# !/bin/sh # network-xen-multi-bridge # Exit if anything goes wrong set -e # First arg is operation. OP=$1 shift script=/etc/xen/scripts/network-bridge.xen case ${op} in start) $script start vifnum=1 bridge=xenbr1 netdev=eth1 $script start vifnum=0 bridge=xenbr0 netdev=eth0 .. ,, stop) $script stop vifnum=1 bridge=xenbr1 netdev=eth1 $script stop vifnum=0 bridge=xenbr0 netdev=eth0 .. ,, status) $script status vifnum=1 bridge=xenbr1 netdev=eth1 $script status vifnum=0 bridge=xenbr0 netdev=eth0 .. ,,

*) echo 'Unknown command: ' ${OP} echo 'Valid commands are: start, stop, status' exit 1 esac

Si vous dsirez crer des ponts supplmentaires, utilisez simplement le script d'exemple et copier/coller le fichier de faon approprie.

17. Configurations des ordinateurs portables


La configuration de votre ordinateur portable charg avec RHEL 5.0 pour une utilisation avec un environnement rseau, prsente un nombre de challenges potentiels. La plupart des connexions WiFi et ethernet basculent constamment n'importe quel moment, et la Virtualisation Red Hat prsume qu'elle a accs systmatiquement la mme interface. Cela rsulte dans les systmes effectuant des appels ifup/ifdown vers l'interface rseau utilise par la Virtualisation Red Hat. Les cartes WiFi ne sont pas les mthodes de connexion rseau idales puisque la Virtualisation Red Hat utilise l'interface de rseau par dfaut. L'ide ici est de crer une interface rseau factice qui sera utilise par la Virtualisation Red Hat Cette technique vous permet d'utiliser un espace d'adresse IP cach pour vos invits et vos machines virtuelles. Pour russir cette opration, vous devez utiliser les adresses IP statiques car DHCP n'coute pas les adresses IP sur le rseau factice. Vous devez galement configurer la mascarade NAT/IP pour activer l'accs rseau aux invits et machines virtuelles. Vous devez attacher une IP statique quand vous crez l'interface rseau factice. Pour cet exemple l'interface est appele dummy0 et l'IP utilis est 10.1.1. Le script est appel ifcfg-dummy0 et rside dans le rpertoire /etc/sysconfig/network-scripts/ :
DEVICE =dummy0 BOOTPROTO=none ONBOOT=yes USERCTL=no IPV6INIT=no PEERDNS=yes TYPE=Ethernet NETMASK=255.255.255.0 IPADDR=10.1.1.1 ARP=yes

Vous devez lier xenbr0 dummy0 pour permettre la connexion rseau mme lorsque la connexion au rseau physique n'est pas tablie. Il vous faudra faire des modifications supplmentaires sur le fichier xend-config.sxp. Vous devez localiser la section (network-script 'network-bridge' bridge=xenbr0 ) et ajouter ce qui suit la fin de la ligne :
netdev=dummy0

Vous devez galement effectuer des modifications sur la configuration de la mise en rseau domU de l'invit afin d'amener la passerelle par dfaut pointer vers dummy0. Vous devez diter le fichier "rseau" DomU qui rside dans le rpertoire /etc/sysconfig/ pour reflter l'exemple ci-dessous :
NETWORKING=yes HOSTNAME=localhost.localdomain GATEWAY=10.1.1.1 IPADDR=10.1.1.10 NETMASK=255.255.255.0

Il est recommand d'activer NAT dans domain0 afin que domU puisse accder au rseau public. Ainsi, mme les utilisateurs sans fil peuvent contourner les limitations de la Virtualisation Red Hat. Pour ce faire, vous devez modifier le fichier S99XenLaptopNAT qui rside dans le rpertoire /etc/rc3.d pour reflter l'exemple ci-dessous :
#!/bin/bash/ PATH=/usr/bin:/sbin:/bin:/usr:/sbin export PATH GATEWAYDEV= "ip route | grep default | awk {print $5'}' iptables -F case "$1" in start) if test -z "$GATEWAYDEV"; then echo "No gateway device found" else echo "Masquerading using $GATEWAYDEV" /sbin/iptables -t nat -A POSTROUTING -o $GATEWAYDEV -j MASQUERADE fi echo "Enabling IP forwarding" echo 1 . /proc/sys/net/ipv4/ip_forward echo "IP forwarding set to 'cat /proc/sys/net/ipv4/ip_forward'" echo "done" .. '' *) echo "Usage: $0 {start | restart | status}" .. ,, esac

Si vous dsirez que le rseau soit automatiquement configur au lancement, vous devez crer un lien symbolique vers /etc/rc3.d/S99XenLaptopNAT. Quand vous modifiez le fichier modprobe.conf, vous devez inclure ces lignes :
alias dummy0 dummy options dummy numdummies=1

18. Dmarrage automatique des domaines au lancement du systme

19. Modification de Domain0

Dmarrage automatique des domaines au lancement du systme Vous pouvez configurer vos invits pour qu'ils dmarrent automatiquement quand vous lancer le systme. Pour ce faire, vous devez modifier les liens symboliques qui rsident dans / etc/xen/auto. Ce fichier pointe vers les fichiers de configuration des invits que vous devez dmarrer automatiquement. Le processus de dmarrage est srialis, c'est--dire que plus le nombre d'invits est lev, plus le processus de lancement prendra de temps. Cet exemple vous montre comment utiliser les liens symboliques pour l'invit rhel5vm01 :
[root@python [root@python [root@python [root@python [root@python xen]# cd /etc/xen xen]# cd auto auto]# ls auto]# ln -s ../rhel5vm01 . auto]# ls -l

lrwxrwxrwx 1 root root 14 Dec 14 10:02 rhel5vm01 -> ../rhel5vm01 [root@python auto]#

19. Modification de Domain0


Pour utiliser la Virtualisation Red Hat afin de grer domain0, vous effectuerez constamment des modifications sur le fichier de configuration grub.conf, qui rside dans le rpertoire /etc. cause du nombre important de domaines grer, de nombreux administrateurs systme prfrent utiliser la mthode copier/coller quand ils ditent grub.conf. Si vous choisissez cette mthode, assurez-vous d'inclure les cinq lignes dans l'entre de virtualisation (ou cela crera des erreurs systme). Si vous exigez des valeurs spcifiques pour l'hyperviseur Xen, vous devez les ajouter la ligne "xen". Cet exemple reprsente une entre grub.conf correcte de Virtualisation :
# boot=/dev/sda/ default=0 timeout=15 #splashimage=(hd0, 0)/grub/splash.xpm.gz hiddenmenu serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1 terminal --timeout=10 serial console title Red Hat Enterprise Linux Server (2.6.17-1.2519.4.21. el5xen) root (hd0, 0) kernel /xen.gz-2.6.17-1.2519.4.21.el5 com1=115200, 8n1 module /vmlinuz-2.6.17-1.2519.4.21el5xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.17-1.2519.4.21.el5xen.img

Par exemple, si vous devez modifier votre mmoire d'hyperviseur dom0 256Mo au lancement, vous devez diter la ligne "xen" et l'ajouter avec l'entre correcte, 'dom0_mem=256M'. Cet exemple reprsente l'entre xen dans grub.conf :
# boot=/dev/sda default=0 timeout=15 #splashimage=(hd0,0)/grubs/splash.xpm.gz hiddenmenu serial --unit=0 --speed =115200 --word=8 --parity=no --stop=1 terminal --timeout=10 serial console

87

20. Fichiers de configuration des invits

title Red Hat Enterprise Linux Server (2.6.17-1.2519.4.21. el5xen) root (hd0,0) kernel /xen.gz-2.6.17-1.2519.4.21.el5 com1=115200, 8n1 dom0_mem=256MB module /vmlinuz-2.6.17-1.2519.4.21.el5xen ro root=/dev/VolGroup00/LogVol00 module /initrd-2.6.17-1.2519.4.21.el5xen.img

20. Fichiers de configuration des invits


Quand vous installez de nouveaux invits au moyen d'outil(s) virt-manager (ou virt-install) de Red Hat Enterprise Linux 5.0 avec la virtualisation, les fichiers de configuration des invits (situs dans le rpertoire /etc/xen) sont modifis et installs automatiquement. Cet exemple de fichier de configuration est pour un invit paravirtualis :
name = "rhel5vm01" memory = "2048" disk = ['tap:aio:/xen/images/rhel5vm01.dsk,xvda,w',] vif = ["type=ieomu, mac=00:16:3e:09:f0:12 bridge=xenbr0', "type=ieomu, mac=00:16:3e:09:f0:13 ] vnc = 1 vncunused = 1 uuid = "302bd9ce-4f60-fc67-9e40-7a77d9b4e1ed" bootloader = "/usr/bin/pygrub" vcpus=2 on_reboot = "restart" on_crash = "restart"

Notez que serial="pty" est la valeur par dfaut pour le fichier de configuration. Cet exemple de fichier de configuration est pour l'invit pleinement virtualis :

name = "rhel5u5-86_64" builder = "hvm" memory = 500 disk = ['file:/xen/images/rhel5u5-x86_64.dsk.hda,w [../../../home/mhideo/.evolution//xen/images/rhel5u5vif = [ 'type=ioemu, mac=00:16:3e:09:f0:12, bridge=xenbr0', 'type=ieomu, mac=00:16:3e:09:f0:13, bridge=x uuid = "b10372f9-91d7-ao5f-12ff-372100c99af5' device_model = "/usr/lib64/xen/bin/qemu-dm" kernel = "/usr/lib/xen/boot/hvmloader/" vnc = 1 vncunused = 1 apic = 1 acpi = 1 pae = 1 vcpus =1 serial ="pty" # enable serial console on_boot = 'restart'

21. Clonage des fichiers de configuration des invits


Vous pouvez copier (ou cloner) un fichier de configuration existant pour crer un tout nouvel invit. Vous devez modifier le paramtre de nom du fichier de configuration des invits. Le nouveau nom unique apparat alors dans l'hyperviseur et il est visualisable par les utilitaires de gestion. Vous devez galement gnrer un tout nouveau UUID (avec la commande

88

). Ensuite pour les entres vif dfinissez une adresse MAC unique pour chaque invit (si vous copiez une configuration invit partir d'un invit existant, vous pouvez crer un script pour le manipuler). Pour les informations de pont xen, si vous dplacez un fichier de configuration invit existant vers un nouvel hte, vous devez mettre jour l'entre xenbr pour faire correspondre votre configuration de mise en rseau locale. Pour les entres de priphrique, vous devez modifier les entres dans la section 'disk=' pour pointer vers l'image d'invit correcte. Vous devez galement modifier les paramtres de configuration systme sur votre invit, de mme que l'entre HOSTNAME du fichier /etc/sysconfig/network pour faire correspondre le nouveau nom d'hte de l'invit. Vous devez modifier l'adresse HWADDR du fichier /etc/sysconfig/network-scripts/ifcfg-eth0 pour faire correspondre la sortie du fichier ifconfig eth0 et si vous utilisez des adresses IP statiques, vous devez modifier l'entre IPADDR.

22. Creation d'un script pour gnrer des adresses MAC


La Virtualisation de Red Hat peut gnrer une adresse MAC pour chaque machine virtuelle au moment de sa cration. tant donn qu'il y a une quantit presque illimite de numros sur le mme sous-rseau, il est peu probable que vous obteniez la mme adresse MAC. Pour contourner cela, vous pouvez aussi crire un script pour gnrer une adresse MAC. Cet exemple de scrip contient les paramtres pour gnrer une adresse MAC :
#! /usr/bin/python # macgen.py script generates a MAC address for Xen guests # import random mac = [ 0x00, 0x16, 0x3e, random.randint(0x00, 0x7f), random.randint(0x00, 0xff), random.randint(0x00, 0xff) ] print ':'.join(map(lambda x: "%02x" % x, mac)) Generates e.g.: 00:16:3e:66:f5:77 to stdout

23. Configuration de la migration en direct de machines virtuelles


La Virtualisation Red Hat peut migrer des machines virtuelles entre les autres serveurs excutant Red Hat Enterprise Linux 5.0 avec la virtualisation. De plus la migration est effectue par une mthode hors ligne (avec la commande xm migrate). La migration en direct peut tre effectue avec la mme commande. Cependant il vous faudra effectuer des modifications supplmentaires sur le fichier de configuration xend-config. Cet exemple identifie les entres que vous devez modifier pour assurer une migration russie :

(xend-relocation-server yes)

La valeur par dfaut pour ce paramtre est "no", ce qui permet au serveur de dlocalisation/migration de rester dsactiv ( moins d'tre sur un rseau scuris), la

mmoire virtuelle de domaine est change sous forme brute sans cryptage.
(xend-relocation-port 8002)

Ce paramtre dtermine le port utilis par xend pour la migration. La valeur est correcte, veuillez simplement vous assurer que vous enlevez le commentaire qui est plac devant.
(xend-relocation-address )

Ce paramtre reprsente l'adresse qui coute les connexions socket de dlocalisation. l'coute, elle restreint la migration vers une interface particulire.
(xend-relocation-hosts-allow )

Ce paramtre contrle l'hte qui communique avec le port de dlocalisation. Si la valeur est vide, toutes les connexions entrantes sont permises. Vous devez changer cela des squences spares par un espace, d'expressions rgulires (comme xendrelocation-hosts-allow- '^localhost\\.localdomain$'). Un hte avec un nom de domaine pleinement qualifi ou une adresse IP qui correspond ces expressions est accept. Aprs la configuration de ces paramtres, vous devez redmarrer l'hte pour que la virtualisation Red Hat accepte vos nouveaux paramtres.

24. Interprtation des messages d'erreur


Vous recevez le message d'erreur suivant :
failed domain creation due to memory shortage, unable to balloon domain0

Un domaine peut chouer quand il n'y a pas assez de RAM disponible. Domain0 ne fournit pas suffisamment d'espace pour l'invit nouvellement cr. Vous pouvez vrifier le xend.log suite cette erreur :

[2006-12-21] 20:33:31 xend 3198] DEBUG (balloon:133) Balloon: 558432 Kib free; 0 to scrub; need 1048576; [2006-12-21] 20:33:31 xend. XendDomainInfo 3198] ERROR (XendDomainInfo: 202 Domain construction failed

Vous pouvez vrifier la quantit de mmoire utilise par domain0 en utilisant la commande xm list Domain0. Si le domain0 n'est pas rduit, vous utiliserez la commande "xm mem-set Domain-0 NewMemSize" pour vrifier la mmoire. Vous recevez le message d'erreur suivant :
wrong kernel image: non-PAE kernel on a PAE

Ce message indique que vous tentez d'excuter une image de noyau d'invit qui n'est pas prise en charge sur votre hyperviseur. Cela arrive quand vous essayez de dmarrer un noyau d'invit paravirtuel non PAE sur un hyperviseur RHEL 5.0. La Virtualisation Red Hat ne prend en charge que des noyaux invits avec PAE et des architectures 64 bit. Saisissez cette commande :

24. Interprtation des messages d'erreur

[root@smith]# xm create -c va base Using config file "va-base" Error: (22, 'invalid argument') [2006-12-14 14:55:46 xend.XendDomainInfo 3874] ERRORs (XendDomainInfo:202) Domain construction failed

Traceback (most recent call last) File "/usr/lib/python2.4/site-packages/xen/xend/XendDomainInfo.py", line 195 in create vm.initDomain() File " /usr/lib/python2.4/site-packages/xen/xend/XendDomainInfo.py", line 1363 in initDomain raise VmErr VmError: (22, 'Invalid argument') [2006-12-14 14:55:46 xend.XendDomainInfo 3874] DEBUG (XenDomainInfo: 1449] XendDlomainInfo.destroy: domin=1 [2006-12-14 14:55:46 xend.XendDomainInfo 3874] DEBUG (XenDomainInfo: 1457] XendDlomainInfo.destroy:Domain(1)

Si vous dsirez excuter un noyau 32bit/non-PAE, il faudra excuter votre invit en tant que machine virtuelle pleinement virtualise. Pour les invits paravirtualiss, si vous devez excuter un invit PAE 32bit, il vous faudra un hyperviseur PAE 32bit. Pour les invits paravirtualiss, si vous devez excuter un invit PAE 64bit, il vous faudra un hyperviseur PAE 64bit. Pour les invits pleinement virtualiss, vous devez excuter un invit 64bit avec un hyperviseur 64bit. L'hyperviseur PAE 32bit qui accompagne RHEL 5 i686 ne prend en charge que l'excution du PAE 32 bit paravirtualis et l'invit OSes 32bit pleinement virtualis. L'hyperviseur 64bit ne prend en charge que les invits paravirtualiss 64bit. Cela a lieu quand vous dplacez l'invit HVM pleinement virtualis sur un systme RHEL 5.0. Le dmarrage de votre invit peut chouer et vous verrez une erreur sur l'cran de la console. Vrifiez l'entre PAE dans votre fichier de configuration et assurez vous que pae=1. Vous utiliserez une distribution 32bit. Vous recevez le message d'erreur suivant :
Unable to open a connection to the Xen hypervisor or daemon

Cela arrive quand le dmarrage de l'application virt-manager choue. Cette erreur a lieu quand il n'y a pas d'entre d'hte local (localhost) dans le fichier de configuration /etc/hosts. Vrifiez le fichier et vrifiez que l'entre de l'hte local est active. Voici un exemple d'entre d'hte local incorrecte :
# Do not remove the following line, or various programs # that require network functionality will fail. localhost.localdomain localhost

Voici un exemple d'entre d'hte local correcte :


# Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 localhost.localdomain localhost localhost.localdomain. localhost

24. Interprtation des messages d'erreur

Vous recevez l'erreur suivante (dans le xen-xend.log


Bridge xenbr1 does not exist!

file)

Cela arrive quand le pont des invits n'est pas configur correctement et cela force les scripts hotplug Xen un timeout. Si vous dplacez les fichiers de configuration entre les htes, vous devez vous assurer de mettre jour les fichiers de configuration des invits pour reflter la topologie de mise en rseau et les modifications de configuration. Quand vous tentez de dmarrer un invit dont la configuration de pont Xen n'existe pas ou est incorrecte, vous obtenez les erreurs suivantes :
[root@trumble virt]# xm create r5b2-mySQL01 Using config file " r5b2-mySQL01" Going to boot Red Hat Enterprise Linux Server (2.6.18.-1.2747 .el5xen) kernel: /vmlinuz-2.6.18-12747.el5xen initrd: /initrd-2.6.18-1.2747.el5xen.img Error: Device 0 (vif) could not be connected. Hotplug scripts not working.

Par ailleurs, le fichier xend.log affiche les erreurs suivantes :


[2006-11-14 15:07:08 xend 3875] DEBUG (DevController:143) Waiting for devices vif [2006-11-14 15:07:08 xend 3875] DEBUG (DevController:149) Waiting for 0 [2006-11-14 15:07:08 xend 3875] DEBUG (DevController:464) hotplugStatusCallback /local/domain/0/backend/vif/2/0/hotplug-status

[2006-11-14 15:08:09 xend.XendDomainInfo 3875] DEBUG (XendDomainInfo:1449) XendDomainInfo.destroy: domid [2006-11-14 15:08:09 xend.XendDomainInfo 3875] DEBUG (XendDomainInfo:1457) XendDomainInfo.destroyDomain( [2006-11-14 15:07:08 xend 3875] DEBUG (DevController:464) hotplugStatusCallback /local/domain/0/backend/vif/2/0/hotplug-status

Pour rsoudre ce problme, vous devez diter votre fichier de configuration invit et modifier l'entre vif. Quand vous localisez l'entre vif du fichier de configuration, en supposant que vous utilisiez xenbr0 comme pont par dfaut, assurez-vous que l'entre approprie ressemble ce qui suit :
# vif = ['mac=00:16:3e:49:1d:11, bridge=xenbr0',]

Vous recevez ces erreurs de dprciation python :


[root@python xen]# xm shutdown win2k3xen12 [root@python xen]# xm create win2k3xen12 Using config file "win2k3xen12". /usr/lib64/python2.4/site-packages/xenxm/opts.py:520: Deprecation Warning: Non ASCII character '\xc0' in file win2k3xen12 on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details execfile (defconfig, globs, locs,)

Error: invalid syntax 9win2k3xen12, line1)

Python gnre ces messages quand un fichier de configuration est invalide (ou incorrect). Pour rsoudre ce problme, vous devez modifier le fichier de configuration incorrect, ou vous pouvez en crer un nouveau.

25. Ressources de rsolution des pannes en ligne


Centre de Virtualisation Red Hat

http://www.openvirtualization.com [http://www.openvirtualization.com/]

Documentation Red Hat Enterprise Linux 5 Beta 2

http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/index.html

API Libvirt

http://www.libvirt.org [http://www.libvirt.org/]

Page accueil du projet virt-manager

http://virt-manager.et.redhat.com [http://virt-manager.et.redhat.com/]

Centre de la communaut Xen

http://www.xensource.com/xen/xen/

Vue d'ensemble des technologies de virtualisation

http://virt.kernelnewbies.org

93

[http://virt.kernelnewbies.org/]

Projets de technologies mergeants

http://et.redhat.com [http://et.redhat.com/]

94

Chapitre 20. Ressources supplmentaires


Pour en savoir plus sur la Virtualisation Red Hat, reportez-vous aux ressources suivantes.

1. Sites Web utiles


http://www.cl.cam.ac.uk/research/srg/netos/xen/ Le site Web du projet concernant Xen, le gestionnaire de machines pour la virtualisation partielle partir duquel la Virtualisation Red Hat est drive. Le site maintient en amont le code source et les bibliothques du projet Xen et contient galement des informations, des aperus de l'architecture, de la documentation et des liens en relation Xen et ses technologies associes. http://www.libvirt.org/ Le site Web officiel pour l'API de virtualisation libvirt qui interagit avec le framework de virtualisation d'un SE hte. http://virt-manager.et.redhat.com/ Le site Web du projet concernant Gestionnaire de machines virtuelles (virt-manager), l'application graphique pour la gestion des machines virtuelles.

2. Documentation installe
. Ce rpertoire contient beaucoup d'informations propos de l'hyperviseur de virtualisation partielle Xen et d'outils de gestion qui lui sont associs, y compris un aperu des diffrents exemples de configurations, des informations spcifiques au matriel et la documentation utilisateur en amont de Xen.
/usr/share/doc/xen-<version-number>/

et /usr/share/doc/libvirt-<version-number> Contient des sous-commandes et options pour l'utilitaire de gestion de la machine virtuelle virsh ainsi que des informations claires propos de l'API de la bibliothque de virtualisation libvirt.
man virsh

Contient de la documentation sur l'applet graphique du tableau de bord GNOME qui contrle et gre les machines virtuelles qui sont excutes en local.
/usr/share/doc/gnome-applet-vm-<version-number>

Fournit des dtails sur les associations Python pour la bibliothque libvirt. Le paquetage libvirt-python permet aux dveloppeurs python de crer des programmes qui s'interfacent avec la bibliothque de gestion de la virtualisation libvirt.
/usr/share/doc/libvirt-python-<version-number>

Fournit de la documentation sur la commande virt-install qui aide au dmarrage d'installations de distributions Fedora et Red Hat Enterprise Linux au sein des machines virtuelles.
/usr/share/doc/python-virtinst-<version-number>

Fournit de la documentation sur le gestionnaire de machines virtuelles qui fournit un outil graphique pour administrer les machines virtuelles.
/usr/share/doc/virt-manager-<version-number>

95

2. Documentation installe

96

Annexe A. Historique des versions


Historique des versions Version 5.0.0-8 Thu Apr 05 2007 Resolves: #235311 Clarifying SELinux installation procedure Version 5.0.0-7 Wed Feb 07 2007 Resolves: #224220 #225169 Additional Developer Feedback Version 5.0.0-6 Thu Jan 31 2007 Resolves: #224220 #225169 Modify troubleshoot command Version 5.0.0-3 Thu Jan 11 2007 Resolves: #221137 Fix to broken rpm

97

Annexe B. Exercice 1
Installation de l'invit Xen Objectif : installer les invits Xen RHEL 3, 4, ou 5 et Windows XP. Prrequis : un poste de travail install avec Red Hat Enterprise Linux 5.0 et le composant de Virtualisation. Pour cet exercice, vous configurez et installez les invits Xen RHEL 3, 4, ou 5 et Win XP au moyen de divers outils de virtualisation. Exercice 1, squence 1 : vrification de la prise en charge PAE Vous devez dterminer si votre systme comporte la prise en charge PAE. La Virtualisation Red Hat prend en charge les architectures CPU bases sur x86_64 ou ia64 pour excuter des invits paravirtualiss. Pour excuter les invits i386, le systme requiert un CPU avec des extensions PAE. De nombreux ordinateurs portables (surtout ceux bass sur Pentium Mobile ou Centrino) ne prennent pas en charge PAE. 1. Afin de dterminer si votre CPU comporte la prise en charge PAE, saisissez :
grep pae /proc/cpuinfo

2.

La sortie suivante illustre un CPU qui possde la prise en charge PAE. Si la commande ne retourne rien, le CPU ne possde pas de prise en charge PAE. Tous les exercices de ce chapitre requirent un CPU i386 avec extension PAE ou x86_64 ou ia64 pour fonctionner.
flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx up est tm2

Exercice 1, squence 2 : installer l'invit paravirtualis Xen RHEL5 Beta 2 au moyen de virtinstall. Pour cet exercice, vous devez installer un invit Xen Red Hat Enterprise Linux 5 Beta 2 au moyen de virt-install. 1. Pour installer votre invit Xen Red Hat Enterprise Linux 5 Beta 2, l'invite de commande, saisissez : virt-install. Lorsqu'on vous demande d'installer un invit pleinement virtualis, saisissez : no. Saisissez rhel5b2-pv1 pour le nom de votre machine virtuelle. Saisissez 500 pour l'allocation de la mmoire RAM. Saisissez /xen/rhel5b2-pv1.img pour votre disque (image invit). 98

2. 3. 4. 5.

6. 7. 8. 9.

Saisissez 6 pour la taille de votre disque (image invit). Saisissez yes pour activer la prise en charge graphique. Saisissez nfs:server:/path/to/rhel5b2 pour votre emplacement d'installation. L'installation commence. Compltez votre installation comme prvu.

10. Aprs la finalisation de l'installation, saisissez /etc/xen/rhel5b2-pv1 et effectuez les modifications suivantes : #vnc=1#vncunused=1sdl=1 11. Utilisez un diteur de texte pour modifier /etc/inittab et ajoutez ceci au fichier : init
5.#id:3:initdefault:id:5:initdefault:

Exercice 1, squence 3 : installer les invits Xen paravirtualiss RHEL5 Beta 2 au moyen de virt-manager. Pour cet exercice, vous installez un invit paravirtualis Xen Red Hat Enterprise Linux 5 Beta 2 au moyen de virt-manager. 1. Pour installer votre invit paravirtualis Xen Red Hat Enterprise Linux 5 Beta 2, l'invite de commande, saisissez : virt-manager. Dans la fentre Ouvrir la connexion, slectionnez l'hte Xen local et cliquez sur Connecter. Dmarrez l'application Gestionnaire de machines virtuelles de Red Hat et partir du menu Fichier, cliquez sur Nouveau. Cliquez sur Continuer. Saisissez rhel5b2-pv2 pour le nom de votre systme et cliquez surContinuer. Slectionnez Paravirtualis et cliquez sur Continuer. Saisissez nfs:server:/path/to/rhel5b2 pour l'URL de votre mdia d'installation et cliquez sur Continuer. Slectionnez Fichier unique, saisissez /xen/rhel5b2-pv2.img pour l'emplacement de votre fichier. Choisissez 6000 Mo et cliquez sur Continuer. Choisissez 500 pour la mmoire de votre MV lors du dmarrage et la mmoire maximum, et cliquez sur Continuer.

2. 3.

4. 5. 6. 7.

8.

9.

10. Cliquez sur Arrter. La fentre Console de la machine virtuelle s'affiche. Effectuez les oprations comme prvu et terminez votre installation. Exercice 1, squence 4 : vrifier la prise en charge Intel-VT ou AMD-V Pour cet exercice, vous devez dterminer si votre systme prend en charge le matriel Intel-VT ou AMD-V. Votre systme doit prendre en charge les CPU Intel-VT ou AMD-V pour russir l'installation de systmes d'exploitation invits pleinement virtualiss. La Virtualisation Red Hat incorpore une couche gnrique HVM pour supporter ces vendeurs CPU.

99

1.

Pour dterminer si votre CPU prend en charge Intel-VT ou AMD-V, saisissez la commande suivante : egrep -e 'vmx|svm' /proc/cpuinfo La sortie suivante indique un CPU qui prend en charge Intel-VT :
.flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe constant_tsc pni monitor vmx est tm2 xtpr

2.

Si la commande ne retourne rien le CPU ne prend pas en charge Intel-VT ou AMD-V. 3. Pour dterminer si votre CPU prend en charge Intel-VT ou AMD-V, saisissez la commande suivante :
at /sys/hypervisor/properties/capabilities

4.

La sortie suivante indique que la prise en charge Intel-VT a t active dans le BIOS. Si la commande ne retourne rien, allez dans l'utilitaire de configuration du BIOS et cherchez un paramtre associ la 'Virtualisation', c'est--dire 'Intel(R) Virtualization Technology' dans la section 'CPU' sur un T60p IBM. Activez et sauvegardez le paramtrage et arrtez le systme pour que les changements prennent effet.
xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p

Exercice 1, squence 5 : installer l'invit pleinement virtualis Xen RHEL5 Beta 2 au moyen de virt-install. Pour cet exercice, vous installez un invit pleinement virtualis Xen Red Hat Enterprise Linux 5 Beta 2 au moyen de virt-install : 1. Pour installer votre invit Xen Red Hat Enterprise Linux 5 Beta 2, l'invite de commande, saisissez : virt-install. Quand on vous demande d'installer un invit pleinement virtualis, saisissez yes. Saisissez rhel5b2-pv2 pour un nom de machine virtuelle. Saisissez 500 pour l'allocation de la mmoire. Saisissez /xen/rhel5b2-fv1.img pour votre disque (image invit). Saisissez 6 pour la taille de votre disque (image invit). Saisissez yes pour activer la prise en charge graphique. Saisissez /dev/cdrom pour l'image du CD virtuel. La visionneuse VNC s'affiche dans la fentre d'installation. S'il y a un message d'erreur qui indique main: Unable to connect to host: Connection refused (111), saisissez la 100

2. 3. 4. 5. 6. 7. 8. 9.

commande suivante pour continuer : vncviewer localhost:5900. Le port VNC 5900 se rfre au premier invit Xen en cours d'excution sur VNC. S'il ne fonctionne pas, il vous faudra utiliser 5901, 5902, etc. L'installation commence. Compltez votre installation comme prvu. Exercice 1, squence 6 : installer l'invit pleinement virtualis Xen RHEL5 Beta 2 au moyen de virt-manager. Pour cet exercice, vous installez un invit pleinement virtualis Xen Red Hat Enterprise Linux 5 Beta 2 au moyen de virt-manager : 1. Pour installer votre invit paravirtualis Xen Red Hat Enterprise Linux 5 Beta 2, l'invite de commande, saisissez : virt-manager. Dans la fentre Ouvrir la connexion, slectionnez l'hte Xen local et cliquez sur Connecter. Dmarrez l'application Contrleur de machines virtuelles de Red Hat et partir du menu Fichier, cliquez sur Nouveau. Cliquez sur Continuer. Saisissez rhel5b2-fv2 pour votre nom de systme et cliquez sur Continuer. Slectionnez Pleinement virtualis et cliquez sur Continuer. Spcifiez CD-ROM ou DVD et entrez le chemin du mdia d'installation. Spcifiez l'emplacement de l'image ISO si vous installez partir d'une image ISO. Cliquez sur Continuer Slectionnez Fichier unique, saisissez /xen/rhel5b2-fv2.img pour l'emplacement de votre fichier. Spcifiez 6000 Mo et cliquez sur Continuer. Choisissez 500 pour la mmoire de votre MV lors du dmarrage et la mmoire maximum, et cliquez sur Continuer.

2.

3.

4. 5. 6. 7.

8.

9.

10. Cliquez sur Arrter. 11. La fentre Console de la machine virtuelle s'affiche. Effectuez les oprations comme prvu et compltez l'installation. Exercice 1, squence 7 : installer un invit pleinement virtualis Xen RHEL3 au moyen de virtmanager. Pour cet exercice, vous installez un invit Xen Red Hat Enterprise Linux 3 au moyen de virtmanager: 1. Les mmes instructions que pour la squence 6 sont applicables ici.

Exercice 1, squence 8 : installer un invit pleinement virtualis Xen RHEL4 au moyen de virtmanager

Pour cet exercice, vous installez un invit pleinement virtualis Xen Red Hat Enterprise Linux RHEL4 au moyen devirt-manager : 1. Les mmes instructions que pour la squence 6 sont applicables ici.

Exercice 1, squence 9 : installer un invit pleinement virtualis Xen Windows XP au moyen de virt-manager. Pour cet exercice, vous installez un invit pleinement virtualis Xen Windows XP au moyen de virt-manager : 1. Pour installer votre Red Hat Enterprise Linux 5 sur votre hte Windows XP, l'invite de commande, saisissez : virt-manager. Dans la fentre Ouvrir la connexion, slectionnez l'hte Xen local, et cliquez sur Connecter. Dmarrez l'application Gestionnaire de machines virtuelles de Red Hat et depuis le menu Fichier, cliquez sur Nouveau. Cliquez sur Continuer. Saisissez winxp pour votre nom de systme et cliquez sur Continuer. Slectionnez Pleinement virtualis et cliquez sur Continuer. Spcifiez CD-ROM ou DVD et entrez le chemin du mdia d'installation. Spcifiez l'emplacement de l'image ISO si vous installez partir d'une image ISO. Cliquez sur Continuer. Slectionnez Fichier unique, saisissez /xen/winxp.img pour l'emplacement de votre fichier. Spcifiez 6000 Mo et cliquez sur Continuer. Slectionnez 1024 pour la mmoire de votre MV lors du dmarrage et la mmoire maximum, et slectionnez 2 pour les VCPU. Cliquez sur Continuer.

2.

3.

4. 5. 6. 7.

8.

9.

10. Cliquez sur Arrter. 11. La fentre Console de la machine virtuelle s'affiche. Effectuez les oprations comme prvu et terminez votre installation. 12. Choisissez de formater la partition C:\ dans un format de systme de fichiers FAT. Red Hat Enterprise Linux 5 ne comporte pas de modules de noyau NTFS. Si vous formatez la partition dans un format de systme de fichiers NTFS, monter ou crire des fichiers dans l'image de l'invit Xen n'est pas aussi simple. 13. Aprs le redmarrage du systme pour la premire fois, ditez l'image de l'invit winxp :
losetup /dev/loop0 /xen/winxp.imgkpartx -av /dev/loop0mount /dev/mapper/loop0p1 / mntcp -prv $WINDOWS/i386 /mnt/.

Cela rsout un problme potentiel dans l'installation de

Windows. 14. Redmarrez l'invit Xen manuellement en saisissant : xm


create -c winxp/.

15. Dans la fentre du Gestionnaire de machines virtuelles, slectionnez l'invit Xen winxp et cliquez sur Ouvrir. 16. La console de la machine virtuelle s'affiche. Effectuez les oprations comme prvu et compltez l'installation. 17. Chaque fois qu'une bote de dialogue 'Fichiers ncessaires' apparat, changez le chemin GLOBALROOT\DEVICE\CDROM0\I386 C:\I386. Selon votre installation, vous verrez ou ne verrez pas ce problme. Il se peut que l'on vous demande des fichiers manquants durant l'installation. Changer le chemin C:\I386 devrait rsoudre ce problme. 18. Si la console de l'invit Xen se bloque, cliquez sur arrter et effectuez les modifications suivantes dans /etc/xen/winxp:#vnc=1#vncunused=1sdl=1#vcpus=2 19. Rptez l'tape 14 et effectuez votre installation comme prvu.

Annexe C. Exercice 2
Migration en direct (Live Migration) Objectif : configurer et effectuer une migration en direct entre deux htes. Prrequis : deux postes de travail installs avec Red Hat Enterprise Linux 5.0 Beta 2 avec la plateforme de Virtualisation et un invit Xen Fedora Core 6 sur un des deux postes de travail. Pour cet exercice, vous configurez la migration et excutez une migration en direct entre deux htes. Introduction : avant de commencer Pour cet exercice, il vous faudra deux htes de virtualisation : un invit Xen et un stockage partag. Vous devez connecter les deux htes de virtualisation via un cble UTP. Un des htes de virtualisation exporte un stockage partag via NFS. Vous devez configurer les deux htes de virtualisation afin qu'ils russissent la migration. L'invit Xen rside dans le stockage partag. Sur l'invit Xen, il vous faudra installer un serveur de flux. Vous devez vous assurer que le serveur de flux s'excute sans interruption sur l'invit Xen, ainsi la migration en direct a lieu entre un hte de virtualisation et l'autre. Pour l'exercice 2, vous dsignez les deux htes de virtualisation, comme host1 et host2. Squence 1 : configurer xend (les deux htes Xen) Dans cet exercice, vous configurez xend pour dmarrer en tant que serveur HTTP et serveur de dlocalisation. Le dmon xend n'initie pas le serveur HTTP par dfaut. Il dmarre le serveur de gestion de sockets de domaine UNIX (pour xm) et communique avec xend. Pour activer la migration en direct entre-machines vous devez le configurer de faon ce qu'il prenne en charge la migration en direct :

1.

Pour sauvegarder votre fichier xend-config.sxp :


cp -pr /etc/xen/xend-config.sxp /etc/xen/xend-config.sxp.default

2.

ditez /etc/xen/xend-config.sxp et effectuez les modifications suivantes :


#(xend-unix-server yes)(xend-relocation-server yes)(xend-relocation-port 8002)(xend-relocation-address '')(xend-relocation-hosts-allow '')#(xend-relocation-hosts-allow '^localhost$ ^localhost\\.localdomain$')

3.

Redmarrez xend:service et xend

restart.

Squence 2 : exporter un stockage partag via NFS 104

Dans cet exercice, vous configurez NFS et vous l'utilisez pour exporter un stockage partag.

1. 2.

ditez /etc/exports et ajoutez la ligne : /xen

*(rw,sync,no_root_squash)/

Enregistrez /etc/exports et redmarrez le serveur NFS. Assurez-vous que le serveur NFS dmarre par default:service nfs startchkconfig nfs on. Aprs avoir dmarr le serveur NFS sur host1 vous pouvez le monter sur host2:mount host1:/xen . Maintenant dmarrez l'invit Xen sur host1 et slectionnez fc6-pv1 (ou fc6-pv2 depuis l'exercice 1) :
xm create -c fc6-pv1

3.

4.

Squence 3 : installer le serveur de flux de l'invit Xen Pour cette tape, vous installez un serveur de flux, gnump3d, pour vos dmonstrations. Vous slectionnez gnump3d parce qu'il prend en charge les fichiers vorbis OGG et il est facile installer, configurer et modifier.

1.

Tlchargez le tarball gnump3d-2.9.9.9.tar.bz2 depuis http://www.gnump3d.org/. Dsempaquetez le tarball et dans le rpertoire gnump3d-2.9.9.9/, compilez et installez le
gnump3d application:tar xvjf gnump3d-2.9.9.9.tar.bz2cd gnump3d-2.9.9.9/make install

2.

Crez un rpertoire /home/mp3 et copiez TruthHappens.ogg depuis la page Truth Happens de Red Hat page.mkdir /home/mp3wget -c http://www.redhat.com/v/ogg/TruthHappens.ogg Dmarrez le serveur de flux en saisissant :
command:gnump3d

3.

4.

Sur l'un des deux htes Xen, excutez Movie Player. S'il n'est pas install, installez le totem et les rpms iso-codecs avant d'excuter Movie Player. Cliquez sur Applications, ensuite Son & Vido et enfin Movie Player. Cliquez sur Movie, ensuite Ouvrir l'emplacement. Entrez http://guest:8888/TruthHappens.ogg.

5.

Squence 4 : effectuer la migration en direct

1. 2.

Excutez le fichier TruthHappens.ogg sur l'un des deux htes Xen. Effectuez la migration en direct de host1 host2 :
xm migrate live fc6-pv1 host2

105

3.

Ouvrez des terminaux fentres multiples sur les deux htes Xen avec la commande suivante :
watch -n1 xm list

4.

Observez le commencement de la migration en direct. Notez la dure de la migration.

Squence challenge : configurer le serveur VNC partir de l'invit Xen Si vous avez le temps de le faire, configurez le serveur VNC partir de l'invit Xen, pour dfinir quand est-ce que gdm dmarre. Excutez la visionneuse VNC et connectez-la l'invit Xen. Effectuez quelques oprations sur l'invit Xen quand la migration en direct a lieu. Essayez de mettre en pause/reprendre et de sauvegarder/restaurer l'invit Xen et observez ce qui se passe avec la visionneuse VNC. Si vous vous connectez la visionneuse VNC via localhost:590x et que vous effectuez une migration en direct, vous ne serez pas en mesure de vous reconnecter la visionneuse VNC si elle s'interrompt. C'est un bogue connu.

106