Comment effectuer un USB Passthrough dans Hyper-V
Ici, vous découvrirez :
- ce qu'est le passthrough USB Hyper-V
- ce dont vous avez besoin pour utiliser le passthrough USB Hyper-V
- quand DiskInternals peut vous aider avec la sauvegarde VMware
L'abstraction du matériel est l'un des aspects les plus importants de la virtualisation. Elle se concentre sur le processeur, le disque et la mémoire, car ils sont nécessaires à tous les systèmes d'exploitation et applications. Ces ressources sont partagées même sur des systèmes non virtualisés. D'autres composants matériels, qui ne sont pas partagés même entre applications indépendantes, rendent la virtualisation plus difficile. Les périphériques USB sont inclus dans cette dernière catégorie. À tout moment, les périphériques USB s'attendent à se connecter à un seul sous-système ou application. En conséquence, l'USB dans les systèmes virtualisés présente des défis uniques.
Qu'est-ce que le passthrough USB Hyper-V ?
La fonctionnalité de passthrough USB vous permet d'utiliser un périphérique USB depuis une machine virtuelle. Malheureusement, le passthrough USB n'est pas pris en charge nativement dans les environnements Hyper-V. Cependant, vous pouvez toujours utiliser les méthodes suivantes pour accomplir le passthrough USB Hyper-V :- Activer le mode de session améliorée.
- Démarrer une session RDP (Remote Desktop Protocol).
- Installer des solutions USB basées sur le réseau.
- Installer des solutions USB basées sur des logiciels.
Exigences pour le passthrough USB Hyper-V
En résumé, vous devez remplir les conditions suivantes pour fournir à la VM l'accès à une ressource locale :- La politique du mode de session améliorée doit être activée, ainsi que les paramètres du mode de session améliorée. Seules les VM de génération 2 prennent en charge le mode de session améliorée.
- Votre machine doit exécuter Windows Server 2016, Windows 10, Windows 8.1, Windows Server 2012 R2, Windows Server 2012 ou Windows 8 pour que la connexion à la machine virtuelle (VMConnect) fonctionne.
- Windows Server 2016, Windows Server 2012 R2, Windows 10 ou Windows 8.1 doit être installé sur la machine virtuelle à partir de laquelle nous souhaitons nous connecter à un lecteur USB.
- Sur la VM à laquelle vous souhaitez vous connecter, les services Bureau à distance doivent être activés.
Comment ajouter la prise en charge du passthrough Hyper-V pour les lecteurs USB
La plupart des lecteurs de disque USB peuvent être configurés en mode passthrough par Hyper-V, bien que cela se fasse via le sous-système de stockage de Windows. Étant donné qu'un seul composant peut se connecter à un périphérique USB, le sous-système de disque de Windows agit comme un intermédiaire pour tous les périphériques de stockage USB. En conséquence, pour que votre lecteur USB se connecte en mode passthrough, Windows doit le reconnaître comme un "périphérique de stockage de masse." Les autres périphériques de stockage USB ne sont pas compatibles.- Vérifiez que le disque est visible dans la gestion des disques. Déconnectez-le du réseau. Le disque ne peut pas être utilisé en mode passthrough si l'option Hors ligne n'est pas présente.
2.Cliquez sur le contrôleur virtuel où vous souhaitez ajouter votre disque en mode passthrough dans la fenêtre des propriétés de la machine virtuelle cible. À droite, assurez-vous que Disque dur est choisi, puis cliquez sur Ajouter. Vous ne pouvez pas ajouter un disque à un contrôleur IDE virtuel lorsque la machine virtuelle est en cours d'exécution, mais vous pouvez en ajouter un à un contrôleur SCSI virtuel, que la machine virtuelle soit en cours d'exécution ou non.
3.Pour attacher un disque, changez le point de sélection en Disque dur physique, puis choisissez le lecteur dans le menu déroulant. Cliquez sur le bouton OK.
Hyper-V ne peut pas utiliser les périphériques USB non disques en passthrough
J'ai vu beaucoup de préoccupations concernant Hyper-V qui ne peut pas transférer les périphériques USB. Le problème est généralement accompagné d'une mauvaise comparaison avec des applications qui peuvent faire du passthrough USB, telles que VMware Workstation et Oracle VirtualBox.La distinction à faire ici est qu'Hyper-V est un hyperviseur de type 1, tandis que les hyperviseurs de type 2 permettent un passthrough USB simple. Le système d'exploitation de gestion est installé directement sur le matériel dans un hyperviseur de type 2, et l'hyperviseur n'est qu'un autre programme qui s'exécute à l'intérieur. Les applications peuvent capturer un port USB uniquement pour empêcher d'autres applications de l'utiliser si elles le souhaitent, c'est pourquoi c'est si simple avec un hyperviseur de type 2.
Si vous avez déjà utilisé un hyperviseur de type 2 de cette manière, vous remarquerez qu'ils indiquent explicitement que le périphérique USB peut être attaché soit au parent, soit à l'invité - il n'y a pas de partage, de division de l'accès aux ressources ou quelque chose comme ça.
Les hyperviseurs de type 1 ne sont pas des applications. Ce sont des noyaux intégrés de manière sécurisée dans des partitions. Un hyperviseur de type 2 est simplement une couche d'application qui prétend être un périphérique matériel racine, ce qui est correct car il n'a pas besoin d'autant d'isolation qu'un hyperviseur de type 1.
Étant donné qu'une instance de système d'exploitation verrouillant un port USB de toutes les autres instances de système d'exploitation n'est pas la manière dont la virtualisation de type 1 fonctionne, Hyper-V ne peut pas le faire. Est-il possible pour un hyperviseur de type 1 d'allouer un port USB à un invité spécifique de la même manière qu'un hyperviseur de type 2 le fait ?
Cela semble être quelque chose qui pourrait être fait en principe. Cependant, la faisabilité technologique est sans importance. Ce n'est pas possible avec Hyper-V. Si vous voulez en savoir plus, Microsoft a rédigé un article détaillé sur le transfert de matériel sur la plateforme 2016, qui couvre certains des problèmes et des opportunités.
Hyper-V est une mauvaise solution si le passthrough USB est indispensable pour ce que vous avez en tête. Vous y êtes un peu obligé si vous utilisez les émulateurs dans Visual Studio. Pour le reste d'entre vous, je recommanderais de regarder un hyperviseur de type 2. VirtualBox est l'un de mes programmes préférés. Il est loin d'être parfait, mais les conditions de licence sont raisonnables pour la plupart des utilisateurs, et il fait le travail.
Hyper-V devrait-il avoir le passthrough USB ?
Alors que le monde progressait, cet article a eu le temps de mûrir. Mes premières idées sur le sujet étaient les suivantes :Hyper-V est avant tout une solution basée sur le serveur. Au-delà de cela, Microsoft adopte avec enthousiasme les principes du cloud, même au détriment de nombreuses autres technologies, à mon avis. Lorsque vous considérez un cloud basé sur la virtualisation, même un cloud sur site, il est facile de comprendre pourquoi l'USB basé sur l'hôte est un mauvais choix. Vous ne pouvez jamais être sûr qu'une machine virtuelle fonctionnera à un moment donné. Même l'absence de cluster ne lie plus une machine virtuelle à un hôte spécifique avec la migration en direct sans partage. Il n'a tout simplement pas de sens d'utiliser l'USB en tant qu'hôte.
Après réflexion, je maintiens cette position en termes de serveurs, de centres de données et d'informatique en nuage. Cependant, Client Hyper-V a été adopté par beaucoup plus d'utilisateurs au fil des ans. Dans Windows 10, les machines virtuelles ont beaucoup moins de problèmes de mobilité. De plus, il y a beaucoup plus de raisons convaincantes pour les clients Windows 10 de demander le passthrough USB. Cependant, comme le montre le débat sur la "méthode 3", Microsoft propose une méthode qui consiste à externaliser la connexion USB à son logiciel de console. Malheureusement, cela n'est que partiellement applicable.
Méthode 1 : Solutions USB basées sur le réseau
Privilégiez les options basées sur le réseau si vous devez rendre un périphérique USB disponible dans votre centre de données virtualisé. Utilisez un produit Digi. Ce n'est pas vraiment une recommandation car je n'ai utilisé qu'un de leurs appareils et je n'ai pas essayé leurs nouvelles technologies, mais ils sont toujours en affaires, donc ils doivent faire quelque chose de bien. Gardez à l'esprit que les hubs USB, et non les ports, ont une correspondance un à un avec les systèmes d'exploitation. Si vous souhaitez connecter de nombreux ordinateurs virtuels, n'achetez pas un seul appareil avec de nombreux ports.Méthode 2 : Protocole de bureau à distance (RDP)
Une fois qu'un système d'exploitation est installé sur un ordinateur virtuel, il fonctionne de manière similaire à une machine réelle. Ainsi, sous le panneau des propriétés du système, vous pouvez autoriser les connexions de bureau à distance :
Après cela, vous pouvez vous y connecter à distance comme pour toute autre machine Windows.Pour permettre l'utilisation des périphériques USB dans une session RDP, suivez ces étapes :
- Exécutez mstsc.exe dans une fenêtre d'exécution ou une invite de commande.
- Cliquez sur "Afficher les options" :
- 3. La boîte de dialogue s'agrandira, exposant un certain nombre d'onglets. Passez à l'onglet Ressources locales et cliquez sur le bouton Plus... :
- 4. Une autre boîte de dialogue apparaîtra. Les autres périphériques qu'il détecte apparaîtront ici, ainsi qu'une case à cocher pour les autres périphériques Plug and Play (PnP) pris en charge. Cochez les éléments nécessaires.
Ces paramètres seront conservés jusqu'à ce que vous les modifiiez après avoir cliqué sur OK et connecté à une connexion RDP sur n'importe quel hôte. Un utilitaire utile nommé "Remote Desktop Connection Manager" est également disponible. Il est un peu capricieux et peu fiable, mais la capacité de sauvegarder de nombreux paramètres de connexion uniques pour les hôtes distants dans un arbre hiérarchique compense les légers inconvénients.
Méthode 3 : Connectivité USB en mode session améliorée
La dernière approche est la plus fiable, mais elle présente également les plus grandes limitations. La version 2012 de Hyper-V a introduit le mode session améliorée, qui était intégré à Hyper-V Client de Windows 8.
De nombreuses technologies de session de RDP sont fusionnées dans le programme VMConnect.exe à l'aide de cette technologie. Si le nom de ce programme ne vous dit rien, Hyper-V Manager et Failover Cluster Manager le lanceront lorsque vous sélectionnerez Connecter dans la barre de menu.
Vous pouvez également l'exécuter à partir d'une invite de commande en tapant vmconnect.exe (l'élévation est généralement requise).
VMConnect est l'application console pour Hyper-V. Les ordinateurs virtuels Hyper-V, comme les systèmes réels dans un centre de données, peuvent fonctionner qu'une console soit attachée ou non. Les fonctions de clavier, de vidéo et de souris sont toutes fournies via des programmes de console d'hyperviseur. Les hyperviseurs de type 2 plus expérimentés ont tendance à avoir des consoles plus robustes. Comme le programme client de Hyper-V n'a pas eu autant de temps pour se développer que le client Remote Desktop, il utilise les capacités de ce dernier pour fournir le mode session améliorée.
Comment activer le mode session améliorée dans le passthrough USB Hyper-V
Le mode session améliorée est activé par défaut dans les déploiements Hyper-V client. Vous devez l'activer manuellement pour les versions serveur (SKUs). Ensuite, le service de gestion des machines virtuelles Hyper-V (vmms) doit être redémarré. PowerShell est la méthode la plus rapide :Ce cmdlet inclut le paramètre -ComputerName si vous l'exécutez à distance.powershellSet-VMHost -EnableEnhancedSessionMode $true
Si vous préférez utiliser Hyper-V Manager :
- Faites un clic droit sur l'hôte dans le volet de gauche. Cliquez sur Paramètres Hyper-V.
- Dans les onglets de gauche, cliquez sur Politique de mode session améliorée.
- Cochez la case pour Autoriser le mode session améliorée et cliquez sur OK.