Hyper-V: controller virtuale IDE vs SCSI

In Hyper-V sono disponibili due tipi di controller virtuali quello IDE e quello SCSI a cui è possibile connettere i dischi virtuali.

Nella seguente tabella sono riassunte le differenti caratteristiche dei due tipi di controller in Windows Server 2008 R2:

Feature IDE SCSI Note
Max Devices 4
2 controller
con 2 device
256
4 controller
con 64 device
 
Bootable No (1)
Hot add/remove storage No  
Max IO size 128 KB 8 MB (2)
Write cache Disabilitabile   (3)
SCSI Command Pass-throught (4)

Nota 1: Il controller SCSI è disponibile dopo aver installato nella macchina virtuale gli Integration Components, ciò significa che al contrario del controller IDE non è un device emulato, ma un device sintetico. Questo significa che il controller virtuale SCSI utilizza il VM Bus che non è disponibile se il sistema operativo non è avviato, di conseguenza non è possibile fare boot tramite un disco virtuale connesso ad controller virtuale SCSI.
Per ulteriori informazioni si veda Why Hyper-V cannot boot off of SCSI disks (and why you should not care).

Nota 2: In Windows Server 2008 il Max IO size era per entrambi i controller virtuali 128 KB, per ulteriori informazioni si veda Virtual Hard Disk Performance.

Nota 3: Come riportato nel seguente post SCSI vs IDE disks in Domain Controllers running as Virtual Machines on Hyper-V in Windows Server 2008 R2 sui dischi virtuali connessi a device SCSI non è possibile disabilitare la cache di scrittura. La disabilitazione della write cache è consigliata se sul disco sono presenti dati memorizzati in database di tipo ESE (Extensible Storage Engine) utilizzato da Active Directory, DHCP, WINS, FRS. Per ulteriori informazioni si veda Things to consider when you host Active Directory domain controllers in virtual hosting environments.

Nota 4: In Windows Server 2008 R2 è possibile disabilitare il filtering degli SCSI command. Tale pratica potrebbe essere richiesta per compatibilità con determinate applicazioni, ma comportano un possibile rischio per la sicurezza in quando in questo modo gli SCSI commands passano direttamente dalla macchina virtuale allo storage stack della parent partition. Per ulteriori informazioni si veda Planning for Disks and Storage.

Prestazioni

Nel caso in cui nella macchina virtuale siano installati gli Integration Services le prestazioni dei device IDE e dei device SCSI sono paragonabili. Grazie agli Integration Services, infatti, i device IDE utilizano un filter driver per migliorare le performance. Per un confronto prestazionale si veda il seguente Microsoft Hyper-V 2008 R2 IDE vs. SCSI Performance.

Conclusioni

I device IDE grazie al fatto di consentire il boot e la disabilitazione della write cache risultano più indicati per memorizzare il sistema operativo o dati basati su database di tipo ESE.

I device SCSI grazie al maggior Max IO size e al maggior numero di device supportati risultano più indicati per memorizzare file dati o file log.