Comment passer en mode pass-through les disques durs dans Proxmox VE avec 2 méthodes ?

Le passage direct du disque donne à la machine virtuelle un accès exclusif à un disque physique, ce qui offre plusieurs avantages, notamment une surcharge d'E/S réduite et une fonctionnalité matérielle native au sein de la machine virtuelle.

download-icon
Téléchargement gratuit
pour VM, OS, base de données, fichiers, NAS, etc.
eleonore

Updated by Eleonore on 2025/10/24

Table des matières
  • Qu'est-ce que le transfert direct de disque ?

  • Types de passage direct de disque

  • Cas d'utilisation courants

  • Méthode 1 : Mapper un disque dur unique en mode pass-through via commande

  • Méthode 2 : Ajouter un périphérique PCI, passer à travers un contrôleur SATA

  • La sauvegarde des machines virtuelles Proxmox est essentielle

  • Conclusion

Proxmox VE est une plateforme puissante et open source pour la virtualisation qui prend en charge à la fois les machines virtuelles basées sur KVM et les conteneurs Linux. L'une des fonctionnalités qui rend Proxmox particulièrement souple pour les utilisateurs avancés est le passage direct des disques, permettant un accès direct aux disques physiques depuis une machine virtuelle. Cette fonctionnalité est essentielle pour certains cas d'utilisation, comme l'exécution d'applications gourmandes en stockage, l'utilisation native de ZFS ou le transfert de contrôleurs RAID matériels vers des systèmes invités.

Qu'est-ce que le transfert direct de disque ?

Le transfert direct de disque est une technique qui permet à une machine virtuelle sous Proxmox d'accéder directement à un périphérique de stockage physique, en contournant la pile de stockage de l'hôte. Contrairement aux images de disque virtuel traditionnelles stockées sur le système de fichiers de l'hôte, le transfert direct de disque donne à la machine virtuelle un accès exclusif à un disque physique, offrant ainsi plusieurs avantages, notamment une réduction de la surcharge d'entrées/sorties et la possibilité d'utiliser les fonctionnalités natives du matériel au sein de la machine virtuelle.

Types de passage direct de disque

1. Passage direct de disque complet : Le disque physique entier est transmis à la machine virtuelle sans aucune couche intermédiaire. Cela donne à la machine virtuelle un contrôle total sur le disque, ce qui est utile pour ZFS, les configurations RAID ou lors de l'exécution d'applications de stockage spécialisées.

2. Accès direct à la partition : Au lieu de transférer l'intégralité du disque, vous pouvez transférer uniquement une partition spécifique à la machine virtuelle. Cela permet un contrôle plus précis si vous ne souhaitez pas consacrer tout le disque.

3. Passage du contrôleur matériel : Pour les configurations utilisant des cartes RAID matérielles ou des contrôleurs spécialisés, le passage de l'ensemble du contrôleur de stockage à la machine virtuelle garantit que celle-ci peut gérer nativement tous les disques connectés au contrôleur.

Cas d'utilisation courants

ZFS dans une machine virtuelle : ZFS est un système de fichiers populaire qui inclut des fonctionnalités telles que les instantanés et des fonctions similaires à RAID. Le transfert de disques physiques vers la machine virtuelle permet à ZFS de contrôler directement les disques, offrant de meilleures performances et activant des fonctionnalités avancées telles que les vérifications d'intégrité des données.

VMs connectées au stockage : Pour des systèmes tels que le NAS, les cibles iSCSI ou d'autres applications intensives en disque, le passage direct du disque garantit une minimisation des goulots d'étranglement de performance généralement causés par les couches de virtualisation.

RAID matériel : Si votre serveur utilise des contrôleurs RAID matériels, leur passage direct garantit que votre machine virtuelle a un accès complet aux configurations RAID sans dépendre de l'émulation logicielle.

Il existe deux façons de passer les disques durs dans Proxmox VE :

Méthode 1 : Mapper un disque dur en passage direct via commande ;

Méthode 2 : Ajouter un périphérique PCI, passer un contrôleur SATA en mode pass-through.

Méthode 1 : Mapper un disque dur unique en mode pass-through via commande  

Accédez au SSH du système Proxmox VE ou entrez directement dans le shell web de gestion PVE.

1. Vérifier l'ID du disque

ls -l /dev/disk/by-id/

Remarque : « ata », « mmc », etc., indiquent la méthode d'interface. Les types courants incluent ATA, SATA, SCSI, NVME, eMMC et SASI. Les interfaces IDE et SATA sont généralement étiquetées comme « ata », tandis que les interfaces SCSI et SAS sont étiquetées comme « scsi ».

2. Importer la machine virtuelle

qm set <vm_id> –<disk_type>[n] /dev/disk/by-id/<type>-$brand-$model_$serial_number

<disk_type>[n]: Le type de bus et son numéro pour le disque importé. Les types de bus peuvent être IDE, SATA, VirtIO Block ou SCSI, la numérotation commençant à 0. La valeur maximale dépend du type d'interface de bus : IDE est 3, SATA est 5, VirtIO Block est 15 et SCSI est 13.

/dev/disk/by-id/-brand-brand−model_$serial_number : Le chemin et le nom spécifiques de l'identifiant du disque.

Par exemple, avec les données du disque « ata-ST4000VX000-2AG166_ZGY163KG », ce disque sera transmis à la machine virtuelle ayant l'ID 102, et l'interface du type de bus est sata2 (veuillez régler le numéro de bus selon la machine virtuelle PVE).

qm set 102 -sata2 /dev/disk/by-id/ata-ST4000VX000-2AG166_ZGY163KG

Les informations de retour s'afficheront :

update VM 102: -sata2 /dev/disk/by-id/ata-ST4000VX000-2AG166_ZGY163KG

Ceci indique que le passage a réussi.

Méthode 2 : Ajouter un périphérique PCI, passer à travers un contrôleur SATA  

Lors du passage à travers d'un contrôleur SATA dans Proxmox VE, tout le bus SATA est transféré, ce qui signifie que le bus SATA connecté au pont sud ou au pont nord est directement passé en transit. Sur certaines cartes mères, cela entraîne le transfert de toutes les interfaces SATA.

Remarque : Si votre système PVE est installé sur un disque dur SATA, cela peut entraîner l'impossibilité de démarrage du système PVE. Par conséquent, avant de passer par le contrôleur SATA, vérifiez l'emplacement d'installation du système PVE ou installez directement le système sur un disque NVMe.

Avant de commencer, assurez-vous que la fonction de passage matériel IOMMU est activée, puis procédez à l'ajout du contrôleur SATA.

1. Confirmez si le processeur de votre carte mère prend en charge Vt-d

Si ce n'est pas le cas, vous ne pouvez pas effectuer le passage direct. Intel exige au moins le chipset B75 pour prendre en charge cette fonctionnalité. Autrement dit, les processeurs Intel Core à partir de la 4e génération et supérieurs prennent en charge cette fonction. VT-d est destiné à la virtualisation des entrées/sorties, pas à VT-x.

De nombreux débutants pensent à tort que l'activation de la virtualisation sur la carte mère suffit pour le passage direct, mais ce n'est pas le cas. VT-D doit être activé pour la virtualisation des entrées/sorties. Sur la plateforme AMD, on l'appelle IOMMU, et sur certaines cartes mères OEM, il est appelé SRIOV. Veuillez en prendre note.

2. Activer l'IOMMU

Modifiez le fichier grub. Ne le modifiez pas aveuglément. Configurez-le selon votre environnement.

vi /etc/default/grub

Trouvez cette ligne :

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

Si vous utilisez un processeur Intel, modifiez-le comme suit :

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt"

Si vous utilisez un processeur AMD, modifiez-le comme suit :

GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt"

Si le passage GPU est requis, il est recommandé d'ajouter une ligne supplémentaire :

video=vesafb:off video=efifb:off video=simplefb:off

Après avoir ajouté cette ligne, PVE redémarrera et s'arrêtera sur un écran après l'entrée dans le noyau.

GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on iommu=pt video=vesafb:off video=efifb:off video=simplefb:off"

Après la modification, mettez à jour grub directement :

update-grub

Remarque : Si cette méthode ne permet pas d'activer l'IOMMU, modifiez le fichier « /etc/kernel/cmdline » et utilisez « proxmox-boot-tool refresh » pour mettre à jour les options de démarrage.

3. Charger les modules du noyau nécessaires

echo vfio >> /etc/modules
echo vfio_iommu_type1 >> /etc/modules
echo vfio_pci >> /etc/modules
echo vfio_virqfd >> /etc/modules

Mettre à jour les paramètres du noyau

update-initramfs -k all -u

Redémarrer l'hôte

reboot

4. Vérifiez si l'IOMMU est activé

Après le redémarrage, saisissez la commande suivante dans le terminal :

dmesg | grep iommu

Si le résultat suivant apparaît, cela indique que l'opération a réussi :

[ 1.341100] pci 0000:00:00.0: Adding to iommu group 0
[ 1.341116] pci 0000:00:01.0: Adding to iommu group 1
[ 1.341126] pci 0000:00:02.0: Adding to iommu group 2
[ 1.341137] pci 0000:00:14.0: Adding to iommu group 3
[ 1.341146] pci 0000:00:17.0: Adding to iommu group 4

À ce stade, saisissez :

find /sys/kernel/iommu_groups/ -type l

Si de nombreux groupes passants apparaissent, cela indique une réussite. Si rien n'apparaît, alors l'IOMMU n'est pas activé.

Sélectionnez le système PVE requis, cliquez sur « Hardware » > « Add » > « PCI Device », choisissez ensuite « SATA Controller », puis cliquez enfin sur « Add » pour attribuer le contrôleur SATA au système correspondant. Après le redémarrage, les paramètres de passage direct du matériel PVE seront appliqués.

La sauvegarde des machines virtuelles Proxmox est essentielle

Vinchin Backup & Recovery est une solution robuste de protection des données des machines virtuelles conçue pour les environnements multi-plateformes, avec un support complet des plateformes de virtualisation populaires telles que Proxmox. Ses fonctionnalités principales incluent les sauvegardes automatisées, la déduplication et les technologies de compression, aidant ainsi les utilisateurs à économiser une quantité significative d'espace de stockage. En outre, elle prend en charge la migration de données entre plates-formes ainsi que des fonctions avancées telles que la récupération instantanée et la récupération granulaire au niveau des fichiers, augmentant considérablement la vitesse et l'efficacité de restauration. Dans un environnement Proxmox, Vinchin Backup & Recovery garantit la sécurité et la fiabilité des données grâce à un chiffrement efficace des sauvegardes et à une protection renforcée, ce qui en fait une solution indispensable pour les environnements de machines virtuelles.

Il vous suffit de 4 étapes pour sauvegarder les machines virtuelles Proxmox VE avec Vinchin Backup & Recovery :

1. Sélectionnez l'objet de sauvegarde.

Sauvegarder les machines virtuelles Proxmox VE

2. Sélectionnez la destination de la sauvegarde.

Sauvegarder les machines virtuelles Proxmox VE

3. Configurez les stratégies de sauvegarde.

Sauvegarder les machines virtuelles Proxmox VE

4. Examiner et soumettre le poste.

Sauvegarder les machines virtuelles Proxmox VE

Cliquez sur le bouton ci-dessous pour télécharger un essai gratuit de 60 jours et découvrir vous-même des fonctionnalités encore plus avancées !

Conclusion

Le passage de disque Proxmox est une fonctionnalité inestimable dans les scénarios où l'accès natif au disque est requis par la machine virtuelle. Que vous exécutiez des applications gourmandes en stockage, que vous gériez des pools ZFS ou que vous configuriez du RAID matériel, l'accès direct aux disques physiques peut grandement améliorer les performances et les fonctionnalités.

Partager sur :

Categories: VM Tips