Utiliser des GPU avec des machines virtuelles clusterisées
S’applique à : Azure Stack HCI, versions 23H2 et 22H2
Remarque
La méthode recommandée pour créer et gérer des machines virtuelles sur Azure Stack HCI 23H2 consiste à utiliser le plan de contrôle Azure Arc. Utilisez le mécanisme décrit ci-dessous pour gérer vos machines virtuelles uniquement si vous avez besoin d'une fonctionnalité qui n'est pas disponible dans les machines virtuelles Azure ARC.
Vous pouvez inclure des GPU dans vos clusters pour fournir une accélération GPU aux charges de travail s'exécutant dans des machines virtuelles en cluster. L’accélération GPU peut être assurée via Discrete Device Assignment (DDA), qui vous permet de dédier un ou plusieurs GPU physiques à une machine virtuelle, ou via partitionnement de GPU. Les machines virtuelles en cluster peuvent tirer parti de l’accélération GPU et des fonctionnalités de clustering telles que la haute disponibilité via le basculement. La migration en direct des machines virtuelles (VM) n'est actuellement pas prise en charge, mais les VM peuvent être automatiquement redémarrées et placées là où les ressources GPU sont disponibles en cas de défaillance.
Dans cet article, vous découvrirez comment utiliser des unités de traitement graphique (GPU) avec des VM en cluster pour fournir une accélération GPU aux charges de travail à l'aide de la technologie Discrete Device Assignment. Cet article vous guide dans la préparation du cluster, l'affectation d'un GPU à une machine virtuelle en cluster et le basculement de cette machine virtuelle à l'aide de Windows Admin Center et de PowerShell.
Prérequis
Il y a plusieurs exigences et éléments à prendre en compte avant de commencer à utiliser des GPU avec des machines virtuelles en cluster :
- Vous avez besoin d'un cluster Azure Stack HCI exécutant Azure Stack HCI, version 22H2 ou ultérieure.
- Vous avez besoin d'un cluster Windows Server Basculement exécutant Windows Server 2025 ou une version ultérieure.
Vous devez installer la même marque et le même modèle de GPU sur tous les serveurs de votre cluster.
Passez en revue et suivez les instructions de votre fabricant de GPU pour installer les pilotes et logiciels nécessaires sur chaque serveur du cluster.
En fonction de votre fournisseur de matériel, il se peut que vous deviez également configurer les exigences en matière de licences de GPU.
Vous avez besoin d'une machine sur laquelle Windows Admin Center est installé. Cette machine peut être l'un des nœuds de votre cluster.
Créez une machine virtuelle à laquelle vous attribuerez le GPU. Préparez cette machine virtuelle pour la DDA en définissant son comportement de cache, son action d'arrêt et ses propriétés d'E/S mappées en mémoire (MMIO) conformément aux instructions de la section Déployer des appareils graphiques à l'aide de Discrete Device Assignment.
Préparez les GPU dans chaque serveur en installant les pilotes d'atténuation de la sécurité sur chaque serveur, en désactivant les GPU et en les démontant de l'hôte. Pour en savoir plus sur ce processus, voir Déployer des appareils graphiques à l'aide de Discrete Device Assignment.
Suivez la procédure décrite dans Planifier le déploiement d’appareils à l’aide de la technologie Discrete Device Assignment pour préparer des appareils GPU dans le cluster.
Assurez-vous que votre appareil dispose d’un espace MMIO suffisant alloué au sein de la machine virtuelle. Pour plus d’informations, consultez Espace MMIO.
Créez une machine virtuelle à laquelle vous attribuerez le GPU. Préparez cette machine virtuelle pour la DDA en définissant son comportement de cache, son action d'arrêt et ses propriétés d'E/S mappées en mémoire (MMIO) conformément aux instructions de la section Déployer des appareils graphiques à l'aide de Discrete Device Assignment.
Préparez les GPU dans chaque serveur en installant les pilotes d'atténuation de la sécurité sur chaque serveur, en désactivant les GPU et en les démontant de l'hôte. Pour en savoir plus sur ce processus, voir Déployer des appareils graphiques à l'aide de Discrete Device Assignment.
Remarque
Votre système doit être pris en charge par la solution Azure Stack HCI avec prise en charge GPU. Pour parcourir les options, visitez le catalogue Azure Stack HCI.
Préparer le cluster
Lorsque les conditions préalables sont remplies, vous pouvez préparer le cluster à utiliser des GPU avec des machines virtuelles en cluster.
La préparation du cluster implique la création d'un pool de ressources contenant les GPU disponibles pour l'affectation aux machines virtuelles. Le cluster utilise ce pool pour déterminer l'emplacement des machines virtuelles pour toutes les machines virtuelles démarrées ou déplacées qui sont affectées au pool de ressources GPU.
À l'aide de Windows Admin Center, suivez les étapes suivantes pour préparer le cluster à utiliser des GPU avec des machines virtuelles en cluster.
Pour préparer le cluster et attribuer une machine virtuelle à un pool de ressources GPU :
Lancez Windows Admin Center et assurez-vous que l'extension des GPU est déjà installée.
Sélectionnez Gestionnaire de cluster dans le menu déroulant supérieur et connectez-vous à votre cluster.
Dans le menu Paramètres, sélectionnez Extensions>GPUs.
Dans le menu Outils, sous Extensions, sélectionnez GPU pour ouvrir l’outil.
Sur la page principale de l’outil, sélectionnez l’onglet Pools de GPU, puis Créer un pool de GPU.
Sur la page Nouveau pool de GPU, spécifiez les éléments suivants, puis sélectionnez Enregistrer :
- Nom du serveur
- Nom du pool de GPU
- GPU que vous souhaitez ajouter au pool
Au terme du processus, vous recevrez un message de succès indiquant le nom du nouveau pool de GPU et du serveur hôte.
Affecter une machine virtuelle à un pool de ressources GPU
Vous pouvez maintenant affecter une machine virtuelle à un pool de ressources GPU. Vous pouvez attribuer une ou plusieurs machines virtuelles à un pool de ressources GPU en cluster et supprimer une machine virtuelle d’un pool.
Suivez ces étapes pour affecter une machine virtuelle existante à un pool de ressources GPU à l'aide de Windows Admin Center.
Remarque
Vous devez également installer des pilotes proposés par le fabricant de votre GPU sur la machine virtuelle afin que les applications de la machine virtuelle puissent tirer parti de la GPU qui leur est attribuée.
Sur la page Attribuer une machine virtuelle à un pool de GPU, indiquez les éléments suivants, puis sélectionnez Attribuer :
- Nom du serveur
- Nom du pool de GPU
- Machine virtuelle à laquelle vous souhaitez attribuer le GPU à partir du pool de GPU.
Vous pouvez également définir des valeurs de paramètres avancés pour les espaces d'E/S mappées en mémoire (MMIO) afin de déterminer les besoins en ressources pour un seul GPU.
Au terme du processus, vous recevrez un message de confirmation indiquant que vous avez attribué avec succès le GPU du pool de ressources GPU à la machine virtuelle qui apparaît sous Machines virtuelles attribuées.
Pour annuler l’attribution d’une machine virtuelle à un pool de ressources GPU :
Sous l’onglet Pools de GPU, choisissez le GPU dont vous souhaitez annuler l’attribution, puis sélectionnez Annuler l’attribution d’une machine virtuelle.
Sur la page Annuler l’attribution d’une machine virtuelle au pool de GPU, accédez à la zone de liste Machines virtuelles, spécifiez le nom de la machine virtuelle, puis sélectionnez Annuler l’attribution.
Une fois le processus terminé, vous recevez une requête indiquant que la machine virtuelle a été désaffectée du pool de GPU et, sous Statut d'affectation, le GPU indique Disponible (non affecté).
Lorsque vous démarrez la VM, le cluster s'assure que la machine virtuelle est placée sur un serveur disposant de ressources GPU disponibles dans ce pool à l'échelle du cluster. Le cluster affecte également la GPU à la machine virtuelle via DDA, ce qui permet d’accéder à la GPU à partir de charges de travail sur la machine virtuelle.
Basculer une machine virtuelle avec une GPU affectée
Pour tester la capacité du cluster à conserver la charge de travail de votre GPU, effectuez une opération de drainage sur le serveur sur lequel la machine virtuelle est exécutée avec une GPU affectée. Pour drainer le serveur, suivez les instructions disponibles dans Procédures de maintenance du cluster de basculement. Le cluster redémarre la machine virtuelle sur un autre serveur du cluster, à condition qu'un autre serveur dispose de suffisamment de ressources GPU disponibles dans le pool que vous avez créé.
Pour tester la capacité du cluster à conserver la charge de travail de votre GPU, effectuez une opération de drainage sur le serveur sur lequel la machine virtuelle est exécutée avec une GPU affectée. Pour drainer le serveur, suivez les instructions disponibles dans Procédures de maintenance du cluster de basculement. Le cluster redémarre la machine virtuelle sur un autre serveur du cluster, à condition qu'un autre serveur dispose de suffisamment de ressources GPU disponibles dans le pool que vous avez créé.
Contenu connexe
Pour plus d'informations sur l'utilisation des GPU avec vos machines virtuelles en cluster, voir :
Pour plus d'informations sur l'utilisation des GPU avec vos machines virtuelles et le partitionnement GPU, consultez :