No edit summary |
No edit summary |
||
Line 100: | Line 100: | ||
Reportez-vous à la page[http://wiki.libvirt.org/page/Networking configuration de libvirt pour le réseau] pour plus d'information sur la manière de configurer un réseau ponté. | |||
=== | === Création d'un invité Fedora === | ||
L'installation d'un invité Fedora à l'aide d'Anaconda est pris en charge. L'installation peut être démarrée en ligne de commande via le programme <code>virt-install</code> ou graphiquement via <code>virt-manager</code>. | |||
==== | ==== Création d'un invité avec virt-install ==== | ||
<code>virt-install</code> | L'outil <code>virt-install</code> est un outil en ligne de commande pour créer des systèmes virtualisés. Reportez-vous à http://virt-tools.org/learning/install-with-command-line/ pour connaître comment utiliser cet outil. Exécutez <code>virt-install --help</code> pour obtenir de l'aide. | ||
<code>virt-install</code> | L'outil <code>virt-install</code> peut utiliser des fichiers Kickstart, par exemple : | ||
<pre>virt-install -x ks=kickstart-file-name.ks</pre>. | |||
==== | Si l'option ''graphics'' est validée, une fenêtre VNC s'ouvre et présente l'installateur graphique. Si l'option ''graphics'' n'est pas validée, un installateur textuel apparaît. Vous pouvez commencer l'installation. | ||
==== Création d'un invité avec virt-manager ==== | |||
Démarrez le gestionnaire graphique de machines virtuels en le sélectionnant depuis le menu ''Applications'' ⇒ ''Gestionnaire de machines virtuelles'' ou en tapant la commande suivante dans un terminal : | |||
<pre> | <pre> | ||
su -c "virt-manager" | su -c "virt-manager" | ||
</pre> | </pre> | ||
Si vous rencontrez une erreur parmi les lignes de sortie du type « Échec lors de la tentative de connexion au serveur », quelques raisons possibles sont que vous devez activer la mise en réseau TCP/ID pour ''ORBit'', ou que vous avez des verrous NFS résiduels à cause d'un plantage du système lors d'une tentative d'exécution de <code>virt-manager</code> en tant qu'utilisateur ordinaire (non administrateur) c.-à-d. sans <code>su -c</code>). L'interface graphique vous invite à donner le mot de passe d'administration. | |||
# | # Ouvrez une connexion à un hyperviseur en choisissant ''Fichier'' ⇒ ''Ajouter une connexion'' | ||
# | # Choisissez ''qemu'' pour KVM, ou ''Xen'' pour ''Xen'' | ||
# | # Choisissez ''local'' ou sélectionnez une méthode de connexion à un hyperviseur distant | ||
# | # Après que la connexion est ouverte, cliquez sur la nouvelle icône à côté de l'hyperviseur, ou cliquez avec le bouton de droite sur l'hyperviseur actif et choisissez ''Nouveau'' (Note: la nouvelle icône sera améliorée pour être plus visible) | ||
# | # Un assistant présente les mêmes questions que celles qui sont présentées par l'outil en ligne de commande <code>virt-install</code> (voir ci-dessus). L'assistant suppose qu'une installation graphique est désirée et ne vous invite pas à préciser cette option. | ||
# | # Sur la dernière page de l'assistant, en cliquant sur le bouton ''Terminer'', la machine virtuelle est créée et vous pouvez commencer l'installation du système invité comme s'il s'agissait d'une installation normale. | ||
=== Remote management === | === Remote management === |
Revision as of 04:57, 23 April 2016
Premiers pas avec la virtualisation
Cette page traite de l'utilisation de Fedora pour héberger des systèmes invités (dits virtualisés). Pour des informations sur les technologies de virtualisation dans Fedora, reportez-vous à cette page dédiée.
Utilisation de la virtualisation dans Fedora
Fedora utilise la famille d'outils libvirt comme solution de virtualisation. Par défaut, libvirt utilise Qemu pour exécuter les instances de système invité dans Fedora.
Pour des informations sur d'autres plateforme de virtualisation, reportez-vous à http://virt.kernelnewbies.org/TechComparison.
Qemu peut émuler une machine hôte en logiciel, ou, pour un processeur donné pris en charge (voir plus bas), peut utiliser KVM pour fournir une virtualisation rapide et totale.
D'autres produits et paquets de virtualisation sont disponibles mais ne sont pas couverts par ce guide.
Installation et configuration de Fedora pour les systèmes invités virtualisés
Cette section traite de la configuration de libvirt sur votre système. Une fois cette section appliquée avec succès, vous pourrez créer des systèmes d'exploitation invités virtualisés.
Prérequis système
Les prérequis courants pour la virtualisation sur Fedora sont :
- Au moins 600 Mio d'espace disque par invité. Un système minimal en ligne de commande requiert 600 Mio d'espace disque. Les stations de travail standard de Fedora requièrent au moins 3 Gio d'espace.
- Au moins 256 MB de mémoire vive par invité, plus 256 Mio pour le système de base. Au moins 756 Mio sont recommandés pour chaque système invité d'un système d'exploitation moderne. Une bonne règle de base est de se renseigner sur la quantité de mémoire requise par le système opérant normalement et de prendre cette valeur pour l'invité virtualisé.
KVM nécessite un processeur doté d'extensions de virtualisation. On les trouve sur la plupart des processeurs grand public récents. Ces extensions sont appelées Intel VT ou AMD-V. Pour savoir si votre processeur en dispose, exécutez la commande suivante :
$ egrep '^flags.*(vmx|svm)' /proc/cpuinfo
Si la commande ne retourne rien, votre système ne dispose pas des extensions nécessaires. Vous pouvez quand même utiliser QEMU/KVM, mais l'émulateur va adopter une solution de repli : la virtualisation logicielle. Cette dernière est vraiment bien moins rapide.
Installation des paquets nécessaires à la virtualisation
Lorsque vous installez Fedora, les paquets nécessaires à la virtualisation peuvent être installés en sélectionnant Virtualisation dans le groupe Base de l'installateur(cela peut néanmoins [http://docs.fedoraproject.org/en-US/Fedora/13/html/Installation_Guide/s1-pkgselection-x86.html ne pus s'appliquer à votre méthode d'installation).
Pour des systèmes Fedora déjà installés, QEMU, KVM, et d'autres outils de virtualisation, peuvent être installés en exécutant la commande suivante qui installe le groupe virtualisation :
de Fedora 22 à la version actuelle :
Pour Fedora 21 ou pour des installations antérieures, remplace dnf par yum. Le paquet yum est aujourd'hui obsolète et est remplacé par dnf en tant que gestionnaire de paquets depuis Fedora 22.
su -c "dnf install @virtualization"
Cela installe les paquets obligatoires et les paquets par défaut.
$ dnf groupinfo virtualization Vérification de l'expiration des métadonnées effectuée il y a 0:00:56 sur Fri Apr 22 19:38:03 2016. Groupe : Virtualisation Description : Ces paquets offrent un environnement de virtualisation graphique. Paquets obligatoires : virt-install Paquets par défaut : libvirt-daemon-config-network libvirt-daemon-kvm qemu-kvm virt-manager virt-viewer Paquets optionnels : guestfs-browser libguestfs-tools python-libguestfs virt-top
Cela installe les paquets obligatoires, les paquets par défaut et les paquets facultatifs :
su -c "dnf group install with-optional virtualization"
Pour démarrer le service :
su -c "systemctl start libvirtd"
Pour lancer le service au démarrage du système :
su -c "systemctl enable libvirtd"
Vérifiez que les modules kvm du noyau ont été chargés correctement :
$ lsmod | grep kvm kvm_amd 55563 0 kvm 419458 1 kvm_amd
Si cette commande ne liste pas kvm_intel ou kvm_amd, kvm n'est pas configuré correctement. Voyez s'assurer que le système est compatible kvm pour des conseils sur la résolution des problèmes.
Prise en charge du réseau
Par défaut, libvirt crée un réseau privé pour vos invités sur la machine hôte. Ce réseau privé utilise un sous-réseau 192.168.x.x qui n'est pas directement accessible depuis le réseau sur lequel se trouve la machine hôte. Néanmoins, les invités peuvent utiliser la machine hôte comme une passerelle pour se connecter au réseau extérieur. Si vous avez besoin de fournir des services à partir de vos invités qui seront accessibles par les machines du réseau auquel appartient votre machine hôte, vous pouvez utilisel des règles DNAT dans des iptables pour rediriger sur des ports spécifiques, ou vous pouvez configurer un environnement ponté.
Reportez-vous à la pageconfiguration de libvirt pour le réseau pour plus d'information sur la manière de configurer un réseau ponté.
Création d'un invité Fedora
L'installation d'un invité Fedora à l'aide d'Anaconda est pris en charge. L'installation peut être démarrée en ligne de commande via le programme virt-install
ou graphiquement via virt-manager
.
Création d'un invité avec virt-install
L'outil virt-install
est un outil en ligne de commande pour créer des systèmes virtualisés. Reportez-vous à http://virt-tools.org/learning/install-with-command-line/ pour connaître comment utiliser cet outil. Exécutez virt-install --help
pour obtenir de l'aide.
L'outil virt-install
peut utiliser des fichiers Kickstart, par exemple :
virt-install -x ks=kickstart-file-name.ks
.
Si l'option graphics est validée, une fenêtre VNC s'ouvre et présente l'installateur graphique. Si l'option graphics n'est pas validée, un installateur textuel apparaît. Vous pouvez commencer l'installation.
Création d'un invité avec virt-manager
Démarrez le gestionnaire graphique de machines virtuels en le sélectionnant depuis le menu Applications ⇒ Gestionnaire de machines virtuelles ou en tapant la commande suivante dans un terminal :
su -c "virt-manager"
Si vous rencontrez une erreur parmi les lignes de sortie du type « Échec lors de la tentative de connexion au serveur », quelques raisons possibles sont que vous devez activer la mise en réseau TCP/ID pour ORBit, ou que vous avez des verrous NFS résiduels à cause d'un plantage du système lors d'une tentative d'exécution de virt-manager
en tant qu'utilisateur ordinaire (non administrateur) c.-à-d. sans su -c
). L'interface graphique vous invite à donner le mot de passe d'administration.
- Ouvrez une connexion à un hyperviseur en choisissant Fichier ⇒ Ajouter une connexion
- Choisissez qemu pour KVM, ou Xen pour Xen
- Choisissez local ou sélectionnez une méthode de connexion à un hyperviseur distant
- Après que la connexion est ouverte, cliquez sur la nouvelle icône à côté de l'hyperviseur, ou cliquez avec le bouton de droite sur l'hyperviseur actif et choisissez Nouveau (Note: la nouvelle icône sera améliorée pour être plus visible)
- Un assistant présente les mêmes questions que celles qui sont présentées par l'outil en ligne de commande
virt-install
(voir ci-dessus). L'assistant suppose qu'une installation graphique est désirée et ne vous invite pas à préciser cette option. - Sur la dernière page de l'assistant, en cliquant sur le bouton Terminer, la machine virtuelle est créée et vous pouvez commencer l'installation du système invité comme s'il s'agissait d'une installation normale.
Remote management
The following remote management options are available:
- (easiest) If using non-root users via SSH, then setup instructions are at: http://wiki.libvirt.org/page/SSHSetup
- If using root for access via SSH, then create SSH keys for root, and use
ssh-agent
andssh-add
before launchingvirt-manager
. - To use TLS, set up a local certificate authority and issue x509 certs to all servers and clients. For information on configuring this option, refer to http://wiki.libvirt.org/page/TLSSetup.
Guest system administration
When the installation of the guest operating system is complete, it can be managed using the GUI virt-manager
program or on the command line using virsh
.
Managing guests with virt-manager
Start the Virtual Machine Manager. Virtual Machine Manager is in the "Applications-->System Tools" menu, or execute:
su -c "virt-manager"
{1} If you are not root, you will be prompted to enter the root password. ChooseRun unprivileged
to operate in a read-only non-root mode.
- Choose the host you wish to manage and click "Connect" in the "Open Connection" dialog window.
- The list of virtual machines is displayed in the main window. Guests that are running will display a ">" icon. Guests that are not running will be greyed out.
- To manage a particular guest, double click on it, or right click and select "Open".
- A new window for the guest will open that will allow you to use its console, see information about its virtual hardware and start/stop/pause it.
For further information about virt-manager
consult the project website
Bugs in the virt-manager
tool should be reported in BugZilla against the 'virt-manager' component
Managing guests with virsh
The virsh
command line utility that allows you to manage virtual machines.
Guests can be managed on the command line with the virsh
utility. The virsh
utility is built around the libvirt management APIl:
virsh
has a stable set of commands whose syntax and semantics are preserved across updates to the underlying virtualization platform.virsh
can be used as an unprivileged user for read-only operations (e.g. listing domains, listing domain statistics).virsh
can manage domains running under Xen, Qemu/KVM, esx or other backends with no perceptible difference to the user
To start a virtual machine:
su -c "virsh create <name of virtual machine>"
To list the virtual machines currently running:
su -c "virsh list"
To list all virtual machines, running or not:
su -c "virsh list --all"
To gracefully power off a guest:
su -c "virsh shutdown <virtual machine (name | id | uuid)>"
To non gracefully power off a guest:
su -c "virsh destroy <virtual machine (name | id | uuid)>"
To save a snapshot of the machine to a file:
su -c "virsh save <virtual machine (name | id | uuid)> <filename>"
To restore a previously saved snapshot:
su -c "virsh restore <filename>"
To export the configuration file of a virtual machine:
su -c "virsh dumpxml <virtual machine (name | id | uuid)"
For a complete list of commands available for use with virsh
:
su -c "virsh help"
Or consult the manual page: man 1 virsh
Bugs in the virsh
tool should be reported in BugZilla against the 'libvirt' component.
Other virtualization options
QEMU/KVM without Libvirt
QEMU/KVM can be invoked directly without libvirt, however you won't be able to use tools such as virt-manager, virt-install, or virsh. Plain QEMU (without KVM) can also virtualize other processor architectures like ARM or PowerPC. See How to use qemu
Xen
Fedora can run as a Xen Guest OS and also be used as a Xen host (with the latter being true from Fedora 16; for using an earlier version of Fedora as a Xen Host, check out the experimental repo available at http://myoung.fedorapeople.org/dom0). For a guide on how to install and setup a Fedora Xen host, look at the Fedora Host Installation page on the Xen Project wiki.
OpenStack
OpenStack consists of a number services for running IaaS clouds. They are the Object Store (Swift), Compute (Nova) and Image (Glance) services. It is a Fedora 16 feature.
OpenNebula
OpenNebula is an Open Source Toolkit for Data Center Virtualization.
oVirt
The oVirt project is an open virtualization project providing a feature-rich, end to end, server virtualization management system with advanced capabilities for hosts and guests, including high availability, live migration, storage management, system scheduler, and more.
Troubleshooting, bug reporting, and known issues
For a list of known unresolved issues, as well as troubleshooting tips, please see How to debug virtualization problems