Controlador SCSI y otros tipos de controladores de VMware

Los controladores de almacenamiento conectan las unidades de disco a un ordenador. Existen diferentes estándares y tipos de controladores de almacenamiento, como los controladores IDE, SATA y SCSI. En las máquinas virtuales, los controladores de almacenamiento virtuales conectan los discos virtuales y físicos a estas máquinas. Existen diferentes tipos de controladores de almacenamiento disponibles para que las máquinas virtuales de VMware conecten discos y unidades de CD/DVD.

Cada tipo de controlador de almacenamiento tiene sus propias ventajas y limitaciones, pero esta entrada del blog se centra principalmente en los controladores SCSI. A continuación, comparo los controladores SCSI con otros tipos de controladores de almacenamiento disponibles en los ajustes de las máquinas virtuales de VMware vSphere para averiguar qué controlador de almacenamiento sería el más adecuado para una situación determinada.

NAKIVO para backup de VMware vSphere

NAKIVO para backup de VMware vSphere

Protección completa de los datos para máquinas virtuales de VMware vSphere y opciones de recuperación instantánea. Destinos de copia de seguridad seguros, tanto locales como externos y en la nube. Funciones antirransomware.

Información general sobre los controladores de almacenamiento

Al crear una máquina virtual (VM) de VMware vSphere, se crea de forma predeterminada al menos un controlador de almacenamiento virtual en la configuración de la VM. Si un disco virtual y una unidad de CD/DVD están conectados a controladores de almacenamiento diferentes, es posible que haya dos controladores de almacenamiento después de crear la VM. También puede añadir más controladores de almacenamiento para conectar unidades de disco al crear la máquina virtual.

Al crear una máquina virtual en un host ESXi de VMware mediante VMware Host Client o VMware vSphere Client, o en VMware Workstation, se selecciona automáticamente el controlador de almacenamiento óptimo para proporcionar el mejor rendimiento al sistema operativo invitado seleccionado. Como veremos, esto hace que la selección del sistema operativo invitado adecuado en el asistente de creación de la máquina virtual sea una tarea muy importante.

Nunca se insistirá lo suficiente en la importancia de seleccionar el controlador de almacenamiento adecuado. Es posible que los sistemas operativos más antiguos no sean compatibles con los tipos de controladores de almacenamiento más recientes. Por ese motivo, deben tenerse en cuenta los controladores incluidos en el sistema operativo invitado elegido para seleccionar el mejor controlador predeterminado. La compatibilidad del hardware de la máquina virtual (versión de hardware de VMware) y el tipo de dispositivo (disco duro virtual o DVD-ROM) también son factores importantes. Las versiones de hardware más recientes admiten más controladores de almacenamiento.

The LSI Logic SAS SCSI controller is selected by default during the creation of an Ubuntu VM

Antes de cambiar el controlador de almacenamiento utilizado para un disco de inicio, debe asegurarse de que el sistema operativo invitado (SO) sea compatible con este tipo de controlador y de que los controladores adecuados estén instalados en el SO invitado. Al conectar dispositivos de almacenamiento a varios controladores de almacenamiento, se puede aumentar el rendimiento de entrada/salida en comparación con la conexión de todas las unidades de disco a un único controlador de almacenamiento. Por lo tanto, si se utiliza más de un controlador SCSI para una máquina virtual, se recomienda distribuir los discos virtuales entre estos controladores SCSI para obtener un mejor rendimiento.

Otro motivo para añadir un controlador de almacenamiento es cuando se supera el número máximo admitido de dispositivos de disco conectados a un controlador. En ese caso, resulta importante cómo se añade el nuevo controlador. Algunos controladores se pueden añadir a la configuración de una máquina virtual mediante la función de adición en caliente. Otros tipos de controladores de almacenamiento requieren una operación en frío, es decir, apagar primero la máquina virtual.

El número predeterminado del primer controlador de almacenamiento en una máquina virtual es 0. Si se añade un segundo controlador de almacenamiento, el número asignado es 1, y así sucesivamente. Los controladores posteriores se numeran de forma secuencial. La numeración de los dispositivos de almacenamiento conectados a un controlador de almacenamiento también comienza desde las 0. Por ejemplo, si tu máquina virtual tiene un controlador de almacenamiento y un disco virtual conectado a este controlador, el disco se numera como (0:0). Si añades un segundo disco virtual al mismo controlador, el número será (0:1). Si conectas otro disco virtual al segundo controlador de almacenamiento, el número del disco será (1:1) en este caso. El nombre completo y el número del nodo de conexión contienen la interfaz del controlador y el número del controlador y del disco; por ejemplo, SCSI (0:0), SCSI (1:3), SATA (1:7), IDE (0:0), etc. No se puede asignar SCSI (z:7) en las opciones del controlador, ya que este número está reservado para un nodo de dispositivo virtual.

Controladores de almacenamiento de VMware disponibles

Hay muchos tipos de controladores de almacenamiento disponibles. Los tipos de controladores de almacenamiento para máquinas virtuales de VMware vSphere son SCSI, IDE, AHCI SATA y NVM Express (NVMe).

Dentro de los controladores SCSI, hay cuatro subtipos:

  • BusLogic Parallel
  • LSI Logic Parallel
  • LSI Logic SAS
  • VMware Paravirtual SCSI

Se admite un máximo de cuatro controladores SCSI por máquina virtual de VMware. Existe un límite de 15 dispositivos conectados a un único controlador SCSI.

BusLogic Parallel

Este controlador SCSI de VMware fue uno de los primeros tipos de controladores de almacenamiento emulados para máquinas virtuales de VMware vSphere. Las versiones antiguas de Windows contienen de forma predeterminada un controlador para este tipo de controlador y, por ese motivo, este controlador puede utilizarse en configuraciones de máquinas virtuales para instalar versiones antiguas de Windows en una máquina virtual (por ejemplo, Windows 2000). El controlador SCSI BusLogic Parallel se considera ahora un controlador heredado. No se admiten máquinas virtuales con discos de más de 2 TB. El controlador limita la profundidad de la cola a 1, lo que afecta al rendimiento. Si necesitas un mayor rendimiento para el almacenamiento de máquinas virtuales, plantéate utilizar el controlador de almacenamiento SCSI paralelo LSI Logic.

LSI Logic Parallel

LSI Logic Parallel se conocía anteriormente como el controlador SCSI LSI Logic . Se trata de otro controlador de almacenamiento SCSI de VMware que ha estado disponible desde las primeras versiones de la plataforma de virtualización de VMware. El controlador SCSI LSI Logic Parallel también está emulado y es compatible con un gran número de sistemas operativos, incluidos los más antiguos, ya que estos contienen de forma predeterminada un controlador para este controlador de almacenamiento. Estos controladores admiten una profundidad de cola de 32, lo que ha convertido a este controlador SCSI de VMware en una opción habitual y en la elección predeterminada para muchos sistemas operativos invitados. LSI Logic Parallel Se selecciona de forma predeterminada al crear una máquina virtual con Windows Server 2003, ya que este controlador de almacenamiento es compatible con los comandos SCSI2 y Windows Server 2003 admite este estándar SCSI.

LSI Logic SAS

El controlador de almacenamiento LSI Logic Parallel evolucionó hasta convertirse en el controlador LSI Logic SAS . A partir de Windows Server 2008, el controlador LSI Logic SAS se selecciona de forma predeterminada al crear una nueva máquina virtual, ya que LSI Logic SAS es compatible con los comandos SCSI3 y los sistemas operativos Windows más recientes también admiten este nuevo estándar. En muchos casos, es preferible utilizar este controlador SCSI de VMware.

Compatibilidad: ESXi 4.x o posterior.

VMware Paravirtual SCSI

A diferencia de los controladores SCSI de VMware descritos anteriormente en esta entrada del blog, este controlador está optimizado para la virtualización y admite un alto rendimiento. La carga de la CPU es menor en comparación con los controladores de almacenamiento emulados de VMware. No existe un equivalente real en hardware del controlador SCSI VMware paravirtual (PVSCI) y, por ello, muchos sistemas operativos (principalmente los más antiguos) no admiten este controlador de forma predeterminada. Es necesario instalar el controlador manualmente para que un sistema operativo funcione con el controlador SCSI « VMware paravirtual ». Este controlador se utiliza para obtener un alto rendimiento en IOPS (operaciones de entrada/salida por segundo).

Si existen instantáneas de discos virtuales conectados a un controlador « paravirtual SCSI », o si hay un sobreasignamiento de memoria en un host, el rendimiento puede ser inferior al esperado al utilizar este tipo de controlador de almacenamiento para una máquina virtual.

Compatibilidad: ESXi 4.x o posterior. Se admite Windows Server 2003 o posterior.

NECESITA H2

Tenga en cuenta que cambiar el controlador de almacenamiento de una máquina virtual de VMware cuando hay un sistema operativo invitado instalado puede hacer que los discos virtuales existentes resulten inaccesibles si el controlador necesario no está instalado en el sistema operativo invitado. VMware Tools debe estar instalado en el sistema operativo invitado, ya que VMware Tools contiene el controlador necesario para funcionar con el controlador SCSI VMware paravirtual .

Al instalar Windows en una máquina virtual y tener un disco del sistema conectado al controlador SCSI de VMware paravirtual , es posible que tenga que insertar una imagen de disquete virtual que contenga los controladores y seleccionar el controlador correspondiente durante la instalación para que Windows detecte el disco de instalación.

Para añadir el controlador SCSI « VMware paravirtual » a la configuración de una máquina virtual, es posible que tenga que añadir uno de los controladores SCSI con soporte completo, como el controlador « LSI logic », instalar VMware Tools, apagar la máquina virtual, añadir el controlador SCSI « VMware paravirtual » a la configuración de la máquina virtual y, por último, conectar un disco virtual al controlador SCSI « VMware paravirtual » (o cambiar el tipo de controlador de almacenamiento existente por el controlador « paravirtual SCSI»).

AHCI SATA

Este controlador de almacenamiento es nuevo y está disponible desde VMware vSphere 5.5 con Virtual Hardware 10. Se puede conectar una gran cantidad de almacenamiento (incluidos discos virtuales de alta capacidad) a una máquina virtual de VMware utilizando el controlador de almacenamiento AHCI SATA. Los controladores de almacenamiento SATA se pueden utilizar como discos de arranque para iniciar un sistema operativo invitado (SO). Asegúrese de que el controlador AHCI SATA sea compatible con el sistema operativo. El rendimiento no es tan alto como con los controladores PVSCI o LSI Logic . Es recomendable utilizar otros controladores para ejecutar aplicaciones en las que el rendimiento del disco sea un factor crítico. El controlador SATA suele utilizarse de forma predeterminada para la unidad de CD/DVD de una máquina virtual.

Compatibilidad: compatibilidad con hardware virtual de ESXi 5.5 o posterior. Se admite un máximo de cuatro controladores SATA por máquina virtual. El número máximo de dispositivos de almacenamiento que se pueden conectar a un único controlador SATA es de 30 (0-29).

NVMe

El controlador NVM Express o NVMe (memoria no volátil) es un controlador diseñado para funcionar con almacenamiento SSD. El protocolo NVMe se ha adoptado para discos no magnéticos con el fin de proporcionar el mejor rendimiento y comunicación multicola. El protocolo NVMe es compatible con VMware vSphere y se puede añadir el controlador de almacenamiento NVMe en la configuración de la máquina virtual. El número máximo de colas es 65 535 y la profundidad máxima de cola es 64 000.

Requisitos: VMware vSphere 6.5 y versión de hardware de la máquina virtual 13. El sistema operativo invitado debe ser compatible con NVMe. Se admite un máximo de cuatro controladores NVMe, y se pueden conectar 15 discos a un único controlador NVMe (0-14).

Controladores de almacenamiento IDE

Un controlador de almacenamiento IDE emulado es uno de los tipos de controladores de almacenamiento más antiguos. Se puede conectar un máximo de un controlador IDE a una máquina virtual con cuatro dispositivos de almacenamiento (dos canales —primario y secundario—, cada uno con dos dispositivos —maestro y esclavo—). No se admite la Adición en caliente ni el cambio de tamaño de discos. Es necesario apagar la máquina virtual para editar la configuración del disco. Los controladores IDE utilizan ATAPI.

El número total de discos que se pueden conectar a una máquina virtual viene determinado por el tipo de controlador, tal y como se muestra en la tabla siguiente.

The maximum supported number of disks that can be connected to different storage controller types

Recomendaciones generales

Existen recomendaciones generales para seleccionar un controlador de almacenamiento a la hora de configurar máquinas virtuales de VMware vSphere desde el punto de vista del rendimiento y la compatibilidad.

Si no está seguro de qué controlador SCSI utilizar para su máquina virtual, siga este orden (por orden de prioridad):

  1. VMware Paravirtual (PVCSI) (si lo admite el sistema operativo invitado)
  2. LSI Logic SAS (si lo admite el sistema operativo invitado)
  3. LSI Logic Parallel
  4. BusLogic Parallel (si nada más funciona)

Si desea cambiar el controlador de almacenamiento de un disco de inicio, debe asegurarse de que el controlador de almacenamiento esté instalado en el modo de inicio. Si una máquina virtual está configurada para utilizar BIOS, es posible que tenga que modificar la configuración de la máquina virtual y los ajustes de la BIOS. Si una máquina virtual está configurada para utilizar UEFI, las opciones para cambiar el controlador de almacenamiento del disco de inicio son más flexibles y, en la mayoría de los casos, no es necesaria ninguna configuración adicional.

Consulte la tabla de compatibilidad para comprobar si el sistema operativo invitado puede iniciar después de cambiar la configuración del controlador de almacenamiento de la máquina virtual.

Compatibility for changing storage controllers in VMware vSphere

Consulte también la tabla con recomendaciones generales sobre el uso de diferentes tipos de controladores de almacenamiento para máquinas virtuales y sistemas operativos invitados.

Recommended usage of VMware SCSI controllers and other storage controllers for VMs

Configuración de los controladores de almacenamiento de VMware

Ahora que ya conocemos los tipos de controladores de almacenamiento disponibles en VMware vSphere, veamos cómo editar los ajustes de los controladores de almacenamiento en VMware vSphere Client. En mi ejemplo, tengo una máquina virtual con un controlador de almacenamiento predeterminado, y en ella está instalado Ubuntu Linux.

Se requiere el privilegio Virtual machine.Configuration.Add or remove device para editar los ajustes del controlador de almacenamiento de una máquina virtual.

Abre VMware vSphere Client, ve a Hosts and Clusters, selecciona el host correspondiente y, a continuación, selecciona la máquina virtual deseada. Haz clic con el botón derecho del ratón sobre la máquina virtual y, en el menú que se abre, selecciona Edit Settings. También puedes hacer clic en Actions > Edit Settings.

Editing VM settings to change the VMware SCSI controller configuration

Cambiar el tipo de controlador

En la ventana Edit Settings , veo que mi máquina virtual utiliza SCSI controller 0 y que el tipo de controlador de almacenamiento SCSI es LSI Logic Parallel. Más abajo, encontrarás SATA controller 0, que se utiliza para conectar una unidad de CD/DVD virtual a la máquina virtual. Haga clic en el controlador SCSI para desplegar las opciones y, a continuación, en la línea Change Type , haga clic en el menú desplegable para cambiar el tipo del controlador de almacenamiento existente. Pulse OK para guardar los ajustes. Recuerde que la máquina virtual y el sistema operativo invitado deben ser compatibles con el controlador seleccionado. Esto es especialmente importante si hay un disco de inicio conectado a este controlador de almacenamiento.

Changing SCSI types for a storage controller in VMware vSphere

Añadir un nuevo controlador de almacenamiento

Para añadir un nuevo controlador de almacenamiento a la configuración de una máquina virtual, en la ventana Edit Settings haz clic en Add New Devicey, en el menú que se abre, selecciona el controlador deseado (en la sección Controllers ). En mi ejemplo, puedo seleccionar «Controlador NVMe», «Controlador SATA» o «Controlador SCSI». Añadamos el SATA controller a la configuración de la máquina virtual. Nota: Debes añadir el controlador USB si deseas utilizar una conexión USB de paso y conectar un dispositivo USB físico (por ejemplo, un disco duro USB o una memoria USB) directamente a una máquina virtual (el dispositivo USB debe estar conectado a un puerto USB físico del host).

SATA controller 1 se ha añadido. Inicialmente, el nuevo controlador recibe el nombre de New SATA Controller. Después de hacer clic en OK para guardar la configuración de la máquina virtual, el nombre del controlador de almacenamiento SATA se guarda como SATA controller 1.

Adding a new SCSI storage controller, SATA controller, or NVMe controller

Conexión de un disco virtual al controlador de almacenamiento

Añadamos un nuevo disco duro virtual y conectémoslo al controlador de almacenamiento SATA. En la ventana Edit Settings , haz clic en Add New Device > Hard Disk.

Adding a new virtual hard disk in VM settings

El nuevo disco duro ya aparece en la configuración de la máquina virtual, pero debes configurar las opciones del disco virtual, como el tamaño del disco, aprovisionamiento «delgado» o «grueso», y la ubicación, y seleccionar el controlador de almacenamiento necesario en las opciones de Virtual Device Node . También puede configurar las opciones de uso compartido, el modo de disco y los límites de IOP si es necesario. Después de hacer clic en OK para guardar los ajustes, el nombre New Hard Disk se guarda como Hard Disk 2.

Si necesita conectar un disco virtual existente a otro controlador de almacenamiento, siga el mismo procedimiento: abra la configuración de la máquina virtual, despliegue la configuración del disco y edite las opciones del nodo del dispositivo virtual.

Connecting a virtual disk to a SCSI controller or SATA controller for a VMware VM

Si conecto el nuevo disco duro virtual a la unidad SATA controller 0 a la que está conectada la unidad de CD/DVD, puedo seleccionar los nodos SATA (0:1), SATA (0:2) u otros (0:x), excepto SATA (0:0), ya que la unidad de DVD-ROM virtual utiliza SATA (0:0). Si conecto un nuevo disco virtual al nuevo SATA controller 1, entonces puedo seleccionar SATA (1:0), SATA (1:1) y cualquier otro nodo libre de este controlador de almacenamiento.

Selecting a virtual device node for a virtual disk connected to the SATA storage controller

Edición del archivo de configuración VMX

Puede modificar el tipo de controlador SCSI y otros tipos de controladores de almacenamiento de una máquina virtual editando el archivo de configuración VMX. Este método es una alternativa a la edición de la configuración en la interfaz gráfica de usuario (GUI) de VMware vSphere Client y puede utilizarse en la interfaz de línea de comandos. En general, se recomienda utilizar VMware vSphere Client y editar el archivo VMX manualmente solo en casos excepcionales.

Analicemos el archivo de configuración VMX inicial de nuestra máquina virtual Ubuntu antes de añadir controladores de almacenamiento y discos virtuales adicionales. En la parte de la configuración que se muestra a continuación, solo se muestran las líneas relacionadas con la configuración de almacenamiento. El archivo de configuración completo también contiene otros ajustes, pero los omitiré para centrarme únicamente en la configuración de almacenamiento y los controladores de almacenamiento en esta entrada del blog. config.version = "8"

virtualHW.version = "17"

vmci0.present = "TRUE"

scsi0.virtualDev = "lsilogic"

scsi0.present = "TRUE"

sata0.present = "TRUE"

scsi0:0.deviceType = "scsi-hardDisk"

scsi0:0.fileName = "blog-Ubuntu1.vmdk"

sched.scsi0:0.shares = "normal"

sched.scsi0:0.throughputCap = "off"

scsi0:0.present = "TRUE"

sata0:0.deviceType = "cdrom-raw"

sata0:0.clientDevice = "TRUE"

sata0:0.fileName = "emptyBackingString"

sata0:0.present = "TRUE"

displayName = "blog-Ubuntu1"

guestOS = "ubuntu-64"

Las líneas de configuración más interesantes son:

scsi0.virtualDev = "lsilogic" es el LSI Logic Parallel controlador SCSI utilizado para conectar un disco duro virtual.

scsi0:0.deviceType = "scsi-hardDisk" es el tipo de dispositivo de almacenamiento conectado al SCSI (0:0).

scsi0:0.fileName = "blog-Ubuntu1.vmdk" es el nombre del archivo del disco virtual conectado al nodo SCSI (0:0).

Después de añadir el segundo controlador de almacenamiento SATA y el segundo disco virtual conectado a dicho controlador, se añadieron las siguientes líneas al archivo de configuración VMX:

sata1.present = "TRUE"

sata1:0.fileName = "blog-Ubuntu1_1.vmdk"

sched.sata1:0.shares = "normal"

sched.sata1:0.throughputCap = "off"

sata1:0.present = "TRUE"

Si cambiamos el controlador SCSI LSI Logic Parallel por el LSI Logic SAS en la configuración de la máquina virtual, debemos editar la línea

scsi0.virtualDev = "lsilogic"

para que quede
scsi0.virtualDev = "lsisas1068"

Veamos los parámetros de configuración VMX relacionados con los controladores de almacenamiento, incluidos los controladores SCSI. Es posible que tengas que cambiar 0, 0:0 y otros valores (x:x) por los valores adecuados según la configuración de tu máquina virtual.

scsi0.present = "" – define si el controlador SCSI 0 está presente (los valores posibles son TRUE o FALSE).

scsi0:0.deviceType = "" se utiliza para definir el ID SCSI.  Los valores admitidos son "scsi-hardDisk", "PhysicalDrive0", "rawDisk", "scsi-passthru", "scsi-nonpassThru-rdm", "scsi-passthru", "scsi-passthruscsi-passThru-rdm".

scsi0:0.fileName = "diskname.vmdk" – define el nombre del archivo de disco virtual asociado al nodo de dispositivo virtual definido (SCSI(0:0) en este caso). Si el archivo de disco virtual se encuentra en el mismo directorio, basta con establecer "diskname.vmdk" . Si el archivo de disco virtual se encuentra en otro directorio, debe definir la ruta completa al archivo VMDK.

sched.scsi0:0.throughputCap = "off" – los límites de ancho de banda y rendimiento están desactivados. Un ejemplo de configuración del límite para este parámetro es sched.scsi0:0.throughputCap = 80IOPS, 10KIOps, 4GBps, etc.

scsi0:0.present = "" – define si el dispositivo de almacenamiento SCSI está presente. Puede ser TRUE o FALSE.

scsi0.virtualDev = "" – define el tipo de controlador SCSI.

Todos los valores admitidos para el parámetro scsi0.virtualDev = "" que define el tipo de controlador SCSI:

  • buslogic – BusLogic SCSI
  • lsilogic – LSI Logic SCSI
  • lsisas1068 – LSI Logic SAS
  • pvscsi – VMware Paravirtual SCSI

Puede seguir los pasos explicados en esta entrada del blog para editar la configuración de los controladores de almacenamiento de las máquinas virtuales que se ejecutan en VMware Workstation y en VMware Player, y conectar los dispositivos de almacenamiento a los controladores de almacenamiento necesarios. También puede practicar configurando el Laboratorio doméstico de VMware en vSphere 6.7 y vSphere 7.

Conclusión

Los controladores de almacenamiento de VMware se utilizan para conectar dispositivos de almacenamiento, como discos virtuales, a máquinas virtuales. En esta entrada del blog se han analizado los tipos de controladores de almacenamiento virtuales, incluidos los controladores SATA, IDE, NVMe y SCSI, así como la configuración de estos controladores en la interfaz gráfica de usuario del cliente de VMware vSphere. El rendimiento de un sistema de almacenamiento y el correcto funcionamiento de un sistema operativo invitado dependen de la selección del tipo de controlador adecuado. De forma predeterminada, en la configuración de la máquina virtual se selecciona el controlador de almacenamiento óptimo, pero siempre puedes editar la configuración de la máquina virtual y cambiar o añadir otro tipo de controlador.

No olvides proteger tus máquinas virtuales de VMware y realizar copias de seguridad puntualmente. Plantéate utilizar NAKIVO para el backup de máquina virtual y la replicación de máquinas virtuales, con el fin de proteger tus máquinas virtuales y otras cargas de trabajo.

Prueba NAKIVO Backup & Replication

Prueba NAKIVO Backup & Replication

Solicita una versión de prueba gratuita para descubrir todas las funciones de protección de datos de la solución. 15 días gratis. Sin limitaciones de funciones ni de capacidad. No es necesario facilitar un número de tarjeta de crédito.

Artículos recomendados