Vous êtes actuellement hors ligne, en attente de reconnexion à Internet.

Impossible d'utiliser kdump ou kexec pour les machines virtuelles de Linux sur Hyper-V

IMPORTANT : Cet article est issu d'une traduction automatique réalisée par un logiciel Microsoft et non par un traducteur professionnel. Cette traduction automatique a pu aussi être révisée par la communauté Microsoft grâce à la technologie Community Translation Framework (CTF). Pour en savoir plus sur cette technologie, veuillez consulter la page http://support.microsoft.com/gp/machine-translation-corrections/fr. Microsoft vous propose en effet des articles traduits par des professionnels, des articles issus de traductions automatiques et des articles issus de traductions automatiques révisées par la communauté Microsoft, de manière à ce que vous ayez accès à tous les articles de notre Base de connaissances dans votre langue. Il est important de noter que les articles issus de la traduction automatique, y compris ceux révisés par la communauté Microsoft, peuvent contenir des erreurs de vocabulaire, de syntaxe ou de grammaire. Microsoft ne pourra être tenu responsable des imprécisions, erreurs, ainsi que de tout dommage résultant d’une traduction incorrecte du contenu ou de son utilisation par les clients.

La version anglaise de cet article est la suivante: 2858695
Symptômes
Versions antérieures à Windows Server 2012 R2
Considérez le scénario suivant :
  • Vous avez un ordinateur antérieur à Windows Server 2012 R2 avec le rôle Hyper-V est installé.
  • Vous installez Linux sur une machine virtuelle de Hyper-V sur l'ordinateur.
  • Vous configurez kdump sur la VM Linux.

    Remarque Le VM Linux possède déjà les pilotes Linux Integration Services. Les pilotes peuvent être prédéfinies ou installés manuellement.
Dans ce scénario, si la machine virtuelle Linux se bloque, le fichier de vidage du noyau Linux n'est pas généré comme prévu.
Windows Server 2012 R2
Considérez le scénario suivant :
  • Vous avez VM de Linux sur un hôte Windows Server 2012 R2 Hyper-V.
  • vCPUs 15 ou plus sont joints à la VM Linux.
  • Vous configurez kdump dans la VM Linux.
Dans ce scénario, kdump ne fonctionne pas, et le vidage sur incident n'est pas créé, car le processus cesse de répondre (se bloque).
Cause
Ce problème se produit parce que Hyper-V ne peut pas héberger deux connexions simultanées à partir du même pilote synthétique qui s'exécute à l'intérieur d'une machine virtuelle.

Lorsque kdump est configuré sur une machine virtuelle Linux qui utilise le pilote de stockage SYNTHETIQUE de Linux Integration Services (également connu sous le nom storvsc), le noyau kexec est configuré pour utiliser le même pilote. Si la machine virtuelle Linux se bloque, le pilote de stockage synthétiques qui est hébergé dans le noyau kexec essaie d'ouvrir une connexion avec le fournisseur de stockage de Hyper-V. Toutefois, les Hyper-V ne parvient pas à établir la nouvelle connexion en raison de la connexion existante sur le même pilote de stockage de la machine virtuelle Linux en panne. Par conséquent, le noyau kexec ne peuvent pas vider le cœur de la machine virtuelle Linux en panne.
Résolution
Pour résoudre ce problème, configurez le noyau kexec en utilisant le pilote de stockage Linux standard. Cette configuration doit être effectuée après l'activation de la fonctionnalité de kdump sur une machine virtuelle Linux. L'idée de base consiste à désactiver le pilote de stockage de Services d'intégration Linux et ensuite activer le pilote de stockage Linux standard à l'intérieur du noyau kexec en utilisant le paramètre prefer_ms_hyper_v dans le fichier de configuration approprié.

Le paramètre prefer_ms_hyper_v peut être utilisé pour contrôler le comportement du pilote de stockage Linux standard. Lorsque ce paramètre est défini sur 1 et la machine virtuelle Linux est en cours d'exécution sur Hyper-V, le pilote de stockage Linux standard se désactive et le pilote de stockage Linux Integration Services vous permet de contrôler les périphériques de stockage. En définissant le paramètre prefer_ms_hyper_v sur 0, le pilote de stockage Linux standard est autorisé à fonctionner. Étant donné que le pilote de stockage Linux standard ne nécessite pas une connexion à Hyper-V, le noyau kexec pouvez vider core.

Différentes distributions de Linux ont légèrement différents mécanismes pour spécifier la valeur de prefer_ms_hyper_v. La section suivante décrit la façon dont le paramètre peut être défini pour plusieurs distributions Linux populaires.

Red Hat Enterprise Linux (RHEL) 5.9

Dans RHEL 5.9, vous devez passer le paramètre prefer_ms_hyper_v via un argument de ligne de commande du noyau du module ide_core qui est intégrée dans le noyau RHEL 5.9. Par défaut, ce paramètre est initialisé à 1, et dans ce cas, la machine virtuelle Linux éviter d'utiliser le module ide_core s'il s'exécute dans un environnement Hyper-V. Les administrateurs doivent définir la valeur du paramètre prefer_ms_hyper_v à 0 pour que le pilote ide_core devient opérationnels au cours du processus de démarrage du noyau kexec. Pour cela, en modifiant le contenu de /etc/kdump.conf.

Pour modifier le contenu de /etc/kdump.conf, procédez comme suit :
  1. Exécutez la commande suivante pour configurer les kdump pour écrire dans un répertoire local :

    / var/panne du chemin d'accès
  2. Les pilotes Linux Integration Services dans /etc/kdump.conf sur liste noire. Ainsi, les pilotes de se charger dans le noyau kexec. Pour ce faire, exécutez la commande suivante :

    liste de blocage hv_vmbus hv_storvsc hv_utils hv_netvsc hid-hyperv
  3. Configurez la valeur de délai d'attente du disque en exécutant la commande suivante :

    disk_timeout 100
  4. Une fois les modifications nécessaires, le fichier /etc/kdump.conf ressemble à ceci :
    / var/panne du chemin d'accès
    makedumpfile de core_collector - c--au niveau du message - 1D 31
    liste de blocage hv_vmbus hv_storvsc hv_utils hv_netvsc hid-hyperv
    disk_timeout 100
  5. Modifiez le contenu du fichier /etc/sysconfig/kdump comme suit :
    • Ajoutez ou modifiez la ligne suivante pour inclure le prefer_ms_hyperv = 0 argument :

      KDUMP_COMMANDLINE_APPEND = "irqpoll maxcpus = 1 reset_devices ide_core.prefer_ms_hyperv=0"
    • Une fois les modifications nécessaires, le fichier /etc/sysconfig/kdump ressemble à ceci :
      KDUMP_COMMANDLINE = ""

      # Cette variable nous permet d'ajouter des arguments de la ligne de commande kdump en cours
      # Comme provient soit KDUMP_COMMANDLINE ci-dessus, ou à partir de/proc/cmdline

      KDUMP_COMMANDLINE_APPEND = "irqpoll maxcpus = 1 reset_devices ide_core.prefer_ms_hyperv=0"

Red Hat Enterprise Linux (RHEL) 6.4

Dans RHEL 6.4, vous devez passer le paramètre prefer_ms_hyper_v pour le module du pilote ata_piix . Vous pouvez le faire en modifiant le contenu du fichier /etc/kdump.conf.

Pour modifier le contenu de /etc/kdump.conf, procédez comme suit:
  1. Configurer kdump pour écrire dans un répertoire local :

    / var/panne du chemin d'accès
  2. Ajouter des modules supplémentaires ata_piix, sr_mod, sd_mod :

    extra_modules ata_piix sr_mod sd_mod
  3. Pilotes Linux Integration Services de liste de blocage dans etc/kdump.conf. Cela empêche les pilotes de se charger dans le noyau kexec :

    liste de blocage hv_vmbus hv_storvsc hv_utils hv_netvsc hid-hyperv
  4. Ajoutez le paramètre options pour passer le paramètre dans le module ata_piix :

    options ata_piix prefer_ms_hyperv = 0
  5. Configurer la valeur de délai d'attente du disque afin qu'il cesse de répondre (se bloquer) :

    disk_timeout 100
  6. Une fois les modifications nécessaires, le fichier /etc/kdump.conf ressemble à ceci :
    / var/panne du chemin d'accès
    makedumpfile de core_collector - c--au niveau du message - 1D 31
    extra_modules ata_piix sr_mod sd_mod
    liste de blocage hv_vmbus hv_storvsc hv_utils hv_netvsc hid-hyperv
    options ata_piix prefer_ms_hyperv = 0
    disk_timeout 100

Ubuntu 12.04(.x)

Sous Ubuntu 12.04 (.x), vous devez passer le paramètre prefer_ms_hyper_v du pilote ata_piix . Vous pouvez le faire en modifiant le contenu du fichier /etc/init.d/kdump.

Pour modifier le contenu du fichier /etc/init.d/kdump, ajoutez ata_piix. prefer_ms_hyper_v = 0 aux options de ligne de commande kdump :
do_start {} {
….
….
APPEND = "$APPEND kdump_needed maxcpus = 1 irqpoll reset_devices ata_piix.prefer_ms_hyperv=0"

}

SUSE Linux Enterprise Server (SLES) 11 SP2(x)

Dans les distributions de SLES 11 SP2(x), vous devez passer le paramètre prefer_ms_hyper_v du pilote ata_piix . Vous pouvez le faire en modifiant le contenu du fichier /etc/sysconfig/kdump comme suit :

Ajout de ata_piix.prefer_ms_hyper_v=0 à KDUMP_COMMANDLINE_APPEND :

KDUMP_COMMANDLINE_APPEND="ata_piix.prefer_ms_hyperv=0"

Une fois les modifications nécessaires, le fichier /etc/sysconfig/kdump ressemble à ceci :

KDUMP_COMMANDLINE_APPEND="ata_piix.prefer_ms_hyperv=0"

Plus d'informations
KDUMP doit être configuré de manière standard qui est suggérée par les distributions de Linux.

Les produits tiers dont traite cet article sont fabriqués par des sociétés indépendantes de Microsoft. Microsoft exclut toute forme de garantie, expresse ou implicite, concernant les performances ou la fiabilité de ces produits.

Avertissement : cet article a été traduit automatiquement

Propriétés

ID d'article : 2858695 - Dernière mise à jour : 06/04/2015 00:45:00 - Révision : 4.0

Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Standard, Windows Server 2012 R2 Essentials, Microsoft Hyper-V Server 2012 R2, Windows Storage Server 2012 R2 Standard, Windows Server 2012 Datacenter, Windows Server 2012 Standard, Microsoft Hyper-V Server 2012, Windows Storage Server 2012 Standard, Windows Server 2008 R2 Datacenter, Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 Standard, Windows Server 2008 R2 Service Pack 1, Microsoft Hyper-V Server 2008 R2 Service Pack 1, Microsoft Hyper-V Server 2008 R2

  • kbmt KB2858695 KbMtfr
Commentaires