Alcune macchine virtuali con RDM devono ottenere le informazioni SCSI INQUIRY dal LUN invece di utilizzare i dati SCSI INQUIRY memorizzati nella cache di ESXi.

Problema

Alcuni sistemi operativi guest o applicazioni che vengono eseguiti nelle macchine virtuali con RDM mostrano un comportamento imprevedibile.

Causa

Questo comportamento può essere causato dai dati SCSI INQUIRY memorizzati nella cache che interferiscono con specifici sistemi operativi e applicazioni guest.

Quando l'host ESXi si connette per la prima volta a un dispositivo di storage di destinazione, invia il comando SCSI INQUIRY per ottenere dal dispositivo i dati di identificazione di base. Per impostazione predefinita, ESXi memorizza nella cache i dati SCSI INQUIRY ricevuti (Standard, pagina 80 e pagina 83) e i dati rimangono invariati in seguito. Le risposte per i comandi SCSI INQUIRY successivi vengono restituite dalla cache.

Tuttavia, specifici sistemi operativi guest in esecuzione nelle macchine virtuali con RDM devono eseguire query sul LUN invece di utilizzare i dati SCSI INQUIRY archiviati nella cache di ESXi. In questi casi, è possibile configurare la macchina virtuale in modo che ignori la cache SCSI INQUIRY.

Soluzione

  • Utilizzare uno dei metodi seguenti.
    Opzione Descrizione
    Modificare il file.vmx della macchina virtuale con RDM

    Utilizzare questo metodo per le macchine virtuali con versione hardware 8 o successiva.

    1. Aggiungere il seguente parametro al file:
      scsix:y.ignoreDeviceInquiryCache = "true"

      dove x è il numero del controller SCSI e y è il numero di destinazione SCSI di RDM.

    2. Riavviare la macchina virtuale.
    Utilizzo del comando esxcli

    Poiché si configura l'impostazione a livello di host, non si applicano limitazioni per le versioni hardware della macchina virtuale.

    esxcli storage core device inquirycache set --device device id --ignore true
    Non è necessario un riavvio della macchina virtuale
    Indipendentemente dal metodo utilizzato per impostare il parametro della cache SCSI INQUIRY su true, la macchina virtuale inizia a contattare il LUN direttamente per i dati SCSI INQUIRY.
    Parametro ignoreDeviceInquiryCache in vmx Parametro ignore inquirycache in esxcli Richiesta inquiry inviata da
    True True LUN
    Falso (impostazione predefinita se il parametro non è presente) True LUN
    True False LUN
    Falso (impostazione predefinita se il parametro non è presente) False Cache