Certaines machines virtuelles dotées de RDM doivent obtenir les informations SCSI INQUIRY depuis le LUN plutôt qu'utiliser les données SCSI INQUIRY mises en cache par ESXi.

Problème

Certains systèmes d'exploitation invités ou certaines applications s'exécutant sur des machines virtuelles dotées de RDM ont un comportement imprévisible.

Cause

Ce comportement peut provenir des données SCSI INQUIRY mises en cache qui interfèrent avec les applications et les systèmes d'exploitation invités particuliers.

Lorsque l'hôte ESXi se connecte d'pour la première fois à un périphérique de stockage, il soumet la commande SCSI INQUIRY pour obtenir des données d'identification de base du périphérique. Par défaut ESXi met en cache les données SCSI INQUIRY reçues (Standard, page 80 et page 83) et les données restent par la suite inchangées. Les réponses aux commandes SCSI INQUIRY suivantes sont renvoyées à partir du cache.

Cependant, les systèmes d'exploitation invités particuliers s'exécutant sur des machines virtuelles dotées de RDM doivent interroger le LUN plutôt qu'utiliser les données SCSI INQUIRY mises en cache par ESXi. Dans ces cas, vous pouvez configurer la machine virtuelle afin d'ignorer le cache SCSI INQUIRY.

Solution

  • Sélectionnez l'une des méthodes suivantes.
    Option Description
    Modifier le fichier .vmx de la machine virtuelle avec le RDM

    Utilisez cette méthode pour les machines virtuelles disposant de la version matérielle 8 ou version ultérieure.

    1. Ajoutez le paramètre suivant au fichier :
      scsix:y.ignoreDeviceInquiryCache = "true"

      x est le nombre de contrôleurs SCSI et y le nombre cible SCSI du RDM.

    2. Redémarrez la machine virtuelle.
    Utilisez la commande esxcli.

    Étant donné que vous configurez le paramètre au niveau de l'hôte, aucune limitation de version de matériel de machine virtuelle ne s'appliquent.

    esxcli storage core device inquirycache set --device device id --ignore true
    Aucun redémarrage de machine virtuelle n'est nécessaire.
    Quelle que soit la méthode que vous utilisez pour définir le paramètre de cache SCSI INQUIRY sur true, la machine virtuelle démarre en contactant le LUN directement pour les données SCSI INQUIRY.
    Paramètre ignoreDeviceInquiryCache dans vmx Paramètres ignore inquirycache dans esxcli Demande d'interrogation traitée depuis
    True True LUN
    False (par défaut si le paramètre n'est pas présent) True LUN
    True False LUN
    False (par défaut si le paramètre n'est pas présent) False Cache