Controlador SCSI y otros tipos de controladores de VMware

Los controladores de almacenamiento conectan las unidades de disco a una computadora. 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 discos virtuales y físicos a estas máquinas. Hay diferentes tipos de controladores de almacenamiento disponibles para las máquinas virtuales de VMware para conectar discos y unidades de CD/DVD.

Cada tipo de controlador de almacenamiento tiene sus propias ventajas y limitaciones, pero esta publicación se centra principalmente en los controladores SCSI. Luego comparo los controladores SCSI con otros tipos de controladores de almacenamiento disponibles en la configuración de máquinas virtuales de VMware vSphere para determinar cuál sería el mejor controlador de almacenamiento para una situación determinada.

Información general sobre los controladores de almacenamiento

Al crear una VM de VMware vSphere, al menos un controlador de almacenamiento virtual se crea de forma predeterminada en la configuración de la VM. Si un disco virtual y una unidad de CD/DVD están conectados a diferentes controladores de almacenamiento, entonces se pueden tener dos controladores de almacenamiento después de crear la VM. También se pueden agregar más controladores de almacenamiento para conectar unidades de disco al crear la VM.

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

La importancia de seleccionar el controlador de almacenamiento adecuado no puede ser enfatizada lo suficiente. Los tipos de controladores de almacenamiento más nuevos pueden no ser compatibles con sistemas operativos más antiguos. Por esa razón, los controladores incluidos en el sistema operativo invitado elegido deben tenerse en cuenta para seleccionar el mejor controlador predeterminado. La compatibilidad del hardware de la máquina virtual (versión del 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 nuevas admiten más controladores de almacenamiento.

Antes de cambiar el controlador de almacenamiento utilizado para un disco de arranque, asegúrese de que el sistema operativo invitado (SO) admita este tipo de controlador y de que los controladores apropiados estén instalados en el SO invitado. Cuando se conectan dispositivos de almacenamiento a múltiples controladores de almacenamiento, el rendimiento de entrada/salida puede aumentar en comparación con la conexión de todas las unidades de disco a un solo controlador de almacenamiento. Por lo tanto, si se utilizan más de un controlador SCSI para una VM, la práctica recomendada es distribuir los discos virtuales entre estos controladores SCSI para obtener un mejor rendimiento.

Otra razón para agregar un controlador de almacenamiento es cuando se excede el número máximo admitido de dispositivos de disco conectados a un controlador. En ese caso, cómo se agrega un nuevo controlador se vuelve importante. Algunos controladores pueden agregarse a una configuración de VM utilizando la función de añadir en caliente. Otros tipos de controladores de almacenamiento requieren una operación en frío, es decir, apagar primero la VM.

El número predeterminado del primer controlador de almacenamiento en una VM es 0. Si agregas un segundo controlador de almacenamiento, el número asignado es 1, etc. Los controladores posteriores se numeran de forma secuencial. El numerado de los dispositivos de almacenamiento conectados a un controlador de almacenamiento comienza igualmente en 0. Por ejemplo, si tu VM tiene un controlador de almacenamiento y un disco virtual conectado a este controlador, el disco se numera como (0:0). Si agregas un segundo disco virtual al mismo controlador, entonces el número es (0:1). Si conectas otro disco virtual al segundo controlador de almacenamiento, el número del disco es (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. SCSI (z:7) no puede ser asignado en las opciones de controlador porque este número está reservado para un nodo de dispositivo virtual.

Controladores de Almacenamiento VMware Disponibles

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

Dentro de los controladores SCSI, hay cuatro subtipos:

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

A maximum of four SCSI controllers are supported per VMware virtual machine. There is a 15-device limit for devices connected to a single SCSI controller.

BusLogic Paralelo

Este controlador SCSI de VMware fue uno de los primeros tipos de controladores de almacenamiento emulados para las máquinas virtuales de VMware vSphere. Las versiones antiguas de Windows contienen un controlador para este tipo de controlador de forma predeterminada y, por esa razón, este controlador se puede utilizar en la configuración de las máquinas virtuales para instalar versiones antiguas de Windows en una máquina virtual (por ejemplo, Windows 2000). El controlador BusLogic Parallel SCSI ahora se considera un controlador heredado. No se admiten máquinas virtuales con discos de más de 2 TB. La profundidad de la cola está limitada a 1 por el controlador, y esto tiene un impacto en el rendimiento. Si necesita un mayor rendimiento para el almacenamiento de la máquina virtual, considere utilizar el controlador de almacenamiento LSI Logic Parallel SCSI.

LSI Logic Parallel

LSI Logic Parallel se conoce anteriormente como el controlador SCSI LSI Logic. Este es 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 paralelo LSI Logic también se emula y es compatible con una gran cantidad de sistemas operativos, incluidos los sistemas operativos antiguos, porque contienen un controlador para este controlador de almacenamiento de forma predeterminada. Estos controladores admiten una profundidad de cola de 32, lo que ha convertido a este controlador SCSI de VMware en una opción común y selección predeterminada para muchos sistemas operativos invitados. LSI Logic Parallel se selecciona de forma predeterminada al crear una máquina virtual de Windows Server 2003 porque este controlador de almacenamiento admite los comandos SCSI2 y Windows Server 2003 admite este estándar SCSI.

LSI Logic SAS

El controlador de almacenamiento paralelo de LSI Logic evolucionó hacia el controlador SAS de LSI Logic. A partir de Windows Server 2008, el controlador SAS de LSI Logic se selecciona por defecto al crear una nueva VM porque LSI Logic SAS es compatible con los comandos SCSI3 y los sistemas operativos Windows más nuevos también admiten el estándar más reciente. En muchos casos, se prefiere usar este controlador SCSI de VMware.

Compatibilidad: ESXi 4.x o posterior.

SCSI Paravirtual de VMware

A diferencia de los controladores SCSI anteriores de VMware descritos en esta publicación, este controlador es consciente de la virtualización y admite un alto rendimiento. La carga de la CPU es menor en comparación con los controladores de almacenamiento de VMware emulados. No hay un equivalente de hardware real del controlador SCSI paravirtual de VMware (PVSCI) y, como tal, muchos sistemas operativos (principalmente sistemas operativos más antiguos) no admiten este controlador de forma predeterminada. El controlador debe instalarse manualmente para que un sistema operativo funcione con el controlador SCSI paravirtual de VMware. Este controlador se adopta para un alto rendimiento de IOPS (operaciones de entrada/salida por segundo).

Si hay instantáneas para discos virtuales que están conectados a un controlador SCSI paravirtual, o si la memoria está sobresuscrita en un host, entonces el rendimiento puede ser inferior al esperado al usar este tipo de controlador de almacenamiento para una VM.

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

NECESITA H2

Tenga en cuenta que cambiar el controlador de almacenamiento para una VM de VMware cuando se ha instalado un sistema operativo invitado puede hacer que los discos virtuales existentes sean inaccesibles si el controlador necesario no está instalado en el sistema operativo invitado. VMware Tools deben estar instalados en el sistema operativo invitado porque VMware Tools contiene el controlador necesario para trabajar con el controlador SCSI paravirtual de VMware.

Cuando instale Windows en una VM y un disco del sistema esté conectado al controlador SCSI paravirtual de VMware, es posible que necesite insertar una imagen de disquete virtual que contenga controladores y seleccionar el controlador para el controlador durante la instalación para que Windows detecte el disco de instalación.

Para agregar el controlador SCSI paravirtual de VMware a una configuración de VM, es posible que necesite agregar uno de los controladores SCSI altamente compatibles, como el controlador de lógica LSI, instalar VMware Tools, apagar la VM, agregar el controlador SCSI paravirtual de VMware a la configuración de la VM y, finalmente, adjuntar un disco virtual al controlador SCSI paravirtual de VMware (o cambiar el tipo de controlador de almacenamiento existente al controlador SCSI paravirtual).

AHCI SATA

Este controlador de almacenamiento es nuevo y está disponible desde VMware vSphere 5.5 con Virtual Hardware 10. Puedes conectar una gran cantidad de almacenamiento (incluidos discos virtuales de alta capacidad) a una VM de VMware usando el controlador de almacenamiento AHCI SATA. Los controladores de almacenamiento SATA pueden ser usados para discos de arranque y arrancar un sistema operativo (SO) invitado. Asegúrate de que el controlador SATA AHCI sea compatible con el sistema operativo. El rendimiento no es tan alto como con los controladores PVSCI o LSI Logic. Es mejor usar otros controladores para ejecutar aplicaciones que sean sensibles al rendimiento del disco. El controlador SATA suele ser utilizado por defecto para la unidad de CD/DVD de una VM.

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

NVMe

El controlador NVM Express o NVMe (Memoria No Volátil) es un controlador diseñado para trabajar con almacenamiento SSD. El protocolo NVMe se adopta para discos no magnéticos para proporcionar el mejor rendimiento y comunicación de múltiples colas. El protocolo NVMe es compatible en VMware vSphere y puedes agregar el controlador de almacenamiento NVMe en la configuración de la VM. El número máximo de colas es 65535 y la profundidad máxima de la cola es 64000.

Requisitos: VMware vSphere 6.5 y versión 13 del hardware de la VM. El SO invitado debe tener soporte para NVMe. Se admiten un máximo de cuatro controladores NVMe y se pueden conectar 15 discos a un solo 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 del disco. Debes apagar la VM para editar la configuración del disco. Los controladores IDE utilizan ATAPI.

El número total de discos que puedes conectar a una VM está determinado por el tipo de controlador, como se muestra en la tabla a continuación.

Recomendaciones Generales

Hay recomendaciones generales para seleccionar un controlador de almacenamiento para configurar VMs de VMware vSphere desde el punto de vista del rendimiento y la compatibilidad.

Si no estás seguro qué controlador SCSI usar para tu VM, sigue este orden (prioridad):

  1. VMware Paravirtual (PVSCI) (si es compatible con el sistema operativo invitado)
  2. LSI Logic SAS (si es compatible con el sistema operativo invitado)
  3. LSI Logic Parallel
  4. BusLogic Parallel (si nada más funciona)

Si deseas cambiar el controlador de almacenamiento para un disco de arranque, debes asegurarte de que el controlador de almacenamiento esté instalado en el modo de arranque. Si una VM está configurada para usar BIOS, es posible que necesites modificar la configuración de la VM y los ajustes de la BIOS. Si una VM está configurada para usar UEFI, las opciones para cambiar el controlador de almacenamiento para el disco de arranque son más flexibles, y en la mayoría de los casos no hay configuración adicional requerida.

Consulta la tabla de compatibilidad para ver si el sistema operativo invitado puede arrancar después de cambiar la configuración del controlador de almacenamiento para la VM.

Consulta 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.

Configuración de controladores de almacenamiento de VMware

Ahora que estamos familiarizados con los tipos de controladores de almacenamiento disponibles en VMware vSphere, veamos cómo editar la configuración del controlador de almacenamiento en el Cliente de VMware vSphere. En mi ejemplo, tengo una VM con un controlador de almacenamiento predeterminado, y Ubuntu Linux está instalado en esta VM.

Se requiere el privilegio Máquina virtual.Configuración.Agregar o quitar dispositivo para editar la configuración del controlador de almacenamiento para una VM.

Abre el Cliente de VMware vSphere, ve a Hosts and Clusters, selecciona el host necesario y selecciona la máquina virtual requerida. Haz clic con el botón derecho en la VM y en el menú que se abre selecciona Editar Configuración. También puedes hacer clic en Acciones > Editar Configuración.

Cambiando el tipo de controlador

En la ventana de Editar Configuración, veo que mi VM utiliza controlador SCSI 0 y el tipo de controlador de almacenamiento SCSI es LSI Logic Parallel. A continuación, puedes encontrar controlador SATA 0, que se utiliza para conectar una unidad de CD/DVD virtual a la VM. Haz clic en el controlador SCSI para expandir las opciones, luego en la línea de Cambiar Tipo, haz clic en el menú desplegable para cambiar el tipo del controlador de almacenamiento existente. Haz clic en OK para guardar la configuración. Recuerda que la VM y el sistema operativo invitado deben admitir el controlador seleccionado. Esto es especialmente importante si un disco de arranque está conectado a este controlador de almacenamiento.

Agregando un nuevo controlador de almacenamiento

Para agregar un nuevo controlador de almacenamiento a la configuración de una máquina virtual, en la ventana Editar configuración, haz clic en Agregar nuevo dispositivo, y en el menú que se abre selecciona el controlador necesario (en la sección Controladores). En mi ejemplo, puedo seleccionar Controlador NVMe, Controlador SATA o Controlador SCSI. Vamos a agregar el controlador SATA a la configuración de la VM.

Nota: El controlador USB debe ser agregado si deseas utilizar un pase de USB y conectar un dispositivo USB físico (por ejemplo, un disco duro USB o una memoria flash) directamente a una máquina virtual (un dispositivo USB debe estar conectado a un puerto USB físico del host).

Se añade el controlador SATA 1. Inicialmente, el nuevo controlador se nombra como Nuevo controlador SATA. Después de hacer clic en Aceptar para guardar la configuración de la VM, el nombre del controlador de almacenamiento SATA se guarda como Controlador SATA 1.

Conectar un disco virtual al controlador de almacenamiento

Vamos a agregar un nuevo disco duro virtual y conectar este disco virtual al controlador de almacenamiento SATA. En la ventana Editar configuración, haz clic en Agregar nuevo dispositivo > Disco duro.

El nuevo disco duro ahora se muestra en la configuración de la VM, pero necesitas configurar las opciones del disco virtual, como el tamaño del disco, provisión delgada o gruesa, y la ubicación, y seleccionar el controlador de almacenamiento necesario en las opciones de Nodo de Dispositivo Virtual. También puedes configurar opciones de compartición, modo de disco y límites de IOPs si es necesario. Después de hacer clic en Aceptar para guardar la configuración, el nombre del Nuevo Disco Duro se guarda como Disco Duro 2.

Si necesitas conectar un disco virtual existente a otro controlador de almacenamiento, sigue el mismo principio: abre la configuración de la VM, expande la configuración del disco y edita las opciones del nodo del dispositivo virtual.

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

Edición del Archivo de Configuración VMX

Puedes editar el tipo de controlador SCSI y otros tipos de controladores de almacenamiento para una VM editando el archivo de configuración VMX. Este método es una alternativa a editar la configuración en la interfaz gráfica de VMware vSphere Client y se puede utilizar en la interfaz de línea de comandos. Se recomienda que uses VMware vSphere Client en general y edites el archivo VMX manualmente solo en casos excepcionales.

Vamos a explorar el archivo de configuración inicial de VMX de nuestra VM Ubuntu antes de agregar cualquier controlador de almacenamiento adicional y discos virtuales. En la parte de configuración mostrada 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 publicación de 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 controlador SCSI paralelo de lógica LSI utilizado para conectar un disco duro virtual.

scsi0:0.deviceType = “scsi-hardDisk” es el tipo de dispositivo de almacenamiento conectado a SCSI (0:0).

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

Después de agregar el segundo controlador de almacenamiento SATA y el segundo disco virtual conectado al controlador SATA, se agregaron 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 paralelo de LSI Logic a LSI Logic SAS en la configuración de la VM, debemos editar la línea

scsi0.virtualDev = “lsilogic”

a

scsi0.virtualDev = “lsisas1068”

Veamos los parámetros de configuración VMX relacionados con los controladores de almacenamiento, incluidos los controladores SCSI. Es posible que necesite cambiar 0, 0:0 y otros valores (x:x) a los valores apropiados según la configuración de su VM.

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 del disco virtual adjunto al nodo de dispositivo virtual definido (SCSI(0:0) en este caso). Si un archivo de disco virtual se encuentra en el mismo directorio, establecer “diskname.vmdk” es suficiente. Si el archivo de disco virtual está en otro directorio, debes definir la ruta completa al archivo VMDK.

sched.scsi0:0.throughputCap = “off” – se desactivan los límites de ancho de banda y rendimiento. Un ejemplo para establecer el 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 del controlador SCSI.

Todos los valores admitidos para el parámetro scsi0.virtualDev = “” que define el tipo del controlador SCSI:

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

Puedes utilizar los procesos explicados en este artículo de blog para editar la configuración de los controladores de almacenamiento para las máquinas virtuales que se ejecutan en VMware Workstation y VMware Player y conectar dispositivos de almacenamiento a los controladores de almacenamiento necesarios. También puedes practicar configurando el laboratorio casero 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. Este artículo de blog analizó los tipos de controladores de almacenamiento virtual, incluidos los controladores SATA, IDE, NVMe y SCSI, así como la configuración de estos controladores en la GUI del cliente 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 correcto. Por defecto, se selecciona el controlador de almacenamiento óptimo en la configuración de la VM, pero siempre puedes editar los ajustes de la VM y cambiar o añadir otro tipo de controlador.

No te olvides de proteger tus VMs de VMware y realizar copias de seguridad a tiempo. Considera NAKIVO para la copia de seguridad y replicación de VMs para proteger tus máquinas virtuales y otras cargas de trabajo.

Source:
https://www.nakivo.com/blog/scsi-controller-and-other-vmware-controller-types/