Rechercher

14.3. Gérer les périphériques attachés aux machines virtuelles à l'aide de la CLI

download PDF

Pour modifier les fonctionnalités de votre machine virtuelle (VM), vous pouvez gérer les périphériques connectés à votre VM à l'aide de l'interface de ligne de commande (CLI).

Vous pouvez utiliser le CLI pour

14.3.1. Attacher des périphériques aux machines virtuelles

Vous pouvez ajouter une fonctionnalité spécifique à vos machines virtuelles (VM) en attachant un nouveau dispositif virtuel.

La procédure suivante permet de créer et d'attacher des dispositifs virtuels à vos machines virtuelles (VM) à l'aide de l'interface de ligne de commande (CLI). Certains dispositifs peuvent également être attachés aux machines virtuelles à l'aide de la console Web RHEL.

Par exemple, vous pouvez augmenter la capacité de stockage d'une VM en lui attachant un nouveau disque virtuel. Cette opération est également appelée memory hot plug.

Avertissement

La suppression d'un périphérique de mémoire d'une VM, également connue sous le nom de memory hot unplug, n'est pas prise en charge dans RHEL 9, et Red Hat en déconseille fortement l'utilisation.

Conditions préalables

  • Obtenez les options requises pour le périphérique que vous avez l'intention d'attacher à une VM. Pour connaître les options disponibles pour un périphérique spécifique, utilisez la commande virt-xml --device=? pour afficher les options disponibles pour un périphérique spécifique. Par exemple :

    # virt-xml --network=?
    --network options:
    [...]
    address.unit
    boot_order
    clearxml
    driver_name
    [...]

Procédure

  1. Pour attacher un périphérique à une VM, utilisez la commande virt-xml --add-device, y compris la définition du périphérique et les options requises :

    • Par exemple, la commande suivante crée une image disque newdisk qcow2 de 20 Go dans le répertoire /var/lib/libvirt/images/ et l'attache en tant que disque virtuel à la VM testguest en cours d'exécution lors du prochain démarrage de la VM :

      # virt-xml testguest --add-device --disk /var/lib/libvirt/images/newdisk.qcow2,format=qcow2,size=20
      Domain 'testguest' defined successfully.
      Changes will take effect after the domain is fully powered off.
    • La procédure suivante permet d'attacher une clé USB, attachée en tant que périphérique 004 sur le bus 002 de l'hôte, à la VM testguest2 pendant qu'elle est en cours d'exécution :

      # virt-xml testguest2 --add-device --update --hostdev 002.004
      Device hotplug successful.
      Domain 'testguest2' defined successfully.

      La combinaison bus-dispositif pour définir l'USB peut être obtenue en utilisant la commande lsusb.

Vérification

Pour vérifier que l'appareil a été ajouté, effectuez l'une des opérations suivantes :

  • Utilisez la commande virsh dumpxml et vérifiez si la définition XML de l'appareil a été ajoutée à la section <devices> de la configuration XML de la VM.

    Par exemple, la sortie suivante montre la configuration de la VM testguest et confirme que le périphérique de disque flash USB 002.004 a été ajouté.

    # virsh dumpxml testguest
    [...]
    <hostdev mode='subsystem' type='usb' managed='yes'>
      <source>
        <vendor id='0x4146'/>
        <product id='0x902e'/>
        <address bus='2' device='4'/>
      </source>
      <alias name='hostdev0'/>
      <address type='usb' bus='0' port='3'/>
    </hostdev>
    [...]
  • Exécutez la VM et vérifiez que l'appareil est présent et fonctionne correctement.

Ressources supplémentaires

  • La commande man virt-xml

14.3.2. Modifier les périphériques attachés aux machines virtuelles

Vous pouvez modifier les fonctionnalités de vos machines virtuelles (VM) en modifiant la configuration des périphériques virtuels connectés. Par exemple, si vous souhaitez optimiser les performances de vos machines virtuelles, vous pouvez modifier leurs modèles de CPU virtuels afin qu'ils correspondent mieux aux CPU des hôtes.

La procédure suivante fournit des instructions générales pour la modification des périphériques virtuels à l'aide de l'interface de ligne de commande (CLI). Certains périphériques attachés à votre VM, tels que les disques et les cartes réseau, peuvent également être modifiés à l'aide de la console Web RHEL 9.

Conditions préalables

  • Obtenez les options requises pour le périphérique que vous avez l'intention d'attacher à une VM. Pour connaître les options disponibles pour un périphérique spécifique, utilisez la commande virt-xml --device=? pour afficher les options disponibles pour un périphérique spécifique. Par exemple :
# virt-xml --network=?
--network options:
[...]
address.unit
boot_order
clearxml
driver_name
[...]
  • Optional: Sauvegardez la configuration XML de votre VM en utilisant virsh dumpxml vm-name et en envoyant le résultat dans un fichier. Par exemple, la procédure suivante permet de sauvegarder la configuration de votre VM testguest1 dans le fichier testguest1.xml:
# virsh dumpxml testguest1 > testguest1.xml
# cat testguest1.xml
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>testguest1</name>
  <uuid>ede29304-fe0c-4ca4-abcd-d246481acd18</uuid>
  [...]
</domain>

Procédure

  1. Utilisez la commande virt-xml --edit, y compris la définition de l'appareil et les options requises :

    Par exemple, ce qui suit efface la configuration <cpu> de l'arrêt testguest VM et la met à host-model:

    # virt-xml testguest --edit --cpu host-model,clearxml=yes
    Domain 'testguest' defined successfully.

Vérification

Pour vérifier que l'appareil a été modifié, effectuez l'une des opérations suivantes :

  • Exécutez la VM et vérifiez si le dispositif est présent et reflète les modifications.
  • Utilisez la commande virsh dumpxml et vérifiez si la définition XML de l'appareil a été modifiée dans la configuration XML de la VM.

    Par exemple, la sortie suivante montre la configuration de la VM testguest et confirme que le mode CPU a été configuré comme host-model.

    # virsh dumpxml testguest
    [...]
    <cpu mode='host-model' check='partial'>
      <model fallback='allow'/>
    </cpu>
    [...]

Résolution de problèmes

  • Si la modification d'un périphérique rend votre VM non amorçable, utilisez l'utilitaire virsh define pour restaurer la configuration XML en rechargeant le fichier de configuration XML que vous avez sauvegardé précédemment.

    # virsh define testguest.xml
Note

Pour apporter de petites modifications à la configuration XML de votre VM, vous pouvez utiliser la commande virsh edit - par exemple virsh edit testguest. Cependant, n'utilisez pas cette méthode pour des modifications plus importantes, car elle est plus susceptible de casser la configuration d'une manière qui pourrait empêcher le démarrage de la VM.

Ressources supplémentaires

  • La commande man virt-xml

14.3.3. Suppression des périphériques des machines virtuelles

Vous pouvez modifier la fonctionnalité de vos machines virtuelles (VM) en supprimant un périphérique virtuel. Par exemple, vous pouvez supprimer un disque virtuel de l'une de vos machines virtuelles s'il n'est plus nécessaire.

La procédure suivante explique comment supprimer des périphériques virtuels de vos machines virtuelles (VM) à l'aide de l'interface de ligne de commande (CLI). Certains périphériques, tels que les disques ou les cartes d'interface réseau, peuvent également être supprimés des machines virtuelles à l'aide de la console Web RHEL 9.

Conditions préalables

  • Optional: Sauvegardez la configuration XML de votre VM en utilisant virsh dumpxml vm-name et en envoyant le résultat dans un fichier. Par exemple, la procédure suivante permet de sauvegarder la configuration de votre VM testguest1 dans le fichier testguest1.xml:
# virsh dumpxml testguest1 > testguest1.xml
# cat testguest1.xml
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>testguest1</name>
  <uuid>ede29304-fe0c-4ca4-abcd-d246481acd18</uuid>
  [...]
</domain>

Procédure

  1. Utilisez la commande virt-xml --remove-device, en incluant une définition de l'appareil. Par exemple :

    • La procédure suivante supprime le périphérique de stockage marqué comme vdb de la VM testguest en cours d'exécution après son arrêt :

      # virt-xml testguest --remove-device --disk target=vdb
      Domain 'testguest' defined successfully.
      Changes will take effect after the domain is fully powered off.
    • La procédure suivante supprime immédiatement un lecteur flash USB de la VM testguest2 en cours d'exécution :

      # virt-xml testguest2 --remove-device --update --hostdev type=usb
      Device hotunplug successful.
      Domain 'testguest2' defined successfully.

Résolution de problèmes

  • Si la suppression d'un périphérique rend votre VM non amorçable, utilisez l'utilitaire virsh define pour restaurer la configuration XML en rechargeant le fichier de configuration XML que vous avez sauvegardé précédemment.

    # virsh define testguest.xml

Ressources supplémentaires

  • La commande man virt-xml
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.