Installer les drivers nVidia dans les VMs GPU NC (K80)

Il se peut, si vous souhaitez installer une VM GPU en suivant l’article ci-dessous,

/en-us/azure/virtual-machines/linux/n-series-driver-setup#install-cuda-drivers-for-nc-vms

que vous finissez par rencontrer l’erreur suivante :

« Unsupported kernel version »

clip_image001

On se retrouve donc dans la situation où la version du kernel n’est pas supportée par les drivers que l’on souhaite installer.

Dans cet article, je vais vous donner le pas à pas pour installer les drivers nVidia dans ce cas.


Revenir sur le bon Kernel

Après avoir déployé une machine NC via le portail Azure, faîtes une connexion ssh sur cette machine

Vérifiez la version du kernel avec la commande suivante :

uname -r

image

Ensuite exécutez la commande suivante pour vérifier les fichiers dans le répertoire boot :

ls -l /boot

image

On retrouve donc le fichier correspondant à la version du kernel retournée précédemment via la commande « uname -r ».

L’idée ici, est de changer le Kernel et d’utiliser celui listé en-dessous du kernel actuel. Dans notre cas c’est la version 3.10.0-514.e17.x86_64.

Pour ce faire, nous allons entrer la commande suivante. Le changement de Kernel se verra après le reboot :

sudo grub2-set-default 1

La commande suivante va lister les modules qui sont utilisé par le driver nvidia « nouveau »

lsmod | grep nouveau

image

L’idée maintenant est d’éviter le chargement de ce driver.

Création du fichier « nouveau.conf» avec vi

Dans le dossier /etc/modprobe.d, nous allons créer un fichier de configuration pour « blacklister » le driver.

Changement de répertoire

cd /etc/modprobe.d

Utilisation de l’éditeur de texte vi pour créer le fichier « nouveau.conf »

sudo vi nouveau.conf

clip_image009

Dans vi, utilisez la lettre « i » du clavier pour passer en mode insertion

Puis entrez les 2 lignes suivantes

blacklist nouveau

options nouveau modeset=0

image

Pour sauvegarder le fichier, appuyez sur la touche « ESC », sur « : » puis sur « w »

image

Pour vérifier le contenu du fichier, entrez la commande suivante :

Cat nouveau.conf

clip_image015

Redémarrez la machine avec la commande :

sudo reboot

Installation des drivers nvidia

Après le redémarrage de la machine, connectez-vous et exécutez la commande suivante pour vérifier que nous utilisons bien l’ancien Kernel

uname -r

clip_image016

Si on liste les modules sur le driver nouveau, on ne doit avoir aucune valeur en retour :

lsmod | grep nouveau

clip_image017

Maintenant que nous sommes dans l’ancien Kernel, on peut installer les versions des packages et driver nvidia correspondant à ce Kernel.

Récupération des packages :

wget ftp://fr2.rpmfind.net/linux/centos/7.3.1611/os/x86_64/Packages/kernel-headers-3.10.0-514.el7.x86_64.rpm

image

wget ftp://fr2.rpmfind.net/linux/centos/7.3.1611/os/x86_64/Packages/kernel-devel-3.10.0-514.el7.x86_64.rpm

image

Installation des 2 packages :

sudo rpm -ihv kernel-devel-3.10.0-514.el7.x86_64.rpm

clip_image023

sudo rpm -ihv kernel-headers-3.10.0-514.el7.x86_64.rpm

clip_image025

Une fois les packages installés, exécutez la commande suivante :

sudo rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

clip_image027

Ensuite exécutez la commande suivante et validez par « y » quand nécessaire

sudo yum install dkms

image

Installation du repository de nVidia

sudo rpm -ivh https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86\_64/cuda-repo-rhel7-8.0.61-1.x86\_64.rpm

clip_image031

Installation des drivers nVidia

Exécutez la commande suivante et validez par « y » quand nécessaire

sudo yum install cuda cuda-drivers

image

Vérification de l’installation des drivers

Afin de s’assurer de l’installation des drivers, exécutez la commande suivante :

cat /proc/driver/nvidia/version

image

Ensuite exécutez la commande suivante (la commande prend quelques secondes à s’exécuter) :

nvidia-smi

image

En espérant vous voir aux Microsoft experiences’17

Franck Mercier